Compare commits
2 Commits
f08ac5e7b8
...
local-podm
Author | SHA1 | Date | |
---|---|---|---|
fcf019fddf | |||
eabd27c3c8 |
@@ -1,11 +1,6 @@
|
|||||||
name: bluebuild test pr
|
name: bluebuild-nvidia
|
||||||
on:
|
on:
|
||||||
pull_request:
|
|
||||||
workflow_dispatch: # allow manually triggering builds
|
workflow_dispatch: # allow manually triggering builds
|
||||||
concurrency:
|
|
||||||
# only run one build at a time
|
|
||||||
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
jobs:
|
jobs:
|
||||||
bluebuild:
|
bluebuild:
|
||||||
name: Build Custom Image
|
name: Build Custom Image
|
||||||
@@ -19,9 +14,8 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
recipe:
|
recipe:
|
||||||
# !! Add your recipes here
|
# !! Add your recipes here
|
||||||
- recipe.yml
|
- recipe_nvidia.yml
|
||||||
steps:
|
steps:
|
||||||
|
|
||||||
# the build is fully handled by the reusable github action
|
# the build is fully handled by the reusable github action
|
||||||
- name: Build Custom Image
|
- name: Build Custom Image
|
||||||
uses: blue-build/github-action@v1.8
|
uses: blue-build/github-action@v1.8
|
||||||
@@ -33,4 +27,4 @@ jobs:
|
|||||||
pr_event_number: ${{ github.event.number }}
|
pr_event_number: ${{ github.event.number }}
|
||||||
|
|
||||||
# enabled by default, disable if your image is small and you want faster builds
|
# enabled by default, disable if your image is small and you want faster builds
|
||||||
maximize_build_space: true
|
maximize_build_space: true
|
9
.github/workflows/build.yml
vendored
9
.github/workflows/build.yml
vendored
@@ -9,11 +9,12 @@ on:
|
|||||||
- main
|
- main
|
||||||
paths-ignore: # don't rebuild if only documentation has changed
|
paths-ignore: # don't rebuild if only documentation has changed
|
||||||
- "**.md"
|
- "**.md"
|
||||||
|
- ".github/workflows/build-nvidia.yml"
|
||||||
|
- "files/scripts/nvidia/**"
|
||||||
|
- "recipes/components/nvidia-module.yml"
|
||||||
|
- "recipes/recipe_nvidia.yml"
|
||||||
|
pull_request:
|
||||||
workflow_dispatch: # allow manually triggering builds
|
workflow_dispatch: # allow manually triggering builds
|
||||||
concurrency:
|
|
||||||
# only run one build at a time
|
|
||||||
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
jobs:
|
jobs:
|
||||||
bluebuild:
|
bluebuild:
|
||||||
name: Build Custom Image
|
name: Build Custom Image
|
||||||
|
6
files/scripts/nvidia/installtoolkitpolicy.sh
Normal file
6
files/scripts/nvidia/installtoolkitpolicy.sh
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Tell build process to exit if there are any errors.
|
||||||
|
set -oue pipefail
|
||||||
|
|
||||||
|
semodule --verbose --install /usr/share/selinux/packages/nvidia-container.pp
|
10
files/scripts/nvidia/removeunusedrepos.sh
Normal file
10
files/scripts/nvidia/removeunusedrepos.sh
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Tell build process to exit if there are any errors.
|
||||||
|
set -oue pipefail
|
||||||
|
|
||||||
|
rm -f /etc/yum.repos.d/negativo17-fedora-nvidia.repo
|
||||||
|
rm -f /etc/yum.repos.d/negativo17-fedora-multimedia.repo
|
||||||
|
rm -f /etc/yum.repos.d/eyecantcu-supergfxctl.repo
|
||||||
|
rm -f /etc/yum.repos.d/_copr_ublue-os-akmods.repo
|
||||||
|
rm -f /etc/yum.repos.d/nvidia-container-toolkit.repo
|
16
files/scripts/nvidia/setdrmvariables.sh
Normal file
16
files/scripts/nvidia/setdrmvariables.sh
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Tell build process to exit if there are any errors.
|
||||||
|
set -oue pipefail
|
||||||
|
|
||||||
|
|
||||||
|
echo '
|
||||||
|
|
||||||
|
# Nvidia modesetting support. Set to 0 or comment to disable kernel modesetting
|
||||||
|
# support. This must be disabled in case of SLI Mosaic.
|
||||||
|
|
||||||
|
options nvidia-drm modeset=1 fbdev=1
|
||||||
|
|
||||||
|
' > /usr/lib/modprobe.d/nvidia-modeset.conf
|
||||||
|
|
||||||
|
cp /usr/lib/modprobe.d/nvidia-modeset.conf /etc/modprobe.d/nvidia-modeset.conf
|
7
files/scripts/nvidia/setearlyloading.sh
Normal file
7
files/scripts/nvidia/setearlyloading.sh
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Tell build process to exit if there are any errors.
|
||||||
|
set -oue pipefail
|
||||||
|
|
||||||
|
sed -i 's@omit_drivers@force_drivers@g' /usr/lib/dracut/dracut.conf.d/99-nvidia.conf
|
||||||
|
sed -i 's@ nvidia @ i915 amdgpu nvidia @g' /usr/lib/dracut/dracut.conf.d/99-nvidia.conf
|
@@ -1,5 +1,6 @@
|
|||||||
[Unit]
|
[Unit]
|
||||||
Description=A panel bar branched from AGS maintained by Hyprland devs.
|
Description=A panel bar branched from AGS maintained by Hyprland devs.
|
||||||
|
Documentation=man:waybar(5)
|
||||||
# order startup after WM
|
# order startup after WM
|
||||||
After=graphical-session.target
|
After=graphical-session.target
|
||||||
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=A panel bar branched from AGS maintained by Hyprland devs.
|
|
||||||
# order startup after WM
|
|
||||||
After=graphical-session.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
Type=exec
|
|
||||||
# Repurpose XDG Autostart filtering
|
|
||||||
ExecCondition=/lib/systemd/systemd-xdg-autostart-condition "wlroots:sway:Wayfire:labwc:Hyprland" ""
|
|
||||||
ExecStart=/usr/bin/quickshell
|
|
||||||
Restart=on-failure
|
|
||||||
Slice=app-graphical.slice
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=graphical-session.target
|
|
||||||
# Alternatively can be wanted by specific WMs' targets
|
|
||||||
# Should also be duplicated in 'After=' to avoid ordering loop
|
|
||||||
#WantedBy=wayland-session@hyprland.desktop.target
|
|
16
recipes/components/nvidia-module.yml
Normal file
16
recipes/components/nvidia-module.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
modules:
|
||||||
|
- type: containerfile
|
||||||
|
snippets:
|
||||||
|
- COPY --from=ghcr.io/ublue-os/akmods-nvidia:main-42 /rpms/ /tmp/rpms
|
||||||
|
- RUN find /tmp/rpms
|
||||||
|
- RUN rpm-ostree install /tmp/rpms/ublue-os/ublue-os-nvidia*.rpm
|
||||||
|
- RUN sed -i '0,/enabled=0/{s/enabled=0/enabled=1/}' /etc/yum.repos.d/nvidia-container-toolkit.repo
|
||||||
|
- RUN sed -i '0,/enabled=0/{s/enabled=0/enabled=1\npriority=90/}' /etc/yum.repos.d/negativo17-fedora-nvidia.repo
|
||||||
|
- RUN rpm-ostree install /tmp/rpms/kmods/kmod-nvidia*.rpm libnvidia-fbc libva-nvidia-driver nvidia-driver nvidia-modprobe nvidia-persistenced nvidia-settings nvidia-container-toolkit
|
||||||
|
|
||||||
|
- type: script
|
||||||
|
scripts:
|
||||||
|
- nvidia/installtoolkitpolicy.sh
|
||||||
|
- nvidia/removeunusedrepos.sh
|
||||||
|
- nvidia/setearlyloading.sh
|
||||||
|
- nvidia/setdrmvariables.sh
|
@@ -9,5 +9,4 @@ modules:
|
|||||||
- flatpak-user-update.timer
|
- flatpak-user-update.timer
|
||||||
- swww.service
|
- swww.service
|
||||||
- hyprpanel.service
|
- hyprpanel.service
|
||||||
# - quickshell.service
|
|
||||||
- hyprpolkitagent.service
|
- hyprpolkitagent.service
|
@@ -3,21 +3,13 @@ modules:
|
|||||||
repos:
|
repos:
|
||||||
copr:
|
copr:
|
||||||
- solopasha/hyprland
|
- solopasha/hyprland
|
||||||
- errornointernet/quickshell
|
|
||||||
install:
|
install:
|
||||||
packages:
|
packages:
|
||||||
- aquamarine
|
- aquamarine
|
||||||
- hyprland-git
|
- hyprland-git
|
||||||
|
- hyprpanel
|
||||||
- hyprpolkitagent
|
- hyprpolkitagent
|
||||||
- hyprshot
|
- hyprshot
|
||||||
- hyprland-qt-support
|
- hyprland-qt-support
|
||||||
- hyprland-qtutils
|
- hyprland-qtutils
|
||||||
- xdg-desktop-portal-hyprland
|
- xdg-desktop-portal-hyprland
|
||||||
- swww
|
|
||||||
- matugen
|
|
||||||
|
|
||||||
# hyprpanel
|
|
||||||
- hyprpanel
|
|
||||||
|
|
||||||
# quickshell
|
|
||||||
- quickshell
|
|
@@ -9,19 +9,6 @@ modules:
|
|||||||
- qt5-qtquickcontrols2
|
- qt5-qtquickcontrols2
|
||||||
- qt5-qtsvg
|
- qt5-qtsvg
|
||||||
|
|
||||||
# added libraries for quickshell
|
|
||||||
- qt5-qtimageformats
|
|
||||||
- qt5-qtmultimedia
|
|
||||||
- qt6-qtquickcontrols2
|
|
||||||
- qt6-qtsvg
|
|
||||||
- qt6-qtimageformats
|
|
||||||
- qt6-qtmultimedia
|
|
||||||
- qt6-qt5compat
|
|
||||||
|
|
||||||
# added for editing quickshell (qmlls)
|
|
||||||
- qt5-qtdeclarative-devel
|
|
||||||
- qt6-qtdeclarative-devel
|
|
||||||
|
|
||||||
# password keeper
|
# password keeper
|
||||||
- kf6-kwallet
|
- kf6-kwallet
|
||||||
- kwalletmanager
|
- kwalletmanager
|
||||||
|
25
recipes/recipe_nvidia.yml
Normal file
25
recipes/recipe_nvidia.yml
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
# yaml-language-server: $schema=https://schema.blue-build.org/recipe-v1.json
|
||||||
|
# image will be published to ghcr.io/<user>/<name>
|
||||||
|
name: hydro-os-nvidia
|
||||||
|
# description will be included in the image's metadata
|
||||||
|
description: This is my personal OS image.
|
||||||
|
|
||||||
|
# the base image to build on top of (FROM) and the version tag to use
|
||||||
|
base-image: quay.io/fedora-ostree-desktops/base-atomic
|
||||||
|
image-version: 42 # latest is also supported if you want new updates ASAP
|
||||||
|
|
||||||
|
# module configuration, executed in order
|
||||||
|
# you can include multiple instances of the same module
|
||||||
|
modules:
|
||||||
|
- from-file: components/dnf-module.yml
|
||||||
|
- from-file: components/script-module.yml
|
||||||
|
- from-file: components/sys-files-module.yml
|
||||||
|
- from-file: components/systemd-module.yml
|
||||||
|
- from-file: components/nvidia-module.yml
|
||||||
|
- from-file: components/default-flatpak.yml
|
||||||
|
- from-file: components/chezmoi-module.yml
|
||||||
|
- type: initramfs
|
||||||
|
|
||||||
|
- type: signing
|
||||||
|
|
Reference in New Issue
Block a user