Skip to content
Extraits de code Groupes Projets
Vérifiée Valider 639edc6c rédigé par Kubat's avatar Kubat
Parcourir les fichiers

BUILD: Add instructions to produce appimages for linux systems

parent a205e100
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!197Draft: Refactor the whole code.
......@@ -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.
......@@ -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
utils/desktop/amadeus.jpg

126 ko

utils/desktop/amadeus.png

127 ko

[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
[Desktop Entry]
Version=1.0
Type=Application
Name=lkt
Name=Lkt
Icon=lektor
GenericName=lkt commnand line client
Comment=lkt command line client
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter