A classical music player and organizer. https://musicus.org
Find a file
2025-03-13 20:23:20 +01:00
data Implement deletion 2025-03-09 14:27:50 +01:00
migrations/2024-03-17-104156_reset_schema Remove old migrations 2025-03-10 18:33:50 +01:00
po Update build system and Flatpak manifest 2025-02-09 10:08:21 +01:00
src library: Remove unused functions 2025-03-13 20:23:20 +01:00
.gitignore Add config.rs to .gitignore 2025-02-09 10:08:17 +01:00
Cargo.lock library: Add import functionaility 2025-03-03 17:28:07 +01:00
Cargo.toml library: Add import functionaility 2025-03-03 17:28:07 +01:00
COPYING Initial commit 2025-02-09 10:05:00 +01:00
de.johrpan.Musicus.Devel.json flatpak: Update blueprint-compiler 2025-02-09 10:08:21 +01:00
diesel.toml Add original database code 2025-02-09 10:07:53 +01:00
meson.build Update build system and Flatpak manifest 2025-02-09 10:08:21 +01:00
meson_options.txt Update build system and Flatpak manifest 2025-02-09 10:08:21 +01:00
README.md Add original database code 2025-02-09 10:07:53 +01:00

Musicus

The classical music player and organizer.

Hacking

ORM

This program uses Diesel as its ORM. After installing the Diesel command line utility, you will be able to create a new schema migration using the following command:

$ diesel migration generate [change_description]

To update the src/db/schema.rs file, you should use the following command:

$ diesel migration run --database-url test.sqlite

This file should never be edited manually.

Internationalization

Execute the following commands from the project root directory to update translation files whenever translatable strings have been changed.

  1. Update template.pot

    xgettext \
        --from-code=UTF-8 \
        --add-comments \
        --keyword=_ \
        --keyword=C_:1c,2 \
        --files-from=po/POTFILES \
        --output=po/template.pot
    
  2. Update translation files

    msgmerge \
        --update \
        --backup=off \
        --no-fuzzy-matching \
        po/de.po \
        po/template.pot