class: center, middle #wine-Anwendung inDebian-Paket verpacken
### Hauke Goos-Habermann #### https://goos-habermann.de --- ### Über mich - Entwickler des
Softwareverteilungssystems m23
- Organisator der
Kieler Open Source und Linux Tage
-
Dienstleister zu m23, Linux und Freier Software
- Softwareentwicklung (PHP, BASH, C/C++, JS, Python und was sonst so gebraucht wird...) - Administration - Schulungen - Support - Beratung - quasi **alles**, *was mit Linux zu tun hat* - Wöchentlicher Livestream *"Jean und Hauke Show"* auf https://www.youtube.com/c/LinuxGuides - Community-Video-Serie *"Nicht der Weisheit letzter Schluß"* auf
tube.tchncs.de
und
YouTube
mit **beruflichen** oder **privaten Projekten** - Packt (Debian-)Pakete nicht nur zu Weihnachtszeit. --- ### Dieses Mal  * Windows-Version von **
Audacity
** unter **
Wine
** installieren * Audacity-Installation in **globalen unveränderten Teil** und **individuelle Benutzereinstellungen** auftrennen * **Vorlage** mit individuellen Benutzereinstellungen **erstellen** * Startskript anlegen, welches * **
UnionFS
** verwendet, um den **unveränderten Teil zu nutzen** und individuelle Benutzereinstellungen im jeweiligen Heimatverzeichnis zu speichern * beim ersten Start von Audacity die **Vorlage** im jeweiligen Heimatverzeichnis **entpackt** und **individualisiert** * eine **Cachedatei** zum **Speichern** von **Änderungen** verwendet * **Startmenüeintrag**sdatei anlegen * Passendes **Icon** suchen * **Debian-Paket erstellen** * Globaler unveränderter Teil wird **systemweit installiert** * Beinhaltet alle **weiteren Komponenten** (Skript, usw. von oben) --- ### Schulungen und Workshops
Online (z.B. über eigenen NextCloud-Talk-Server)
Wunschthemen aus Linux- und OpenSource-Bereich
Aufzeichnung als Video
ab Februar 2022
Anfragen:
https://goos-habermann.de/kontakt
https://goos-habermann.de/data/Administration_von_Debian_und_Co_im_Textmodus-2021.pdf
--- ### Dodger-Tools Dieses Mal werde ich die Module *"dt_deb_mkDebTemplate"* und *"dt_deb_mkDeb"* aus den Dodger-Tools verwenden.  = über die Jahre stetig erweiterte **Sammlung** von **BASH-Werkzeugen** und **Debian-Paketen** für Linux/Debian-Nutzer und -Administratoren Enthalten sind unter anderem: - **Werkzeuge zum Erstellen von Debian-Paketen** - Automatisiertes Aktualisieren von Servern - *"Intelligentes"* Editieren von Dateien - Werkzeuge für das Erstellen von Backups über das Netzwerk - Monitoring - Erstellung von Debian-Paketen und -Paketquellen - Setzen von IP-Adressen - Generierung von Vorschaubildern - etc. .cls[Mehr Informationen:
http://dodger-tools.sf.net
] --- ### Dodger-Tools installieren Die Dodger-Tools könnt Ihr (als root) mit
installDT.sh
installieren: ```bash cd /tmp wget https://goos-habermann.de/installDT.sh bash installDT.sh ``` **Hinweis:** Je nach Dodger-Tools-*Modul*, das Ihr nutzen möchtet, müßt Ihr noch **weitere Pakete installieren**. Zum Installieren **aller Pakete**, die vor **irgendeinem Modul** verwendet werden: ```bash apt-get install -y dodger-tools --install-suggests ``` Etwas ausführlicher zeige ich die Installation der Dodger-Tools im Video
Debian 11 absichern mit SSHGuard
. --- ### Dodger-Tools-Modul Zum Packen des Paketverzeichnisses benötigen wir: ```bash dt_deb_mkDeb ``` Mehr dazu in *"Administration von Debian & Co. im Textmodus*" im Kapitel 13 *"Pakete bauen"*. --- ### Vorbereitung #### Neuen Benutzer anlegen Wir legen einen neuen Benutzer mit einem *möglichst ungewöhnlichen Namen* (z.B. *xxxxx*) an, der höchstwahrscheinlich nicht in Konfigurationsdateien für andere Zwecke verwendet wird. ```bash adduser xxxxx adduser xxxxx sudo ``` Anschließend melden wir uns mit diesem neu an. #### Audacity herunterladen Das Audioprogramm Audacity ist für verschiedene Plattformen verfügbar. **Alle Downloads**: https://www.audacityteam.org/download **32-Bit-Windows-Version**:
audacity-win-3.1.3-32bit.exe
(war zum Folienerstellungszeitpunkt aktuell) --- ### Wine installieren Um **Windows-Software** unter **Linux** zu installieren und **auszuführen**, benötigen wir **
Wine
** als Windows-kompatible Laufzeitumgebung. Bei Debian und Derivaten (Ubuntu, Linux Mint, ...) installieren wir Wine über APT: ```bash # Liste mit verfügbarer Software aktualisieren sudo apt update # Wine installieren sudo apt install -y wine ``` --- ### Installationsdaten vorbereiten * Die EXE-Datei installieren wir mit **
Wine
**. Mit *WINEPREFIX* geben wir ein **separates Verzeichnis** an, um eine saubere Installation ohne Vermengung mit vorher installierten Progammen zu erhalten: ```bash # Neues Wine-Verzeichnis nur für Audacity anlegen mkdir ~/.wine-audacity # Installation starten WINEPREFIX=~/.wine-audacity wine ~/Downloads/audacity-win-*-32bit.exe ``` * **WICHTIG**: Einen einfachen Pfad (z.B. C:\Audacity) für die Installation wählen, damit wir die EXE-Datei leichter wiederfinden. * Unter ~/.wine-audacity befindet sich nun die **komplette Installation**. Hierbei sind enthalten: * **Programmdaten** * **Gobale Einstellungen** * **Individuelle Benutzereinstellungen** --- ### Individuelle Einstellungen trennen Die **individuelle Benutzereinstellungen** befinden sich unter ~/.wine-audacity/drive_c/users/[Benutzername] und *wahrscheinlich* in den Dateien der Registry (~/.wine-audacity/*.reg). Nun **starten** wir Audacity **einmalig** über das Startmenü und **richten** es grundlegend (z.B. anderes Thema) **ein**. Danach **verschieben** wir die individuellen Benutzereinstellungen in ein gesondertes Verzeichnis: ```bash # Neues Verzeichnis für individuelle Benutzereinstellungen anlegen mkdir ~/.wine-audacity-user # Alles Individuelle hineinverschieben cd ~/.wine-audacity mv *.reg ../.wine-audacity-user mkdir -p ../.wine-audacity-user/drive_c/users mv drive_c/users/$USER ../.wine-audacity-user/drive_c/users ``` --- ### Paketstruktur Paketstrukturarchiv
audacity-paketstruktur.tar.gz
herunterladen und entpacken mit: ```bash cd ~ wget -O - https://goos-habermann.de/re/22/\ wine-Anwendung_als_Debian_Paket_bauen/audacity-paketstruktur.tar.gz | tar xvz ``` * **Startskript**: usr/bin/wine-audacity * **Startmenüeintrag**: usr/share/applications/wine-audacity.desktop * **Icon** für den Startmenüeintrag: usr/share/pixmaps/wine-audacity.png * Archiv mit **Vorlage für individuellen Benutzereinstellungen**: usr/share/wine-audacity/audacity-user.tar.gz * **Globales Wine-Verzeichnis**, in dem die Anwendung installiert ist: usr/share/wine-audacity/sys * **Paketinformationen** : DEBIAN/control * **Skript**, das nach der Paketinstallation ausgeführt wird: DEBIAN/postinst --- ### Einstellungen trennen + Startskript Die Paketstruktur wurde unter ~/wine-audacity entpackt. ```bash # Globales Wine-Verzeichnis verschieben mv ~/.wine-audacity/* ~/wine-audacity/usr/share/wine-audacity/sys # Archiv mit Vorlage für individuellen Benutzereinstellungen erstellen cd ~/.wine-audacity-user tar cvzf ~/wine-audacity/usr/share/wine-audacity/audacity-user.tar.gz * # Pfad der EXE-Datei ermitteln cd ~/wine-audacity/usr/share/wine-audacity/sys/ find | grep -i audacity | grep exe$ ``` Nun das Skript (~/wine-audacity/usr/bin/wine-audacity) anpassen :-) --- ### UnionFS Per UnionFS werden das ***gobale Verzeichnis*** und das ***Verzeichnis mit individuellen Benutzereinstellungen*** **übereinandergelegt** und unter ~/.wine-audacity gemountet. Alle **Änderungen** landen **~/.wine-audacity-user**, **/usr/share/wine-audacity/sys** bleibt **unverändert**. --- ### Startmenüeintrag Bereits verwendete **Kategorien** auflisten: ```bash grep Categories /usr/share/applications/*.desktop |\ cut -d':' -f2 | cut -d"=" -f2 | sed 's/;/\n/g' | sort -u ``` Hieraus suchen wir uns eine oder mehrere (durch Semikola getrennte) Kategorie(n) aus. Zudem brauchen wir noch ein **Icon**: ```bash # Icon suchen find ~/.local/share/icons/hicolor | grep -i audacity | sort -Vr # Icon kopieren cp ~/.local/share/icons/hicolor/256x256/apps/5306_audacity.0.png\ ~/wine-audacity/usr/share/pixmaps/wine-audacity.png ``` Nun den Startmenüeintrag (~/wine-audacity/usr/share/applications/wine-audacity.desktop) anpassen :-) --- ### Einpacken und Testen #### Paket erstellen ```bash cd ~/wine-audacity rm ../wine-audacity_1.0*.deb dt_deb_mkDeb ``` #### Ausprobieren ```bash # Installieren cd ~ # Debian-Paketdatei installieren sudo dpkg -i wine-audacity_1.0*.deb # Fehlende Abhängigkeiten nachinstallieren sudo apt install -f ``` Nun wieder als der andere Benutzer anmelden und ***Audacity (Wine)*** über das Startmenü öffnen. --- class: center, middle ### Informationen zu mir und meinen Dienstleistungen, m23, ... ### https://goos-habermann.de