tentative pour tilix, tout ne semble pas encore fonctionnel, mais l'application se lance...

This commit is contained in:
Thomas Briffard 2021-07-11 11:12:31 +02:00
parent 5b21c3dc49
commit 402d8946f6
9 changed files with 313 additions and 2 deletions

View File

@ -48,8 +48,9 @@ xorg-x11-apps && \
wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage && \
wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage && \
wget https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage && \
chmod +x linuxdeploy-x86_64.AppImage appimagetool-x86_64.AppImage linuxdeploy-plugin-qt-x86_64.AppImage && \
mv linuxdeploy-x86_64.AppImage appimagetool-x86_64.AppImage linuxdeploy-plugin-qt-x86_64.AppImage /usr/bin/ && \
wget https://raw.githubusercontent.com/linuxdeploy/linuxdeploy-plugin-gtk/master/linuxdeploy-plugin-gtk.sh && \
chmod +x linuxdeploy-x86_64.AppImage appimagetool-x86_64.AppImage linuxdeploy-plugin-qt-x86_64.AppImage linuxdeploy-plugin-gtk.sh && \
mv linuxdeploy-x86_64.AppImage appimagetool-x86_64.AppImage linuxdeploy-plugin-qt-x86_64.AppImage linuxdeploy-plugin-gtk.sh /usr/bin/ && \
yum clean all && python3 -m pip install --upgrade pip && pip3 install six
# on fixe le fuseau horaire dans le conteneur,

View File

@ -31,3 +31,7 @@ valgrind: init_env build_base
kdiff3: init_env build_base_qt
docker-compose build kdiff3
docker-compose run --rm kdiff3
tilix: init_env build_base
docker-compose build tilix
docker-compose run --rm tilix

View File

