3.3 KiB
mediarepo
Mediarepo is a tool for managing media files. It works similar to image boards (boorus) as it allows one to assign tags to media entries and search for entries by using those tags.
Features
Implemented
- management of multiple repositories
- running repository daemons on startup or in the background
- importing files from the file system
- assigning tags to files
- searching for files using tags and properties
- sorting files by properties and tag namespaces
Planned
- tag aliases and implications
- file collections
- importing files from URLs
- tag lookup using SauceNao and IQDB
- synchronisation between clients
Installation
In order to use mediarepo, the mediarepo daemon and UI application need to be installed. Both can be downloaded from the Releases page or the AUR.
Arch Linux:
$ yay -S mediarepo-daemon mediarepo
When installing manually the mediarepo-daemon
binary needs to be accessible in the PATH
variable.
Building
Prerequisites
You need to have a working rust toolchain (e.g. via rustup) and node.js installed. For building the UI the required tauri build tooling needs to be installed as well. Please follow their documentation for setup information. You also need to have a working python installation on your system.
Building mediarepo
After all required dependencies are installed and tools are accessible in the PATH
, you can build the project like follows:
Check (and install) required tooling:
$ ./scripts/check.py --install
Note: this only installs tools that are installable via cargo or npm
All Componens:
$ ./scripts/build.py all
Daemon only:
$ ./scripts/build.py daemon
UI only:
$ ./scripts/build.py ui
Clean the output directory:
$ ./scripts/clean.py
After building the out
directory contains all the built binaries and bundles.
Test Builds
For test builds the Dockerfile
in this repository can be used. This way no build dependencies need to be installed on the system. The dockerfile doesn't provide any artifacts and can only be used for validation.
Usage and Further Information
Please consult the official website for more information.
License
GPL-3