From 26e76b8257c02556fa0d96839abcdecdf84f50b2 Mon Sep 17 00:00:00 2001 From: Cassidy James Blaede Date: Sun, 30 Jul 2023 11:29:04 +0300 Subject: [PATCH 1/2] feat: move system Flatpak handling to reflect endlish-oesque method This takes system Flatpak handling out of Yafti and does it the same way as we tried on endlish-oesque. It adds an /etc/flatpak/install file with a list of Flatpaks to be installed, a step in the Containerfile to read that file and install the apps without deploying (to preseed the needed files), a ublue-flatpak-system-install script to read that file and install what's there without pulling remote data, and a systemd unit to run that script at boot. --- Containerfile | 3 + etc/flatpak/install | 16 ++++++ etc/flatpak/remotes.d/flathub.flatpakrepo | 8 +++ etc/yafti.yml | 67 ----------------------- usr/bin/ublue-flatpak-system-install | 5 ++ 5 files changed, 32 insertions(+), 67 deletions(-) create mode 100644 etc/flatpak/install create mode 100644 etc/flatpak/remotes.d/flathub.flatpakrepo create mode 100755 usr/bin/ublue-flatpak-system-install diff --git a/Containerfile b/Containerfile index 8476733..fa1afcc 100644 --- a/Containerfile +++ b/Containerfile @@ -23,6 +23,9 @@ RUN /tmp/build.sh && \ mkdir -p /tmp/inter /usr/share/fonts/inter && \ unzip /tmp/inter.zip -d /tmp/inter/ && \ mv /tmp/inter/*.ttf /tmp/inter/*.ttc /tmp/inter/LICENSE.txt /usr/share/fonts/inter/ && \ + cat etc/flatpak/install | while read line; do flatpak install --system --noninteractive --no-deploy flathub $line; done && \ + systemctl unmask flatpak-system-install.service && \ + systemctl enable flatpak-system-install.service && \ systemctl unmask dconf-update.service && \ systemctl enable dconf-update.service && \ systemctl enable rpm-ostree-countme.service && \ diff --git a/etc/flatpak/install b/etc/flatpak/install new file mode 100644 index 0000000..7af97c8 --- /dev/null +++ b/etc/flatpak/install @@ -0,0 +1,16 @@ +org.gnome.Calculator +org.gnome.Calendar +org.gnome.Characters +org.gnome.clocks +org.gnome.Contacts +org.gnome.Epiphany +org.gnome.Evince +org.gnome.font-viewer +org.gnome.Loupe +org.gnome.Maps +org.gnome.Music +org.gnome.NautilusPreviewer +org.gnome.Snapshot +org.gnome.TextEditor +org.gnome.Totem +org.gnome.Weather \ No newline at end of file diff --git a/etc/flatpak/remotes.d/flathub.flatpakrepo b/etc/flatpak/remotes.d/flathub.flatpakrepo new file mode 100644 index 0000000..99c4786 --- /dev/null +++ b/etc/flatpak/remotes.d/flathub.flatpakrepo @@ -0,0 +1,8 @@ +[Flatpak Repo] +Title=Flathub +Url=https://dl.flathub.org/repo/ +Homepage=https://flathub.org/ +Comment=Central repository of Flatpak applications +Description=Central repository of Flatpak applications +Icon=https://dl.flathub.org/repo/logo.svg +GPGKey=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 diff --git a/etc/yafti.yml b/etc/yafti.yml index 83ea7e6..4bfab94 100644 --- a/etc/yafti.yml +++ b/etc/yafti.yml @@ -21,9 +21,6 @@ screens: - run: /usr/lib/fedora-third-party/fedora-third-party-opt-out - run: /usr/bin/fedora-third-party disable - run: flatpak remote-delete fedora --force - - run: flatpak remove --system --noninteractive --all - - run: flatpak remote-add --system --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo - - run: flatpak remote-modify --system flathub --no-filter --title="Flathub (System)" - run: flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo applications: source: yafti.screen.package @@ -36,70 +33,6 @@ screens: description: GNOME Apps default: true packages: - - Calculator: - package: org.gnome.Calculator - system: true - user: false - - Calendar: - package: org.gnome.Calendar - system: true - user: false - - Characters: - package: org.gnome.Characters - system: true - user: false - - Clocks: - package: org.gnome.clocks - system: true - user: false - - Contacts: - package: org.gnome.Contacts - system: true - user: false - - Document Viewer: - package: org.gnome.Evince - system: true - user: false - - Fonts: - package: org.gnome.font-viewer - system: true - user: false - - Loupe: - package: org.gnome.Loupe - system: true - user: false - - Maps: - package: org.gnome.Maps - system: true - user: false - - Music: - package: org.gnome.Music - system: true - user: false - - Nautilus Preview: - package: org.gnome.NautilusPreviewer - system: true - user: false - - Snapshot: - package: org.gnome.Snapshot - system: true - user: false - - Text Editor: - package: org.gnome.TextEditor - system: true - user: false - - Videos: - package: org.gnome.Totem - system: true - user: false - - Weather: - package: org.gnome.Weather - system: true - user: false - - Web: - package: org.gnome.Epiphany - system: true - user: false Utilities: description: Potentially useful apps for advanced users default: false diff --git a/usr/bin/ublue-flatpak-system-install b/usr/bin/ublue-flatpak-system-install new file mode 100755 index 0000000..5ff178f --- /dev/null +++ b/usr/bin/ublue-flatpak-system-install @@ -0,0 +1,5 @@ +#!/bin/bash + +cat /etc/flatpaks | while read line; do + flatpak install --system --noninteractive --no-pull flathub $line +done && mv /etc/flatpak/install /etc/flatpak/installed \ No newline at end of file From c4112902a169d9a0606d9e92e2bacf065a53b70f Mon Sep 17 00:00:00 2001 From: Cassidy James Blaede Date: Sun, 30 Jul 2023 11:38:20 +0300 Subject: [PATCH 2/2] fix: actually include the systemd unit --- etc/systemd/system/flatpak-system-install.service | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 etc/systemd/system/flatpak-system-install.service diff --git a/etc/systemd/system/flatpak-system-install.service b/etc/systemd/system/flatpak-system-install.service new file mode 100644 index 0000000..a6a7e7a --- /dev/null +++ b/etc/systemd/system/flatpak-system-install.service @@ -0,0 +1,10 @@ +[Unit] +Description=Install System Flatpak on boot +Documentation=https://github.com/ublue-os/endlish-oesque/issues/10 + +[Service] +Type=oneshot +ExecStart=/usr/bin/ublue-flatpak-system-install + +[Install] +WantedBy=multi-user.target \ No newline at end of file