@ -8,6 +8,7 @@ Les applications suivantes:
- qgit
- qtcreator
- qcachegrind
- tilix (en cours)
sont compilées dans un conteneur CentOS7 (glibc 2.17) puis livrées au format [AppImage](https://appimage.org/) via les outils [linuxdeploy](https://github.com/linuxdeploy/linuxdeploy) et [appimagetool](https://github.com/AppImage/AppImageKit).

View File

@ -121,3 +121,19 @@ services:
- NOM_APPIMAGE=kdiff_3_1.9.2
command : ["bash", "-c","/template.sh /usr/local/bin/kdiff3 /build"]
tilix:
build:
context: ./tilix
dockerfile: ./Dockerfile_centos7_tilix
image: cos7_tilix
container_name: docker_cos7_tilix
privileged: true
volumes:
- ./tilix:/build
- ./template.sh:/template.sh
env_file:
- ./.env
environment:
- CUSTOM_STEP_PRE_DEPLOY=/build/tilix_pre_step.sh
- NOM_APPIMAGE=tilix_1.9.4
command : ["bash", "-c","/template.sh /usr/bin/tilix /build"]

View File

@ -0,0 +1,25 @@
From 8e9ba0fe9343da3d57d9c3eae490e594a3586ad4 Mon Sep 17 00:00:00 2001
From: Briffou <thomas.briffard@gmail.com>
Date: Sat, 12 Oct 2019 22:42:29 -0400
Subject: [PATCH 1/2] Set hhomogeneous parameter for title stack
should fix https://github.com/gnunn1/tilix/issues/1691
---
source/gx/tilix/appwindow.d | 1 +
1 file changed, 1 insertion(+)
diff --git a/source/gx/tilix/appwindow.d b/source/gx/tilix/appwindow.d
index 485ddb3d..e46aad97 100644
--- a/source/gx/tilix/appwindow.d
+++ b/source/gx/tilix/appwindow.d
@@ -2119,6 +2119,7 @@ public:
add(afNotifications);
stTitle = new Stack();
+ stTitle.setHhomogeneous(false);
lblText = new Label(text);
lblText.setEllipsize(PangoEllipsizeMode.START);
--
2.31.1

View File

@ -0,0 +1,49 @@
# Eh beh, une sacrée tannée à compiler ce logiciel...
# voir le README de GtkD pour avoir tous les bons numéros de version des libs
FROM cos7_base
ARG TILIX_VER=1.9.4
# patch pour corriger la longueur des onglets (en mode "onglets" donc), cf https://github.com/gnunn1/tilix/issues/1691
ARG PATCH=0001-Set-hhomogeneous-parameter-for-title-stack.patch
COPY $PATCH $PATCH
RUN yum install -y meson libffi-devel curl-devel libxml2-devel libyaml-devel lmdb-devel gobject-introspection-devel libstemmer-devel gperf libxslt gtk-doc openssl-devel vala intltool glibc-devel libmount-devel libsecret-devel desktop-file-utils ldc po4a gtk3-devel gettext-devel meson xdg-utils gdk-pixbuf2-devel librsvg2-devel vte291-devel libunwind-devel && \
curl -fsS https://dlang.org/install.sh | bash -s ldc && source ~/dlang/ldc-1.26.0/activate && ln -s /usr/bin/cmake3 /usr/bin/cmake
# vte
RUN git clone https://github.com/GNOME/vte.git && cd vte && \
export LD_LIBRARY_PATH="/lib64" && git checkout 0.52.4 && \
./autogen.sh && make && make install && cd / && rm -rf /vte
# Glib
RUN git clone https://github.com/GNOME/glib.git && cd glib && \
git checkout 2.56.0 && meson _build && \
export LC_CTYPE=en_US.UTF-8 && \
ninja -C _build && ninja -C _build install && cd / && rm -rf /glib
# curl
RUN git clone https://github.com/curl/curl.git && cd curl && \
autoreconf -fi && ./configure --with-openssl && make && make install && cd / && rm -rf /curl
# Appstreamcli
RUN export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/:/usr/local/lib/pkgconfig/ && \
git clone https://github.com/ximion/appstream.git && \
cd appstream && git checkout v0.12.9 && \
meson _build && ninja -C _build && ninja -C _build install && \
export LD_LIBRARY_PATH=/usr/local/lib64/:$LD_LIBRARY_PATH && cd / && rm -rf appstream
# GtkD
RUN git clone https://github.com/gtkd-developers/GtkD.git && cd GtkD && \
source ~/dlang/ldc-1.26.0/activate && \
git checkout v3.8.5 && make -i -j20 && make -j20 install && cd / && rm -rf GtkD
# tilix, enfin !!!
RUN source ~/dlang/ldc-1.26.0/activate && export LD_LIBRARY_PATH=/usr/local/lib64/:$LD_LIBRARY_PATH && \
git clone https://github.com/gnunn1/tilix.git && \
cd tilix && git apply /$PATCH && \
export PKG_CONFIG_PATH=/usr/local/share/pkgconfig:$PKG_CONFIG_PATH && \
meson _build --buildtype=release --prefix=/usr && ninja -C _build && ninja -C _build install
# Exécuter une commande au démarrage de l'image.
CMD ["/bin/bash"]

203
tilix/tilix.desktop Normal file
View File

@ -0,0 +1,203 @@
[Desktop Entry]
Version=1.0
Name[ar]=تِلِكس
Name[bg]=Tilix
Name[ca]=Tilix
Name[cs]=Tilix
Name[de]=Tilix
Name[en_GB]=Tilix
Name[eo]=Tilix
Name[es]=Tilix
Name[eu]=Tilix
Name[fi]=Tilix
Name[fr]=Tilix
Name[gl]=Tilix
Name[he]=Tilix
Name[hr]=Tilix
Name[hu]=Tilix
Name[id]=Tilix
Name[it]=Tilix
Name[ja]=Tilix
Name[ko]=Tilix
Name[nb_NO]=Tilix
Name[nl]=Tilix
Name[pl]=Tilix
Name[pt_BR]=Tilix
Name[pt_PT]=Tilix
Name[ro]=Tilix
Name[ru]=Tilix
Name[sr]=Тајликс
Name[sv]=Tilix
Name[tr]=Tilix
Name[uk]=Tilix
Name[zh_CN]=Tilix
Name[zh_TW]=Tilix
Name=Tilix
Comment[ca]=Un mosaic de terminals per a Gnome
Comment[cs]=Dlaždicový terminál pro Gnome
Comment[de]=Ein Terminal für GNOME mit Kacheldarstellung
Comment[en_GB]=A tiling terminal for Gnome
Comment[eo]=Kaheliga terminalo por GNOME
Comment[es]=Una terminal divisible para Gnome
Comment[fi]=Laatoittava pääte Gnomelle
Comment[fr]=Un terminal scindable pour Gnome
Comment[he]=מסוף בריצוף עבור GNOME
Comment[hr]=Pločasti terminal za GNOME
Comment[it]=Un terminale a riquadri per Gnome
Comment[ko]=
Comment[nl]=Een terminal voor Gnome met tegelmogelijkheid
Comment[pl]=Emuluje działanie terminala w środowisku GNOME wykorzystując interfejs kafli
Comment[pt_BR]=Um terminal em mosaico para o GNOME
Comment[pt_PT]=Um terminal em mosaico para o GNOME
Comment[ro]=Un terminal fără suprapunere pentru Gnome
Comment[ru]=Тайлинговый терминал для Gnome
Comment[sr]=Плочасти терминал за Гном
Comment[sv]=En sida-vid-sida-terminal för GNOME
Comment[tr]=Gnome için döşeyen bir terminal
Comment[uk]=Мозаїчний термінал для Gnome
Comment[zh_CN]=GNOME
Comment=A tiling terminal for Gnome
Keywords[ar]=shell;prompt;command;commandline;cmd;
Keywords[ca]=intèrpret d'ordres;indicador;ordre;línia d'ordres;
Keywords[cs]=shell;terminál;příkaz;příkazový řádek;cmd;
Keywords[de]=Shell;Prompt;Befehl;Befehlszeile;command;commandline;cmd;
Keywords[en_GB]=shell;prompt;command;commandline;cmd;
Keywords[eo]=ŝelo;komando;komandlinio;terminalo;terminalimitilo;
Keywords[es]=intérprete;shell;indicador;prompt;orden;línea de órdenes;cmd;
Keywords[fi]=shell;prompt;command;commandline;cmd;komentorivi;pääte;
Keywords[fr]=shell;prompt;commande;ligne de commande;cmd;
Keywords[he]=מעטפת;של;פרומפט;מסוף;טרמינל;שורת פקודה;חלון שחור;פקודה;פקודות;
Keywords[hr]=ljuska;upit;naredba;naredbeni redak;cmd;
Keywords[id]=shell;prompt;perintah;baris perintah;cmd;
Keywords[it]=shell;prompt;comando;linea di comando;cmd;
Keywords[nl]=shell;prompt;opdracht;opdrachtprompt;cmd;
Keywords[oc]=shell;prompt;comanda;linha de comanda;
Keywords[pl]=powłoka;terminal;polecenie;wiersz poleceń;cmd;konsola;
Keywords[pt_BR]=shell;prompt;comando;linha de comando;cmd;
Keywords[pt_PT]=shell;prompt;comando;linha de comando;cmd;
Keywords[ro]=shell;prompt;command;commandline;cmd;
Keywords[ru]=shell;prompt;command;commandline;cmd;
Keywords[sr]=shell;prompt;command;commandline;cmd;terminal;školjka;skoljka;komanda;naredba;linija;šel;терминал;шкољка;команда;наредба;линија;шел;
Keywords[sv]=skal;prompt;kommando;kommandorad;cmd;
Keywords[tr]=shell;prompt;command;commandline;cmd;kabuk;istem;komut;komutsatırı;
Keywords[uk]=shell;prompt;command;commandline;cmd;
Keywords[zh_CN]=shell;prompt;command;commandline;cmd;;;
Keywords[zh_TW]=shell;prompt;command;commandline;cmd;;
Keywords=shell;prompt;command;commandline;cmd;
Exec=tilix
Terminal=false
Type=Application
StartupNotify=true
Categories=System;TerminalEmulator;X-GNOME-Utilities;
Icon=tilix
Actions=new-window;new-session;preferences;
[Desktop Action new-window]
Name[ar]=نافذة جديدة
Name[bg]=Нов прозорец
Name[ca]=Finestra nova
Name[cs]=Nové okno
Name[de]=Neues Fenster
Name[el]=Νέο παράθυρο
Name[en_GB]=New Window
Name[eo]=Nova Fenestro
Name[es]=Ventana nueva
Name[eu]=Leiho berria
Name[fi]=Uusi ikkuna
Name[fr]=Nouvelle fenêtre
Name[gl]=Nova Xanela
Name[he]=חלון חדש
Name[hr]=Novi prozor
Name[hu]=Új ablak
Name[id]=Jendela Baru
Name[it]=Nuova finestra
Name[ja]=
Name[ko]=
Name[nb_NO]=Nytt vindu
Name[nl]=Nieuw venster
Name[oc]=Fenèstra novèla
Name[pl]=Nowe okno
Name[pt_BR]=Nova janela
Name[pt_PT]=Nova janela
Name[ro]=Fereastră Nouă
Name[ru]=Новое окно
Name[sr]=Нови прозор
Name[sv]=Nytt fönster
Name[tr]=Yeni Pencere
Name[uk]=Створити вікно
Name[zh_CN]=
Name[zh_TW]=
Name=New Window
Exec=tilix --action=app-new-window
[Desktop Action new-session]
Name[ar]=جلسة جديدة
Name[bg]=Нова сесия
Name[ca]=Sessió nova
Name[cs]=Nové sezení
Name[de]=Neue Sitzung
Name[el]=Νέα συνεδρία
Name[en_GB]=New Session
Name[eo]=Nova Seanco
Name[es]=Sesión nueva
Name[fi]=Uusi istunto
Name[fr]=Nouvelle session
Name[he]=הפעלה חדשה
Name[hr]=Nova sesija
Name[id]=Sesi Baru
Name[it]=Nuova sessione
Name[ja]=
Name[ko]=
Name[nb_NO]=Ny økt
Name[nl]=Nieuwe sessie
Name[oc]=Session novèla
Name[pl]=Nowa sesja
Name[pt_BR]=Nova sessão
Name[pt_PT]=Nova sessão
Name[ro]=Nouă Sesiune
Name[ru]=Новый сеанс
Name[sr]=Нова сесија
Name[sv]=Ny session
Name[tr]=Yeni Oturum
Name[uk]=Створити сеанс
Name[zh_CN]=
Name[zh_TW]=
Name=New Session
Exec=tilix --action=app-new-session
[Desktop Action preferences]
Name[ar]=التفضيلات
Name[bg]=Настройки
Name[ca]=Preferències
Name[cs]=Předvolby
Name[de]=Einstellungen
Name[en_GB]=Preferences
Name[eo]=Agordoj
Name[es]=Preferencias
Name[eu]=Ezarpenak
Name[fi]=Asetukset
Name[fr]=Préférences
Name[gl]=Preferencias
Name[he]=העדפות
Name[hr]=Postavke
Name[hu]=Beállítások
Name[id]=Preferensi
Name[it]=Preferenze
Name[ja]=
Name[ko]=
Name[nb_NO]=Innstillinger
Name[nl]=Voorkeuren
Name[oc]=Preferéncias
Name[pl]=Preferencje
Name[pt_BR]=Preferências
Name[pt_PT]=Preferências
Name[ro]=Preferințe
Name[ru]=Параметры
Name[sr]=Поставке
Name[sv]=Inställningar
Name[tr]=Tercihler
Name[uk]=Параметри
Name[zh_CN]=
Name[zh_TW]=
Name=Preferences
Exec=tilix --preferences

BIN
tilix/tilix.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

12
tilix/tilix_pre_step.sh Executable file
View File

@ -0,0 +1,12 @@
#!/bin/bash
yum install -y patchelf gvfs-devel libcanberra-gtk3 PackageKit-gtk3-module
fichierIcon=/build/tilix.png
fichierDesktop=/build/tilix.desktop
LDC_LIB=/opt/app-root/src/dlang/ldc-1.26.0/lib/
export LD_LIBRARY_PATH=$LDC_LIB:$LD_LIBRARY_PATH
AUTRES_OPTIONS="-l /usr/lib64/libgtk-3.so.0.2200.30 -l /usr/lib64/libcanberra-gtk3.so.0 -l /usr/lib64/gtk-3.0/modules/libpk-gtk-module.so -l /usr/lib64/gio/modules/libgvfsdbus.so -l /usr/lib64/gvfs/libgvfscommon.so -l /usr/lib64/libvte-2.91.so.0 -l /usr/lib64/libatk-bridge-2.0.so -l /usr/lib64/libgtk-3.so.0 -l /usr/lib64/libgtk-3.so -l $LDC_LIB/libphobos2-ldc-shared.so.96 -l $LDC_LIB/libdruntime-ldc-shared.so.96 -i $fichierIcon -d $fichierDesktop --plugin gtk"