A classical music player and organizer. https://musicus.org
Find a file
2021-05-08 00:06:01 +02:00
backend Update gtk-rs crates 2021-05-07 23:49:05 +02:00
build-aux Fix binary installation for cross compilation 2021-02-19 09:54:28 +01:00
client Update gtk-rs crates 2021-05-07 23:49:05 +02:00
database Update gtk-rs crates 2021-05-07 23:49:05 +02:00
import Update gtk-rs crates 2021-05-07 23:49:05 +02:00
musicus Apply clippy suggestions 2021-05-08 00:06:01 +02:00
.gitignore Update gtk-rs crates 2021-05-07 23:49:05 +02:00
Cargo.lock Update gtk-rs crates 2021-05-07 23:49:05 +02:00
Cargo.toml Import in separate crate and change source ID calculation 2021-02-24 16:39:38 +01:00
clippy.toml Apply clippy suggestions 2021-05-08 00:06:01 +02:00
COPYING Initial commit 2020-09-27 21:58:42 +02:00
de.johrpan.musicus.json Import in separate crate and change source ID calculation 2021-02-24 16:39:38 +01:00
meson.build Import in separate crate and change source ID calculation 2021-02-24 16:39:38 +01:00
README.md readme: Add link to first milestone 2021-03-22 19:24:44 +01:00

Musicus

This is a desktop app for Musicus.

https://musicus.org

Current status

Musicus is currently under heavy development. After reaching a state that is acceptable to the venturous public, an initial release will happen. You can track the progress to that first milestone here.

Hacking

Building

Musicus uses the Meson build system. You can build it using the following commands:

$ meson build
$ ninja -C build

Afterwards the resulting binary executable is under build/target/debug/musicus.

Flatpak

There is a Flatpak manifest file called de.johrpan.musicus.json. To build a Flatpak you need the the latest Gnome SDK and the Freedesktop SDK with the Rust extension. You can install those using the following commands:

$ flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
$ flatpak remote-add --user --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
$ flatpak install --user gnome-nightly org.gnome.Sdk org.gnome.Platform
$ flatpak install --user flathub org.freedesktop.Sdk.Extension.rust-stable//19.08

Afterwards, the following commands will build, install and run the application:

$ rm -rf flatpak
$ flatpak-builder --user --install flatpak de.johrpan.musicus.json
$ flatpak run de.johrpan.musicus

Special requirements

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/database/schema.rs file, you should use the following command:

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

This file should never be edited manually.

License

Musicus is free and open source software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Musicus is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.