diff --git a/README.md b/README.md index 0d30e6980a7f90ec0aa2e5fc2f413d41cc851db8..2ba6e9bae7cd9a6c9553d58198d117980bad844c 100644 --- a/README.md +++ b/README.md @@ -25,15 +25,9 @@ A Karaoke player made to replace the old bash scripts on Sakura. - [rust](https://www.rust-lang.org) compiler with version >= 1.72 - [cmake](https://cmake.org/) at least the version 3.17 -- a C++ compiler with C++20 support +- C++ compiler with [C++20 support](https://en.cppreference.com/w/cpp/20) - [mpv](https://mpv.io/) development library -- [Qt6](https://www.qt.io/) development library, QtCore, QtWidgets, QtOpenGL, QtOpenGLWidgets. - -On arch you may install the following packages: `qt6-multimedia-ffmpeg`, `qt6-translations`, -`qt6-declarative`, `qt6-multimedia`, `qt6-wayland`, `qt6-tools`, `qt6-base`, `qt6-svg`, `mpv`, -`cmake`, `cmake-extra-modules`. The usual way of installing rust is by executing their script: - - curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh +- [Qt6](https://www.qt.io/) development library: QtCore, QtWidgets, QtOpenGL, QtOpenGLWidgets. To visualize dependencies of the rust part of lektor, you can call the script `utils/scripts/print-cargo-deps.bash` from the workspaces. You will also need to have `dot` utility @@ -144,15 +138,44 @@ To produce the zip file for windows users, from the target folder run the follow ## Building a lektord distribution for linux (AppImage) -First you need the AppImageKit. We will assume you are using an *x86_64* system. You can download it -from the github [repository](https://github.com/AppImage/AppImageKit/releases/tag/continuous). As an -alternative you can use the following commands and add the `$HOME/.local/bin` folder to you path. +Note that it is preferable to build AppImages from the older system that you want to support, see +the [official website](https://appimage.org/). First you need the LinuxDeploy and AppImageTool +binaries. We will assume you are using an *x86_64* system. You can download it their repositories: +- https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous +- https://github.com/AppImage/AppImageKit/releases/tag/continuous +As an alternative you can use the following commands and add the `$HOME/.local/bin` folder to you path. wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage - mv appimagetool-x86_64.AppImage ~/.local/bin/ - chmod +x ~/.local/bin/appimagetool-x86_64.AppImage + wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-static-x86_64.AppImage + mv appimagetool-x86_64.AppImage ~/.local/bin/appimagetool + mv linuxdeploy-static-x86_64.AppImage ~/.local/bin/linuxdeploy + chmod +x ~/.local/bin/appimagetool + chmod +x ~/.local/bin/linuxdeploy + +For the packages needed to build the lektor project, on arch you may install the following packages: +`qt6-multimedia-ffmpeg`, `qt6-translations`, `qt6-declarative`, `qt6-multimedia`, `qt6-wayland`, +`qt6-tools`, `qt6-base`, `qt6-svg`, `mpv`, `cmake`, `cmake-extra-modules`. The usual way of +installing rust is by executing their script: + + curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh + +After building the lektord executable and .so files, you can use the following commands from the +target folder (where the executable where generated). We will reference the root folder of the +lektord repository as `$ROOT`. + + mkdir Amadeus Lektord Lkt # Create one folder for each AppImage + + # Do the thing for Lkt + linuxdeploy --appdir Lkt --executable lkt --icon-file $ROOT/utils/desktop/lektor.png --desktop-file $ROOT/utils/desktop/lkt.desktop + appimagetool --comp xz --sign --sign-key $YOUR_SIGN_KEY Lkt + + # Do the thing for Lektord + linuxdeploy --appdir Lektord --executable lektord --icon-file $ROOT/utils/desktop/lektor.png --desktop-file $ROOT/utils/desktop/lektord.desktop + appimagetool --comp xz --sign --sign-key $YOUR_SIGN_KEY Lektord -After building the lektord executable and .so files, you can use the following commands: + # Do the thing for Amadeus + linuxdeploy --appdir Amadeus --executable lektord --icon-file $ROOT/utils/desktop/amadeus.png --desktop-file $ROOT/utils/desktop/amadeus.desktop + appimagetool --comp xz --sign --sign-key $YOUR_SIGN_KEY Amadeus --- @@ -161,4 +184,3 @@ After building the lektord executable and .so files, you can use the following c - Finish Amadeus. - Query state from lektord in a sensible way. - Implements a kurisu server in lektord to be able to synchronize with other lektord instances. -- Make two custom themes (one light, the other dark) for amadeus, not the default ones from iced. diff --git a/utils/desktop/Amadeus.desktop b/utils/desktop/amadeus.desktop similarity index 86% rename from utils/desktop/Amadeus.desktop rename to utils/desktop/amadeus.desktop index 16b464f42d7085f86517a4fd1c61c4170adb3087..17bce38c09fe60a80e0472238faab89e81c514a2 100644 --- a/utils/desktop/Amadeus.desktop +++ b/utils/desktop/amadeus.desktop @@ -6,7 +6,7 @@ Icon=amadeus GenericName=Amadeus Comment=The Amadeus client for lektord Keywords=video;audio -Terminal=true +Terminal=false Categories=AudioVideo; StartupNotify=true -Exec=lektord -F +Exec=amadeus diff --git a/utils/desktop/amadeus.jpg b/utils/desktop/amadeus.jpg deleted file mode 100644 index 62b445c1c20d056de0b3badafe7d845733a78694..0000000000000000000000000000000000000000 Binary files a/utils/desktop/amadeus.jpg and /dev/null differ diff --git a/utils/desktop/amadeus.png b/utils/desktop/amadeus.png new file mode 100644 index 0000000000000000000000000000000000000000..e72ea5935e918f2525c6f3578fe35c52d7a4d289 Binary files /dev/null and b/utils/desktop/amadeus.png differ diff --git a/utils/desktop/Lektord.desktop b/utils/desktop/lektord.desktop similarity index 86% rename from utils/desktop/Lektord.desktop rename to utils/desktop/lektord.desktop index 40d82b28cf54d7bf3840f0e8cb31025aba440b3a..5edb11e125f8e9834c3fe53bc3dd931f9310aac9 100644 --- a/utils/desktop/Lektord.desktop +++ b/utils/desktop/lektord.desktop @@ -1,7 +1,7 @@ [Desktop Entry] Version=1.0 Type=Application -Name=lektord +Name=Lektord Icon=lektor GenericName=Lektor deamon Comment=The lektor deamon @@ -9,4 +9,4 @@ Keywords=video;audio Terminal=true Categories=AudioVideo; StartupNotify=true -Exec=lektord -F +Exec=lektord diff --git a/utils/desktop/lkt.desktop b/utils/desktop/lkt.desktop index 851e0798c8f580a522a9052618da2bf01eb34f8f..43a0db42797281c3c4ae361a1ca59c6e9e4ee290 100644 --- a/utils/desktop/lkt.desktop +++ b/utils/desktop/lkt.desktop @@ -1,7 +1,7 @@ [Desktop Entry] Version=1.0 Type=Application -Name=lkt +Name=Lkt Icon=lektor GenericName=lkt commnand line client Comment=lkt command line client