Compare commits
187 Commits
c9cc895c74
...
local-podm
Author | SHA1 | Date | |
---|---|---|---|
fcf019fddf | |||
eabd27c3c8 | |||
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 | |||
7a10a11e0f | |||
38c06add07 | |||
2c63bb8642 | |||
2791d04cda | |||
64fe2b0554 | |||
c3c41fa9b3 | |||
5028f8b3c5 | |||
7d816a0b11 | |||
5b932f8a19 | |||
f9e324a7d4 | |||
676ec3afed | |||
430b6ac49b | |||
85d3cd307b | |||
91f6388777 | |||
853ccb3dd7 | |||
fac1440766 | |||
c7391ae3c5 | |||
05d3748888 | |||
991a89c4a6 | |||
fd135e43d2 | |||
de1d73fef6 | |||
4dab1c4267 | |||
8741a1162f | |||
f18216707f | |||
b94e8e44b2 | |||
a64f4ce9ff | |||
cc5c721016 | |||
60da4a5c19 | |||
5539c02f05 | |||
987d93b2d1 | |||
15ed5250c7 | |||
c1d7044fc9 | |||
fc879401b0 | |||
94ac33a612 | |||
ce69f99a2b | |||
1e1d8072b1 | |||
62e3617ac7 | |||
ec7bfa6999 | |||
0614b7221f | |||
b3d22fec37 | |||
a9fead39d2 | |||
81c30d3201 | |||
25e041b939 | |||
4d08e4f254 | |||
f2455f618e | |||
c5427dca4a | |||
2840ed5841 | |||
687b992686 | |||
1e625b66a5 | |||
9728e8d2f3 | |||
099d5bd9d7 | |||
5394bf9671 | |||
f708d3ab84 | |||
9c93c80ce3 | |||
3432b5ffae | |||
e5dd484ce7 | |||
6ef8e3a452 | |||
a7b7f63792 | |||
937327b92e | |||
912e8da0c8 | |||
3169904919 | |||
29eff45604 | |||
7c68cc7b65 | |||
46ff9d254c | |||
be384c3e28 | |||
66757cf6e0 | |||
4fa79e1eed | |||
67ca43db57 | |||
2e3a2afe74 | |||
28860af56f | |||
3c9047226b | |||
36b1e97b53 | |||
a73107abb3 | |||
83e35bd806 | |||
4e5002b4ea | |||
c716cd31c9 | |||
76a8542e55 | |||
a62fdaf823 | |||
065d6bde1c | |||
e8a8455617 | |||
f576439626 | |||
7ee1831dd9 | |||
b8e8c95b7f | |||
354d7beea0 | |||
62dc188e0b | |||
269c74d93d | |||
886c8cbea4 | |||
c3974e0d5f | |||
7f23ca80c2 | |||
9d9755bf72 | |||
d453c910f7 | |||
3d0d0ef382 | |||
0cf7637927 | |||
7057f93a9a | |||
9a91dd08d0 | |||
350f458ba0 | |||
534aca65f7 | |||
d3603718a9 | |||
bef1fea9b5 | |||
900155e5e8 | |||
b1671e8c96 | |||
f9051195ee | |||
4634867987 | |||
425f4581c7 | |||
736b4186c5 | |||
de2315dd20 | |||
ff881fd0ad | |||
36e226578b | |||
399cd847d1 | |||
30fe9ff3f9 | |||
e8cf18cbb2 | |||
da3f13eefb | |||
473a33d041 | |||
3411aa882f | |||
2a268978a7 | |||
c4fbd9fa75 | |||
6430da2b61 | |||
4b29099855 | |||
b71aa51dc0 | |||
5c678bd59a | |||
412434b059 | |||
d87f12e700 | |||
0cd81022e5 | |||
0ee4fdca31 | |||
d5d9f44e59 | |||
ae4912c545 | |||
965fabc47d | |||
4ccf7f7a85 | |||
6305c9fc0d | |||
bb52d2f331 | |||
3b93e16053 |
30
.github/workflows/build-nvidia.yml
vendored
Normal file
30
.github/workflows/build-nvidia.yml
vendored
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
name: bluebuild-nvidia
|
||||||
|
on:
|
||||||
|
workflow_dispatch: # allow manually triggering builds
|
||||||
|
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
|
18
.github/workflows/build.yml
vendored
18
.github/workflows/build.yml
vendored
@@ -2,18 +2,19 @@ name: bluebuild
|
|||||||
on:
|
on:
|
||||||
schedule:
|
schedule:
|
||||||
- cron:
|
- 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)
|
# (20 minutes after last ublue images start building)
|
||||||
push:
|
push:
|
||||||
|
branches:
|
||||||
|
- 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:
|
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
|
||||||
@@ -29,14 +30,17 @@ jobs:
|
|||||||
# !! Add your recipes here
|
# !! Add your recipes here
|
||||||
- recipe.yml
|
- recipe.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
|
||||||
with:
|
with:
|
||||||
recipe: ${{ matrix.recipe }}
|
recipe: ${{ matrix.recipe }}
|
||||||
cosign_private_key: ${{ secrets.SIGNING_SECRET }}
|
cosign_private_key: ${{ secrets.SIGNING_SECRET }}
|
||||||
registry_token: ${{ github.token }}
|
registry: 'git.hydrosaber.com'
|
||||||
|
registry_token: ${{ secrets.PACKAGE_BUILDER_TOKEN }}
|
||||||
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
|
||||||
|
rechunk: true
|
||||||
|
13
README.md
13
README.md
@@ -1,4 +1,4 @@
|
|||||||
# hydro-os [](https://github.com/eriq12/hydro-os/actions/workflows/build.yml)
|
# hydro-os [](https://git.hydrosaber.com/eriq12/hydro-os/actions?workflows=build.yml)
|
||||||
|
|
||||||
This is a personal OS distro that I am using to learn more about the technolgies behind Bluebuild and possibly to later learn about hosting a git server, container repositiories, and actions.
|
This is a personal OS distro that I am using to learn more about the technolgies behind Bluebuild and possibly to later learn about hosting a git server, container repositiories, and actions.
|
||||||
|
|
||||||
@@ -11,7 +11,7 @@ To rebase an existing atomic Fedora installation to the latest build:
|
|||||||
|
|
||||||
- First rebase to the unsigned image, to get the proper signing keys and policies installed:
|
- First rebase to the unsigned image, to get the proper signing keys and policies installed:
|
||||||
```
|
```
|
||||||
rpm-ostree rebase ostree-unverified-registry:ghcr.io/eriq12/hydro-os:latest
|
rpm-ostree rebase ostree-unverified-registry:git.hydrosaber.com/eriq12/hydro-os:latest
|
||||||
```
|
```
|
||||||
- Reboot to complete the rebase:
|
- Reboot to complete the rebase:
|
||||||
```
|
```
|
||||||
@@ -19,11 +19,16 @@ To rebase an existing atomic Fedora installation to the latest build:
|
|||||||
```
|
```
|
||||||
- Then rebase to the signed image, like so:
|
- Then rebase to the signed image, like so:
|
||||||
```
|
```
|
||||||
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/eriq12/hydro-os:latest
|
rpm-ostree rebase ostree-image-signed:docker://git.hydrosaber.com/eriq12/hydro-os:latest
|
||||||
```
|
```
|
||||||
- Reboot again to complete the installation
|
- Reboot again to complete the installation
|
||||||
```
|
```
|
||||||
systemctl reboot
|
systemctl reboot
|
||||||
```
|
```
|
||||||
|
|
||||||
The `latest` tag will automatically point to the latest build. That build will still always use the Fedora version specified in `recipe.yml`, so you won't get accidentally updated to the next major version.
|
The `latest` tag will automatically point to the latest build. That build will still always use the Fedora version specified in `recipe.yml`, so you won't get accidentally updated to the next major version.
|
||||||
|
|
||||||
|
|
||||||
|
# Attribution
|
||||||
|
|
||||||
|
Thanks to [Wayblue](https://github.com/wayblueorg/wayblue) for how to get around some issues with sddm on an atomic distribution and how to create a working distro from the base Fedora image.
|
@@ -1,4 +1,4 @@
|
|||||||
-----BEGIN PUBLIC KEY-----
|
-----BEGIN PUBLIC KEY-----
|
||||||
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAET7gb/0yuNxLsmpbRcdfGT+2Ettuw
|
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzzK2nfqN5MlTqBitNsehDVnITGSF
|
||||||
eZyM+R2uTAO2FqXMbKqPBHGoZ3e4HjKtvt9o/ycNn5a2OOCUzCSDvCZaRQ==
|
r9FQRKI6dNDXRjlKgcMaa88Mb9FdfqFVHSPesN1mHz3/QfZIPG/s7mJAfw==
|
||||||
-----END PUBLIC KEY-----
|
-----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
|
@@ -1,10 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Tell this script to exit if there are any errors.
|
|
||||||
# You should have this in every custom script, to ensure that your completed
|
|
||||||
# builds actually ran successfully without any errors!
|
|
||||||
set -oue pipefail
|
|
||||||
|
|
||||||
# Your code goes here.
|
|
||||||
echo 'This is an example shell script'
|
|
||||||
echo 'Scripts here will run during build if specified in recipe.yml'
|
|
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
|
6
files/scripts/installohmyzsh.sh
Normal file
6
files/scripts/installohmyzsh.sh
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Tell build process to exit if there are any errors.
|
||||||
|
set -oue pipefail
|
||||||
|
|
||||||
|
git clone https://github.com/ohmyzsh/ohmyzsh.git /usr/share/ohmyzsh
|
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
|
11
files/scripts/setsddmtheming.sh
Normal file
11
files/scripts/setsddmtheming.sh
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Tell build process to exit if there are any errors.
|
||||||
|
set -oue pipefail
|
||||||
|
|
||||||
|
sed -i 's/color: "black"/color: "white"/' /usr/share/sddm/themes/maldives/Main.qml
|
||||||
|
sed -i 's/id: lblPassword/id: lblPassword\ncolor: "white"/' /usr/share/sddm/themes/maldives/Main.qml
|
||||||
|
sed -i 's/id: lblName/id: lblName\ncolor: "white"/' /usr/share/sddm/themes/maldives/Main.qml
|
||||||
|
sed -i 's/id: lblSession/id: lblSession\ncolor: "white"/' /usr/share/sddm/themes/maldives/Main.qml
|
||||||
|
sed -i 's/id: lblLayout/id: lblLayout\ncolor: "white"/' /usr/share/sddm/themes/maldives/Main.qml
|
||||||
|
sed -i 's/id: errorMessage/id: errorMessage\ncolor: "white"/' /usr/share/sddm/themes/maldives/Main.qml
|
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
|
@@ -1 +0,0 @@
|
|||||||
|
|
8
files/system/etc/default/useradd
Normal file
8
files/system/etc/default/useradd
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# useradd defaults file
|
||||||
|
GROUP=100
|
||||||
|
HOME=/home
|
||||||
|
INACTIVE=-1
|
||||||
|
EXPIRE=
|
||||||
|
SHELL=/bin/zsh
|
||||||
|
SKEL=/etc/skel
|
||||||
|
CREATE_MAIL_SPOOL=yes
|
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
|
26
files/system/etc/pipewire/105-add-discord-name.conf
Normal file
26
files/system/etc/pipewire/105-add-discord-name.conf
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
# ~/.config/pipewire/pipewire.conf.d/104-group-game-audio-to-node.conf
|
||||||
|
|
||||||
|
node.rules = [
|
||||||
|
{
|
||||||
|
matches = [
|
||||||
|
{
|
||||||
|
application.process.binary = "equibop.bin"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
pipewire.access.portal.app_id = "io.github.equicord.equibop"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
pipewire.access.portal.app_id = "com.discordapp.Discord"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
pipewire.access.portal.app_id = "com.discordapp.DiscordCanary"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
actions = {
|
||||||
|
update-props = {
|
||||||
|
application.name = "Discord"
|
||||||
|
node.name = "Discord"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
17
files/system/etc/pipewire/109-add-freetube-name.conf
Normal file
17
files/system/etc/pipewire/109-add-freetube-name.conf
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# ~/.config/pipewire/pipewire.conf.d/104-group-game-audio-to-node.conf
|
||||||
|
|
||||||
|
node.rules = [
|
||||||
|
{
|
||||||
|
matches = [
|
||||||
|
{
|
||||||
|
pipewire.access.portal.app_id = "io.github.equicord.equibop"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
actions = {
|
||||||
|
update-props = {
|
||||||
|
application.name = "Freetube"
|
||||||
|
node.name = "Freetube"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
4
files/system/etc/sddm/sddm-useradd
Normal file
4
files/system/etc/sddm/sddm-useradd
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/usr/bin/sh
|
||||||
|
|
||||||
|
getent group sddm > /dev/null || groupadd -r sddm
|
||||||
|
getent passwd sddm > /dev/null || useradd -r -g sddm -c "SDDM Greeter Account" -d /var/lib/sddm -s /usr/sbin/nologin sddm
|
@@ -0,0 +1,4 @@
|
|||||||
|
# monitors.conf
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
|
monitor=,preferred,auto,auto
|
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
|
2
files/system/sddm.conf.d/theme.conf
Normal file
2
files/system/sddm.conf.d/theme.conf
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
[Theme]
|
||||||
|
Current=maldives
|
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
|
BIN
files/system/usr/share/hydro-os/DefaultBackground.png
Normal file
BIN
files/system/usr/share/hydro-os/DefaultBackground.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 171 KiB |
@@ -0,0 +1,5 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Steam Big Picture Mode
|
||||||
|
Comment=Start Steam in Big Picture Mode
|
||||||
|
Exec=/usr/bin/gamescope -H 1080 -r 60 --force-composition --mangoapp -fe -- /usr/bin/steam -tenfoot %U
|
||||||
|
Type=Application
|
8
files/systemd/system/bootc-fetch-updates.service
Normal file
8
files/systemd/system/bootc-fetch-updates.service
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Download bootc updates
|
||||||
|
Documentation=man:bootc(8)
|
||||||
|
ConditionPathExists=/run/ostree-booted
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/usr/bin/bootc update --quiet
|
12
files/systemd/system/bootc-fetch-updates.timer
Normal file
12
files/systemd/system/bootc-fetch-updates.timer
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Download bootc updates
|
||||||
|
Documentation=man:bootc(8)
|
||||||
|
ConditionPathExists=/run/ostree-booted
|
||||||
|
|
||||||
|
[Timer]
|
||||||
|
OnBootSec=15min
|
||||||
|
OnUnitInactiveSec=8h
|
||||||
|
RandomizedDelaySec=2h
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=timers.target
|
5
files/systemd/system/flatpak-system-update.service
Normal file
5
files/systemd/system/flatpak-system-update.service
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Update flatpaks
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=flatpak update --noninteractive
|
9
files/systemd/system/flatpak-system-update.timer
Normal file
9
files/systemd/system/flatpak-system-update.timer
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Update flatpak
|
||||||
|
|
||||||
|
[Timer]
|
||||||
|
OnBootSec=15min
|
||||||
|
OnCalendar=daily
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=timers.target
|
5
files/systemd/user/flatpak-user-update.service
Normal file
5
files/systemd/user/flatpak-user-update.service
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Update flatpaks
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=flatpak update --noninteractive
|
9
files/systemd/user/flatpak-user-update.timer
Normal file
9
files/systemd/user/flatpak-user-update.timer
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Update flatpak
|
||||||
|
|
||||||
|
[Timer]
|
||||||
|
OnBootSec=15min
|
||||||
|
OnCalendar=daily
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=timers.target
|
19
files/systemd/user/hyprpanel.service
Normal file
19
files/systemd/user/hyprpanel.service
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=A panel bar branched from AGS maintained by Hyprland devs.
|
||||||
|
Documentation=man:waybar(5)
|
||||||
|
# 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/hyprpanel
|
||||||
|
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
|
15
files/systemd/user/swww.service
Normal file
15
files/systemd/user/swww.service
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Background service
|
||||||
|
# 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/swww-daemon
|
||||||
|
Restart=on-failure
|
||||||
|
Slice=app-graphical.slice
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=graphical-session.target
|
7
recipes/components/chezmoi-module.yml
Normal file
7
recipes/components/chezmoi-module.yml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
modules:
|
||||||
|
- type: chezmoi
|
||||||
|
repository: "https://git.hydrosaber.com/eriq12/dotfiles"
|
||||||
|
|
||||||
|
- type: script
|
||||||
|
scripts:
|
||||||
|
- setupchezmoiskel.sh
|
19
recipes/components/default-flatpak.yml
Normal file
19
recipes/components/default-flatpak.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
modules:
|
||||||
|
- type: default-flatpaks
|
||||||
|
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.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
|
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
|
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
|
5
recipes/components/sys-files-module.yml
Normal file
5
recipes/components/sys-files-module.yml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
modules:
|
||||||
|
- type: files
|
||||||
|
files:
|
||||||
|
- source: system
|
||||||
|
destination: / # copies files/system/* (* means everything inside it) into your image's root folder /
|
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
|
||||||
|
- hyprpanel.service
|
||||||
|
- hyprpolkitagent.service
|
71
recipes/dnf/applications.yml
Normal file
71
recipes/dnf/applications.yml
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
modules:
|
||||||
|
- type: dnf
|
||||||
|
repos:
|
||||||
|
nonfree: rpmfusion
|
||||||
|
files:
|
||||||
|
- codium.repo
|
||||||
|
- https://openrazer.github.io/hardware:razer.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
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# simple editing softare
|
||||||
|
- avidemux
|
||||||
|
|
||||||
|
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
|
15
recipes/dnf/hyprland.yml
Normal file
15
recipes/dnf/hyprland.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
modules:
|
||||||
|
- type: dnf
|
||||||
|
repos:
|
||||||
|
copr:
|
||||||
|
- solopasha/hyprland
|
||||||
|
install:
|
||||||
|
packages:
|
||||||
|
- aquamarine
|
||||||
|
- hyprland-git
|
||||||
|
- hyprpanel
|
||||||
|
- hyprpolkitagent
|
||||||
|
- hyprshot
|
||||||
|
- hyprland-qt-support
|
||||||
|
- hyprland-qtutils
|
||||||
|
- xdg-desktop-portal-hyprland
|
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
|
15
recipes/dnf/sddm.yml
Normal file
15
recipes/dnf/sddm.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
modules:
|
||||||
|
- type: dnf
|
||||||
|
install:
|
||||||
|
packages:
|
||||||
|
# sddm
|
||||||
|
- sddm
|
||||||
|
- sddm-themes
|
||||||
|
- qt5-qtgraphicaleffects
|
||||||
|
- qt5-qtquickcontrols2
|
||||||
|
- qt5-qtsvg
|
||||||
|
|
||||||
|
# password keeper
|
||||||
|
- kf6-kwallet
|
||||||
|
- kwalletmanager
|
||||||
|
- pam-kwallet
|
16
recipes/dnf/themes.yml
Normal file
16
recipes/dnf/themes.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
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
|
@@ -6,34 +6,18 @@ name: hydro-os
|
|||||||
description: This is my personal OS image.
|
description: This is my personal OS image.
|
||||||
|
|
||||||
# the base image to build on top of (FROM) and the version tag to use
|
# the base image to build on top of (FROM) and the version tag to use
|
||||||
base-image: ghcr.io/wayblueorg/hyprland-nvidia
|
base-image: quay.io/fedora-ostree-desktops/base-atomic
|
||||||
image-version: latest # latest is also supported if you want new updates ASAP
|
image-version: 42 # latest is also supported if you want new updates ASAP
|
||||||
|
|
||||||
# module configuration, executed in order
|
# module configuration, executed in order
|
||||||
# you can include multiple instances of the same module
|
# you can include multiple instances of the same module
|
||||||
modules:
|
modules:
|
||||||
- type: files
|
- from-file: components/dnf-module.yml
|
||||||
files:
|
- from-file: components/script-module.yml
|
||||||
- source: system
|
- from-file: components/sys-files-module.yml
|
||||||
destination: / # copies files/system/* (* means everything inside it) into your image's root folder /
|
- from-file: components/systemd-module.yml
|
||||||
|
- from-file: components/default-flatpak.yml
|
||||||
|
- from-file: components/chezmoi-module.yml
|
||||||
|
|
||||||
- type: rpm-ostree
|
- type: signing
|
||||||
repos:
|
|
||||||
- https://copr.fedorainfracloud.org/coprs/atim/starship/repo/fedora-%OS_VERSION%/atim-starship-fedora-%OS_VERSION%.repo
|
|
||||||
install:
|
|
||||||
- micro
|
|
||||||
- starship
|
|
||||||
remove:
|
|
||||||
- firefox
|
|
||||||
- firefox-langpacks
|
|
||||||
|
|
||||||
- type: default-flatpaks
|
|
||||||
notify: true # Send notification after install/uninstall is finished (true/false)
|
|
||||||
system:
|
|
||||||
# If no repo information is specified, Flathub will be used by default
|
|
||||||
install:
|
|
||||||
- one.ablaze.floorp
|
|
||||||
user: {} # Also add Flathub user repo, but no user packages
|
|
||||||
|
|
||||||
- type: signing # this sets up the proper policy & signing files for signed images to work fully
|
|
||||||
|
|
||||||
|
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