feat: cinnamon images with wayland session, improvements for nvidia optimus laptops

This commit is contained in:
qoijjj
2024-01-21 16:02:25 -08:00
committed by GitHub
parent c3f652528f
commit af121aa652
18 changed files with 219 additions and 0 deletions

View File

@@ -45,6 +45,8 @@ jobs:
- recipes/desktop/recipe-silverblue-nvidia.yml - recipes/desktop/recipe-silverblue-nvidia.yml
- recipes/desktop/recipe-kinoite-main.yml - recipes/desktop/recipe-kinoite-main.yml
- recipes/desktop/recipe-kinoite-nvidia.yml - recipes/desktop/recipe-kinoite-nvidia.yml
- recipes/desktop/recipe-cinnamon-main.yml
- recipes/desktop/recipe-cinnamon-nvidia.yml
- recipes/desktop/recipe-bluefin-main.yml - recipes/desktop/recipe-bluefin-main.yml
- recipes/desktop/recipe-bluefin-nvidia.yml - recipes/desktop/recipe-bluefin-nvidia.yml
- recipes/desktop/recipe-sericea-main.yml - recipes/desktop/recipe-sericea-main.yml
@@ -56,6 +58,8 @@ jobs:
- recipes/laptop/recipe-silverblue-nvidia-laptop.yml - recipes/laptop/recipe-silverblue-nvidia-laptop.yml
- recipes/laptop/recipe-kinoite-main-laptop.yml - recipes/laptop/recipe-kinoite-main-laptop.yml
- recipes/laptop/recipe-kinoite-nvidia-laptop.yml - recipes/laptop/recipe-kinoite-nvidia-laptop.yml
- recipes/laptop/recipe-cinnamon-main-laptop.yml
- recipes/laptop/recipe-cinnamon-nvidia-laptop.yml
- recipes/laptop/recipe-bluefin-main-laptop.yml - recipes/laptop/recipe-bluefin-main-laptop.yml
- recipes/laptop/recipe-bluefin-nvidia-laptop.yml - recipes/laptop/recipe-bluefin-nvidia-laptop.yml
- recipes/laptop/recipe-sericea-main-laptop.yml - recipes/laptop/recipe-sericea-main-laptop.yml
@@ -76,6 +80,8 @@ jobs:
- recipes/desktop/recipe-silverblue-nvidia-userns.yml - recipes/desktop/recipe-silverblue-nvidia-userns.yml
- recipes/desktop/recipe-kinoite-main-userns.yml - recipes/desktop/recipe-kinoite-main-userns.yml
- recipes/desktop/recipe-kinoite-nvidia-userns.yml - recipes/desktop/recipe-kinoite-nvidia-userns.yml
- recipes/desktop/recipe-cinnamon-main-userns.yml
- recipes/desktop/recipe-cinnamon-nvidia-userns.yml
- recipes/desktop/recipe-bluefin-main-userns.yml - recipes/desktop/recipe-bluefin-main-userns.yml
- recipes/desktop/recipe-bluefin-nvidia-userns.yml - recipes/desktop/recipe-bluefin-nvidia-userns.yml
- recipes/desktop/recipe-sericea-main-userns.yml - recipes/desktop/recipe-sericea-main-userns.yml
@@ -87,6 +93,8 @@ jobs:
- recipes/laptop/recipe-silverblue-nvidia-laptop-userns.yml - recipes/laptop/recipe-silverblue-nvidia-laptop-userns.yml
- recipes/laptop/recipe-kinoite-main-laptop-userns.yml - recipes/laptop/recipe-kinoite-main-laptop-userns.yml
- recipes/laptop/recipe-kinoite-nvidia-laptop-userns.yml - recipes/laptop/recipe-kinoite-nvidia-laptop-userns.yml
- recipes/laptop/recipe-cinnamon-main-laptop-userns.yml
- recipes/laptop/recipe-cinnamon-nvidia-laptop-userns.yml
- recipes/laptop/recipe-bluefin-main-laptop-userns.yml - recipes/laptop/recipe-bluefin-main-laptop-userns.yml
- recipes/laptop/recipe-bluefin-nvidia-laptop-userns.yml - recipes/laptop/recipe-bluefin-nvidia-laptop-userns.yml
- recipes/laptop/recipe-sericea-main-laptop-userns.yml - recipes/laptop/recipe-sericea-main-laptop-userns.yml

View File

@@ -0,0 +1,3 @@
type: script
scripts:
- removecinnamonxsessions.sh

View File

@@ -0,0 +1,3 @@
type: script
scripts:
- nvidiaoptimusworkaround.sh

View File

@@ -0,0 +1,21 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-main-userns-hardened
# description will be included in the image's metadata
description: "Cinnamon main with some hardening applied"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-main
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/cinnamon-scripts.yml
- type: yafti

View File

@@ -0,0 +1,23 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-main-hardened
# description will be included in the image's metadata
description: "Cinnamon main with some hardening applied"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-main
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/disableuserns-packages.yml
- from-file: common/disableuserns-scripts.yml
- from-file: common/cinnamon-scripts.yml
- type: yafti

