Compare commits
61 Commits
7a10a11e0f
...
main
Author | SHA1 | Date | |
---|---|---|---|
05211ae180 | |||
2970015961 | |||
8f84dc8588 | |||
20ce492ec1 | |||
fac4e4144a | |||
42e52e93e7 | |||
b64c19c3e5 | |||
7809d24cd4 | |||
a784d1de70 | |||
61bb77e05b | |||
1fdc24f550 | |||
5781fd017b | |||
8edcd4ff05 | |||
55fe8e21b5 | |||
47fad27d7b | |||
73a6d27e0e | |||
92ea9c9af2 | |||
1181d5accb | |||
6259ab886e | |||
5fbb9383f9 | |||
0ba2ad78f5 | |||
4f61fb3e33 | |||
52becf4ef4 | |||
39611efb18 | |||
d0e1214f23 | |||
fa931b6f1f | |||
07adaa0438 | |||
46a54506f2 | |||
fd295b21e9 | |||
c2df7707ee | |||
be74a20a4b | |||
d44297ebaf | |||
bfab543dc3 | |||
2795869465 | |||
777bcbdb24 | |||
ffc809061b | |||
45ea42457c | |||
7107645dc9 | |||
b72f3ec79f | |||
2ec348e81f | |||
841270554c | |||
d75fdb0608 | |||
537dc3835f | |||
b471730686 | |||
a4ccb540c8 | |||
f76c13d103 | |||
c168988e13 | |||
27bbd783df | |||
0a0a3c820c | |||
f30442534f | |||
68045125e4 | |||
bfc6bb9d06 | |||
123e11860d | |||
0e42248ac5 | |||
5a2e033805 | |||
cf132260df | |||
5a4123097e | |||
9e0dc3216f | |||
f8ee64c130 | |||
e986b0395f | |||
ff0cb59c44 |
44
.github/workflows/build-nvidia.yml
vendored
44
.github/workflows/build-nvidia.yml
vendored
@@ -1,44 +0,0 @@
|
||||
name: bluebuild-nvidia
|
||||
on:
|
||||
schedule:
|
||||
- cron:
|
||||
"00 06 * * *" # build at 06:00 UTC every day
|
||||
# (20 minutes after last ublue images start building)
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths-ignore: # don't rebuild if only documentation has changed
|
||||
- "**.md"
|
||||
pull_request:
|
||||
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:
|
||||
bluebuild:
|
||||
name: Build Custom Image
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
packages: write
|
||||
id-token: write
|
||||
strategy:
|
||||
fail-fast: false # stop GH from cancelling all matrix builds if one fails
|
||||
matrix:
|
||||
recipe:
|
||||
# !! Add your recipes here
|
||||
- recipe_nvidia.yml
|
||||
steps:
|
||||
# the build is fully handled by the reusable github action
|
||||
- name: Build Custom Image
|
||||
uses: blue-build/github-action@v1.8
|
||||
with:
|
||||
recipe: ${{ matrix.recipe }}
|
||||
cosign_private_key: ${{ secrets.SIGNING_SECRET }}
|
||||
registry: 'git.hydrosaber.com'
|
||||
registry_token: ${{ secrets.PACKAGE_BUILDER_TOKEN }}
|
||||
pr_event_number: ${{ github.event.number }}
|
||||
|
||||
# enabled by default, disable if your image is small and you want faster builds
|
||||
maximize_build_space: true
|
7
.github/workflows/build.yml
vendored
7
.github/workflows/build.yml
vendored
@@ -2,17 +2,13 @@ name: bluebuild
|
||||
on:
|
||||
schedule:
|
||||
- cron:
|
||||
"00 06 * * *" # build at 06:00 UTC every day
|
||||
"00 06 * * *" # build at 06:00 UTC every Monday
|
||||
# (20 minutes after last ublue images start building)
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths-ignore: # don't rebuild if only documentation has changed
|
||||
- "**.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
|
||||
concurrency:
|
||||
@@ -34,6 +30,7 @@ jobs:
|
||||
# !! Add your recipes here
|
||||
- recipe.yml
|
||||
steps:
|
||||
|
||||
# the build is fully handled by the reusable github action
|
||||
- name: Build Custom Image
|
||||
uses: blue-build/github-action@v1.8
|
||||
|
@@ -1,4 +1,4 @@
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzzK2nfqN5MlTqBitNsehDVnITGSF
|
||||
r9FQRKI6dNDXRjlKgcMaa88Mb9FdfqFVHSPesN1mHz3/QfZIPG/s7mJAfw==
|
||||
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDgbLqIZdNv3Lx7jEKq3l6UImgXi/
|
||||
MdQ51/79s4zfI2f4wQ8ran/sZO3y91hhsImytGqfSpNZmMV8T0rmOAAXkg==
|
||||
-----END PUBLIC KEY-----
|
||||
|
8
files/dnf/codium.repo
Normal file
8
files/dnf/codium.repo
Normal file
@@ -0,0 +1,8 @@
|
||||
[gitlab.com_paulcarroty_vscodium_repo]
|
||||
name=download.vscodium.com
|
||||
baseurl=https://download.vscodium.com/rpms/
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
repo_gpgcheck=1
|
||||
gpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg
|
||||
metadata_expire=1h
|
@@ -0,0 +1,4 @@
|
||||
[org.gnome.desktop.interface]
|
||||
gtk-theme='Adwaita-dark'
|
||||
color-scheme='prefer-dark'
|
||||
icon-theme='Papirus'
|
40
files/scripts/addimageinfo.sh
Normal file
40
files/scripts/addimageinfo.sh
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Tell build process to exit if there are any errors.
|
||||
set -oue pipefail
|
||||
|
||||
# This file includes code from Universal Blue which is licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS"
|
||||
# BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language
|
||||
# governing permissions and limitations under the License.
|
||||
|
||||
IMAGE_PRETTY_NAME="hydro-os"
|
||||
IMAGE_LIKE="fedora"
|
||||
HOME_URL="https://git.hydrosaber.com/eriq12/hydro-os"
|
||||
DOCUMENTATION_URL="https://git.hydrosaber.com/eriq12/hydro-os"
|
||||
SUPPORT_URL="https://git.hydrosaber.com/eriq12/hydro-os/issues"
|
||||
BUG_SUPPORT_URL="https://git.hydrosaber.com/eriq12/hydro-os/issues"
|
||||
|
||||
if grep -q "VARIANT_ID" /usr/lib/os-release; then
|
||||
sed -i "s/^VARIANT_ID=.*/VARIANT_ID=$IMAGE_NAME/" /usr/lib/os-release
|
||||
else
|
||||
echo "VARIANT_ID=$IMAGE_NAME" >> /usr/lib/os-release
|
||||
fi
|
||||
sed -i "s/^PRETTY_NAME=.*/PRETTY_NAME=\"${IMAGE_PRETTY_NAME} (powered by Fedora Atomic)\"/" /usr/lib/os-release
|
||||
sed -i "s/^NAME=.*/NAME=\"$IMAGE_PRETTY_NAME\"/" /usr/lib/os-release
|
||||
sed -i "s|^HOME_URL=.*|HOME_URL=\"$HOME_URL\"|" /usr/lib/os-release
|
||||
sed -i "s|^DOCUMENTATION_URL=.*|DOCUMENTATION_URL=\"$DOCUMENTATION_URL\"|" /usr/lib/os-release
|
||||
sed -i "s|^SUPPORT_URL=.*|SUPPORT_URL=\"$SUPPORT_URL\"|" /usr/lib/os-release
|
||||
sed -i "s|^BUG_REPORT_URL=.*|BUG_REPORT_URL=\"$BUG_SUPPORT_URL\"|" /usr/lib/os-release
|
||||
sed -i "s|^CPE_NAME=\"cpe:/o:fedoraproject:fedora|CPE_NAME=\"cpe:/o:wayblue:${IMAGE_PRETTY_NAME,}|" /usr/lib/os-release
|
||||
sed -i "s/^DEFAULT_HOSTNAME=.*/DEFAULT_HOSTNAME=\"${IMAGE_PRETTY_NAME,}\"/" /usr/lib/os-release
|
||||
sed -i "s/^ID=fedora/ID=\"${IMAGE_LIKE,}\"\nID_LIKE=\"${IMAGE_PRETTY_NAME,}\"/" /usr/lib/os-release
|
||||
sed -i "/^REDHAT_BUGZILLA_PRODUCT=/d; /^REDHAT_BUGZILLA_PRODUCT_VERSION=/d; /^REDHAT_SUPPORT_PRODUCT=/d; /^REDHAT_SUPPORT_PRODUCT_VERSION=/d" /usr/lib/os-release
|
||||
|
||||
# Fix issues caused by ID no longer being fedora
|
||||
sed -i "s/^EFIDIR=.*/EFIDIR=\"fedora\"/" /usr/sbin/grub2-switch-to-blscfg
|
27
files/scripts/installdkmsmodules.sh
Normal file
27
files/scripts/installdkmsmodules.sh
Normal file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Tell build process to exit if there are any errors.
|
||||
set -oue pipefail
|
||||
|
||||
echo "INFO: grab kernel module"
|
||||
KERNEL_VER=$(ls /lib/modules | head -n 1)
|
||||
echo $KERNEL_VER
|
||||
|
||||
echo "INFO: list all modules"
|
||||
ls /usr/src
|
||||
|
||||
echo "INFO: grab xpad modules"
|
||||
XPAD_MODULE_VER=$(ls /usr/src | grep xpadneo | sed 's/-/\//')
|
||||
echo $XPAD_MODULE_VER
|
||||
|
||||
echo "INFO: grab open razer modules"
|
||||
RAZER_MODULE_VER=$(ls /usr/src | grep razer | sed -E 's/(.*)-/\1\//')
|
||||
echo $RAZER_MODULE_VER
|
||||
|
||||
echo "INFO: build and install xpadneo"
|
||||
sudo dkms build -m $XPAD_MODULE_VER -k $KERNEL_VER
|
||||
sudo dkms install -m $XPAD_MODULE_VER -k $KERNEL_VER
|
||||
|
||||
echo "INFO: build and install openrazer"
|
||||
sudo dkms build -m $RAZER_MODULE_VER -k $KERNEL_VER
|
||||
sudo dkms install -m $RAZER_MODULE_VER -k $KERNEL_VER
|
@@ -1,6 +0,0 @@
|
||||
#!/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
|
@@ -1,10 +0,0 @@
|
||||
#!/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
|
@@ -1,16 +0,0 @@
|
||||
#!/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
|
@@ -1,7 +0,0 @@
|
||||
#!/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
|
10
files/scripts/setupchezmoiskel.sh
Normal file
10
files/scripts/setupchezmoiskel.sh
Normal file
@@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Tell build process to exit if there are any errors.
|
||||
set -oue pipefail
|
||||
|
||||
git clone https://git.hydrosaber.com/eriq12/dotfiles /etc/skel/.local/share/chezmoi
|
||||
|
||||
cp /etc/skel/.local/share/chezmoi/dot_bashrc /etc/skel/.bashrc
|
||||
cp /etc/skel/.local/share/chezmoi/dot_zshrc /etc/skel/.zshrc
|
||||
cp -r /etc/skel/.local/share/chezmoi/dot_config /etc/skel/.config
|
2
files/system/etc/environment.d/theme.conf
Normal file
2
files/system/etc/environment.d/theme.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
QT_QPA_PLATFORMTHEME=qt6ct
|
||||
QT_QUICK_CONTROLS_STYLE=org.hyprland.style
|
4
files/system/etc/firewalld/services/grayjay.xml
Normal file
4
files/system/etc/firewalld/services/grayjay.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<service>
|
||||
<port port="12315" protocol="tcp"/>
|
||||
</service>
|
5
files/system/etc/firewalld/services/localsend.xml
Normal file
5
files/system/etc/firewalld/services/localsend.xml
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<service>
|
||||
<port port="53317" protocol="tcp"/>
|
||||
<port port="53317" protocol="udp"/>
|
||||
</service>
|
1
files/system/etc/modules-load.d/asus-sensor.conf
Normal file
1
files/system/etc/modules-load.d/asus-sensor.conf
Normal file
@@ -0,0 +1 @@
|
||||
nct6775
|
1
files/system/etc/modules-load.d/ntsync.conf
Normal file
1
files/system/etc/modules-load.d/ntsync.conf
Normal file
@@ -0,0 +1 @@
|
||||
ntsync
|
16
files/system/etc/xdg/autostart/kitty.desktop
Normal file
16
files/system/etc/xdg/autostart/kitty.desktop
Normal file
@@ -0,0 +1,16 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Type=Application
|
||||
Name=kitty
|
||||
GenericName=Terminal emulator
|
||||
Comment=Fast, feature-rich, GPU based terminal
|
||||
TryExec=kitty
|
||||
StartupNotify=true
|
||||
Exec=/usr/bin/hyprctl dispatch exec [workspace special:terminal silent] /usr/bin/kitty
|
||||
Icon=kitty
|
||||
Categories=System;TerminalEmulator;
|
||||
X-TerminalArgExec=--
|
||||
X-TerminalArgTitle=--title
|
||||
X-TerminalArgAppId=--class
|
||||
X-TerminalArgDir=--working-directory
|
||||
X-TerminalArgHold=--hold
|
27
files/system/usr/share/applications/codium.desktop
Normal file
27
files/system/usr/share/applications/codium.desktop
Normal file
@@ -0,0 +1,27 @@
|
||||
[Desktop Entry]
|
||||
Name=VSCodium
|
||||
Comment=Code Editing. Redefined.
|
||||
GenericName=Text Editor
|
||||
Exec=/usr/share/codium/codium --ozone-platform=wayland %F
|
||||
Icon=vscodium
|
||||
Type=Application
|
||||
StartupNotify=false
|
||||
StartupWMClass=VSCodium
|
||||
Categories=TextEditor;Development;IDE;
|
||||
MimeType=text/plain;inode/directory;application/x-codium-workspace;
|
||||
Actions=new-empty-window;
|
||||
Keywords=vscodium;codium;vscode;
|
||||
|
||||
[Desktop Action new-empty-window]
|
||||
Name=New Empty Window
|
||||
Name[de]=Neues leeres Fenster
|
||||
Name[es]=Nueva ventana vacía
|
||||
Name[fr]=Nouvelle fenêtre vide
|
||||
Name[it]=Nuova finestra vuota
|
||||
Name[ja]=新しい空のウィンドウ
|
||||
Name[ko]=새 빈 창
|
||||
Name[ru]=Новое пустое окно
|
||||
Name[zh_CN]=新建空窗口
|
||||
Name[zh_TW]=開新空視窗
|
||||
Exec=/usr/share/codium/codium --new-window %F
|
||||
Icon=vscodium
|
@@ -1,11 +0,0 @@
|
||||
[Unit]
|
||||
Description=Monitor bootc for status changes
|
||||
Documentation=man:bootc-status-updated.path(5)
|
||||
ConditionPathExists=/run/ostree-booted
|
||||
|
||||
[Path]
|
||||
PathChanged=/ostree/bootc
|
||||
Unit=bootc-status-updated.target
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
@@ -1,5 +0,0 @@
|
||||
[Unit]
|
||||
Description=Target for bootc status changes
|
||||
Documentation=man:bootc-status-updated.target(5)
|
||||
StopWhenUnneeded=true
|
||||
ConditionPathExists=/run/ostree-booted
|
@@ -1,17 +0,0 @@
|
||||
[Unit]
|
||||
Description=The VoIP program targeted towards gaming.
|
||||
# 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/flatpak run com.discordapp.Discord
|
||||
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
|
@@ -1,11 +0,0 @@
|
||||
[Unit]
|
||||
Description=Notify the user when the next update has been downloaded.
|
||||
# order after update has been applied
|
||||
After=bootc-status-updated.target
|
||||
|
||||
[Service]
|
||||
Type=exec
|
||||
ExecStart=/usr/bin/systemd-run --user notify-send 'Update Downloaded!' 'A new update has been downloaded! Please restart to apply update!'
|
||||
|
||||
[Install]
|
||||
WantedBy=bootc-status-updated.target
|
@@ -1,6 +1,5 @@
|
||||
[Unit]
|
||||
Description=A panel bar branched from AGS maintained by Hyprland devs.
|
||||
Documentation=man:waybar(5)
|
||||
# order startup after WM
|
||||
After=graphical-session.target
|
||||
|
||||
@@ -8,7 +7,7 @@ After=graphical-session.target
|
||||
Type=exec
|
||||
# Repurpose XDG Autostart filtering
|
||||
ExecCondition=/lib/systemd/systemd-xdg-autostart-condition "wlroots:sway:Wayfire:labwc:Hyprland" ""
|
||||
ExecStart=/usr/bin/hyprpanel
|
||||
ExecStart=/usr/bin/quickshell
|
||||
Restart=on-failure
|
||||
Slice=app-graphical.slice
|
||||
|
@@ -1,17 +0,0 @@
|
||||
[Unit]
|
||||
Description=The pc gaming platform
|
||||
# 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/steam %U
|
||||
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
|
@@ -1,17 +0,0 @@
|
||||
[Unit]
|
||||
Description=The Kitty terminal emulator.
|
||||
# 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=hyprctl dispatch exec [workspace special:terminal silent] /usr/bin/kitty
|
||||
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
|
@@ -1,17 +0,0 @@
|
||||
[Unit]
|
||||
Description=Unlocks kwallet for hyprland on login.
|
||||
# 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/libexec/pam_kwallet_init
|
||||
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
|
@@ -1,9 +0,0 @@
|
||||
modules:
|
||||
- type: systemd
|
||||
user:
|
||||
enabled:
|
||||
- hyprpanel.service
|
||||
- hyprpolkitagent.service
|
||||
- discord.service
|
||||
- steam.service
|
||||
- terminal.service
|
@@ -1,117 +0,0 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
copr:
|
||||
- ublue-os/packages
|
||||
install:
|
||||
packages:
|
||||
- ublue-os-udev-rules
|
||||
- ublue-os-signing
|
||||
|
||||
- type: systemd
|
||||
system:
|
||||
enabled:
|
||||
- bootc-fetch-updates.timer
|
||||
- podman-auto-update.timer
|
||||
- flatpak-system-update.timer
|
||||
user:
|
||||
enabled:
|
||||
- podman-auto-update.timer
|
||||
- flatpak-user-update.timer
|
||||
- unlock-kwallet.service
|
||||
- notify-update.service
|
||||
- swww.service
|
||||
- bootc-status-updated.path
|
||||
|
||||
- type: dnf
|
||||
install:
|
||||
packages:
|
||||
# environment
|
||||
# fuzzy finder
|
||||
- fzf
|
||||
# power profiles like
|
||||
- tuned-ppd
|
||||
# xwayland
|
||||
- xorg-x11-server-Xwayland
|
||||
# headset control
|
||||
- headsetcontrol
|
||||
# media related
|
||||
- mediainfo
|
||||
- playerctl
|
||||
- alsa-firmware
|
||||
# text editor
|
||||
- neovim
|
||||
# tools for evocation
|
||||
- just
|
||||
# zip utilities
|
||||
- p7zip
|
||||
# qt libraries
|
||||
- qt5-qtwayland
|
||||
- qt6-qtwayland
|
||||
# qt ct packages
|
||||
- qt5ct
|
||||
- qt6ct
|
||||
# emoji fonts
|
||||
- google-noto-emoji-fonts
|
||||
# vulkan
|
||||
- vulkan-tools
|
||||
- vulkan-validation-layers
|
||||
|
||||
# dmenu runner
|
||||
- fuzzel
|
||||
|
||||
# polkit
|
||||
- polkit
|
||||
|
||||
# sound
|
||||
- wireplumber
|
||||
- pipewire
|
||||
- pamixer
|
||||
- pulseaudio-utils
|
||||
|
||||
# networking
|
||||
- bluez
|
||||
- bluez-tools
|
||||
- firewall-config
|
||||
|
||||
# file manager
|
||||
- nautilus
|
||||
- file-roller
|
||||
- file-roller-nautilus
|
||||
|
||||
# theme and GUI
|
||||
- fontawesome-fonts-all
|
||||
- gnome-themes-extra
|
||||
- gnome-icon-theme
|
||||
- paper-icon-theme
|
||||
- breeze-icon-theme
|
||||
- papirus-icon-theme
|
||||
|
||||
# power
|
||||
- powerstat
|
||||
|
||||
remove:
|
||||
packages:
|
||||
# remove firefox
|
||||
- firefox
|
||||
- firefox-langpacks
|
||||
|
||||
- type: dnf
|
||||
repos:
|
||||
nonfree: rpmfusion
|
||||
replace:
|
||||
- from-repo: rpmfusion-nonfree
|
||||
packages:
|
||||
- libheif
|
||||
- libva
|
||||
- libva-intel-media-driver
|
||||
- mesa-dri-drivers
|
||||
- mesa-filesystem
|
||||
- mesa-libEGL
|
||||
- mesa-libGL
|
||||
- mesa-libgbm
|
||||
- mesa-va-drivers
|
||||
- mesa-vulkan-drivers
|
||||
- gstreamer1-plugin-libav
|
||||
|
||||
|
@@ -1,3 +1,7 @@
|
||||
modules:
|
||||
- type: chezmoi
|
||||
repository: "https://git.hydrosaber.com/eriq12/dotfiles"
|
||||
|
||||
- type: script
|
||||
scripts:
|
||||
- setupchezmoiskel.sh
|
@@ -1,12 +1,19 @@
|
||||
modules:
|
||||
- type: default-flatpaks
|
||||
notify: true
|
||||
system:
|
||||
configurations:
|
||||
- scope: user
|
||||
repo:
|
||||
title: Flathub (user)
|
||||
install:
|
||||
- one.ablaze.floorp
|
||||
- io.github.equicord.equibop
|
||||
- scope: system
|
||||
repo:
|
||||
title: Flathub
|
||||
notify: true
|
||||
install:
|
||||
- com.github.tchx84.Flatseal
|
||||
- io.missioncenter.MissionCenter
|
||||
- io.github.flattool.Warehouse
|
||||
user:
|
||||
install:
|
||||
- com.discordapp.Discord
|
||||
- io.github.flattool.Ignition
|
||||
- net.davidotek.pupgui2
|
||||
- org.gnome.Loupe
|
8
recipes/components/dnf-module.yml
Normal file
8
recipes/components/dnf-module.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
modules:
|
||||
- from-file: dnf/multimedia.yml
|
||||
- from-file: dnf/sddm.yml
|
||||
- from-file: dnf/hyprland.yml
|
||||
- from-file: dnf/environment.yml
|
||||
- from-file: dnf/applications.yml
|
||||
- from-file: dnf/themes.yml
|
||||
- from-file: dnf/drivers.yml
|
4
recipes/components/gschema-module.yml
Normal file
4
recipes/components/gschema-module.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
modules:
|
||||
- type: gschema-overrides
|
||||
include:
|
||||
- zz1-hydro-os-theming.gschema.override
|
@@ -1,11 +0,0 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
copr:
|
||||
- solopasha/hyprland
|
||||
install:
|
||||
packages:
|
||||
- hyprland-git
|
||||
- hyprpanel
|
||||
- hyprpolkitagent
|
||||
- hyprshot
|
@@ -1,16 +0,0 @@
|
||||
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
|
5
recipes/components/script-module.yml
Normal file
5
recipes/components/script-module.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
modules:
|
||||
- type: script
|
||||
scripts:
|
||||
- addimageinfo.sh
|
||||
- installohmyzsh.sh
|
@@ -1,26 +0,0 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
install:
|
||||
packages:
|
||||
- sddm
|
||||
- sddm-themes
|
||||
- qt5-qtgraphicaleffects
|
||||
- qt5-qtquickcontrols2
|
||||
- qt5-qtsvg
|
||||
|
||||
# password keeper
|
||||
- kf6-kwallet
|
||||
- kwalletmanager
|
||||
- pam-kwallet
|
||||
|
||||
# signon
|
||||
- signon
|
||||
- signon-kwallet-extension
|
||||
- signon-plugin-oauth2
|
||||
- signon-qt5
|
||||
- signon-qt6
|
||||
- signon-ui
|
||||
|
||||
- type: script
|
||||
scripts:
|
||||
- setsddmtheming.sh
|
@@ -1,20 +0,0 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
nonfree: rpmfusion
|
||||
copr:
|
||||
enable:
|
||||
- atim/xpadneo
|
||||
install:
|
||||
packages:
|
||||
- steam
|
||||
# for game mode and big picture mode
|
||||
- gamescope
|
||||
# for performance view
|
||||
- mangohud
|
||||
- xpadneo
|
||||
|
||||
- type: default-flatpaks
|
||||
system:
|
||||
install:
|
||||
- net.davidotek.pupgui2
|
12
recipes/components/systemd-module.yml
Normal file
12
recipes/components/systemd-module.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
modules:
|
||||
- type: systemd
|
||||
system:
|
||||
enabled:
|
||||
- bootc-fetch-updates.timer
|
||||
- flatpak-system-update.timer
|
||||
user:
|
||||
enabled:
|
||||
- flatpak-user-update.timer
|
||||
- swww.service
|
||||
- quickshell.service
|
||||
- hyprpolkitagent.service
|
@@ -1,15 +0,0 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
install:
|
||||
packages:
|
||||
# zsh
|
||||
- zsh
|
||||
# sqlite for some autocomplete
|
||||
- sqlite
|
||||
# zoxide for z stuff
|
||||
- zoxide
|
||||
|
||||
# install oh my zsh
|
||||
- type: script
|
||||
scripts:
|
||||
- installohmyzsh.sh
|
70
recipes/dnf/applications.yml
Normal file
70
recipes/dnf/applications.yml
Normal file
@@ -0,0 +1,70 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
nonfree: rpmfusion
|
||||
files:
|
||||
- codium.repo
|
||||
copr:
|
||||
- mavit/discover-overlay
|
||||
keys:
|
||||
- https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg
|
||||
install:
|
||||
packages:
|
||||
# applications
|
||||
# fuzzy finder
|
||||
- fzf
|
||||
|
||||
# dmenu runner
|
||||
- fuzzel
|
||||
|
||||
# file manager
|
||||
- nautilus
|
||||
- file-roller
|
||||
- file-roller-nautilus
|
||||
|
||||
- ffmpegthumbnailer
|
||||
|
||||
# music / video player
|
||||
- vlc
|
||||
|
||||
# text editor
|
||||
- neovim
|
||||
- codium
|
||||
|
||||
# software store
|
||||
- gnome-software
|
||||
|
||||
# disk management
|
||||
- gnome-disk-utility
|
||||
|
||||
# kdeconnect
|
||||
- kde-connect
|
||||
|
||||
# discord overlay
|
||||
- discover-overlay
|
||||
|
||||
# settings apps
|
||||
# qt
|
||||
- qt5ct
|
||||
- qt6ct
|
||||
|
||||
# gtk
|
||||
- nwg-look
|
||||
|
||||
# zsh
|
||||
- zsh
|
||||
# zoxide for z stuff
|
||||
- zoxide
|
||||
|
||||
# steam
|
||||
- steam
|
||||
# for game mode and big picture mode
|
||||
- gamescope
|
||||
# for performance view
|
||||
- mangohud
|
||||
|
||||
remove:
|
||||
packages:
|
||||
# remove firefox
|
||||
- firefox
|
||||
- firefox-langpacks
|
17
recipes/dnf/drivers.yml
Normal file
17
recipes/dnf/drivers.yml
Normal file
@@ -0,0 +1,17 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
files:
|
||||
- https://negativo17.org/repos/fedora-steam.repo
|
||||
- https://openrazer.github.io/hardware:razer.repo
|
||||
install:
|
||||
packages:
|
||||
- dkms
|
||||
- openrazer-meta
|
||||
- repo: fedora-steam
|
||||
packages:
|
||||
- dkms-xpadneo
|
||||
|
||||
- type: script
|
||||
scripts:
|
||||
- installdkmsmodules.sh
|
47
recipes/dnf/environment.yml
Normal file
47
recipes/dnf/environment.yml
Normal file
@@ -0,0 +1,47 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
files:
|
||||
- codium.repo
|
||||
copr:
|
||||
- ublue-os/packages
|
||||
install:
|
||||
packages:
|
||||
# ublue udev rules and signing
|
||||
- ublue-os-udev-rules
|
||||
- ublue-os-signing
|
||||
|
||||
# environment
|
||||
# xwayland
|
||||
- xorg-x11-server-Xwayland
|
||||
# headset control
|
||||
- headsetcontrol
|
||||
# media related
|
||||
- mediainfo
|
||||
- playerctl
|
||||
- alsa-firmware
|
||||
# zip utilities
|
||||
- p7zip
|
||||
# qt libraries
|
||||
- qt5-qtwayland
|
||||
- qt6-qtwayland
|
||||
# vulkan
|
||||
- vulkan-tools
|
||||
- vulkan-validation-layers
|
||||
# xdg-desktop-portals
|
||||
- xdg-desktop-portal
|
||||
- xdg-desktop-portal-gtk
|
||||
- xdg-desktop-portal-gnome
|
||||
|
||||
# polkit
|
||||
- polkit
|
||||
|
||||
# sound
|
||||
- wireplumber
|
||||
- pipewire
|
||||
- headsetcontrol
|
||||
|
||||
# networking
|
||||
- bluez
|
||||
- bluez-tools
|
||||
- firewall-config
|
20
recipes/dnf/hyprland.yml
Normal file
20
recipes/dnf/hyprland.yml
Normal file
@@ -0,0 +1,20 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
copr:
|
||||
- solopasha/hyprland
|
||||
- errornointernet/quickshell
|
||||
install:
|
||||
packages:
|
||||
- aquamarine
|
||||
- hyprland-git
|
||||
- hyprpolkitagent
|
||||
- hyprshot
|
||||
- hyprland-qt-support
|
||||
- hyprland-qtutils
|
||||
- xdg-desktop-portal-hyprland
|
||||
- swww
|
||||
- matugen
|
||||
|
||||
# quickshell
|
||||
- quickshell
|
38
recipes/dnf/multimedia.yml
Normal file
38
recipes/dnf/multimedia.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
nonfree: rpmfusion
|
||||
install:
|
||||
packages:
|
||||
# other multimedia
|
||||
- gstreamer1-plugin-libav
|
||||
- gstreamer1-plugins-bad-free-extras
|
||||
- gstreamer1-plugins-bad-freeworld
|
||||
- gstreamer1-plugins-ugly
|
||||
- gstreamer1-vaapi
|
||||
|
||||
remove:
|
||||
packages:
|
||||
# old codecs
|
||||
- fdk-aac-free
|
||||
- libavcodec-free
|
||||
- libavdevice-free
|
||||
- libavfilter-free
|
||||
- libavformat-free
|
||||
- libavutil-free
|
||||
- libpostproc-free
|
||||
- libswresample-free
|
||||
- libswscale-free
|
||||
- ffmpeg-free
|
||||
|
||||
replace:
|
||||
- from-repo: rpmfusion-free-updates
|
||||
packages:
|
||||
- old: mesa-va-drivers
|
||||
new: mesa-va-drivers-freeworld
|
||||
|
||||
- type: dnf
|
||||
install:
|
||||
packages:
|
||||
- ffmpeg
|
||||
- mesa-vdpau-drivers-freeworld
|
28
recipes/dnf/sddm.yml
Normal file
28
recipes/dnf/sddm.yml
Normal file
@@ -0,0 +1,28 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
install:
|
||||
packages:
|
||||
# sddm
|
||||
- sddm
|
||||
- sddm-themes
|
||||
- qt5-qtgraphicaleffects
|
||||
- qt5-qtquickcontrols2
|
||||
- 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
|
||||
- kf6-kwallet
|
||||
- kwalletmanager
|
||||
- pam-kwallet
|
17
recipes/dnf/themes.yml
Normal file
17
recipes/dnf/themes.yml
Normal file
@@ -0,0 +1,17 @@
|
||||
modules:
|
||||
- type: dnf
|
||||
repos:
|
||||
copr:
|
||||
- peterwu/rendezvous
|
||||
install:
|
||||
packages:
|
||||
# Themes and fonts
|
||||
# emoji fonts
|
||||
- google-noto-emoji-fonts
|
||||
|
||||
# theme and GUI
|
||||
- fontawesome-fonts-all
|
||||
- gnome-themes-extra
|
||||
- papirus-icon-theme
|
||||
- bibata-cursor-themes
|
||||
- material-icons-fonts
|
@@ -12,15 +12,12 @@ 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/sddm-module.yml
|
||||
- from-file: components/base-module.yml
|
||||
- from-file: components/dnf-module.yml
|
||||
- from-file: components/script-module.yml
|
||||
- from-file: components/sys-files-module.yml
|
||||
- from-file: components/hyprland-module.yml
|
||||
- from-file: components/zsh-module.yml
|
||||
- from-file: components/steam-module.yml
|
||||
- from-file: components/autostart-module.yml
|
||||
- from-file: components/systemd-module.yml
|
||||
- from-file: components/default-flatpak.yml
|
||||
- from-file: components/chezmoi-module.yml
|
||||
|
||||
- type: signing # this sets up the proper policy & signing files for signed images to work fully
|
||||
- type: signing
|
||||
|
||||
|
@@ -1,27 +0,0 @@
|
||||
---
|
||||
# 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/sddm-module.yml
|
||||
- from-file: components/base-module.yml
|
||||
- from-file: components/nvidia-module.yml
|
||||
- from-file: components/sys-files-module.yml
|
||||
- from-file: components/hyprland-module.yml
|
||||
- from-file: components/zsh-module.yml
|
||||
- from-file: components/steam-module.yml
|
||||
- from-file: components/autostart-module.yml
|
||||
- from-file: components/default-flatpak.yml
|
||||
- from-file: components/chezmoi-module.yml
|
||||
|
||||
- type: signing # this sets up the proper policy & signing files for signed images to work fully
|
||||
|
Reference in New Issue
Block a user