https://github.com/autumngmod/libloader
🍂 Package manager for Garry's Mod (in-dev)
https://github.com/autumngmod/libloader
garrysmod gmod gmod-lua lua package-manager
Last synced: 6 days ago
JSON representation
🍂 Package manager for Garry's Mod (in-dev)
- Host: GitHub
- URL: https://github.com/autumngmod/libloader
- Owner: autumngmod
- License: gpl-3.0
- Created: 2025-03-02T21:04:06.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-14T09:23:18.000Z (over 1 year ago)
- Last Synced: 2025-11-30T19:13:14.555Z (7 months ago)
- Topics: garrysmod, gmod, gmod-lua, lua, package-manager
- Language: Lua
- Homepage: https://smokingplaya.ru/
- Size: 77.1 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# libloader
``libloader`` is an attempt to make a package manager for Garry's Mod. \
All packages are searched on GitHub, in open source repositories.

# Table of contents
* [Official available libraries](#official-available-libraries)
* [Installation](#installation)
* [Usage](#usage)
* [Installation](#library-installation)
* [Library enabling](#library-enabling)
* [Library disabling](#library-disabling)
* [Library removing](#library-removing)
* [For developers](#for-developers)
# Official available libraries
* [autumngmod/cream](https://github.com/autumngmod/cream) - Web based UI (React/Vue/etc) in Garry's Mod
* [autumngmod/logmo](https://github.com/autumngmod/logmo) - Small logger utility library
* [autumngmod/binloader](https://github.com/autumngmod/binloader) - Auto ``DLL`` module loader
* [autumngmod/workyaround](https://github.com/autumngmod/workyaround) - Creates a data/worky folder whose contents are passed to the client anyway, bypassing Garry's Mod's prohibitions on extensions.
# Installation
Download [latest release](https://github.com/autumngmod/libloader/releases/latest/download/libloader_minified.lua), and put it to ``GarrymodDS/garrysmod/lua/autorun/`` (its minified version of ``libloader``)
> [!NOTE]
> Alternatively, you can just download this repository, and install libloader as an addon. This way you can make sure that the code is not modified and does not contain anything dangerous.
# Usage
> [!NOTE]
> You can hide tooltips (hints) by using the ``libloader_showhints 0`` command
### Library installation
```bash
# Installation of latest version of library
lib i/install autumngmod/binloader
# Forcing a version
lib install autumngmod/binloader@0.1.0
# # Forcing a version with a flag
lib install autumngmod/binloader --version 0.1.0
```
### Library enabling
> [!NOTE]
> Libraries are disabled by default, so enable them after installation.
```bash
lib en/enable autumngmod/binloader@0.1.0
```
### Library disabling
```bash
lib disable autumngmod/binloader@0.1.0
```
### Library removing
```bash
lib remove/delete/r autumngmod/binloader@0.1.0
```
### Show the list of installed libraries
```bash
lib list
```
# For developers
Your repository should have an addon.json file in GitHub release, and its contents should match [this json schema](https://raw.githubusercontent.com/autumngmod/json/refs/heads/main/addon.scheme.json).
Example:
```json
{
"$schema": "https://raw.githubusercontent.com/autumngmod/json/refs/heads/main/addon.scheme.json",
"name": "Addon's name",
"description": "Short description",
"authors": ["author1", "author2"],
"version": "0.1.0",
"githubRepo": "https://github.com/example/repo",
"side": ["server", "client"]
}
```
Also, the library itself should be uploaded to GitHub Release under the name lib.lua.
> [!NOTE]
> Yes, the library itself should be compressed into a single file.
You can do this either manually or [via GitHub Actions like gm-donate/igs](https://github.com/GM-DONATE/IGS).
> [!NOTE]
> GitHub Release should have a name like “v*.*.*.*”, e.g. “v0.1.0”.
[Ideal example of a repository with an addon on GitHub](https://github.com/autumngmod/binloader)