View File

@@ -0,0 +1,21 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-nvidia-userns-hardened
# description will be included in the image's metadata
description: "Cinnamon nvidia with some hardening applied"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-nvidia
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/cinnamon-scripts.yml
- type: yafti

View File

@@ -0,0 +1,23 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-nvidia-hardened
# description will be included in the image's metadata
description: "Cinnamon nvidia with some hardening applied"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-nvidia
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/disableuserns-packages.yml
- from-file: common/disableuserns-scripts.yml
- from-file: common/cinnamon-scripts.yml
- type: yafti

View File

@@ -19,4 +19,5 @@ modules:
- from-file: common/common-scripts.yml - from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml - from-file: common/gui-scripts.yml
- from-file: common/bluefin-scripts.yml - from-file: common/bluefin-scripts.yml
- from-file: common/nvidia-laptop-gnome-cinnamon-scripts.yml
- type: yafti - type: yafti

View File

@@ -21,4 +21,5 @@ modules:
- from-file: common/bluefin-scripts.yml - from-file: common/bluefin-scripts.yml
- from-file: common/disableuserns-packages.yml - from-file: common/disableuserns-packages.yml
- from-file: common/disableuserns-scripts.yml - from-file: common/disableuserns-scripts.yml
- from-file: common/nvidia-laptop-gnome-cinnamon-scripts.yml
- type: yafti - type: yafti

View File

@@ -0,0 +1,22 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-main-laptop-userns-hardened
# description will be included in the image's metadata
description: "Cinnamon main with some hardening applied, for laptops"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-main
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: recipes/laptop/laptop-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/cinnamon-scripts.yml
- type: yafti

View File

@@ -0,0 +1,24 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-main-laptop-hardened
# description will be included in the image's metadata
description: "Cinnamon main with some hardening applied, for laptops"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-main
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: recipes/laptop/laptop-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/disableuserns-packages.yml
- from-file: common/disableuserns-scripts.yml
- from-file: common/cinnamon-scripts.yml
- type: yafti

View File

@@ -0,0 +1,23 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-nvidia-laptop-userns-hardened
# description will be included in the image's metadata
description: "Cinnamon nvidia with some hardening applied, for laptops"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-nvidia
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: recipes/laptop/laptop-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/cinnamon-scripts.yml
- from-file: common/nvidia-laptop-gnome-cinnamon-scripts.yml
- type: yafti

View File

@@ -0,0 +1,25 @@
# image will be published to ghcr.io/<user>/<name>
name: cinnamon-nvidia-laptop-hardened
# description will be included in the image's metadata
description: "Cinnamon nvidia with some hardening applied, for laptops"
# the base image to build on top of (FROM) and the version tag to use
base-image: ghcr.io/ublue-os/cinnamon-nvidia
image-version: 39
# list of modules, executed in order
# you can include multiple instances of the same module
modules:
- from-file: common/common-files.yml
- from-file: common/gui-packages.yml
- from-file: common/common-packages.yml
- from-file: common/remove-firefox.yml
- from-file: common/common-bling.yml
- from-file: recipes/laptop/laptop-bling.yml
- from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml
- from-file: common/disableuserns-packages.yml
- from-file: common/disableuserns-scripts.yml
- from-file: common/cinnamon-scripts.yml
- from-file: common/nvidia-laptop-gnome-cinnamon-scripts.yml
- type: yafti

View File

@@ -19,4 +19,5 @@ modules:
- from-file: recipes/laptop/laptop-bling.yml - from-file: recipes/laptop/laptop-bling.yml
- from-file: common/common-scripts.yml - from-file: common/common-scripts.yml
- from-file: common/gui-scripts.yml - from-file: common/gui-scripts.yml
- from-file: common/nvidia-laptop-gnome-cinnamon-scripts.yml
- type: yafti - type: yafti

View File

@@ -21,4 +21,5 @@ modules:
- from-file: common/gui-scripts.yml - from-file: common/gui-scripts.yml
- from-file: common/disableuserns-packages.yml - from-file: common/disableuserns-packages.yml
- from-file: common/disableuserns-scripts.yml - from-file: common/disableuserns-scripts.yml
- from-file: common/nvidia-laptop-gnome-cinnamon-scripts.yml
- type: yafti - type: yafti

View File

@@ -1 +1,6 @@
#!/usr/bin/env bash
# Tell build process to exit if there are any errors.
set -oue pipefail
rpm-ostree install wget rpm-ostree install wget

View File

@@ -0,0 +1,8 @@
#!/usr/bin/env bash
# Tell build process to exit if there are any errors.
set -oue pipefail
# applies workaround for known issue with optimus laptops for GNOME and Cinnamon
# https://gitlab.gnome.org/GNOME/mutter/-/issues/2969
echo "__EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/50_mesa.json" >> /usr/etc/environment

View File

@@ -0,0 +1,6 @@
#!/usr/bin/env bash
# Tell build process to exit if there are any errors.
set -oue pipefail
rm /usr/share/xsessions/*