Compare commits
19 Commits
ed2a2a3ee5
...
local-podm
Author | SHA1 | Date | |
---|---|---|---|
fcf019fddf | |||
eabd27c3c8 | |||
7809d24cd4 | |||
a784d1de70 | |||
61bb77e05b | |||
1fdc24f550 | |||
5781fd017b | |||
8edcd4ff05 | |||
55fe8e21b5 | |||
47fad27d7b | |||
73a6d27e0e | |||
92ea9c9af2 | |||
1181d5accb | |||
6259ab886e | |||
5fbb9383f9 | |||
0ba2ad78f5 | |||
4f61fb3e33 | |||
52becf4ef4 | |||
39611efb18 |
224
.github/workflows/build-composite.yml
vendored
224
.github/workflows/build-composite.yml
vendored
@@ -1,224 +0,0 @@
|
|||||||
name: "BlueBuild"
|
|
||||||
description: "Build a custom OS image"
|
|
||||||
inputs:
|
|
||||||
recipe:
|
|
||||||
description: |
|
|
||||||
The [recipe](https://blue-build.org/reference/recipe/) file to build the image from, relative to the `config/` or `recipes/` directory.
|
|
||||||
required: true
|
|
||||||
default: "recipe.yml"
|
|
||||||
cosign_private_key:
|
|
||||||
description: |
|
|
||||||
The Sigstore/cosign secret used to sign the image.
|
|
||||||
|
|
||||||
Example: `${{ secrets.SIGNING_SECRET }}`
|
|
||||||
required: true
|
|
||||||
registry_token:
|
|
||||||
description: |
|
|
||||||
The token used to sign into the container registry.
|
|
||||||
|
|
||||||
Example: `${{ github.token }}`
|
|
||||||
required: false
|
|
||||||
default: ""
|
|
||||||
registry_username:
|
|
||||||
description: |
|
|
||||||
The username used to sign into the container registry.
|
|
||||||
required: false
|
|
||||||
default: ${{ github.repository_owner }}
|
|
||||||
pr_event_number:
|
|
||||||
description: |
|
|
||||||
The event number used to tag images pushed from pull requests.
|
|
||||||
|
|
||||||
Example: `${{ github.event.number }}`
|
|
||||||
required: true
|
|
||||||
maximize_build_space:
|
|
||||||
description: |
|
|
||||||
Whether to run the unwanted software remover to maximize build space in the GitHub builder.
|
|
||||||
Disable this with 'false' if your image doesn't take up a lot of space and you'd rather have shorter build times.
|
|
||||||
required: false
|
|
||||||
default: "true"
|
|
||||||
use_unstable_cli:
|
|
||||||
description: |
|
|
||||||
If true, this action pulls the `main` branch of blue-build/cli instead of the stable version the current action version is configured to use by default.
|
|
||||||
This feature is useful for testing new features, but should not be used in production.
|
|
||||||
Input must match the string 'true' for the unstable version to be used.
|
|
||||||
required: false
|
|
||||||
default: "false"
|
|
||||||
cli_version:
|
|
||||||
description: |
|
|
||||||
Set this with a tag, sha, or branch name for the blue-build/cli repo to use that particular version of the CLI tool. This will override the `use_unstable_cli` input for the action.
|
|
||||||
required: false
|
|
||||||
registry:
|
|
||||||
description: |
|
|
||||||
The container registry to push the built image to.
|
|
||||||
required: false
|
|
||||||
default: "ghcr.io"
|
|
||||||
registry_namespace:
|
|
||||||
description: |
|
|
||||||
The namespace on the registry to push to.
|
|
||||||
|
|
||||||
Example: `ublue-os`
|
|
||||||
required: false
|
|
||||||
default: ${{ github.repository_owner }}
|
|
||||||
rechunk:
|
|
||||||
description: |
|
|
||||||
Rechunk the ostree-based result images with [github.com/hhd-dev/rechunk](https://github.com/hhd-dev/rechunk) for more efficient diffs and updates. (lower image size, better download speed, better update resuming)
|
|
||||||
|
|
||||||
Will make your builds considerably slower. This is an experimental option, as it can cause issues with file permissions in some scenarios, so enable on your own risk.
|
|
||||||
|
|
||||||
Internally builds squashed images with podman to further reduce the image size.
|
|
||||||
required: false
|
|
||||||
default: "false"
|
|
||||||
use_cache:
|
|
||||||
description: |
|
|
||||||
Make use of layer cache by pushing the layers to the registry. Input must match the string 'true' for the step to be enabled.
|
|
||||||
required: false
|
|
||||||
default: "true"
|
|
||||||
squash:
|
|
||||||
description: |
|
|
||||||
Uses buildah to squash the build's layers into a single layer. Use of this option
|
|
||||||
disables cache. Conflicts with adding `--build-driver` or `--squash` to the build opts.
|
|
||||||
required: false
|
|
||||||
default: "false"
|
|
||||||
build_opts:
|
|
||||||
description: |
|
|
||||||
Provide options to the call to the BlueBuild CLI build command. If you use this with
|
|
||||||
the squash input set to true and provide either of the `--build-driver` or `--squash` flags
|
|
||||||
an error will occur and the action will not run.
|
|
||||||
required: false
|
|
||||||
default: " "
|
|
||||||
working_directory:
|
|
||||||
description: |
|
|
||||||
Changes working directory for whole build.
|
|
||||||
For example, setting this to `./abc/` would cause for the recipe to be read from `./abc/recipes/recipe.yml`.
|
|
||||||
required: false
|
|
||||||
default: ./
|
|
||||||
skip_checkout:
|
|
||||||
description: |
|
|
||||||
Set to true to skip doing the actions/checkout step.
|
|
||||||
This allows you to checkout manually before calling bluebuild/github-action
|
|
||||||
and to modify files (such as supplying build information to other scripts) before building.
|
|
||||||
required: false
|
|
||||||
default: "false"
|
|
||||||
|
|
||||||
runs:
|
|
||||||
using: "composite"
|
|
||||||
steps:
|
|
||||||
- name: Validate inputs
|
|
||||||
shell: bash
|
|
||||||
run: "${{ github.action_path }}/build_opts_check.sh"
|
|
||||||
env:
|
|
||||||
SQUASH_INPUT_VALUE: "${{ inputs.squash }}"
|
|
||||||
BUILD_OPTS: "${{ inputs.build_opts }}"
|
|
||||||
# building custom images might take a lot of space,
|
|
||||||
# so it's best to remove unneeded softawre
|
|
||||||
- name: Maximize build space
|
|
||||||
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
|
|
||||||
if: ${{ inputs.maximize_build_space == 'true' }}
|
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
|
||||||
uses: docker/setup-buildx-action@18ce135bb5112fa8ce4ed6c17ab05699d7f3a5e0 # v3.11.0
|
|
||||||
if: ${{ inputs.squash != 'true' && inputs.rechunk != 'true' }}
|
|
||||||
with:
|
|
||||||
install: true
|
|
||||||
driver: docker-container
|
|
||||||
cache-binary: ${{ inputs.use_cache }}
|
|
||||||
|
|
||||||
- name: Get Ubuntu version
|
|
||||||
id: ubuntu_version
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
VERSION=$(awk -F= '/^VERSION_ID=/ {gsub(/"/, "", $2); print $2}' /etc/os-release)
|
|
||||||
echo "Ubuntu version is $VERSION"
|
|
||||||
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
# that is compatible with BlueBuild
|
|
||||||
- name: Setup Podman
|
|
||||||
if: ${{ (inputs.squash == 'true' || inputs.rechunk == 'true') && steps.ubuntu_version.outputs.version == '22.04' }}
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
# from https://askubuntu.com/questions/1414446/whats-the-recommended-way-of-installing-podman-4-in-ubuntu-22-04
|
|
||||||
ubuntu_version='22.04'
|
|
||||||
key_url="https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/unstable/xUbuntu_${ubuntu_version}/Release.key"
|
|
||||||
sources_url="https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/unstable/xUbuntu_${ubuntu_version}"
|
|
||||||
echo "deb $sources_url/ /" | sudo tee /etc/apt/sources.list.d/devel-kubic-libcontainers-unstable.list
|
|
||||||
curl -fsSL $key_url | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/devel_kubic_libcontainers_unstable.gpg > /dev/null
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y podman
|
|
||||||
|
|
||||||
- uses: sigstore/cosign-installer@sigstore/cosign-installer # v3.9.0
|
|
||||||
with:
|
|
||||||
install-dir: /usr/bin
|
|
||||||
use-sudo: true
|
|
||||||
|
|
||||||
# clones user's repo
|
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
||||||
if: ${{ inputs.skip_checkout == 'false' }}
|
|
||||||
|
|
||||||
- name: Determine Vars
|
|
||||||
id: build_vars
|
|
||||||
shell: bash
|
|
||||||
env:
|
|
||||||
RECIPE: ${{ inputs.recipe }}
|
|
||||||
run: |
|
|
||||||
if [[ "${{ inputs.use_unstable_cli }}" == "true" && -z "${{ inputs.cli_version }}" ]]; then
|
|
||||||
CLI_VERSION_TAG="main"
|
|
||||||
elif [ -n "${{ inputs.cli_version }}" ]; then
|
|
||||||
CLI_VERSION_TAG="${{ inputs.cli_version }}"
|
|
||||||
else
|
|
||||||
CLI_VERSION_TAG="v0.9"
|
|
||||||
fi
|
|
||||||
echo "cli_version=${CLI_VERSION_TAG}" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
RECIPE_PATH=""
|
|
||||||
if [ -f "./config/${RECIPE}" ]; then
|
|
||||||
RECIPE_PATH="./config/${RECIPE}"
|
|
||||||
else
|
|
||||||
RECIPE_PATH="./recipes/${RECIPE}"
|
|
||||||
fi
|
|
||||||
echo "recipe_path=${RECIPE_PATH}" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
- name: Install BlueBuild
|
|
||||||
shell: bash
|
|
||||||
env:
|
|
||||||
CLI_VERSION_TAG: ${{ steps.build_vars.outputs.cli_version }}
|
|
||||||
run: |
|
|
||||||
sudo docker create \
|
|
||||||
--name blue-build-installer \
|
|
||||||
ghcr.io/blue-build/cli:${{ env.CLI_VERSION_TAG }}-installer
|
|
||||||
sudo docker cp blue-build-installer:/out/bluebuild /usr/bin/bluebuild
|
|
||||||
sudo docker rm blue-build-installer
|
|
||||||
bluebuild --version
|
|
||||||
|
|
||||||
# blue-build/cli does the heavy lifting
|
|
||||||
- name: Build Image
|
|
||||||
shell: bash
|
|
||||||
working-directory: ${{ inputs.working_directory }}
|
|
||||||
env:
|
|
||||||
COSIGN_PRIVATE_KEY: ${{ inputs.cosign_private_key }}
|
|
||||||
GH_TOKEN: ${{ inputs.registry_token }}
|
|
||||||
BB_PASSWORD: ${{ inputs.registry_token }}
|
|
||||||
BB_USERNAME: ${{ inputs.registry_username }}
|
|
||||||
BB_REGISTRY: ${{ inputs.registry }}
|
|
||||||
BB_REGISTRY_NAMESPACE: ${{ inputs.registry_namespace }}
|
|
||||||
GH_PR_EVENT_NUMBER: ${{ inputs.pr_event_number }}
|
|
||||||
BB_CACHE_LAYERS: ${{ inputs.use_cache }}
|
|
||||||
RECIPE_PATH: ${{ steps.build_vars.outputs.recipe_path }}
|
|
||||||
RUST_LOG_STYLE: always
|
|
||||||
CLICOLOR_FORCE: "1"
|
|
||||||
BUILD_OPTS: ${{ inputs.build_opts }}
|
|
||||||
run: |
|
|
||||||
if [ "${{ inputs.squash }}" = "true" ]; then
|
|
||||||
BUILD_OPTS="--build-driver podman --squash $BUILD_OPTS"
|
|
||||||
fi
|
|
||||||
|
|
||||||
RUN_SUDO=""
|
|
||||||
if [ "${{ inputs.rechunk }}" = "true" ]; then
|
|
||||||
RUN_SUDO=1
|
|
||||||
BUILD_OPTS="--rechunk $BUILD_OPTS"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$RUN_SUDO" ]; then
|
|
||||||
sudo -E bluebuild build -v --push ${BUILD_OPTS} ${RECIPE_PATH}
|
|
||||||
else
|
|
||||||
bluebuild build -v --push ${BUILD_OPTS} ${RECIPE_PATH}
|
|
||||||
fi
|
|
75
.github/workflows/build.yml
vendored
75
.github/workflows/build.yml
vendored
@@ -18,74 +18,29 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
bluebuild:
|
bluebuild:
|
||||||
name: Build Custom Image
|
name: Build Custom Image
|
||||||
runs-on: rocky-minimal
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
packages: write
|
packages: write
|
||||||
id-token: write
|
id-token: write
|
||||||
strategy:
|
strategy:
|
||||||
|
fail-fast: false # stop GH from cancelling all matrix builds if one fails
|
||||||
matrix:
|
matrix:
|
||||||
recipe:
|
recipe:
|
||||||
|
# !! Add your recipes here
|
||||||
- recipe.yml
|
- recipe.yml
|
||||||
steps:
|
steps:
|
||||||
- uses: sigstore/cosign-installer@v3.9.0
|
|
||||||
|
# the build is fully handled by the reusable github action
|
||||||
|
- name: Build Custom Image
|
||||||
|
uses: blue-build/github-action@v1.8
|
||||||
with:
|
with:
|
||||||
install-dir: /usr/bin
|
recipe: ${{ matrix.recipe }}
|
||||||
use-sudo: true
|
cosign_private_key: ${{ secrets.SIGNING_SECRET }}
|
||||||
|
registry: 'git.hydrosaber.com'
|
||||||
|
registry_token: ${{ secrets.PACKAGE_BUILDER_TOKEN }}
|
||||||
|
pr_event_number: ${{ github.event.number }}
|
||||||
|
|
||||||
# clones user's repo
|
# enabled by default, disable if your image is small and you want faster builds
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
maximize_build_space: true
|
||||||
|
rechunk: true
|
||||||
- name: Determine Vars
|
|
||||||
id: build_vars
|
|
||||||
shell: bash
|
|
||||||
env:
|
|
||||||
RECIPE: ${{ matrix.recipe }}
|
|
||||||
run: |
|
|
||||||
if [[ "${{ inputs.use_unstable_cli }}" == "true" && -z "${{ inputs.cli_version }}" ]]; then
|
|
||||||
CLI_VERSION_TAG="main"
|
|
||||||
elif [ -n "${{ inputs.cli_version }}" ]; then
|
|
||||||
CLI_VERSION_TAG="${{ inputs.cli_version }}"
|
|
||||||
else
|
|
||||||
CLI_VERSION_TAG="v0.9"
|
|
||||||
fi
|
|
||||||
echo "cli_version=${CLI_VERSION_TAG}" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
RECIPE_PATH=""
|
|
||||||
if [ -f "./config/${RECIPE}" ]; then
|
|
||||||
RECIPE_PATH="./config/${RECIPE}"
|
|
||||||
else
|
|
||||||
RECIPE_PATH="./recipes/${RECIPE}"
|
|
||||||
fi
|
|
||||||
echo "recipe_path=${RECIPE_PATH}" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
- name: Install BlueBuild
|
|
||||||
shell: bash
|
|
||||||
env:
|
|
||||||
CLI_VERSION_TAG: ${{ steps.build_vars.outputs.cli_version }}
|
|
||||||
run: |
|
|
||||||
sudo docker create \
|
|
||||||
--name blue-build-installer \
|
|
||||||
ghcr.io/blue-build/cli:${{ env.CLI_VERSION_TAG }}-installer
|
|
||||||
sudo docker cp blue-build-installer:/out/bluebuild /usr/bin/bluebuild
|
|
||||||
sudo docker rm blue-build-installer
|
|
||||||
bluebuild --version
|
|
||||||
|
|
||||||
# blue-build/cli does the heavy lifting
|
|
||||||
- name: Build Image
|
|
||||||
shell: bash
|
|
||||||
working-directory: ${{ inputs.working_directory }}
|
|
||||||
env:
|
|
||||||
COSIGN_PRIVATE_KEY: ${{ secrets.SIGNING_SECRET }}
|
|
||||||
GH_TOKEN: ${{ secrets.PACKAGE_BUILDER_TOKEN }}
|
|
||||||
BB_PASSWORD: ${{ inputs.registry_token }}
|
|
||||||
BB_USERNAME: ${{ github.repository_owner }}
|
|
||||||
BB_REGISTRY: 'git.hydrosaber.com'
|
|
||||||
BB_REGISTRY_NAMESPACE: ${{ github.repository_owner }}
|
|
||||||
GH_PR_EVENT_NUMBER: ${{ github.event.number }}
|
|
||||||
BB_CACHE_LAYERS: false
|
|
||||||
RECIPE_PATH: ${{ steps.build_vars.outputs.recipe_path }}
|
|
||||||
RUST_LOG_STYLE: always
|
|
||||||
CLICOLOR_FORCE: "1"
|
|
||||||
run: |
|
|
||||||
sudo -E bluebuild build -v --push --rechunk ${RECIPE_PATH}
|
|
||||||
|
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
|
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
|
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
|
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,14 +1,19 @@
|
|||||||
modules:
|
modules:
|
||||||
- type: default-flatpaks
|
- type: default-flatpaks
|
||||||
notify: true
|
configurations:
|
||||||
system:
|
- scope: user
|
||||||
install:
|
repo:
|
||||||
- com.github.tchx84.Flatseal
|
title: Flathub (user)
|
||||||
- io.missioncenter.MissionCenter
|
install:
|
||||||
- io.github.flattool.Ignition
|
- one.ablaze.floorp
|
||||||
- net.davidotek.pupgui2
|
- io.github.equicord.equibop
|
||||||
- org.gnome.Loupe
|
- scope: system
|
||||||
user:
|
repo:
|
||||||
install:
|
title: Flathub
|
||||||
- one.ablaze.floorp
|
notify: true
|
||||||
- io.github.equicord.equibop
|
install:
|
||||||
|
- com.github.tchx84.Flatseal
|
||||||
|
- io.missioncenter.MissionCenter
|
||||||
|
- io.github.flattool.Ignition
|
||||||
|
- net.davidotek.pupgui2
|
||||||
|
- org.gnome.Loupe
|
@@ -1,146 +1,8 @@
|
|||||||
modules:
|
modules:
|
||||||
- type: dnf
|
- from-file: dnf/multimedia.yml
|
||||||
repos:
|
- from-file: dnf/sddm.yml
|
||||||
copr:
|
- from-file: dnf/hyprland.yml
|
||||||
- ublue-os/packages
|
- from-file: dnf/environment.yml
|
||||||
- solopasha/hyprland
|
- from-file: dnf/applications.yml
|
||||||
- atim/xpadneo
|
- from-file: dnf/themes.yml
|
||||||
- peterwu/rendezvous
|
- from-file: dnf/drivers.yml
|
||||||
nonfree: rpmfusion
|
|
||||||
install:
|
|
||||||
skip-unavailable: true
|
|
||||||
packages:
|
|
||||||
# sddm
|
|
||||||
- sddm
|
|
||||||
- sddm-themes
|
|
||||||
- qt5-qtgraphicaleffects
|
|
||||||
- qt5-qtquickcontrols2
|
|
||||||
- qt5-qtsvg
|
|
||||||
|
|
||||||
# password keeper
|
|
||||||
- kf6-kwallet
|
|
||||||
- kwalletmanager
|
|
||||||
- pam-kwallet
|
|
||||||
|
|
||||||
# hyprland
|
|
||||||
- hyprland-git
|
|
||||||
- hyprpanel
|
|
||||||
- hyprpolkitagent
|
|
||||||
- hyprshot
|
|
||||||
|
|
||||||
# ublue udev rules and signing
|
|
||||||
- ublue-os-udev-rules
|
|
||||||
- ublue-os-signing
|
|
||||||
|
|
||||||
# environment
|
|
||||||
# power profiles like
|
|
||||||
- tuned-ppd
|
|
||||||
# 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
|
|
||||||
|
|
||||||
# polkit
|
|
||||||
- polkit
|
|
||||||
|
|
||||||
# sound
|
|
||||||
- wireplumber
|
|
||||||
- pipewire
|
|
||||||
- headsetcontrol
|
|
||||||
|
|
||||||
# networking
|
|
||||||
- bluez
|
|
||||||
- bluez-tools
|
|
||||||
- firewall-config
|
|
||||||
|
|
||||||
# power
|
|
||||||
- powerstat
|
|
||||||
|
|
||||||
# applications
|
|
||||||
# fuzzy finder
|
|
||||||
- fzf
|
|
||||||
|
|
||||||
# dmenu runner
|
|
||||||
- fuzzel
|
|
||||||
|
|
||||||
# file manager
|
|
||||||
- nautilus
|
|
||||||
- file-roller
|
|
||||||
- file-roller-nautilus
|
|
||||||
|
|
||||||
# text editor
|
|
||||||
- neovim
|
|
||||||
|
|
||||||
# software store
|
|
||||||
- gnome-software
|
|
||||||
|
|
||||||
# disk management
|
|
||||||
- gnome-disk-utility
|
|
||||||
|
|
||||||
# kdeconnect
|
|
||||||
- kde-connect
|
|
||||||
|
|
||||||
# settings apps
|
|
||||||
# qt
|
|
||||||
- qt5ct
|
|
||||||
- qt6ct
|
|
||||||
|
|
||||||
# gtk
|
|
||||||
- nwg-look
|
|
||||||
|
|
||||||
# Themes and fonts
|
|
||||||
# emoji fonts
|
|
||||||
- google-noto-emoji-fonts
|
|
||||||
|
|
||||||
# theme and GUI
|
|
||||||
- fontawesome-fonts-all
|
|
||||||
- gnome-themes-extra
|
|
||||||
- papirus-icon-theme
|
|
||||||
- bibata-cursor-themes
|
|
||||||
|
|
||||||
# zsh
|
|
||||||
- zsh
|
|
||||||
# zoxide for z stuff
|
|
||||||
- zoxide
|
|
||||||
|
|
||||||
# steam
|
|
||||||
- steam
|
|
||||||
# for game mode and big picture mode
|
|
||||||
- gamescope
|
|
||||||
# for performance view
|
|
||||||
- mangohud
|
|
||||||
# controller
|
|
||||||
- xpadneo
|
|
||||||
|
|
||||||
remove:
|
|
||||||
packages:
|
|
||||||
# remove firefox
|
|
||||||
- firefox
|
|
||||||
- firefox-langpacks
|
|
||||||
|
|
||||||
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
|
|
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
|
Reference in New Issue
Block a user