From f4b3efccaef50e8d07cd3177b12b000957a7c0f5 Mon Sep 17 00:00:00 2001 From: Tomas Hrcka Date: Tue, 9 Feb 2021 14:55:45 +0100 Subject: [PATCH 01/29] Branching F34 from rawhide Signed-off-by: Tomas Hrcka --- fedora-34-updates.repo | 6 ++++++ fedora-34.repo | 6 ++++++ fedora-deepin.yaml | 4 ++-- fedora-kinoite.yaml | 4 ++-- fedora-lxqt.yaml | 4 ++-- fedora-mate.yaml | 4 ++-- fedora-pantheon.yaml | 4 ++-- fedora-rawhide.repo | 7 ------- fedora-silverblue.yaml | 4 ++-- fedora-xfce.yaml | 4 ++-- 10 files changed, 26 insertions(+), 21 deletions(-) create mode 100644 fedora-34-updates.repo create mode 100644 fedora-34.repo delete mode 100644 fedora-rawhide.repo diff --git a/fedora-34-updates.repo b/fedora-34-updates.repo new file mode 100644 index 0000000..e0e937d --- /dev/null +++ b/fedora-34-updates.repo @@ -0,0 +1,6 @@ +[fedora-34-updates] +name=Fedora 34 $basearch Updates +mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f34&arch=$basearch +enabled=0 +gpgcheck=1 +metadata_expire=1d \ No newline at end of file diff --git a/fedora-34.repo b/fedora-34.repo new file mode 100644 index 0000000..0bb56db --- /dev/null +++ b/fedora-34.repo @@ -0,0 +1,6 @@ +[fedora-f34] +name=Fedora f34 $basearch +mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=f34&arch=$basearch +enabled=0 +gpgcheck=0 +metadata_expire=1d diff --git a/fedora-deepin.yaml b/fedora-deepin.yaml index a6470e4..11edbe0 100644 --- a/fedora-deepin.yaml +++ b/fedora-deepin.yaml @@ -1,5 +1,5 @@ include: deepin-desktop-pkgs.yaml -ref: fedora/rawhide/${basearch}/deepin +ref: fedora/34/${basearch}/deepin rojig: name: fedora-deepin summary: "Fedora Deepin base image" @@ -9,4 +9,4 @@ packages: - gnome-software repos: - - fedora-rawhide + - fedora-34 diff --git a/fedora-kinoite.yaml b/fedora-kinoite.yaml index 25099f1..94d4be2 100644 --- a/fedora-kinoite.yaml +++ b/fedora-kinoite.yaml @@ -1,5 +1,5 @@ include: kde-desktop-pkgs.yaml -ref: fedora/rawhide/${basearch}/kinoite +ref: fedora/34/${basearch}/kinoite rojig: name: fedora-kde summary: "Fedora Kinoite (KDE) base image" @@ -16,4 +16,4 @@ packages: - ark repos: - - fedora-rawhide + - fedora-34 diff --git a/fedora-lxqt.yaml b/fedora-lxqt.yaml index 21ecf2b..eabd25e 100644 --- a/fedora-lxqt.yaml +++ b/fedora-lxqt.yaml @@ -1,5 +1,5 @@ include: lxqt-desktop-pkgs.yaml -ref: fedora/rawhide/${basearch}/lxqt +ref: fedora/34/${basearch}/lxqt rojig: name: fedora-lxqt summary: "Fedora LXQt base image" @@ -10,4 +10,4 @@ packages: - xdg-desktop-portal-kde repos: - - fedora-rawhide + - fedora-34 diff --git a/fedora-mate.yaml b/fedora-mate.yaml index 6080915..beacb4c 100644 --- a/fedora-mate.yaml +++ b/fedora-mate.yaml @@ -1,5 +1,5 @@ include: mate-desktop-pkgs.yaml -ref: fedora/rawhide/${basearch}/mate +ref: fedora/34/${basearch}/mate rojig: name: fedora-mate summary: "Fedora Mate base image" @@ -13,4 +13,4 @@ exclude-packages: - python3-unbound repos: - - fedora-rawhide + - fedora-34 diff --git a/fedora-pantheon.yaml b/fedora-pantheon.yaml index 31327f4..811d7f6 100644 --- a/fedora-pantheon.yaml +++ b/fedora-pantheon.yaml @@ -1,5 +1,5 @@ include: pantheon-desktop-pkgs.yaml -ref: fedora/rawhide/${basearch}/pantheon +ref: fedora/34/${basearch}/pantheon rojig: name: fedora-pantheon summary: "Fedora Pantheon base image" @@ -7,4 +7,4 @@ rojig: packages: repos: - - fedora-rawhide + - fedora-34 diff --git a/fedora-rawhide.repo b/fedora-rawhide.repo deleted file mode 100644 index 5881c94..0000000 --- a/fedora-rawhide.repo +++ /dev/null @@ -1,7 +0,0 @@ -[fedora-rawhide] -name=Fedora rawhide $basearch -#baseurl=https://download.fedoraproject.org/pub/fedora/linux/development/rawhide/$basearch/os/ -mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=$basearch -enabled=0 -gpgcheck=0 -metadata_expire=1d diff --git a/fedora-silverblue.yaml b/fedora-silverblue.yaml index f7f810a..f6db615 100644 --- a/fedora-silverblue.yaml +++ b/fedora-silverblue.yaml @@ -1,5 +1,5 @@ include: gnome-desktop-pkgs.yaml -ref: fedora/rawhide/${basearch}/silverblue +ref: fedora/34/${basearch}/silverblue rojig: name: fedora-silverblue summary: "Fedora Silverblue base image" @@ -16,4 +16,4 @@ packages: - evince-thumbnailer repos: - - fedora-rawhide + - fedora-34 diff --git a/fedora-xfce.yaml b/fedora-xfce.yaml index 4655808..088d1ea 100644 --- a/fedora-xfce.yaml +++ b/fedora-xfce.yaml @@ -1,5 +1,5 @@ include: xfce-desktop-pkgs.yaml -ref: fedora/rawhide/${basearch}/xfce +ref: fedora/34/${basearch}/xfce rojig: name: fedora-xfce summary: "Fedora XFCE base image" @@ -8,4 +8,4 @@ packages: # Portals for Flatpak - xdg-desktop-portal-gtk repos: - - fedora-rawhide + - fedora-34 From e9bafa89fe3e60eb4b10338eb1a3a866b360ef5a Mon Sep 17 00:00:00 2001 From: Tomas Hrcka Date: Tue, 9 Feb 2021 18:33:57 +0100 Subject: [PATCH 02/29] Fix mirrorlist URL Signed-off-by: Tomas Hrcka --- fedora-34.repo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora-34.repo b/fedora-34.repo index 0bb56db..7e3d722 100644 --- a/fedora-34.repo +++ b/fedora-34.repo @@ -1,6 +1,6 @@ [fedora-f34] name=Fedora f34 $basearch -mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=f34&arch=$basearch +mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-34&arch=$basearch enabled=0 gpgcheck=0 metadata_expire=1d From ce5deffce62b9fb54688fa58a3d121d1bead7e10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Wed, 17 Feb 2021 19:52:51 +0100 Subject: [PATCH 03/29] comps-sync f34 2020-02-18 --- fedora-common-ostree-pkgs.yaml | 6 ++++-- gnome-desktop-pkgs.yaml | 1 - kde-desktop-pkgs.yaml | 3 +-- mate-desktop-pkgs.yaml | 8 ++++---- xfce-desktop-pkgs.yaml | 1 - 5 files changed, 9 insertions(+), 10 deletions(-) diff --git a/fedora-common-ostree-pkgs.yaml b/fedora-common-ostree-pkgs.yaml index f99a8fd..d8527be 100644 --- a/fedora-common-ostree-pkgs.yaml +++ b/fedora-common-ostree-pkgs.yaml @@ -28,6 +28,7 @@ packages: - chrony - cifs-utils - colord + - compsize - coreutils - cpio - cryptsetup @@ -41,8 +42,8 @@ packages: - dhcp-client - dnsmasq - e2fsprogs - - earlyoom - ethtool + - exfatprogs - fedora-bookmarks - fedora-chromium-config - fedora-repos-modular @@ -72,9 +73,9 @@ packages: - hostname - hplip - hunspell + - ibus-anthy - ibus-gtk3 - ibus-hangul - - ibus-kkc - ibus-libpinyin - ibus-libzhuyin - ibus-m17n @@ -189,6 +190,7 @@ packages: - sudo - system-config-printer-udev - systemd + - systemd-oomd-defaults - systemd-udev - tar - thai-scalable-waree-fonts diff --git a/gnome-desktop-pkgs.yaml b/gnome-desktop-pkgs.yaml index fd31ff5..4a2901b 100644 --- a/gnome-desktop-pkgs.yaml +++ b/gnome-desktop-pkgs.yaml @@ -25,7 +25,6 @@ packages: - gnome-color-manager - gnome-control-center - gnome-disk-utility - - gnome-getting-started-docs - gnome-initial-setup - gnome-remote-desktop - gnome-session-wayland-session diff --git a/kde-desktop-pkgs.yaml b/kde-desktop-pkgs.yaml index 2a1afb6..2b3df0f 100644 --- a/kde-desktop-pkgs.yaml +++ b/kde-desktop-pkgs.yaml @@ -5,7 +5,6 @@ packages: - bluedevil - breeze-icon-theme - dolphin - - earlyoom - firewall-config - glibc-all-langpacks - gnome-keyring-pam @@ -29,7 +28,6 @@ packages: - konsole5 - kscreen - kscreenlocker - - ksysguard - kwalletmanager5 - kwin - pam-kwallet @@ -42,6 +40,7 @@ packages: - plasma-drkonqi - plasma-nm - plasma-pa + - plasma-systemmonitor - plasma-workspace - plasma-workspace-geolocation - plasma-workspace-xorg diff --git a/mate-desktop-pkgs.yaml b/mate-desktop-pkgs.yaml index 1f49c68..bfa91a2 100644 --- a/mate-desktop-pkgs.yaml +++ b/mate-desktop-pkgs.yaml @@ -23,10 +23,10 @@ packages: - dconf-editor - engrampa - eom - - f33-backgrounds-base - - f33-backgrounds-extras-base - - f33-backgrounds-extras-mate - - f33-backgrounds-mate + - f34-backgrounds-base + - f34-backgrounds-extras-base + - f34-backgrounds-extras-mate + - f34-backgrounds-mate - firefox - firewall-config - gnome-epub-thumbnailer diff --git a/xfce-desktop-pkgs.yaml b/xfce-desktop-pkgs.yaml index e473a98..def43f1 100644 --- a/xfce-desktop-pkgs.yaml +++ b/xfce-desktop-pkgs.yaml @@ -45,5 +45,4 @@ packages: - xfconf - xfdesktop - xfwm4 - - xfwm4-theme-nodoka - xfwm4-themes From 7a9e5da06f83b524d9295edbd41c85d69c1ae45d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 19 Feb 2021 10:47:49 +0100 Subject: [PATCH 04/29] repos: Fixup repo names and EOF --- fedora-34-updates.repo | 2 +- fedora-34.repo | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/fedora-34-updates.repo b/fedora-34-updates.repo index e0e937d..516e164 100644 --- a/fedora-34-updates.repo +++ b/fedora-34-updates.repo @@ -3,4 +3,4 @@ name=Fedora 34 $basearch Updates mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f34&arch=$basearch enabled=0 gpgcheck=1 -metadata_expire=1d \ No newline at end of file +metadata_expire=1d diff --git a/fedora-34.repo b/fedora-34.repo index 7e3d722..18b9b5c 100644 --- a/fedora-34.repo +++ b/fedora-34.repo @@ -1,6 +1,6 @@ -[fedora-f34] -name=Fedora f34 $basearch +[fedora-34] +name=Fedora 34 $basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-34&arch=$basearch enabled=0 -gpgcheck=0 +gpgcheck=1 metadata_expire=1d From 3fcb9eed981d18ee670a505dca432cdebe20ecfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 19 Feb 2021 10:54:35 +0100 Subject: [PATCH 05/29] Fix Rawhide -> F34 branching --- fedora-base.yaml | 4 ++-- fedora-common-ostree.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/fedora-base.yaml b/fedora-base.yaml index ed3c178..3601a31 100644 --- a/fedora-base.yaml +++ b/fedora-base.yaml @@ -1,5 +1,5 @@ include: fedora-common-ostree.yaml -ref: fedora/rawhide/${basearch}/base +ref: fedora/34/${basearch}/base rojig: name: fedora-base summary: "Fedora base image for alternative DE" @@ -12,4 +12,4 @@ packages: - xdg-desktop-portal-gtk repos: - - fedora-rawhide + - fedora-34 diff --git a/fedora-common-ostree.yaml b/fedora-common-ostree.yaml index e66c6cc..3018aff 100644 --- a/fedora-common-ostree.yaml +++ b/fedora-common-ostree.yaml @@ -1,4 +1,4 @@ -ref: fedora/rawhide/${basearch}/ostree-base +ref: fedora/34/${basearch}/ostree-base automatic_version_prefix: "34" mutate-os-release: "34" From 46439e6e429e2f39c74326ffdeccddc7a9c8f24b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 19 Feb 2021 10:59:03 +0100 Subject: [PATCH 06/29] Pre-enable updates repo This repo is currently empty but will be used after F34 is released. This is a noop for official variants built via Pungi but useful for unofficial ones. --- fedora-base.yaml | 1 + fedora-deepin.yaml | 1 + fedora-kinoite.yaml | 1 + fedora-lxqt.yaml | 1 + fedora-mate.yaml | 1 + fedora-pantheon.yaml | 1 + fedora-silverblue.yaml | 1 + fedora-xfce.yaml | 1 + 8 files changed, 8 insertions(+) diff --git a/fedora-base.yaml b/fedora-base.yaml index 3601a31..d0ed67e 100644 --- a/fedora-base.yaml +++ b/fedora-base.yaml @@ -13,3 +13,4 @@ packages: repos: - fedora-34 + - fedora-34-updates diff --git a/fedora-deepin.yaml b/fedora-deepin.yaml index 11edbe0..4808cd8 100644 --- a/fedora-deepin.yaml +++ b/fedora-deepin.yaml @@ -10,3 +10,4 @@ packages: repos: - fedora-34 + - fedora-34-updates diff --git a/fedora-kinoite.yaml b/fedora-kinoite.yaml index 94d4be2..67cddec 100644 --- a/fedora-kinoite.yaml +++ b/fedora-kinoite.yaml @@ -17,3 +17,4 @@ packages: repos: - fedora-34 + - fedora-34-updates diff --git a/fedora-lxqt.yaml b/fedora-lxqt.yaml index eabd25e..7106dfc 100644 --- a/fedora-lxqt.yaml +++ b/fedora-lxqt.yaml @@ -11,3 +11,4 @@ packages: repos: - fedora-34 + - fedora-34-updates diff --git a/fedora-mate.yaml b/fedora-mate.yaml index beacb4c..948010d 100644 --- a/fedora-mate.yaml +++ b/fedora-mate.yaml @@ -14,3 +14,4 @@ exclude-packages: repos: - fedora-34 + - fedora-34-updates diff --git a/fedora-pantheon.yaml b/fedora-pantheon.yaml index 811d7f6..455de5b 100644 --- a/fedora-pantheon.yaml +++ b/fedora-pantheon.yaml @@ -8,3 +8,4 @@ packages: repos: - fedora-34 + - fedora-34-updates diff --git a/fedora-silverblue.yaml b/fedora-silverblue.yaml index f6db615..908e8cf 100644 --- a/fedora-silverblue.yaml +++ b/fedora-silverblue.yaml @@ -17,3 +17,4 @@ packages: repos: - fedora-34 + - fedora-34-updates diff --git a/fedora-xfce.yaml b/fedora-xfce.yaml index 088d1ea..5da1f1b 100644 --- a/fedora-xfce.yaml +++ b/fedora-xfce.yaml @@ -9,3 +9,4 @@ packages: - xdg-desktop-portal-gtk repos: - fedora-34 + - fedora-34-updates From aa574371b8145cb8b4dd6c38ad56851e530d0b6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 19 Feb 2021 11:13:02 +0100 Subject: [PATCH 07/29] Use sqlite instead of bdb for rpmdb --- fedora-common-ostree.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fedora-common-ostree.yaml b/fedora-common-ostree.yaml index 3018aff..03e476a 100644 --- a/fedora-common-ostree.yaml +++ b/fedora-common-ostree.yaml @@ -42,6 +42,9 @@ etc-group-members: - wheel tmp-is-dir: true +# We can drop this when it's the rpm-ostree default +rpmdb: sqlite + postprocess-script: post.sh ignore-removed-users: From 8be943cc459d83c9d7eadb9b560f4ff4b0d0c489 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Tue, 23 Feb 2021 14:34:55 +0100 Subject: [PATCH 08/29] Include totem-video-thumbnailer for video thumbnailing in Nautilus https://pagure.io/fedora-workstation/issue/168 --- fedora-silverblue.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fedora-silverblue.yaml b/fedora-silverblue.yaml index 908e8cf..9f4980a 100644 --- a/fedora-silverblue.yaml +++ b/fedora-silverblue.yaml @@ -14,6 +14,9 @@ packages: # Include evince-thumbnailer otherwise PDF thumbnails won't work in Nautilus # https://github.com/fedora-silverblue/issue-tracker/issues/98 - evince-thumbnailer + # Include totem-video-thumbnailer for video thumbnailing in Nautilus + # https://pagure.io/fedora-workstation/issue/168 + - totem-video-thumbnailer repos: - fedora-34 From 943d7a4140f15cadc5e8858a7a2144035ce1aef8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 26 Feb 2021 12:51:22 +0100 Subject: [PATCH 09/29] comps-sync: Exclude python3-dnf-plugin-system-upgrade --- comps-sync-exclude-list.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/comps-sync-exclude-list.yml b/comps-sync-exclude-list.yml index 4aa2ed1..5f3cc4c 100644 --- a/comps-sync-exclude-list.yml +++ b/comps-sync-exclude-list.yml @@ -61,6 +61,7 @@ exclude_list: - dnf - dnf-plugins-core - deltarpm + - python3-dnf-plugin-system-upgrade # We use fedora-release-silverblue instead - fedora-release-workstation # Really not worth listing explicitly From fb9e76052587c8f19cad7269ec76cec4c9872dbf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Wed, 24 Mar 2021 15:42:12 +0100 Subject: [PATCH 10/29] Kinoite: Explicitely exclude PackageKit & Offline updates support --- fedora-kinoite.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/fedora-kinoite.yaml b/fedora-kinoite.yaml index 67cddec..f3a54cf 100644 --- a/fedora-kinoite.yaml +++ b/fedora-kinoite.yaml @@ -15,6 +15,11 @@ packages: # Provide an archive manager by default - ark +# Make sure the following are not pulled in when Recommended by other packages +exclude-packages: + - plasma-discover-offline-updates + - plasma-discover-packagekit + repos: - fedora-34 - fedora-34-updates From 17cd8d48c88f4c2b27153b9b96a1dbbebb3911dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Thu, 25 Mar 2021 12:48:13 +0100 Subject: [PATCH 11/29] comps-sync: Exclude arch specific s390utils-base package --- comps-sync-exclude-list.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/comps-sync-exclude-list.yml b/comps-sync-exclude-list.yml index 5f3cc4c..16173f7 100644 --- a/comps-sync-exclude-list.yml +++ b/comps-sync-exclude-list.yml @@ -41,6 +41,7 @@ exclude_list: # Architecture specific packages - powerpc-utils - lsvpd + - s390utils-base base-x: # x86 specific packages. Added back by fedora-common-ostree.yaml - xorg-x11-drv-intel From af5d41326418700e9e08ce2cbe7d83683719ae83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Mar 2021 10:43:06 +0100 Subject: [PATCH 12/29] comps-sync f34 2021-03-25 --- fedora-common-ostree-pkgs.yaml | 1 - kde-desktop-pkgs.yaml | 1 + pantheon-desktop-pkgs.yaml | 3 ++- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/fedora-common-ostree-pkgs.yaml b/fedora-common-ostree-pkgs.yaml index d8527be..0903ce7 100644 --- a/fedora-common-ostree-pkgs.yaml +++ b/fedora-common-ostree-pkgs.yaml @@ -155,7 +155,6 @@ packages: - pipewire-gstreamer - pipewire-pulseaudio - pipewire-utils - - plymouth - plymouth-system-theme - policycoreutils - policycoreutils-python-utils diff --git a/kde-desktop-pkgs.yaml b/kde-desktop-pkgs.yaml index 2b3df0f..f75362e 100644 --- a/kde-desktop-pkgs.yaml +++ b/kde-desktop-pkgs.yaml @@ -41,6 +41,7 @@ packages: - plasma-nm - plasma-pa - plasma-systemmonitor + - plasma-thunderbolt - plasma-workspace - plasma-workspace-geolocation - plasma-workspace-xorg diff --git a/pantheon-desktop-pkgs.yaml b/pantheon-desktop-pkgs.yaml index dd97c4d..cc4df6e 100644 --- a/pantheon-desktop-pkgs.yaml +++ b/pantheon-desktop-pkgs.yaml @@ -11,10 +11,12 @@ packages: - elementary-greeter - elementary-icon-theme - elementary-music + - elementary-notifications - elementary-photos - elementary-print - elementary-screenshot-tool - elementary-shortcut-overlay + - elementary-sideload - elementary-sound-theme - elementary-terminal - elementary-theme @@ -36,7 +38,6 @@ packages: - switchboard-plug-mouse-touchpad - switchboard-plug-networking - switchboard-plug-notifications - - switchboard-plug-onlineaccounts - switchboard-plug-pantheon-shell - switchboard-plug-printers - switchboard-plug-sharing From ea80b2a224e06c8ab36e84bd5612c8eb9f82b6c2 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 29 Mar 2021 17:16:19 +0200 Subject: [PATCH 13/29] fedora-common-ostree: Drop flatpak-builder People who do local flatpak builds can use flatpak-builder from toolbox, or just use flathub gnome-builder that bundles flatpak-builder. --- fedora-common-ostree.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/fedora-common-ostree.yaml b/fedora-common-ostree.yaml index 03e476a..cf68221 100644 --- a/fedora-common-ostree.yaml +++ b/fedora-common-ostree.yaml @@ -17,7 +17,6 @@ packages: - toolbox # Flatpak support - flatpak - - flatpak-builder - xdg-desktop-portal # HFS filesystem tools for Apple hardware # See https://github.com/projectatomic/rpm-ostree/issues/1380 From 519b1474211760981c710e6355634b9524fc59b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Thu, 1 Apr 2021 12:18:39 +0200 Subject: [PATCH 14/29] Kinoite: Replace plasma-pk-updates by plasma-discover-notifier plasma-pk-updates was previously excluded and plasma-discover-notifier will gain support for rpm-ostree based systems in an upcoming release. Flatpak and fwupd support is already functionnal. --- comps-sync-exclude-list.yml | 1 - kde-desktop-pkgs.yaml | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/comps-sync-exclude-list.yml b/comps-sync-exclude-list.yml index 16173f7..a80954e 100644 --- a/comps-sync-exclude-list.yml +++ b/comps-sync-exclude-list.yml @@ -171,7 +171,6 @@ desktop_exclude_list: - abrt-desktop - cups-pk-helper - dnfdragora - - plasma-pk-updates # Non-critical apps -> Flatpak - akregator - cagibi diff --git a/kde-desktop-pkgs.yaml b/kde-desktop-pkgs.yaml index f75362e..321c11d 100644 --- a/kde-desktop-pkgs.yaml +++ b/kde-desktop-pkgs.yaml @@ -37,6 +37,7 @@ packages: - plasma-desktop - plasma-desktop-doc - plasma-discover + - plasma-discover-notifier - plasma-drkonqi - plasma-nm - plasma-pa From b873c8b97c067c470bfac74fc201deefb9d6635c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Sat, 10 Apr 2021 16:41:33 +0200 Subject: [PATCH 15/29] comps-sync f34 2021-04-10 --- kde-desktop-pkgs.yaml | 1 - mate-desktop-pkgs.yaml | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/kde-desktop-pkgs.yaml b/kde-desktop-pkgs.yaml index 321c11d..57d38db 100644 --- a/kde-desktop-pkgs.yaml +++ b/kde-desktop-pkgs.yaml @@ -9,7 +9,6 @@ packages: - glibc-all-langpacks - gnome-keyring-pam - initial-setup-gui - - kcm_systemd - kde-gtk-config - kde-print-manager - kde-settings-pulseaudio diff --git a/mate-desktop-pkgs.yaml b/mate-desktop-pkgs.yaml index bfa91a2..cadcaad 100644 --- a/mate-desktop-pkgs.yaml +++ b/mate-desktop-pkgs.yaml @@ -94,3 +94,5 @@ packages: - system-config-printer-applet - usermode-gtk - xdg-user-dirs-gtk + - xmodmap + - xrdb From 61e7b69d91586d83036ab8bd165861abd7b5b899 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Mon, 12 Apr 2021 12:31:22 +0200 Subject: [PATCH 16/29] comps-sync-exclude: Keep ntfs-3g (already included) ntfs-3g is required for proper RW support of NTFS partitions and is already included via a dependency from another package. --- comps-sync-exclude-list.yml | 1 - fedora-common-ostree-pkgs.yaml | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/comps-sync-exclude-list.yml b/comps-sync-exclude-list.yml index a80954e..cbfb2de 100644 --- a/comps-sync-exclude-list.yml +++ b/comps-sync-exclude-list.yml @@ -108,7 +108,6 @@ exclude_list: # filesystem tools, again priv container - symlinks - dosfstools - - ntfs-3g # Misc - dos2unix # Gnome specific diff --git a/fedora-common-ostree-pkgs.yaml b/fedora-common-ostree-pkgs.yaml index 0903ce7..d3db31c 100644 --- a/fedora-common-ostree-pkgs.yaml +++ b/fedora-common-ostree-pkgs.yaml @@ -140,6 +140,7 @@ packages: - nfs-utils - nss-altfiles - nss-mdns + - ntfs-3g - ntfsprogs - opensc - openssh-clients From f1094db244f80d805347f3e6d8961059a265238e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Mon, 19 Apr 2021 18:41:08 +0200 Subject: [PATCH 17/29] comps-sync f34 2021-04-23 --- fedora-common-ostree-pkgs.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fedora-common-ostree-pkgs.yaml b/fedora-common-ostree-pkgs.yaml index d3db31c..df5fcb3 100644 --- a/fedora-common-ostree-pkgs.yaml +++ b/fedora-common-ostree-pkgs.yaml @@ -115,6 +115,7 @@ packages: - libertas-sd8686-firmware - libertas-sd8787-firmware - libertas-usb8388-firmware + - libglvnd-gles - linux-firmware - logrotate - lohit-assamese-fonts @@ -156,6 +157,7 @@ packages: - pipewire-gstreamer - pipewire-pulseaudio - pipewire-utils + - plymouth - plymouth-system-theme - policycoreutils - policycoreutils-python-utils From 4b9a6da6f1b73500841b302ed4be07a6a9040073 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Sun, 17 Nov 2019 16:21:54 +0100 Subject: [PATCH 18/29] Remove unwanted packages for pitti's workstation --- fedora-common-ostree.yaml | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/fedora-common-ostree.yaml b/fedora-common-ostree.yaml index cf68221..01d4f56 100644 --- a/fedora-common-ostree.yaml +++ b/fedora-common-ostree.yaml @@ -8,31 +8,12 @@ include: fedora-common-ostree-pkgs.yaml packages: - fedora-release-silverblue - git-core - - lvm2 - rpm-ostree # Container management - buildah - podman - skopeo - toolbox - # Flatpak support - - flatpak - - xdg-desktop-portal - # HFS filesystem tools for Apple hardware - # See https://github.com/projectatomic/rpm-ostree/issues/1380 - - hfsplus-tools - # Bundle the minimal -devel packages needed to build a kernel. - # This is needed because we can't rely on layering to install these - # due to version conflicts with the base image. - - glibc-devel - - kernel-devel - - elfutils-libelf-devel - # Contains default ostree remote config to be used on client's - # system for fetching ostree update - - fedora-repos-ostree - # the archive repo for more reliable package layering - # https://github.com/coreos/fedora-coreos-tracker/issues/400 - - fedora-repos-archive selinux: true documentation: true @@ -79,13 +60,6 @@ packages-x86_64: - microcode_ctl - mcelog - thermald - - hyperv-daemons - - open-vm-tools-desktop - - virtualbox-guest-additions - - xorg-x11-drv-intel - - xorg-x11-drv-openchrome - - xorg-x11-drv-vesa - - xorg-x11-drv-vmware # Make sure the following are not pulled in when Recommended by other packages exclude-packages: From a3397a39b9e6998a4d7ef5d1bc4fbffd48ab3a31 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Mon, 17 Jun 2019 21:42:46 +0200 Subject: [PATCH 19/29] Define tree for pitti's workstation Also add helper script for running the ostree build. --- 2015-RH-IT-Root-CA.pem | 25 +++++++ README.md | 27 ++++++++ compose.sh | 12 ++++ fedora-34-updates.repo | 7 ++ fedora-common-ostree.yaml | 2 - pitti-desktop.yaml | 142 ++++++++++++++++++++++++++++++++++++++ pitti-post.sh | 40 +++++++++++ rpmfusion.repo | 18 +++++ 8 files changed, 271 insertions(+), 2 deletions(-) create mode 100644 2015-RH-IT-Root-CA.pem create mode 100755 compose.sh create mode 100644 pitti-desktop.yaml create mode 100755 pitti-post.sh create mode 100644 rpmfusion.repo diff --git a/2015-RH-IT-Root-CA.pem b/2015-RH-IT-Root-CA.pem new file mode 100644 index 0000000..f306f00 --- /dev/null +++ b/2015-RH-IT-Root-CA.pem @@ -0,0 +1,25 @@ +-----BEGIN CERTIFICATE----- +MIIENDCCAxygAwIBAgIJANunI0D662cnMA0GCSqGSIb3DQEBCwUAMIGlMQswCQYD +VQQGEwJVUzEXMBUGA1UECAwOTm9ydGggQ2Fyb2xpbmExEDAOBgNVBAcMB1JhbGVp +Z2gxFjAUBgNVBAoMDVJlZCBIYXQsIEluYy4xEzARBgNVBAsMClJlZCBIYXQgSVQx +GzAZBgNVBAMMElJlZCBIYXQgSVQgUm9vdCBDQTEhMB8GCSqGSIb3DQEJARYSaW5m +b3NlY0ByZWRoYXQuY29tMCAXDTE1MDcwNjE3MzgxMVoYDzIwNTUwNjI2MTczODEx +WjCBpTELMAkGA1UEBhMCVVMxFzAVBgNVBAgMDk5vcnRoIENhcm9saW5hMRAwDgYD +VQQHDAdSYWxlaWdoMRYwFAYDVQQKDA1SZWQgSGF0LCBJbmMuMRMwEQYDVQQLDApS +ZWQgSGF0IElUMRswGQYDVQQDDBJSZWQgSGF0IElUIFJvb3QgQ0ExITAfBgkqhkiG +9w0BCQEWEmluZm9zZWNAcmVkaGF0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBALQt9OJQh6GC5LT1g80qNh0u50BQ4sZ/yZ8aETxt+5lnPVX6MHKz +bfwI6nO1aMG6j9bSw+6UUyPBHP796+FT/pTS+K0wsDV7c9XvHoxJBJJU38cdLkI2 +c/i7lDqTfTcfLL2nyUBd2fQDk1B0fxrskhGIIZ3ifP1Ps4ltTkv8hRSob3VtNqSo +GxkKfvD2PKjTPxDPWYyruy9irLZioMffi3i/gCut0ZWtAyO3MVH5qWF/enKwgPES +X9po+TdCvRB/RUObBaM761EcrLSM1GqHNueSfqnho3AjLQ6dBnPWlo638Zm1VebK +BELyhkLWMSFkKwDmne0jQ02Y4g075vCKvCsCAwEAAaNjMGEwHQYDVR0OBBYEFH7R +4yC+UehIIPeuL8Zqw3PzbgcZMB8GA1UdIwQYMBaAFH7R4yC+UehIIPeuL8Zqw3Pz +bgcZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEB +CwUAA4IBAQBDNvD2Vm9sA5A9AlOJR8+en5Xz9hXcxJB5phxcZQ8jFoG04Vshvd0e +LEnUrMcfFgIZ4njMKTQCM4ZFUPAieyLx4f52HuDopp3e5JyIMfW+KFcNIpKwCsak +oSoKtIUOsUJK7qBVZxcrIyeQV2qcYOeZhtS5wBqIwOAhFwlCET7Ze58QHmS48slj +S9K0JAcps2xdnGu0fkzhSQxY8GPQNFTlr6rYld5+ID/hHeS76gq0YG3q6RLWRkHf +4eTkRjivAlExrFzKcljC4axKQlnOvVAzz+Gm32U0xPBF4ByePVxCJUHw1TsyTmel +RxNEp7yHoXcwn+fXna+t5JWh1gxUZty3 +-----END CERTIFICATE----- diff --git a/README.md b/README.md index 31f49b8..b0eb74d 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,30 @@ +Martin Pitt's desktop +===================== + +This is an [rpm-ostree](https://coreos.github.io/rpm-ostree/) based minimal +[Fedora](https://getfedora.org/) developer desktop with the [sway window manager](https://swaywm.org/) and [podman](https://podman.io/)/[toolbox](https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/) for doing development and running less common graphical applications. + +It gets [automatically built](.github/workflows/build.yml) every week and [published to my server](https://piware.de/ostree/pitti-workstation/). + +To use it from an existing OSTree based system like [Fedora CoreOS](https://getfedora.org/coreos) or [Fedora Silverblue](https://docs.fedoraproject.org/en-US/fedora-silverblue/), add my server URL as new remote and rebase your tree to it: + +```sh +sudo ostree remote add --no-gpg-verify piware https://piware.de/ostree/pitti-workstation/ +sudo rpm-ostree rebase piware:pitti-desktop +``` + +After that, you can install weekly updates with + +``` +sudo rpm-ostree upgrade +``` + +If anything goes wrong, you can go back to the previous version with `sudo rpm-ostree rollback`. + + +Original README for [workstation-ostree-config](https://pagure.io/workstation-ostree-config) +============================================= + For some background, see: - https://fedoraproject.org/wiki/Workstation/AtomicWorkstation diff --git a/compose.sh b/compose.sh new file mode 100755 index 0000000..101da94 --- /dev/null +++ b/compose.sh @@ -0,0 +1,12 @@ +#!/bin/sh +set -eu +CACHE=/var/cache/ostree +REPO=/var/tmp/repo + +mkdir -p $CACHE + +if [ ! -d $REPO/objects ]; then + ostree --repo=$REPO init --mode=archive-z2 +fi + +rpm-ostree compose tree --unified-core --cachedir=$CACHE --repo=$REPO pitti-desktop.yaml diff --git a/fedora-34-updates.repo b/fedora-34-updates.repo index 516e164..e107df5 100644 --- a/fedora-34-updates.repo +++ b/fedora-34-updates.repo @@ -4,3 +4,10 @@ mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f34& enabled=0 gpgcheck=1 metadata_expire=1d + +[fedora-34-updates-testing] +name=Fedora 34 $basearch Updates +mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f34&arch=$basearch +enabled=0 +gpgcheck=1 +metadata_expire=1d diff --git a/fedora-common-ostree.yaml b/fedora-common-ostree.yaml index 01d4f56..83c952e 100644 --- a/fedora-common-ostree.yaml +++ b/fedora-common-ostree.yaml @@ -3,8 +3,6 @@ ref: fedora/34/${basearch}/ostree-base automatic_version_prefix: "34" mutate-os-release: "34" -include: fedora-common-ostree-pkgs.yaml - packages: - fedora-release-silverblue - git-core diff --git a/pitti-desktop.yaml b/pitti-desktop.yaml new file mode 100644 index 0000000..5ce1473 --- /dev/null +++ b/pitti-desktop.yaml @@ -0,0 +1,142 @@ +include: fedora-common-ostree.yaml + +ref: pitti-desktop +rojig: + name: pitti-desktop + summary: "Pitti Desktop" + license: MIT + +repos: + - fedora-34 + - fedora-34-updates + - fedora-34-updates-testing + - rpmfusion-free + - rpmfusion-free-updates + +packages: +# hardware/drivers + - kernel + - kernel-modules-extra + - iwl6000g2a-firmware + - iwl7260-firmware + - alsa-sof-firmware + - NetworkManager-wifi + - NetworkManager-openvpn-gnome + - sane-backends + - sane-backends-drivers-scanners + - powertop + - iwd + - udisks2-lvm2 + - opensc +# basic system + - acl + - attr + - basesystem + - cryptsetup + - dnsmasq + - fedora-workstation-backgrounds + - filesystem + - glibc-langpack-de + - glibc-langpack-en + - hostname + - iproute + - kbd + - nss-altfiles + - pciutils + - sudo + - usbutils +# shell tools and development + - bc + - gnupg2 + - fpaste + - lsof + - man-db + - mtr + - tree + - bzip2 + - zip + - unzip + - vim-enhanced + - ranger + - bash-completion + - fish + - qemu-system-x86-core + - qemu-ui-sdl + - qemu-img + - openvpn + - mutt + - nmap-ncat + - isync + - weechat + - duplicity + - openssh-server + - systemd-container + - git + - patchutils + - make + - strace + - wget + - w3m + - cockpit-system + - cockpit-ws + - syncthing + - krb5-workstation + +# desktop plumbing/apps + - dejavu-sans-fonts + - dejavu-serif-fonts + - dejavu-sans-mono-fonts + - fontawesome-fonts + - google-noto-emoji-color-fonts + + - gvfs-mtp + - pulseaudio-utils + - alsa-plugins-pulseaudio + - gstreamer1-plugins-good + - gstreamer1-plugins-ugly + - gstreamer1-libav + # for wf-recorder + - libavdevice + + - pavucontrol + - pcmanfm + - simple-scan + - nm-connection-editor + - eog + - evince + - rhythmbox + - gnome-keyring + - pinentry-gnome3 + - lxpolkit + - lxterminal + - gnome-disk-utility + - gtimelog + +# sway/wayland desktop + - sway + - swayidle + - swaylock + - kanshi + - mako + - waybar + - slurp + - grim + - xorg-x11-server-Xwayland + - firefox-wayland + - wofi + - brightnessctl + - wl-clipboard + +exclude-packages: + # recommended by sway + - alacritty + - brltty + - glibc-all-langpacks + - xdg-desktop-portal-wlr + # recommended by gtimelog + - yelp + +add-files: + - ["2015-RH-IT-Root-CA.pem", "/etc/pki/ca-trust/source/anchors/2015-RH-IT-Root-CA.pem"] + +postprocess-script: pitti-post.sh diff --git a/pitti-post.sh b/pitti-post.sh new file mode 100755 index 0000000..5491324 --- /dev/null +++ b/pitti-post.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +set -xeuo pipefail + +# Enable SysRQ +echo 'kernel.sysrq = 1' > /usr/lib/sysctl.d/90-sysrq.conf + +# power saving +echo 'blacklist e1000e' > /usr/lib/modprobe.d/blacklist-local.conf + +# NetworkManager config +cat < /usr/lib/NetworkManager/conf.d/local.conf +[main] +plugins= + +[device] +wifi.backend=iwd +EOF +ln -sfn ../iwd.service /usr/lib/systemd/system/multi-user.target.wants/iwd.service +ln -sfn /run/NetworkManager/resolv.conf /etc/resolv.conf + +# enable other units +mkdir -p /usr/lib/systemd/system/getty.target.wants +ln -s ../getty@.service /usr/lib/systemd/system/getty.target.wants/getty@tty1.service +ln -s ../systemd-timesyncd.service /usr/lib/systemd/system/sysinit.target.wants/systemd-timesyncd.service +ln -s ../cockpit.socket /usr/lib/systemd/system/sockets.target.wants/cockpit.socket +ln -s ../sshd.socket /usr/lib/systemd/system/sockets.target.wants/sshd.socket + +# disable unwanted services +ln -sfn /dev/null /usr/lib/systemd/user/at-spi-dbus-bus.service + +# move OS systemd unit defaults to /usr +cp -a --verbose /etc/systemd/system /etc/systemd/user /usr/lib/systemd/ +rm -r /etc/systemd/system /etc/systemd/user + +# avoid LVM spew in /etc +sed -i 's/backup = 1/backup = 0/; s/archive = 1/archive = 0/' /etc/lvm/lvm.conf + +# update for Red Hat certificate +ln -s /etc/pki/ca-trust/source/anchors/2015-RH-IT-Root-CA.pem /etc/pki/tls/certs/2015-RH-IT-Root-CA.pem +update-ca-trust diff --git a/rpmfusion.repo b/rpmfusion.repo new file mode 100644 index 0000000..e826798 --- /dev/null +++ b/rpmfusion.repo @@ -0,0 +1,18 @@ +[rpmfusion-free] +name=RPM Fusion for Fedora $releasever - Free +#baseurl=http://download1.rpmfusion.org/free/fedora/releases/$releasever/Everything/$basearch/os/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-34&arch=$basearch +enabled=1 +metadata_expire=14d +type=rpm-md +gpgcheck=0 + +[rpmfusion-free-updates] +name=RPM Fusion for Fedora $releasever - Free - Updates +#baseurl=http://download1.rpmfusion.org/free/fedora/updates/$releasever/$basearch/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-34&arch=$basearch +enabled=1 +enabled_metadata=1 +type=rpm-md +gpgcheck=0 +repo_gpgcheck=0 From cb9799f779230105ddb5c4a408727bc1dcd60430 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Sat, 26 Sep 2020 17:25:01 +0200 Subject: [PATCH 20/29] Enable systemd-homed This requires some PAM config updates and disabling SELinux. --- pitti-post.sh | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/pitti-post.sh b/pitti-post.sh index 5491324..a5441e5 100755 --- a/pitti-post.sh +++ b/pitti-post.sh @@ -18,10 +18,69 @@ EOF ln -sfn ../iwd.service /usr/lib/systemd/system/multi-user.target.wants/iwd.service ln -sfn /run/NetworkManager/resolv.conf /etc/resolv.conf +# set up PAM for systemd-homed (https://bugzilla.redhat.com/show_bug.cgi?id=1806949) +patch /etc/pam.d/system-auth < Date: Sat, 12 Dec 2020 19:41:13 +0100 Subject: [PATCH 21/29] Add GitHub workflow for building the OSTree repository Also add a script to download and unpack the artifact on my server's `public_html/`. --- .github/workflows/build.yml | 32 ++++++++++++++++++++++++++++++++ github-fetch.sh | 20 ++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 .github/workflows/build.yml create mode 100755 github-fetch.sh diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..9d791b3 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,32 @@ +name: build +on: + schedule: + - cron: 0 2 * * 6 + workflow_dispatch: +jobs: + build: + runs-on: ubuntu-latest + container: + image: docker.io/fedora:latest + # Fix SELinux for the built OSTree: https://github.com/coreos/rpm-ostree/issues/1943 + options: --privileged --security-opt label:disable + steps: + - name: Install dependencies + run: dnf install -y rpm-ostree selinux-policy selinux-policy-targeted policycoreutils + + - name: Clone repository + uses: actions/checkout@v2 + + - name: Build OSTree + run: ./compose.sh + + # upload-artifact@v2 has trouble with tens of thousands of files + - name: Create repo tarball + run: tar -czf /var/tmp/repo.tar.gz -C /var/tmp/repo . + + - name: Create repository artifact + uses: actions/upload-artifact@v2 + with: + name: repository + path: /var/tmp/repo.tar.gz + retention-days: 5 diff --git a/github-fetch.sh b/github-fetch.sh new file mode 100755 index 0000000..ebf972e --- /dev/null +++ b/github-fetch.sh @@ -0,0 +1,20 @@ +#!/bin/sh +# Download built GitHub OSTree repository artifact and unpack it into a plain directory +set -eux + +# download latest repo build +REPO_FINAL="$(dirname $0)/pitti-workstation" +REPO="${REPO_FINAL}.new" + +CURL="curl -u token:$(cat ~/.config/github-token) --show-error --fail" +RESPONSE=$($CURL --silent https://api.github.com/repos/martinpitt/ostree-pitti-workstation/actions/artifacts) +ZIP=$(echo "$RESPONSE" | jq --raw-output '.artifacts | map(select(.name == "repository"))[0].archive_download_url') +echo "INFO: Downloading $ZIP ..." +[ -e /tmp/repository.zip ] || $CURL -L -o /tmp/repository.zip "$ZIP" +rm -rf "$REPO" +mkdir -p "$REPO" +unzip -p /tmp/repository.zip | tar -xzC "$REPO" +rm /tmp/repository.zip +[ ! -e "$REPO_FINAL" ] || mv "${REPO_FINAL}" "${REPO_FINAL}.old" +mv "$REPO" "$REPO_FINAL" +rm -rf "${REPO_FINAL}.old" From 2e9e416b508511dcae783f10f3b2818da20d8d07 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Fri, 8 Jan 2021 08:46:53 +0100 Subject: [PATCH 22/29] Move back from iwd to wpa_supplicant iwd has a really strange behaviour of randomly interrupting the wifi connection: Received Deauthentication event, reason: 4, from_ap: false This also interrupts VPN. This does not happen with wpasupplicant. https://bugzilla.redhat.com/show_bug.cgi?id=1915641 --- pitti-desktop.yaml | 1 + pitti-post.sh | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pitti-desktop.yaml b/pitti-desktop.yaml index 5ce1473..14ed529 100644 --- a/pitti-desktop.yaml +++ b/pitti-desktop.yaml @@ -26,6 +26,7 @@ packages: - sane-backends-drivers-scanners - powertop - iwd + - wpa_supplicant - udisks2-lvm2 - opensc # basic system diff --git a/pitti-post.sh b/pitti-post.sh index a5441e5..f68fee3 100755 --- a/pitti-post.sh +++ b/pitti-post.sh @@ -13,9 +13,9 @@ cat < /usr/lib/NetworkManager/conf.d/local.conf plugins= [device] -wifi.backend=iwd +#wifi.backend=iwd EOF -ln -sfn ../iwd.service /usr/lib/systemd/system/multi-user.target.wants/iwd.service +#ln -sfn ../iwd.service /usr/lib/systemd/system/multi-user.target.wants/iwd.service ln -sfn /run/NetworkManager/resolv.conf /etc/resolv.conf # set up PAM for systemd-homed (https://bugzilla.redhat.com/show_bug.cgi?id=1806949) From ce6305d557f9494872535b93ff2b930907ba3c96 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Sat, 1 May 2021 13:42:34 +0200 Subject: [PATCH 23/29] Install selinux-policy-targeted Otherwise latest rpm-ostree fails with ``` Writing rpmdb... done error: Loading pkgcache branch rpmostree/pkg/adwaita-cursor-theme/40.0-2.fc34.noarch: SELinux enabled, but no policy found ``` --- pitti-desktop.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pitti-desktop.yaml b/pitti-desktop.yaml index 14ed529..1c299b9 100644 --- a/pitti-desktop.yaml +++ b/pitti-desktop.yaml @@ -44,6 +44,8 @@ packages: - kbd - nss-altfiles - pciutils + # don't care, but rpm-ostree build fails otherwise + - selinux-policy-targeted - sudo - usbutils # shell tools and development From 8a869f9d6da8b756e774d61b45a9880d91eca4ee Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Sat, 1 May 2021 13:49:27 +0200 Subject: [PATCH 24/29] Unignore flatpak --- fedora-common-ostree.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fedora-common-ostree.yaml b/fedora-common-ostree.yaml index 83c952e..3818b66 100644 --- a/fedora-common-ostree.yaml +++ b/fedora-common-ostree.yaml @@ -12,6 +12,9 @@ packages: - podman - skopeo - toolbox + # Flatpak support + - flatpak + - xdg-desktop-portal selinux: true documentation: true From 4f8bee9d2337e001e6cccd8ad6febd32a3729940 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Sat, 1 May 2021 13:50:13 +0200 Subject: [PATCH 25/29] Install xdg-desktop-portal-gtk for proper flatpak app support --- pitti-desktop.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/pitti-desktop.yaml b/pitti-desktop.yaml index 1c299b9..9454555 100644 --- a/pitti-desktop.yaml +++ b/pitti-desktop.yaml @@ -100,6 +100,7 @@ packages: - gstreamer1-libav # for wf-recorder - libavdevice + - xdg-desktop-portal-gtk - pavucontrol - pcmanfm From e0217f59e04b51019a0234277063206e383b0a41 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Tue, 4 May 2021 06:02:58 +0200 Subject: [PATCH 26/29] Move to systemd-resolved For per-interface resolution --- pitti-post.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pitti-post.sh b/pitti-post.sh index f68fee3..1a4032c 100755 --- a/pitti-post.sh +++ b/pitti-post.sh @@ -16,7 +16,8 @@ plugins= #wifi.backend=iwd EOF #ln -sfn ../iwd.service /usr/lib/systemd/system/multi-user.target.wants/iwd.service -ln -sfn /run/NetworkManager/resolv.conf /etc/resolv.conf + +ln -sfn /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf # set up PAM for systemd-homed (https://bugzilla.redhat.com/show_bug.cgi?id=1806949) patch /etc/pam.d/system-auth < Date: Tue, 8 Jun 2021 19:20:35 +0200 Subject: [PATCH 27/29] Add rofimoji Nice wofi based emoji search. --- pitti-desktop.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/pitti-desktop.yaml b/pitti-desktop.yaml index 9454555..d8aae02 100644 --- a/pitti-desktop.yaml +++ b/pitti-desktop.yaml @@ -115,6 +115,7 @@ packages: - lxterminal - gnome-disk-utility - gtimelog + - rofimoji # sway/wayland desktop - sway From 74d1b0827e64f9eb00dcb050cf530693d8ecfb9c Mon Sep 17 00:00:00 2001 From: Vladan Popovic Date: Thu, 17 Jun 2021 00:49:38 +0200 Subject: [PATCH 28/29] X1 Carbon Gen 7 Sway Desktop --- README.md | 22 +-- compose.sh | 2 +- config/i3status-rust/config.toml | 78 ++++++++ config/modprobe.d/i2c_i801-blacklist.conf | 1 + config/modprobe.d/i915.conf | 4 + config/sway-service.desktop | 6 + config/sway-service.sh | 7 + config/swaylock/config | 8 + config/systemd/firefox.service | 10 + config/systemd/mako.service | 15 ++ config/systemd/nm-applet.service | 14 ++ config/systemd/sway-session.target | 6 + config/systemd/sway.service | 14 ++ config/systemd/swayidle.service | 13 ++ config/systemd/swaylock.service | 11 ++ config/systemd/wayland-session.target | 16 ++ config/waybar/config | 95 ++++++++++ config/waybar/style.css | 213 ++++++++++++++++++++++ pitti-desktop.yaml | 147 --------------- pitti-post.sh | 101 ---------- post.sh | 10 +- x1-gen7-sway-desktop.yaml | 156 ++++++++++++++++ 22 files changed, 677 insertions(+), 272 deletions(-) create mode 100644 config/i3status-rust/config.toml create mode 100644 config/modprobe.d/i2c_i801-blacklist.conf create mode 100644 config/modprobe.d/i915.conf create mode 100644 config/sway-service.desktop create mode 100755 config/sway-service.sh create mode 100644 config/swaylock/config create mode 100644 config/systemd/firefox.service create mode 100644 config/systemd/mako.service create mode 100644 config/systemd/nm-applet.service create mode 100644 config/systemd/sway-session.target create mode 100644 config/systemd/sway.service create mode 100644 config/systemd/swayidle.service create mode 100644 config/systemd/swaylock.service create mode 100644 config/systemd/wayland-session.target create mode 100644 config/waybar/config create mode 100644 config/waybar/style.css delete mode 100644 pitti-desktop.yaml delete mode 100755 pitti-post.sh create mode 100644 x1-gen7-sway-desktop.yaml diff --git a/README.md b/README.md index b0eb74d..0340c1c 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,9 @@ -Martin Pitt's desktop -===================== +Vladan's X1 Carbon Gen 7 Sway Desktop config +============================================ This is an [rpm-ostree](https://coreos.github.io/rpm-ostree/) based minimal [Fedora](https://getfedora.org/) developer desktop with the [sway window manager](https://swaywm.org/) and [podman](https://podman.io/)/[toolbox](https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/) for doing development and running less common graphical applications. -It gets [automatically built](.github/workflows/build.yml) every week and [published to my server](https://piware.de/ostree/pitti-workstation/). - -To use it from an existing OSTree based system like [Fedora CoreOS](https://getfedora.org/coreos) or [Fedora Silverblue](https://docs.fedoraproject.org/en-US/fedora-silverblue/), add my server URL as new remote and rebase your tree to it: - -```sh -sudo ostree remote add --no-gpg-verify piware https://piware.de/ostree/pitti-workstation/ -sudo rpm-ostree rebase piware:pitti-desktop -``` - -After that, you can install weekly updates with - -``` -sudo rpm-ostree upgrade -``` - -If anything goes wrong, you can go back to the previous version with `sudo rpm-ostree rollback`. - - Original README for [workstation-ostree-config](https://pagure.io/workstation-ostree-config) ============================================= diff --git a/compose.sh b/compose.sh index 101da94..01f2231 100755 --- a/compose.sh +++ b/compose.sh @@ -9,4 +9,4 @@ if [ ! -d $REPO/objects ]; then ostree --repo=$REPO init --mode=archive-z2 fi -rpm-ostree compose tree --unified-core --cachedir=$CACHE --repo=$REPO pitti-desktop.yaml +rpm-ostree compose tree --unified-core --cachedir=$CACHE --repo=$REPO x1-gen7-sway-desktop.yaml diff --git a/config/i3status-rust/config.toml b/config/i3status-rust/config.toml new file mode 100644 index 0000000..4681a21 --- /dev/null +++ b/config/i3status-rust/config.toml @@ -0,0 +1,78 @@ +# when using 3istsatus-rs with swaybar +# https://github.com/greshake/i3status-rust +# + +theme = "solarized-dark" +icons = "awesome5" + +[[block]] +block = "temperature" +collapsed = false +interval = 10 +format = "gpu {max}°" +chip = "amdgpu-pci-*" + +[[block]] +block = "temperature" +collapsed = false +interval = 10 +format = "cpu {max}°" +chip = "k10temp-pci-*" + +[[block]] +block = "temperature" +collapsed = true +interval = 10 +format = "nvme: {max}°" +chip = "nvme-pci-*" + +[[block]] +block = "temperature" +collapsed = true +interval = 10 +format = "wifi: {max}°" +chip = "iwlwifi_1-*" + +[[block]] +block = "net" +device = "wlan0" +format = "{ssid} {signal_strength} {ip} {speed_down} {graph_down}" +interval = 5 + +[[block]] +block = "disk_space" +path = "/" +alias = "/" +info_type = "available" +unit = "GB" +interval = 20 +warning = 20.0 +alert = 10.0 + +[[block]] +block = "memory" +display_type = "memory" +format_mem = "{Mup}%" +format_swap = "{SUp}%" + +[[block]] +block = "cpu" +interval = 1 + +[[block]] +block = "load" +interval = 1 +format = "{1m}" + +[[block]] +block = "sound" + +[[block]] +block = "keyboard_layout" +driver = "sway" +sway_kb_identifier = "6127:24585:Lite-On_Technology_Corp._ThinkPad_USB_Keyboard_with_TrackPoint" + +[[block]] +block = "time" +interval = 60 +format = "%a %d/%m %R" diff --git a/config/modprobe.d/i2c_i801-blacklist.conf b/config/modprobe.d/i2c_i801-blacklist.conf new file mode 100644 index 0000000..70f1f9b --- /dev/null +++ b/config/modprobe.d/i2c_i801-blacklist.conf @@ -0,0 +1 @@ +blacklist i2c_i801 diff --git a/config/modprobe.d/i915.conf b/config/modprobe.d/i915.conf new file mode 100644 index 0000000..39114f5 --- /dev/null +++ b/config/modprobe.d/i915.conf @@ -0,0 +1,4 @@ +options i915 enable_fbc=1 +options i915 enable_guc=2 +options i915 nuclear_pageflip=Y +options i915 enable_dc=2 diff --git a/config/sway-service.desktop b/config/sway-service.desktop new file mode 100644 index 0000000..63f18af --- /dev/null +++ b/config/sway-service.desktop @@ -0,0 +1,6 @@ +# /usr/share/wayland-sessions/sway-service.desktop +[Desktop Entry] +Name=Sway Service +Comment=i3-compatible Wayland compositor as a systemd service +Exec=sway-service.sh +Type=Application diff --git a/config/sway-service.sh b/config/sway-service.sh new file mode 100755 index 0000000..8b0de34 --- /dev/null +++ b/config/sway-service.sh @@ -0,0 +1,7 @@ +#! /bin/sh +# /usr/local/bin/sway-service.sh - needs to be 0755 + +# first import environment variables from the login manager +systemctl --user import-environment +# then start the service +exec systemctl --wait --user start sway.service \ No newline at end of file diff --git a/config/swaylock/config b/config/swaylock/config new file mode 100644 index 0000000..acb5cb4 --- /dev/null +++ b/config/swaylock/config @@ -0,0 +1,8 @@ +# ~/.config/swayidle/config +before-sleep 'systemctl --user start swaylock' +lock 'systemctl --user start swaylock' +unlock 'swaymsg "output * dpms on"' +after-resume 'swaymsg "output * dpms on"' +timeout 300 'systemctl --user start swaylock' +timeout 600 'swaymsg "output * dpms off"' +resume 'swaymsg "output * dpms on"' diff --git a/config/systemd/firefox.service b/config/systemd/firefox.service new file mode 100644 index 0000000..55bf229 --- /dev/null +++ b/config/systemd/firefox.service @@ -0,0 +1,10 @@ +[Unit] +Description=Firefox nightly +PartOf=graphical-session.target + +[Service] +Type=exec +ExecStart=/opt/firefox/firefox + +[Install] +WantedBy=graphical-session.target diff --git a/config/systemd/mako.service b/config/systemd/mako.service new file mode 100644 index 0000000..bd2fac2 --- /dev/null +++ b/config/systemd/mako.service @@ -0,0 +1,15 @@ +[Unit] +Description=Lightweight Wayland notification daemon +Documentation=man:mako(1) +PartOf=sway-session.target +After=sway-session.target + +[Service] +Type=dbus +BusName=org.freedesktop.Notifications +ExecCondition=/bin/sh -c '[ -n "$WAYLAND_DISPLAY" ]' +ExecStart=/usr/bin/mako +ExecReload=/usr/bin/makoctl reload + +[Install] +WantedBy=sway-session.target diff --git a/config/systemd/nm-applet.service b/config/systemd/nm-applet.service new file mode 100644 index 0000000..3e35f1c --- /dev/null +++ b/config/systemd/nm-applet.service @@ -0,0 +1,14 @@ +[Unit] +Description=network monitor and control GUI applet +Documentation=man:nm-applet(1) +PartOf=wayland-session.target +After=wayland-session.target + +# requires nm-applet compiled with -D appindicator=yes +[Service] +Type=dbus +BusName=org.freedesktop.network-manager-applet +ExecStart=/usr/bin/nm-applet --indicator + +[Install] +WantedBy=wayland-session.target diff --git a/config/systemd/sway-session.target b/config/systemd/sway-session.target new file mode 100644 index 0000000..87fe41d --- /dev/null +++ b/config/systemd/sway-session.target @@ -0,0 +1,6 @@ +[Unit] +Description=sway compositor session +Documentation=man:systemd.special(7) +BindsTo=graphical-session.target wayland-session.target +Wants=graphical-session-pre.target +After=graphical-session-pre.target diff --git a/config/systemd/sway.service b/config/systemd/sway.service new file mode 100644 index 0000000..ea21f05 --- /dev/null +++ b/config/systemd/sway.service @@ -0,0 +1,14 @@ +[Unit] +Description=sway - i3-compatible Wayland compositor +Documentation=man:sway(5) +Before=graphical-session.service +Wants=graphical-session-pre.service +After=graphical-session-pre.service + +[Service] +Type=simple +EnvironmentFile=-%h/.config/sway/env +ExecStart=/usr/bin/sway +Restart=on-failure +RestartSec=1 +TimeoutStopSec=10 diff --git a/config/systemd/swayidle.service b/config/systemd/swayidle.service new file mode 100644 index 0000000..d235a7a --- /dev/null +++ b/config/systemd/swayidle.service @@ -0,0 +1,13 @@ +[Unit] +Description=Idle manager for Wayland +Documentation=man:swayidle(1) +Documentation=https://github.com/gdamjan/swayidle - fork with sd-notify and autolock +PartOf=graphical-session.target +After=sway-session.target + +[Service] +Type=notify +ExecStart=/usr/bin/swayidle -w + +[Install] +WantedBy=sway-session.target diff --git a/config/systemd/swaylock.service b/config/systemd/swaylock.service new file mode 100644 index 0000000..88c7a10 --- /dev/null +++ b/config/systemd/swaylock.service @@ -0,0 +1,11 @@ +[Unit] +Description=swaylock - Screen locker for Wayland +Documentation=man:swaylock(1) + +[Service] +Type=forking +ExecStart=/usr/bin/swaylock -f +Restart=on-failure + +[Install] +WantedBy=sway-session.target diff --git a/config/systemd/wayland-session.target b/config/systemd/wayland-session.target new file mode 100644 index 0000000..d0b2888 --- /dev/null +++ b/config/systemd/wayland-session.target @@ -0,0 +1,16 @@ +# SPDX-License-Identifier: LGPL-2.1+ +# +# This file is inspired from systemd's `graphical-session.target` +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +[Unit] +Description=Current wayland user session +Documentation=man:systemd.special(7) +Requires=basic.target +RefuseManualStart=yes +StopWhenUnneeded=yes +BindsTo=graphical-session.target diff --git a/config/waybar/config b/config/waybar/config new file mode 100644 index 0000000..8b81d45 --- /dev/null +++ b/config/waybar/config @@ -0,0 +1,95 @@ +{ + "layer": "top", + "position": "bottom", + "height": 24, + "modules-left": ["sway/workspaces", "idle_inhibitor", "sway/mode"], + "modules-center": ["sway/window"], + "modules-right": [ "pulseaudio", "backlight", "network", "cpu", "memory", "battery#bat0", "battery#bat1", + "tray", "sway/language", "clock" ], + "sway/workspaces": { + "disable-scroll": true, + "all-outputs": true, + "format": "{index} {name}" + }, + "sway/mode": { + "format": "{}" + }, + "sway/language": { + "format": "{}", + "max-length": 50 + }, + "tray": { + // "icon-size": 21, + "spacing": 10 + }, + "clock": { + "tooltip-format": "{:%A\n%d %B %Y\n%H:%M}", + "format": "{:%a %d %b %H:%M}", + "format-alt": "{:%H:%M}" + }, + "cpu": { + "format": "{usage:2}% " + }, + "memory": { + "format": "{}% " + }, + "battery#bat0": { + "bat": "BAT0", + "name": "BAT0", + "states": { + "warning": 20, + "critical": 10 + }, + "format": "{capacity}% {icon}", + "format-icons": ["", "", "", "", ""] + }, + "battery#bat1": { + "bat": "BAT1", + "name": "BAT1", + "states": { + "warning": 20, + "critical": 10 + }, + "format": "{capacity}% {icon}", + "format-icons": ["", "", "", "", ""] + }, + "network": { + "interval": 1, + "max-width": 50, + // "interface": "wlp2s0", // (Optional) To force the use of this interface + "format-wifi": "", + "format-ethernet": "{bandwidthUpBits} {bandwidthDownBits} ", + "format-disconnected": "⚠", + "tooltip-format-wifi": " {essid}: {frequency}Mhz ({signalStrength}%)\n{bandwidthUpBits}\n{bandwidthDownBits}", + "tooltip-format-ethernet": " {ifname}: {ipaddr}/{cidr}", + "tooltip-format-disconnected": "⚠ Disconnected" + }, + "pulseaudio": { + //"scroll-step": 1, + "format": "{volume}% {icon}", + "format-bluetooth": "{volume}% {icon}", + "format-muted": "", + "format-icons": { + "headphones": "", + "handsfree": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": ["", ""] + }, + "on-click": "pavucontrol" + }, + "backlight": { + "device": "intel_backlight", + "format": "{percent}% {icon}", + "format-icons": ["", ""] + }, + "idle_inhibitor": { + "format": "{icon}", + "format-icons": { + "activated": "", + "deactivated": "" + } + } +} diff --git a/config/waybar/style.css b/config/waybar/style.css new file mode 100644 index 0000000..f9db8d2 --- /dev/null +++ b/config/waybar/style.css @@ -0,0 +1,213 @@ +* { + border: none; + border-radius: 0; + font-family: Roboto, Helvetica, Arial, sans-serif; + font-size: 13px; + min-height: 0; +} + +window#waybar { + background-color: rgba(43, 48, 59, 0.5); + border-bottom: 3px solid rgba(100, 114, 125, 0.5); + color: #ffffff; + transition-property: background-color; + transition-duration: .5s; +} + +window#waybar.hidden { + opacity: 0.2; +} + +/* +window#waybar.empty { + background-color: transparent; +} +window#waybar.solo { + background-color: #FFFFFF; +} +*/ + +window#waybar.termite { + background-color: #3F3F3F; +} + +window#waybar.chromium { + background-color: #000000; + border: none; +} + +#workspaces button { + padding: 0 5px; + background-color: transparent; + color: #ffffff; + border-bottom: 3px solid transparent; +} + +/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ +#workspaces button:hover { + background: rgba(0, 0, 0, 0.2); + box-shadow: inherit; + border-bottom: 3px solid #ffffff; +} + +#workspaces button.focused { + background-color: #64727D; + border-bottom: 3px solid #ffffff; +} + +#workspaces button.urgent { + background-color: #eb4d4b; +} + +#mode { + background-color: #64727D; + border-bottom: 3px solid #ffffff; +} + +#cpu, +#memory, +#temperature, +#backlight, +#network, +#pulseaudio, +#custom-media, +#tray, +#mode, +#idle_inhibitor { + padding: 0 10px; + margin: 0 4px; + color: #ffffff; +} + +#clock { + padding: 0 10px; + color: #ffffff; + background-color: #64727D; +} + +#battery .BAT0 { + margin-left: 9px; +} +#battery .BAT1 { + margin-right: 9px; +} +#battery { + padding: 0 10px; + background-color: #ffffff; + color: #000000; +} + +#battery.charging { + color: #ffffff; + background-color: #26A65B; +} + +@keyframes blink { + to { + background-color: #ffffff; + color: #000000; + } +} + +#battery.critical:not(.charging) { + background-color: #f53c3c; + color: #ffffff; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; +} + +label:focus { + background-color: #000000; +} + +#cpu { + background-color: #2ecc71; + color: #000000; +} + +#memory { + background-color: #9b59b6; +} + +#backlight { + background-color: #90b1b1; +} + +#network { + background-color: #2980b9; +} + +#network.disconnected { + background-color: #f53c3c; +} + +#pulseaudio { + background-color: #f1c40f; + color: #000000; +} + +#pulseaudio.muted { + background-color: #90b1b1; + color: #2a5c45; +} + +#custom-media { + background-color: #66cc99; + color: #2a5c45; + min-width: 100px; +} + +#custom-media.custom-spotify { + background-color: #66cc99; +} + +#custom-media.custom-vlc { + background-color: #ffa000; +} + +#temperature { + background-color: #f0932b; +} + +#temperature.critical { + background-color: #eb4d4b; +} + +#tray { + background-color: #2980b9; +} + +#idle_inhibitor { + background-color: #2d3436; +} + +#idle_inhibitor.activated { + background-color: #ecf0f1; + color: #2d3436; +} + +#mpd { + background-color: #66cc99; + color: #2a5c45; +} + +#mpd.disconnected { + background-color: #f53c3c; +} + +#mpd.stopped { + background-color: #90b1b1; +} + +#mpd.paused { + background-color: #51a37a; +} +#custom-layout { + background-color: #ecf0f1; + color: #2d3436; + min-width: 2em; +} + diff --git a/pitti-desktop.yaml b/pitti-desktop.yaml deleted file mode 100644 index d8aae02..0000000 --- a/pitti-desktop.yaml +++ /dev/null @@ -1,147 +0,0 @@ -include: fedora-common-ostree.yaml - -ref: pitti-desktop -rojig: - name: pitti-desktop - summary: "Pitti Desktop" - license: MIT - -repos: - - fedora-34 - - fedora-34-updates - - fedora-34-updates-testing - - rpmfusion-free - - rpmfusion-free-updates - -packages: -# hardware/drivers - - kernel - - kernel-modules-extra - - iwl6000g2a-firmware - - iwl7260-firmware - - alsa-sof-firmware - - NetworkManager-wifi - - NetworkManager-openvpn-gnome - - sane-backends - - sane-backends-drivers-scanners - - powertop - - iwd - - wpa_supplicant - - udisks2-lvm2 - - opensc -# basic system - - acl - - attr - - basesystem - - cryptsetup - - dnsmasq - - fedora-workstation-backgrounds - - filesystem - - glibc-langpack-de - - glibc-langpack-en - - hostname - - iproute - - kbd - - nss-altfiles - - pciutils - # don't care, but rpm-ostree build fails otherwise - - selinux-policy-targeted - - sudo - - usbutils -# shell tools and development - - bc - - gnupg2 - - fpaste - - lsof - - man-db - - mtr - - tree - - bzip2 - - zip - - unzip - - vim-enhanced - - ranger - - bash-completion - - fish - - qemu-system-x86-core - - qemu-ui-sdl - - qemu-img - - openvpn - - mutt - - nmap-ncat - - isync - - weechat - - duplicity - - openssh-server - - systemd-container - - git - - patchutils - - make - - strace - - wget - - w3m - - cockpit-system - - cockpit-ws - - syncthing - - krb5-workstation - -# desktop plumbing/apps - - dejavu-sans-fonts - - dejavu-serif-fonts - - dejavu-sans-mono-fonts - - fontawesome-fonts - - google-noto-emoji-color-fonts - - - gvfs-mtp - - pulseaudio-utils - - alsa-plugins-pulseaudio - - gstreamer1-plugins-good - - gstreamer1-plugins-ugly - - gstreamer1-libav - # for wf-recorder - - libavdevice - - xdg-desktop-portal-gtk - - - pavucontrol - - pcmanfm - - simple-scan - - nm-connection-editor - - eog - - evince - - rhythmbox - - gnome-keyring - - pinentry-gnome3 - - lxpolkit - - lxterminal - - gnome-disk-utility - - gtimelog - - rofimoji - -# sway/wayland desktop - - sway - - swayidle - - swaylock - - kanshi - - mako - - waybar - - slurp - - grim - - xorg-x11-server-Xwayland - - firefox-wayland - - wofi - - brightnessctl - - wl-clipboard - -exclude-packages: - # recommended by sway - - alacritty - - brltty - - glibc-all-langpacks - - xdg-desktop-portal-wlr - # recommended by gtimelog - - yelp - -add-files: - - ["2015-RH-IT-Root-CA.pem", "/etc/pki/ca-trust/source/anchors/2015-RH-IT-Root-CA.pem"] - -postprocess-script: pitti-post.sh diff --git a/pitti-post.sh b/pitti-post.sh deleted file mode 100755 index 1a4032c..0000000 --- a/pitti-post.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/env bash -set -xeuo pipefail - -# Enable SysRQ -echo 'kernel.sysrq = 1' > /usr/lib/sysctl.d/90-sysrq.conf - -# power saving -echo 'blacklist e1000e' > /usr/lib/modprobe.d/blacklist-local.conf - -# NetworkManager config -cat < /usr/lib/NetworkManager/conf.d/local.conf -[main] -plugins= - -[device] -#wifi.backend=iwd -EOF -#ln -sfn ../iwd.service /usr/lib/systemd/system/multi-user.target.wants/iwd.service - -ln -sfn /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf - -# set up PAM for systemd-homed (https://bugzilla.redhat.com/show_bug.cgi?id=1806949) -patch /etc/pam.d/system-auth < /etc/systemd.journald.conf.new mv /etc/systemd.journald.conf{.new,} fi @@ -22,6 +25,7 @@ fi # mid-transaction, which never applies to rpm-ostree. This is structured as a # loop/glob to avoid hardcoding (or trying to match) the architecture. for x in /usr/sbin/glibc_post_upgrade.*; do + echo "Disabling srcipt ${x}" if test -f ${x}; then ln -srf /usr/bin/true ${x} fi diff --git a/x1-gen7-sway-desktop.yaml b/x1-gen7-sway-desktop.yaml new file mode 100644 index 0000000..9066bad --- /dev/null +++ b/x1-gen7-sway-desktop.yaml @@ -0,0 +1,156 @@ +include: fedora-common-ostree.yaml + +ref: x1-gen7-sway-desktop +rojig: + name: x1-gen7-sway-desktop + summary: "Thinkpad X1 Gen 7 Sway Desktop" + license: MIT + +repos: + - fedora-34 + - fedora-34-updates + - fedora-34-updates-testing + - rpmfusion-free + - rpmfusion-free-updates + +packages: +# hardware / drivers + - alsa-sof-firmware + - fwupd + - iwl6000g2a-firmware + - iwl7260-firmware + - kernel + - kernel-modules-extra + - libva-intel-driver + - libva-intel-hybrid-driver + - opensc + - udisks2-lvm2 +# basic system + - acl + - attr + - basesystem + - coreutils + - coreutils-common + - cpio + - cryptsetup + - dnsmasq + - filesystem + - glibc-langpack-en + - glibc-langpack-mk + - hostname + - kbd + - nss-altfiles + - passwd + - sddm + - selinux-policy-targeted + - sudo + - systemd + - usbutils + - util-linux +# diagnostic / utils + - bind-utils + - htop + - iotop + - iproute + - lm_sensors + - lsof + - mtr + - net-tools + - nmap-ncat + - pciutils + - powertop +# alternative modern rust apps + - bat + - ripgrep +# wifi + - iwd + - NetworkManager + - network-manager-applet + - wpa_supplicant +# shell tools and development + - alacritty + - bash-completion + - bc + - bzip2 + - emacs + - git + - gnupg2 + - make + - man-db + - neovim + - openssh-server + - patchutils + - squashfs-tools + - strace + - systemd-container + - tree + - unzip + - vim-enhanced + - w3m + - wget + - zip + - zram-generator +# fonts + - dejavu-sans-fonts + - dejavu-serif-fonts + - dejavu-sans-mono-fonts + - fontawesome-fonts + - google-noto-emoji-color-fonts +# audio / video + - alsa-plugins-pulseaudio + - ffmpeg + - gstreamer1-libav + - gstreamer1-plugins-good + - gstreamer1-plugins-ugly + - gvfs-mtp + - libavdevice + - libva + - libva-utils + - pavucontrol + - pulseaudio-utils + - vlc +# misc + - okular + - redshift + - xdg-desktop-portal-gtk +# sway / wayland desktop + - brightnessctl + - firefox-wayland + - grim + - i3status-rs + - kanshi + - mako + - slurp + - sway + - swayidle + - swaylock + - waybar + - wl-clipboard + - wofi +# virtualization + - libguestfs-tools + - libvirt-daemon-config-network + - libvirt-daemon-kvm + - python-libguestfs + - qemu-img + - qemu-kvm + - qemu-system-x86-core + - qemu-ui-sdl + - virt-install + - virt-manager + - virt-top + - virt-viewer + +add-files: + - ["config/systemd/firefox.service", "/etc/systemd/user/firefox.service"] + - ["config/systemd/mako.service", "/etc/systemd/user/mako.service"] + - ["config/systemd/nm-applet.service", "/etc/systemd/user/nm-applet.service"] + - ["config/systemd/swayidle.service", "/etc/systemd/user/swayidle.service"] + - ["config/systemd/swaylock.service", "/etc/systemd/user/swaylock.service"] + - ["config/systemd/sway.service", "/etc/systemd/user/sway.service"] + - ["config/systemd/sway-session.target", "/etc/systemd/user/sway-session.target"] + - ["config/systemd/wayland-session.target", "/etc/systemd/user/wayland-session.target"] + - ["config/sway-service.desktop", "/usr/share/wayland-sessions/sway-service.desktop"] + - ["config/sway-service.sh", "/usr/bin/sway-service.sh"] + - ["config/modprobe.d/i915.conf", "/etc/modprobe.d/i915.conf"] + - ["config/modprobe.d/i2c_i801-blacklist.conf", "/etc/modprobe.d/i2c_i801-blacklist.conf"] From 7208e3cbac39a111185435a34164e6ecfea499b2 Mon Sep 17 00:00:00 2001 From: Vladan Popovic Date: Wed, 11 May 2022 23:12:32 +0200 Subject: [PATCH 29/29] f35 full tree --- README.md | 9 - better-fonts.repo | 10 + compose.sh | 4 +- comps-sync-exclude-list.yml | 12 +- comps-sync.py | 2 +- config/environment.d/wayland.conf | 4 + config/greetd/config.toml | 6 + config/greetd/environments | 2 + fedora-34-updates.repo | 13 - fedora-35-updates.repo | 6 + fedora-34.repo => fedora-35.repo | 6 +- fedora-base.yaml | 9 +- fedora-common-ostree-pkgs.yaml | 15 +- fedora-common-ostree.yaml | 49 +++- fedora-deepin.yaml | 9 +- fedora-kinoite.yaml | 16 +- fedora-lxqt.yaml | 9 +- fedora-mate.yaml | 9 +- fedora-pantheon.yaml | 9 +- fedora-silverblue.yaml | 10 +- fedora-xfce.yaml | 9 +- gnome-desktop-pkgs.yaml | 1 + greetd-35.repo | 11 + kde-desktop-pkgs.yaml | 8 + mate-desktop-pkgs.yaml | 9 +- post.sh | 10 +- rpmfusion-free-35.repo | 33 +++ rpmfusion-free-updates-35.repo | 30 +++ x1-gen7-sway-desktop.yaml | 402 ++++++++++++++++++++++++------ 29 files changed, 561 insertions(+), 161 deletions(-) create mode 100644 better-fonts.repo create mode 100644 config/environment.d/wayland.conf create mode 100644 config/greetd/config.toml create mode 100644 config/greetd/environments delete mode 100644 fedora-34-updates.repo create mode 100644 fedora-35-updates.repo rename fedora-34.repo => fedora-35.repo (64%) create mode 100644 greetd-35.repo create mode 100644 rpmfusion-free-35.repo create mode 100644 rpmfusion-free-updates-35.repo diff --git a/README.md b/README.md index 0340c1c..31f49b8 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,3 @@ -Vladan's X1 Carbon Gen 7 Sway Desktop config -============================================ - -This is an [rpm-ostree](https://coreos.github.io/rpm-ostree/) based minimal -[Fedora](https://getfedora.org/) developer desktop with the [sway window manager](https://swaywm.org/) and [podman](https://podman.io/)/[toolbox](https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/) for doing development and running less common graphical applications. - -Original README for [workstation-ostree-config](https://pagure.io/workstation-ostree-config) -============================================= - For some background, see: - https://fedoraproject.org/wiki/Workstation/AtomicWorkstation diff --git a/better-fonts.repo b/better-fonts.repo new file mode 100644 index 0000000..48a44c8 --- /dev/null +++ b/better-fonts.repo @@ -0,0 +1,10 @@ +[copr:copr.fedorainfracloud.org:dawid:better_fonts] +name=Copr repo for better_fonts owned by dawid +baseurl=https://download.copr.fedorainfracloud.org/results/dawid/better_fonts/fedora-34-$basearch/ +type=rpm-md +skip_if_unavailable=True +gpgcheck=1 +gpgkey=https://download.copr.fedorainfracloud.org/results/dawid/better_fonts/pubkey.gpg +repo_gpgcheck=0 +enabled=1 +enabled_metadata=1 diff --git a/compose.sh b/compose.sh index 01f2231..8038f04 100755 --- a/compose.sh +++ b/compose.sh @@ -1,7 +1,7 @@ #!/bin/sh set -eu -CACHE=/var/cache/ostree -REPO=/var/tmp/repo +CACHE=/var/cache/x1-gen7-sway-ostree +REPO=/srv/ostree/repo mkdir -p $CACHE diff --git a/comps-sync-exclude-list.yml b/comps-sync-exclude-list.yml index cbfb2de..92636ab 100644 --- a/comps-sync-exclude-list.yml +++ b/comps-sync-exclude-list.yml @@ -94,6 +94,7 @@ exclude_list: - evolution - evolution-ews - evolution-help + - mediawriter # This is ancient now, and IMO has been superceded by cgroups # Also it breaks with --unified-core. - psacct @@ -146,6 +147,7 @@ desktop_exclude_list: - gnome-calendar - gnome-characters - gnome-clocks + - gnome-connections - gnome-contacts - gnome-documents - gnome-font-viewer @@ -170,6 +172,7 @@ desktop_exclude_list: - abrt-desktop - cups-pk-helper - dnfdragora + - plasma-pk-updates # Non-critical apps -> Flatpak - akregator - cagibi @@ -180,7 +183,6 @@ desktop_exclude_list: - kcalc - kcharselect - kcolorchooser - - kde-partitionmanager - kdnssd - kf5-kipi-plugins - kfind @@ -197,18 +199,14 @@ desktop_exclude_list: - kwrite - libreoffice-kde - okular - - spectacle # Misc - adwaita-gtk2-theme - colord-kde - keditbookmarks - kwebkitpart - plasma-nm-l2tp - - plasma-nm-openconnect - plasma-nm-openswan - - plasma-nm-openvpn - plasma-nm-pptp - - plasma-nm-vpnc xfce-desktop: # Incompatible with ostree for various reasons - abrt-desktop @@ -265,5 +263,5 @@ desktop_exclude_list: - NetworkManager-strongswan-gnome - NetworkManager-team - NetworkManager-wifi - # Use Silverblue release package for now - - fedora-release-matecompiz + # Already in the common set + - wireplumber diff --git a/comps-sync.py b/comps-sync.py index cd9d73e..aea3449 100755 --- a/comps-sync.py +++ b/comps-sync.py @@ -1,5 +1,5 @@ #!/usr/bin/python3 -# Usage: ./comps-sync.py /path/to/comps-f34.xml.in +# Usage: ./comps-sync.py /path/to/comps-f35.xml.in # # Can both remove packages from the manifest # which are not mentioned in comps, and add packages from diff --git a/config/environment.d/wayland.conf b/config/environment.d/wayland.conf new file mode 100644 index 0000000..7a78aa7 --- /dev/null +++ b/config/environment.d/wayland.conf @@ -0,0 +1,4 @@ +XDG_SESSION_TYPE=wayland +XDG_CURRENT_DESKTOP=sway +MOZ_ENABLE_WAYLAND=1 +SDL_VIDEODRIVER=wayland diff --git a/config/greetd/config.toml b/config/greetd/config.toml new file mode 100644 index 0000000..8e05065 --- /dev/null +++ b/config/greetd/config.toml @@ -0,0 +1,6 @@ +[terminal] +vt = 1 + +[default_session] +command = "cage -s -- gtkgreet" +user = "greeter" diff --git a/config/greetd/environments b/config/greetd/environments new file mode 100644 index 0000000..d16bb19 --- /dev/null +++ b/config/greetd/environments @@ -0,0 +1,2 @@ +sway +bash diff --git a/fedora-34-updates.repo b/fedora-34-updates.repo deleted file mode 100644 index e107df5..0000000 --- a/fedora-34-updates.repo +++ /dev/null @@ -1,13 +0,0 @@ -[fedora-34-updates] -name=Fedora 34 $basearch Updates -mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f34&arch=$basearch -enabled=0 -gpgcheck=1 -metadata_expire=1d - -[fedora-34-updates-testing] -name=Fedora 34 $basearch Updates -mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f34&arch=$basearch -enabled=0 -gpgcheck=1 -metadata_expire=1d diff --git a/fedora-35-updates.repo b/fedora-35-updates.repo new file mode 100644 index 0000000..afcf850 --- /dev/null +++ b/fedora-35-updates.repo @@ -0,0 +1,6 @@ +[fedora-35-updates] +name=Fedora 35 $basearch Updates +mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f35&arch=$basearch +enabled=0 +gpgcheck=1 +metadata_expire=1d \ No newline at end of file diff --git a/fedora-34.repo b/fedora-35.repo similarity index 64% rename from fedora-34.repo rename to fedora-35.repo index 18b9b5c..07213ca 100644 --- a/fedora-34.repo +++ b/fedora-35.repo @@ -1,6 +1,6 @@ -[fedora-34] -name=Fedora 34 $basearch -mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-34&arch=$basearch +[fedora-35] +name=Fedora 35 $basearch +mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-35&arch=$basearch enabled=0 gpgcheck=1 metadata_expire=1d diff --git a/fedora-base.yaml b/fedora-base.yaml index d0ed67e..0f7fa07 100644 --- a/fedora-base.yaml +++ b/fedora-base.yaml @@ -1,10 +1,13 @@ include: fedora-common-ostree.yaml -ref: fedora/34/${basearch}/base +ref: fedora/35/${basearch}/base rojig: name: fedora-base summary: "Fedora base image for alternative DE" license: MIT packages: + # Generic release package for desktop variants + - fedora-release + - fedora-release-ostree-desktop # XWayland support - xorg-x11-server-Xwayland # Portals for Flatpak @@ -12,5 +15,5 @@ packages: - xdg-desktop-portal-gtk repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/fedora-common-ostree-pkgs.yaml b/fedora-common-ostree-pkgs.yaml index df5fcb3..f8492a7 100644 --- a/fedora-common-ostree-pkgs.yaml +++ b/fedora-common-ostree-pkgs.yaml @@ -5,7 +5,6 @@ packages: - NetworkManager-config-connectivity-fedora - NetworkManager-wifi - NetworkManager-wwan - - aajohan-comfortaa-fonts - abattis-cantarell-fonts - acl - adwaita-qt5 @@ -36,6 +35,7 @@ packages: - cups-filters - curl - cyrus-sasl-plain + - default-editor - dejavu-sans-fonts - dejavu-sans-mono-fonts - dejavu-serif-fonts @@ -52,8 +52,6 @@ packages: - filesystem - firefox - firewalld - - foomatic - - foomatic-db-ppds - fpaste - fros-gnome - gamemode @@ -81,7 +79,7 @@ packages: - ibus-m17n - ibus-typing-booster - iproute - - iptables + - iptables-nft - iptstate - iputils - ipw2100-firmware @@ -102,8 +100,8 @@ packages: - iwl6000g2b-firmware - iwl6050-firmware - iwl7260-firmware + - iwlax2xx-firmware - jomolhari-fonts - - julietaula-montserrat-fonts - kbd - kernel - kernel-modules-extra @@ -136,8 +134,6 @@ packages: - mlocate - mpage - mtr - - nano - - nano-default-editor - nfs-utils - nss-altfiles - nss-mdns @@ -163,7 +159,6 @@ packages: - policycoreutils-python-utils - procps-ng - psmisc - - pt-sans-fonts - qemu-guest-agent - qt5-qtbase - qt5-qtbase-gui @@ -193,6 +188,7 @@ packages: - system-config-printer-udev - systemd - systemd-oomd-defaults + - systemd-resolved - systemd-udev - tar - thai-scalable-waree-fonts @@ -206,7 +202,9 @@ packages: - vim-minimal - wget - which + - wireplumber - words + - wpa_supplicant - xorg-x11-drv-amdgpu - xorg-x11-drv-ati - xorg-x11-drv-evdev @@ -216,7 +214,6 @@ packages: - xorg-x11-drv-qxl - xorg-x11-drv-wacom - xorg-x11-server-Xorg - - xorg-x11-utils - xorg-x11-xauth - xorg-x11-xinit - zd1211-firmware diff --git a/fedora-common-ostree.yaml b/fedora-common-ostree.yaml index 3818b66..6b06e46 100644 --- a/fedora-common-ostree.yaml +++ b/fedora-common-ostree.yaml @@ -1,11 +1,13 @@ -ref: fedora/34/${basearch}/ostree-base +ref: fedora/rawhide/${basearch}/ostree-base -automatic_version_prefix: "34" -mutate-os-release: "34" +automatic_version_prefix: "35" +mutate-os-release: "35" + +include: fedora-common-ostree-pkgs.yaml packages: - - fedora-release-silverblue - git-core + - lvm2 - rpm-ostree # Container management - buildah @@ -15,6 +17,21 @@ packages: # Flatpak support - flatpak - xdg-desktop-portal + # HFS filesystem tools for Apple hardware + # See https://github.com/projectatomic/rpm-ostree/issues/1380 + - hfsplus-tools + # Bundle the minimal -devel packages needed to build a kernel. + # This is needed because we can't rely on layering to install these + # due to version conflicts with the base image. + - glibc-devel + - kernel-devel + - elfutils-libelf-devel + # Contains default ostree remote config to be used on client's + # system for fetching ostree update + - fedora-repos-ostree + # the archive repo for more reliable package layering + # https://github.com/coreos/fedora-coreos-tracker/issues/400 + - fedora-repos-archive selinux: true documentation: true @@ -23,17 +40,18 @@ etc-group-members: - wheel tmp-is-dir: true -# We can drop this when it's the rpm-ostree default -rpmdb: sqlite - postprocess-script: post.sh ignore-removed-users: - root ignore-removed-groups: - root -check-passwd: { type: file, filename: passwd } -check-groups: { type: file, filename: group } +check-passwd: + type: file + filename: passwd +check-groups: + type: file + filename: group default_target: graphical.target @@ -53,14 +71,23 @@ packages-ppc64le: - grub2 - ostree-grub2 packages-x86_64: - - grub2 + - grub2-efi-ia32 - grub2-efi-x64 + - grub2-pc - ostree-grub2 - efibootmgr - - shim + - shim-ia32 + - shim-x64 - microcode_ctl - mcelog - thermald + - hyperv-daemons + - open-vm-tools-desktop + - virtualbox-guest-additions + - xorg-x11-drv-intel + - xorg-x11-drv-openchrome + - xorg-x11-drv-vesa + - xorg-x11-drv-vmware # Make sure the following are not pulled in when Recommended by other packages exclude-packages: diff --git a/fedora-deepin.yaml b/fedora-deepin.yaml index 4808cd8..1bde080 100644 --- a/fedora-deepin.yaml +++ b/fedora-deepin.yaml @@ -1,13 +1,16 @@ include: deepin-desktop-pkgs.yaml -ref: fedora/34/${basearch}/deepin +ref: fedora/35/${basearch}/deepin rojig: name: fedora-deepin summary: "Fedora Deepin base image" license: MIT packages: + # Generic release package for desktop variants + - fedora-release + - fedora-release-ostree-desktop # GUI to manage updates & Flatpaks - gnome-software repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/fedora-kinoite.yaml b/fedora-kinoite.yaml index f3a54cf..cc331f8 100644 --- a/fedora-kinoite.yaml +++ b/fedora-kinoite.yaml @@ -1,10 +1,11 @@ include: kde-desktop-pkgs.yaml -ref: fedora/34/${basearch}/kinoite +ref: fedora/35/${basearch}/kinoite rojig: name: fedora-kde summary: "Fedora Kinoite (KDE) base image" license: MIT packages: + - fedora-release-kinoite # Wayland support - kwayland-integration - kwin-wayland @@ -14,12 +15,21 @@ packages: - xdg-desktop-portal-kde # Provide an archive manager by default - ark + # Keep some basic apps installed until we have Flatpaks available + # See https://pagure.io/fedora-kde/SIG/issue/13 + - gwenview + - kcalc + - kwrite + - okular # Make sure the following are not pulled in when Recommended by other packages exclude-packages: - plasma-discover-offline-updates - plasma-discover-packagekit + # Exclude currently broken support for rpm-ostree in Discover + - plasma-discover-rpm-ostree + - plasma-pk-updates repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/fedora-lxqt.yaml b/fedora-lxqt.yaml index 7106dfc..74f5071 100644 --- a/fedora-lxqt.yaml +++ b/fedora-lxqt.yaml @@ -1,14 +1,17 @@ include: lxqt-desktop-pkgs.yaml -ref: fedora/34/${basearch}/lxqt +ref: fedora/35/${basearch}/lxqt rojig: name: fedora-lxqt summary: "Fedora LXQt base image" license: MIT packages: + # Generic release package for desktop variants + - fedora-release + - fedora-release-ostree-desktop - libqtxdg # Portals for Flatpak - xdg-desktop-portal-kde repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/fedora-mate.yaml b/fedora-mate.yaml index 948010d..ee0f8e3 100644 --- a/fedora-mate.yaml +++ b/fedora-mate.yaml @@ -1,11 +1,12 @@ include: mate-desktop-pkgs.yaml -ref: fedora/34/${basearch}/mate +ref: fedora/35/${basearch}/mate rojig: name: fedora-mate summary: "Fedora Mate base image" license: MIT - packages: + # Generic release sub package for desktop variants + - fedora-release-ostree-desktop # Portals for Flatpak - xdg-desktop-portal-gtk @@ -13,5 +14,5 @@ exclude-packages: - python3-unbound repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/fedora-pantheon.yaml b/fedora-pantheon.yaml index 455de5b..e6b32de 100644 --- a/fedora-pantheon.yaml +++ b/fedora-pantheon.yaml @@ -1,11 +1,14 @@ include: pantheon-desktop-pkgs.yaml -ref: fedora/34/${basearch}/pantheon +ref: fedora/35/${basearch}/pantheon rojig: name: fedora-pantheon summary: "Fedora Pantheon base image" license: MIT packages: + # Generic release package for desktop variants + - fedora-release + - fedora-release-ostree-desktop repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/fedora-silverblue.yaml b/fedora-silverblue.yaml index 9f4980a..bcaca35 100644 --- a/fedora-silverblue.yaml +++ b/fedora-silverblue.yaml @@ -1,10 +1,11 @@ include: gnome-desktop-pkgs.yaml -ref: fedora/34/${basearch}/silverblue +ref: fedora/35/${basearch}/silverblue rojig: name: fedora-silverblue summary: "Fedora Silverblue base image" license: MIT packages: + - fedora-release-silverblue - desktop-backgrounds-gnome - gnome-shell-extension-background-logo - pinentry-gnome3 @@ -14,10 +15,13 @@ packages: # Include evince-thumbnailer otherwise PDF thumbnails won't work in Nautilus # https://github.com/fedora-silverblue/issue-tracker/issues/98 - evince-thumbnailer + # Include evince-previewer otherwise print previews are broken in Evince + # https://github.com/fedora-silverblue/issue-tracker/issues/122 + - evince-previewer # Include totem-video-thumbnailer for video thumbnailing in Nautilus # https://pagure.io/fedora-workstation/issue/168 - totem-video-thumbnailer repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/fedora-xfce.yaml b/fedora-xfce.yaml index 5da1f1b..408ca09 100644 --- a/fedora-xfce.yaml +++ b/fedora-xfce.yaml @@ -1,12 +1,15 @@ include: xfce-desktop-pkgs.yaml -ref: fedora/34/${basearch}/xfce +ref: fedora/35/${basearch}/xfce rojig: name: fedora-xfce summary: "Fedora XFCE base image" license: MIT packages: + - fedora-release-xfce + # Generic release sub package for desktop variants + - fedora-release-ostree-desktop # Portals for Flatpak - xdg-desktop-portal-gtk repos: - - fedora-34 - - fedora-34-updates + - fedora-35 + - fedora-35-updates diff --git a/gnome-desktop-pkgs.yaml b/gnome-desktop-pkgs.yaml index 4a2901b..5200e7a 100644 --- a/gnome-desktop-pkgs.yaml +++ b/gnome-desktop-pkgs.yaml @@ -59,6 +59,7 @@ packages: - tracker - tracker-miners - xdg-desktop-portal + - xdg-desktop-portal-gnome - xdg-desktop-portal-gtk - xdg-user-dirs-gtk - yelp diff --git a/greetd-35.repo b/greetd-35.repo new file mode 100644 index 0000000..f78ff45 --- /dev/null +++ b/greetd-35.repo @@ -0,0 +1,11 @@ +[copr:copr.fedorainfracloud.org:alebastr:sway-extras] +name=Copr repo for sway-extras owned by alebastr +baseurl=https://download.copr.fedorainfracloud.org/results/alebastr/sway-extras/fedora-35-$basearch/ +type=rpm-md +skip_if_unavailable=True +gpgcheck=1 +gpgkey=https://download.copr.fedorainfracloud.org/results/alebastr/sway-extras/pubkey.gpg +repo_gpgcheck=0 +enabled=1 +enabled_metadata=1 +module_hotfixes=1 diff --git a/kde-desktop-pkgs.yaml b/kde-desktop-pkgs.yaml index 57d38db..6c48e82 100644 --- a/kde-desktop-pkgs.yaml +++ b/kde-desktop-pkgs.yaml @@ -10,6 +10,7 @@ packages: - gnome-keyring-pam - initial-setup-gui - kde-gtk-config + - kde-partitionmanager - kde-print-manager - kde-settings-pulseaudio - kdegraphics-thumbnailers @@ -37,11 +38,16 @@ packages: - plasma-desktop-doc - plasma-discover - plasma-discover-notifier + - plasma-disks - plasma-drkonqi - plasma-nm + - plasma-nm-openconnect + - plasma-nm-openvpn + - plasma-nm-vpnc - plasma-pa - plasma-systemmonitor - plasma-thunderbolt + - plasma-vault - plasma-workspace - plasma-workspace-geolocation - plasma-workspace-xorg @@ -52,4 +58,6 @@ packages: - sddm - sddm-breeze - sddm-kcm + - spectacle + - xdg-desktop-portal-gnome - xorg-x11-drv-libinput diff --git a/mate-desktop-pkgs.yaml b/mate-desktop-pkgs.yaml index cadcaad..45c141b 100644 --- a/mate-desktop-pkgs.yaml +++ b/mate-desktop-pkgs.yaml @@ -23,10 +23,11 @@ packages: - dconf-editor - engrampa - eom - - f34-backgrounds-base - - f34-backgrounds-extras-base - - f34-backgrounds-extras-mate - - f34-backgrounds-mate + - f35-backgrounds-base + - f35-backgrounds-extras-base + - f35-backgrounds-extras-mate + - f35-backgrounds-mate + - fedora-release-matecompiz - firefox - firewall-config - gnome-epub-thumbnailer diff --git a/post.sh b/post.sh index 03b03a8..39db86f 100755 --- a/post.sh +++ b/post.sh @@ -6,16 +6,13 @@ set -xeuo pipefail # https://github.com/projectatomic/rpm-ostree/issues/1542#issuecomment-419684977 -# for x in /etc/yum.repos.d/*modular.repo; do -# sed -i -e 's,enabled=[01],enabled=0,' ${x} -# done - -ls -al /etc/yum.repos.d/ +for x in /etc/yum.repos.d/*modular.repo; do + sed -i -e 's,enabled=[01],enabled=0,' ${x} +done # Work around https://bugzilla.redhat.com/show_bug.cgi?id=1265295 # Also note the create-new-then-rename dance for rofiles-fuse compat if ! grep -q '^Storage=persistent' /etc/systemd/journald.conf; then - echo "Journal missing Storage=persistent" (cat /etc/systemd/journald.conf && echo 'Storage=persistent') > /etc/systemd.journald.conf.new mv /etc/systemd.journald.conf{.new,} fi @@ -25,7 +22,6 @@ fi # mid-transaction, which never applies to rpm-ostree. This is structured as a # loop/glob to avoid hardcoding (or trying to match) the architecture. for x in /usr/sbin/glibc_post_upgrade.*; do - echo "Disabling srcipt ${x}" if test -f ${x}; then ln -srf /usr/bin/true ${x} fi diff --git a/rpmfusion-free-35.repo b/rpmfusion-free-35.repo new file mode 100644 index 0000000..a1fb520 --- /dev/null +++ b/rpmfusion-free-35.repo @@ -0,0 +1,33 @@ +[rpmfusion-free-35] +name=RPM Fusion for Fedora 35 - Free +#baseurl=http://download1.rpmfusion.org/free/fedora/releases/35/Everything/$basearch/os/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-35&arch=$basearch +enabled=0 +metadata_expire=14d +type=rpm-md +gpgcheck=1 +repo_gpgcheck=0 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-35 + +[rpmfusion-free-debuginfo-35] +name=RPM Fusion for Fedora 35 - Free - Debug +#baseurl=http://download1.rpmfusion.org/free/fedora/releases/35/Everything/$basearch/debug/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-debug-35&arch=$basearch +enabled=0 +metadata_expire=7d +type=rpm-md +gpgcheck=1 +repo_gpgcheck=0 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-35 + +[rpmfusion-free-source-35] +name=RPM Fusion for Fedora 35 - Free - Source +#baseurl=http://download1.rpmfusion.org/free/fedora/releases/35/Everything/source/SRPMS/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-source-35&arch=$basearch +enabled=0 +metadata_expire=7d +type=rpm-md +gpgcheck=1 +repo_gpgcheck=0 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-35 + diff --git a/rpmfusion-free-updates-35.repo b/rpmfusion-free-updates-35.repo new file mode 100644 index 0000000..f7553a1 --- /dev/null +++ b/rpmfusion-free-updates-35.repo @@ -0,0 +1,30 @@ +[rpmfusion-free-updates-35] +name=RPM Fusion for Fedora 35 - Free - Updates +#baseurl=http://download1.rpmfusion.org/free/fedora/updates/35/$basearch/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-35&arch=$basearch +enabled=0 +type=rpm-md +gpgcheck=1 +repo_gpgcheck=0 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-35 + +[rpmfusion-free-updates-debuginfo-35] +name=RPM Fusion for Fedora 35 - Free - Updates Debug +#baseurl=http://download1.rpmfusion.org/free/fedora/updates/35/$basearch/debug/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-debug-35&arch=$basearch +enabled=0 +type=rpm-md +gpgcheck=1 +repo_gpgcheck=0 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-35 + +[rpmfusion-free-updates-source-35] +name=RPM Fusion for Fedora 35 - Free - Updates Source +#baseurl=http://download1.rpmfusion.org/free/fedora/updates/35/SRPMS/ +metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-source-35&arch=$basearch +enabled=0 +type=rpm-md +gpgcheck=1 +repo_gpgcheck=0 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-35 + diff --git a/x1-gen7-sway-desktop.yaml b/x1-gen7-sway-desktop.yaml index 9066bad..df68271 100644 --- a/x1-gen7-sway-desktop.yaml +++ b/x1-gen7-sway-desktop.yaml @@ -1,107 +1,147 @@ -include: fedora-common-ostree.yaml - -ref: x1-gen7-sway-desktop +ref: x1-gen7-sway-desktop-35 rojig: - name: x1-gen7-sway-desktop - summary: "Thinkpad X1 Gen 7 Sway Desktop" + name: x1-gen7-sway-desktop-35 + summary: "Thinkpad X1 Gen 7 Sway Desktop - Fedora 35" license: MIT +automatic_version_prefix: "35" +mutate-os-release: "35" + repos: - - fedora-34 - - fedora-34-updates - - fedora-34-updates-testing - - rpmfusion-free - - rpmfusion-free-updates + - fedora-35 + - fedora-35-updates + - rpmfusion-free-35 + - rpmfusion-free-updates-35 + - copr:copr.fedorainfracloud.org:dawid:better_fonts + - copr:copr.fedorainfracloud.org:alebastr:sway-extras + +selinux: true +documentation: true +boot-location: modules +etc-group-members: + - wheel +tmp-is-dir: true + +postprocess-script: post.sh + +ignore-removed-users: + - root +ignore-removed-groups: + - root +check-passwd: + type: file + filename: passwd +check-groups: + type: file + filename: group + +default_target: graphical.target packages: -# hardware / drivers - - alsa-sof-firmware + - lvm2 + - rpm-ostree +# Container management + - buildah + - podman + - skopeo + - toolbox +# Flatpak support + - flatpak + - xdg-desktop-portal + - glibc-devel + - kernel-devel + - elfutils-libelf-devel + - fedora-repos-ostree + - fedora-repos-archive +# boot / hardware / drivers + - efibootmgr - fwupd - - iwl6000g2a-firmware - - iwl7260-firmware - - kernel - - kernel-modules-extra + - grub2-efi-ia32 + - grub2-efi-x64 + - grub2-pc - libva-intel-driver - libva-intel-hybrid-driver - - opensc - - udisks2-lvm2 -# basic system - - acl - - attr - - basesystem - - coreutils + - mcelog + - microcode_ctl + - ostree-grub2 + - shim-ia32 + - shim-x64 + - thermald + - thinkfan +# base system + - biosdevname - coreutils-common - - cpio - - cryptsetup - - dnsmasq - - filesystem - - glibc-langpack-en - - glibc-langpack-mk - - hostname - - kbd - - nss-altfiles - - passwd - - sddm - - selinux-policy-targeted - - sudo - - systemd - - usbutils - - util-linux + - dbus-daemon + - device-mapper-multipath + - nvme-cli + - rng-tools # diagnostic / utils - - bind-utils - htop - iotop - - iproute - lm_sensors - - lsof - - mtr + - lshw - net-tools - nmap-ncat - - pciutils - powertop + - wireshark # alternative modern rust apps - bat - ripgrep -# wifi +# networking + - bridge-utils + - dhcpcd - iwd - - NetworkManager - network-manager-applet - - wpa_supplicant # shell tools and development - alacritty - - bash-completion - - bc - - bzip2 + - autoconf + - automake + - ctags - emacs + - gettext-devel - git - - gnupg2 + - intltool + - ipython3 + - libtool - make - - man-db - neovim - - openssh-server - patchutils - squashfs-tools - strace - systemd-container - - tree - - unzip - vim-enhanced - w3m - - wget - - zip - zram-generator # fonts - - dejavu-sans-fonts - - dejavu-serif-fonts - - dejavu-sans-mono-fonts + - adobe-source-sans-pro-fonts + - bitstream-vera-fonts-all - fontawesome-fonts - - google-noto-emoji-color-fonts + - fontawesome-fonts-web + - fontconfig + - fontconfig-font-replacements + - fontconfig-enhanced-defaults + - google-roboto-slab-fonts + - langpacks-core-font-en + - lato-fonts + - open-sans-fonts + - terminus-fonts + - ucs-miscfixed-opentype-fonts + - urw-base35-bookman-fonts + - urw-base35-c059-fonts + - urw-base35-d050000l-fonts + - urw-base35-fonts-common + - urw-base35-fonts + - urw-base35-gothic-fonts + - urw-base35-nimbus-mono-ps-fonts + - urw-base35-nimbus-roman-fonts + - urw-base35-nimbus-sans-fonts + - urw-base35-p052-fonts + - urw-base35-standard-symbols-ps-fonts + - urw-base35-z003-fonts # audio / video - alsa-plugins-pulseaudio - ffmpeg - gstreamer1-libav - - gstreamer1-plugins-good - - gstreamer1-plugins-ugly - gvfs-mtp - libavdevice - libva @@ -110,23 +150,28 @@ packages: - pulseaudio-utils - vlc # misc + - feh - okular - - redshift - - xdg-desktop-portal-gtk # sway / wayland desktop - brightnessctl - - firefox-wayland + - cage + - greetd + - greetd-gtkgreet - grim - i3status-rs - kanshi - mako + - pinentry-qt - slurp - sway - swayidle - swaylock - waybar + - wayland-devel + - wdisplays - wl-clipboard - wofi + - xdg-desktop-portal-wlr # virtualization - libguestfs-tools - libvirt-daemon-config-network @@ -140,17 +185,234 @@ packages: - virt-manager - virt-top - virt-viewer +# comps-sync + - NetworkManager + - NetworkManager-bluetooth + - NetworkManager-config-connectivity-fedora + - NetworkManager-wifi + - NetworkManager-wwan + - abattis-cantarell-fonts + - acl + # - adwaita-qt5 + - alsa-sof-firmware + - alsa-ucm + - alsa-utils + # - atmel-firmware + - attr + - audit + - b43-fwcutter + - b43-openfwwf + - basesystem + - bash + - bash-completion + - bc + - bind-utils + # - bluez-cups + # - btrfs-progs + - bzip2 + # - chrony + # - cifs-utils + - colord + - compsize + - coreutils + - cpio + - cryptsetup + # - cups + # - cups-filters + - curl + - cyrus-sasl-plain + # - default-editor + - dejavu-sans-fonts + - dejavu-sans-mono-fonts + - dejavu-serif-fonts + - dhcp-client + - dnsmasq + - e2fsprogs + - ethtool + - exfatprogs + # - fedora-bookmarks + # - fedora-chromium-config + - fedora-repos-modular + # - fedora-workstation-backgrounds + - file + - filesystem + - firefox + - firewalld + # - fpaste + # - fros-gnome + # - gamemode + - glibc + - glibc-all-langpacks + - glx-utils + - gnupg2 + - google-noto-emoji-color-fonts + # - google-noto-sans-cjk-ttc-fonts + - google-noto-sans-gurmukhi-fonts + - google-noto-sans-sinhala-vf-fonts + - gstreamer1-plugins-bad-free + - gstreamer1-plugins-good + - gstreamer1-plugins-ugly-free + # - gutenprint + # - gutenprint-cups + - hostname + # - hplip + - hunspell + - ibus-anthy + - ibus-gtk3 + - ibus-hangul + - ibus-libpinyin + - ibus-libzhuyin + - ibus-m17n + - ibus-typing-booster + - iproute + - iptables-nft + - iptstate + - iputils + - ipw2100-firmware + - ipw2200-firmware + - iwl100-firmware + - iwl1000-firmware + - iwl105-firmware + - iwl135-firmware + - iwl2000-firmware + - iwl2030-firmware + - iwl3160-firmware + - iwl3945-firmware + - iwl4965-firmware + - iwl5000-firmware + - iwl5150-firmware + - iwl6000-firmware + - iwl6000g2a-firmware + - iwl6000g2b-firmware + - iwl6050-firmware + - iwl7260-firmware + - iwlax2xx-firmware + - jomolhari-fonts + - kbd + - kernel + - kernel-modules-extra + - khmer-os-system-fonts + - less + - liberation-mono-fonts + - liberation-sans-fonts + - liberation-serif-fonts + - libertas-sd8686-firmware + - libertas-sd8787-firmware + - libertas-usb8388-firmware + # - libglvnd-gles + - linux-firmware + - logrotate + - lohit-assamese-fonts + - lohit-bengali-fonts + - lohit-devanagari-fonts + - lohit-gujarati-fonts + - lohit-kannada-fonts + - lohit-odia-fonts + - lohit-tamil-fonts + - lohit-telugu-fonts + # - lrzsz + - lsof + - man-db + - man-pages + - mdadm + - mesa-dri-drivers + - mesa-vulkan-drivers + - mlocate + # - mpage + - mtr + - nfs-utils + - nss-altfiles + - nss-mdns + # - ntfs-3g + # - ntfsprogs + - opensc + - openssh-clients + - openssh-server + - paktype-naskh-basic-fonts + - pam_afs_session + # - paps + - passwd + - passwdqc + - pciutils + - pinfo + - pipewire-alsa + - pipewire-gstreamer + - pipewire-pulseaudio + - pipewire-utils + - plymouth + - plymouth-system-theme + - policycoreutils + - policycoreutils-python-utils + - procps-ng + - psmisc + - qemu-guest-agent + - qt5-qtbase + - qt5-qtbase-gui + - qt5-qtdeclarative + - qt5-qtxmlpatterns + - quota + # - realmd + - rootfiles + - rpm + - rsync + # - samba-client + - selinux-policy-targeted + - setup + - shadow-utils + - sil-abyssinica-fonts + - sil-mingzat-fonts + - sil-nuosu-fonts + - sil-padauk-fonts + - smc-meera-fonts + - sos + - spice-vdagent + - sssd + - sssd-common + - sssd-kcm + - stix-fonts + - sudo + # - system-config-printer-udev + - systemd + - systemd-oomd-defaults + - systemd-resolved + - systemd-udev + - tar + - thai-scalable-waree-fonts + - time + - tree + - unzip + - uresourced + - usb_modeswitch + - usbutils + - util-linux + # - vim-minimal + - wget + - which + - wireplumber + - words + - wpa_supplicant + # - zd1211-firmware + - zip + - zram-generator-defaults + +# Make sure the following are not pulled in when Recommended by other packages +exclude-packages: + - PackageKit + # We can not include openh264. See https://fedoraproject.org/wiki/OpenH264 + - gstreamer1-plugin-openh264 + - mozilla-openh264 + - openh264 + - xdg-desktop-portal-gtk add-files: - - ["config/systemd/firefox.service", "/etc/systemd/user/firefox.service"] - ["config/systemd/mako.service", "/etc/systemd/user/mako.service"] - ["config/systemd/nm-applet.service", "/etc/systemd/user/nm-applet.service"] - ["config/systemd/swayidle.service", "/etc/systemd/user/swayidle.service"] - ["config/systemd/swaylock.service", "/etc/systemd/user/swaylock.service"] - - ["config/systemd/sway.service", "/etc/systemd/user/sway.service"] - ["config/systemd/sway-session.target", "/etc/systemd/user/sway-session.target"] - ["config/systemd/wayland-session.target", "/etc/systemd/user/wayland-session.target"] - ["config/sway-service.desktop", "/usr/share/wayland-sessions/sway-service.desktop"] - - ["config/sway-service.sh", "/usr/bin/sway-service.sh"] - - ["config/modprobe.d/i915.conf", "/etc/modprobe.d/i915.conf"] - ["config/modprobe.d/i2c_i801-blacklist.conf", "/etc/modprobe.d/i2c_i801-blacklist.conf"] + - ["config/environment.d/wayland.conf", "/etc/environment.d/wayland.conf"] + - ["config/greetd/config.toml", "/etc/greetd/config.toml"] + - ["config/greetd/environments", "/etc/greetd/environments"]