A media management tool
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Trivernis 6f95538834
Split the build script tasks into separate files
Build scripts are now located in the scripts folder.

Signed-off-by: Trivernis <trivernis@protonmail.com>
2 years ago
.github/workflows Change release building job to only trigger on workflow dispatch 2 years ago
mediarepo-api Add makefile and dockerfile 2 years ago
mediarepo-daemon Split the build script tasks into separate files 2 years ago
mediarepo-ui Increment version 2 years ago
scripts Split the build script tasks into separate files 2 years ago
.deepsource.toml Add deepsource 2 years ago
.dockerignore Split the build script tasks into separate files 2 years ago
.gitignore Split the build script tasks into separate files 2 years ago
CONTRIBUTING.md Add contribution guidelines 2 years ago
Dockerfile Split the build script tasks into separate files 2 years ago
LICENSE Adjust dependency paths 2 years ago
README.md Split the build script tasks into separate files 2 years ago

README.md

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 --ffmpeg

Daemon only:

$ ./scripts/build.py daemon --ffmpeg

If you don't want to build with ffmpeg support omit the --ffmpeg flag.

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