Merge pull request #17 from EyeCantCU/overhaul-images

Overhaul images
This commit is contained in:
Kyle Gospodnetich 2023-06-18 17:51:55 -07:00 committed by GitHub
commit 72ac2813d6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
25 changed files with 157 additions and 190 deletions

View File

@ -1,13 +1,21 @@
name: build-bazzite name: Build and Push Image
on: on:
schedule:
- cron: '20 21 * * *' # 21:20 UTC every day
pull_request: pull_request:
branches: branches:
- main - main
schedule: paths-ignore:
- cron: '20 21 * * *' # 9:20pm everyday - '**.md'
- '**.txt'
push: push:
branches: branches:
- main - main
paths-ignore:
- '**.md'
- '**.txt'
merge_group:
workflow_dispatch:
env: env:
IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }} IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }}
@ -22,24 +30,74 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
image_name: ['', '-desktop'] image_flavor: [main, nvidia]
base_name: [bazzite, bazzite-deck]
major_version: [37, 38] major_version: [37, 38]
include: include:
- major_version: 37
is_latest: false
is_stable: true
- major_version: 38 - major_version: 38
is_latest: true is_latest_version: false
is_stable: true is_stable_version: true
- major_version: 38
is_latest_version: true
is_stable_version: true
steps: steps:
# Checkout push-to-registry action GitHub repository # Checkout push-to-registry action GitHub repository
- name: Checkout Push to Registry action - name: Checkout Push to Registry action
uses: actions/checkout@v3 uses: actions/checkout@v3
- name: Get current version - name: Matrix Variables
run: |
if [[ "${{ matrix.image_flavor }}" == "main" ]]; then
echo "IMAGE_NAME=${{ matrix.base_name }}" >> $GITHUB_ENV
else
echo "IMAGE_NAME=${{ format('{0}-{1}', matrix.base_name, matrix.image_flavor) }}" >> $GITHUB_ENV
fi
- name: Generate tags
id: generate-tags
shell: bash
run: |
# Generate a timestamp for creating an image version history
TIMESTAMP="$(date +%Y%m%d)"
MAJOR_VERSION="${{ matrix.major_version }}"
COMMIT_TAGS=()
BUILD_TAGS=()
# Have tags for tracking builds during pull request
SHA_SHORT="${GITHUB_SHA::7}"
COMMIT_TAGS+=("pr-${{ github.event.number }}-${MAJOR_VERSION}")
COMMIT_TAGS+=("${SHA_SHORT}-${MAJOR_VERSION}")
if [[ "${{ matrix.is_latest_version }}" == "true" ]] && \
[[ "${{ matrix.is_stable_version }}" == "true" ]]; then
COMMIT_TAGS+=("pr-${{ github.event.number }}")
COMMIT_TAGS+=("${SHA_SHORT}")
fi
BUILD_TAGS=("${MAJOR_VERSION}" "${MAJOR_VERSION}-${TIMESTAMP}")
if [[ "${{ matrix.is_latest_version }}" == "true" ]] && \
[[ "${{ matrix.is_stable_version }}" == "true" ]]; then
BUILD_TAGS+=("latest")
fi
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
echo "Generated the following commit tags: "
for TAG in "${COMMIT_TAGS[@]}"; do
echo "${TAG}"
done
alias_tags=("${COMMIT_TAGS[@]}")
else
alias_tags=("${BUILD_TAGS[@]}")
fi
echo "Generated the following build tags: "
for TAG in "${BUILD_TAGS[@]}"; do
echo "${TAG}"
done
echo "alias_tags=${alias_tags[*]}" >> $GITHUB_OUTPUT
- name: Get Current Fedora Version
id: labels id: labels
run: | run: |
ver=$(skopeo inspect docker://ghcr.io/ublue-os/kinoite-nvidia:${{ matrix.major_version }} | jq -r '.Labels["org.opencontainers.image.version"]') ver=$(skopeo inspect docker://ghcr.io/ublue-os/kinoite-${{ matrix.image_flavor }}:${{ matrix.major_version }} | jq -r '.Labels["org.opencontainers.image.version"]')
echo "VERSION=$ver" >> $GITHUB_OUTPUT echo "VERSION=$ver" >> $GITHUB_OUTPUT
# Build metadata # Build metadata
@ -48,34 +106,13 @@ jobs:
id: meta id: meta
with: with:
images: | images: |
${{ format('bazzite{0}', matrix.image_name) }} ${{ env.IMAGE_NAME }}
labels: | labels: |
org.opencontainers.image.title=${{ format('bazzite{0}', matrix.image_name) }} org.opencontainers.image.title=${{ env.IMAGE_NAME }}
org.opencontainers.image.version=${{ steps.labels.outputs.VERSION }} org.opencontainers.image.version=${{ steps.labels.outputs.VERSION }}
org.opencontainers.image.description=Gaming-focused builds of ublue-os with arch distrobox images for gaming, nvidia support, and future support for Valve's Steam Deck. org.opencontainers.image.description=Gaming-focused builds of ublue-os with arch distrobox images for gaming, nvidia support, and future support for Valve's Steam Deck.
io.artifacthub.package.readme-url=https://raw.githubusercontent.com/ublue-os/bazzite/main/README.md io.artifacthub.package.readme-url=https://raw.githubusercontent.com/ublue-os/bazzite/main/README.md
io.artifacthub.package.logo-url=https://avatars.githubusercontent.com/u/120078124?s=200&v=4
- name: Generate tags
id: generate-tags
shell: bash
run: |
echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
alias_tags=()
# Only perform the follow code when the action is spawned from a Pull Request
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
alias_tags+=("pr-${{ github.event.number }}")
else
# The following is run when the timer is triggered or a merge/push to main
echo "date=$(date +%Y%m%d)" >> $GITHUB_OUTPUT
alias_tags+=("${{ matrix.major_version }}")
if [[ "${{ matrix.is_latest }}" == "true" ]]; then
alias_tags+=("latest")
fi
if [[ "${{ matrix.is_stable }}" == "true" ]]; then
alias_tags+=("stable")
fi
fi
echo "alias_tags=${alias_tags[*]}" >> $GITHUB_OUTPUT
# Build image using Buildah action # Build image using Buildah action
- name: Build Image - name: Build Image
@ -83,17 +120,18 @@ jobs:
uses: redhat-actions/buildah-build@v2 uses: redhat-actions/buildah-build@v2
with: with:
containerfiles: | containerfiles: |
${{ format('./Containerfile{0}', matrix.image_name) }} ./Containerfile
image: ${{ format('bazzite{0}', matrix.image_name) }} image: ${{ env.IMAGE_NAME }}
tags: | tags: |
${{ steps.generate-tags.outputs.alias_tags }} ${{ steps.generate-tags.outputs.alias_tags }}
${{ steps.generate-tags.outputs.date }}
${{ steps.generate-tags.outputs.sha_short }}
build-args: | build-args: |
IMAGE_NAME=${{ matrix.image_name }} IMAGE_NAME=${{ env.IMAGE_NAME }}
IMAGE_FLAVOR=${{ matrix.image_flavor }}
FEDORA_MAJOR_VERSION=${{ matrix.major_version }} FEDORA_MAJOR_VERSION=${{ matrix.major_version }}
labels: ${{ steps.meta.outputs.labels }} labels: ${{ steps.meta.outputs.labels }}
oci: false oci: false
extra-args: |
--target=${{ matrix.base_name }}
# Workaround bug where capital letters in your GitHub username make it impossible to push to GHCR. # Workaround bug where capital letters in your GitHub username make it impossible to push to GHCR.
# https://github.com/macbre/push-to-ghcr/issues/12 # https://github.com/macbre/push-to-ghcr/issues/12
@ -119,6 +157,7 @@ jobs:
password: ${{ env.REGISTRY_PASSWORD }} password: ${{ env.REGISTRY_PASSWORD }}
extra-args: | extra-args: |
--disable-content-trust --disable-content-trust
- name: Login to GitHub Container Registry - name: Login to GitHub Container Registry
uses: docker/login-action@v2 uses: docker/login-action@v2
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
@ -134,9 +173,7 @@ jobs:
- name: Sign container image - name: Sign container image
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
run: | run: |
echo "${{ env.COSIGN_PRIVATE_KEY }}" > cosign.key cosign sign -y --key env://COSIGN_PRIVATE_KEY ${{ steps.registry_case.outputs.lowercase }}/${{ env.IMAGE_NAME }}@${TAGS}
wc -c cosign.key
cosign sign -y --key cosign.key ${{ steps.registry_case.outputs.lowercase }}/${{ steps.build_image.outputs.image }}@${TAGS}
env: env:
TAGS: ${{ steps.push.outputs.digest }} TAGS: ${{ steps.push.outputs.digest }}
COSIGN_EXPERIMENTAL: false COSIGN_EXPERIMENTAL: false

View File

@ -1,47 +1,41 @@
FROM ghcr.io/ublue-os/kinoite-nvidia:latest ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME:-kinoite}"
ARG IMAGE_FLAVOR="${IMAGE_FLAVOR:-main}"
ARG SOURCE_IMAGE="${SOURCE_IMAGE:-$BASE_IMAGE_NAME-$IMAGE_FLAVOR}"
ARG BASE_IMAGE="ghcr.io/ublue-os/${SOURCE_IMAGE}"
ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION:-38}"
FROM ${BASE_IMAGE}:${FEDORA_MAJOR_VERSION} AS bazzite
ARG IMAGE_NAME="${IMAGE_NAME}"
ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION}"
COPY etc /etc COPY etc /etc
COPY usr /usr COPY usr /usr
RUN ln -s /usr/bin/steamos-logger /usr/bin/steamos-info && \
ln -s /usr/bin/steamos-logger /usr/bin/steamos-notice && \
ln -s /usr/bin/steamos-logger /usr/bin/steamos-warning
# Add Copr repos # Add Copr repos
RUN wget https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite/repo/fedora-$(rpm -E %fedora)/kylegospo-bazzite-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \ RUN wget https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite/repo/fedora-$(rpm -E %fedora)/kylegospo-bazzite-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
wget https://copr.fedorainfracloud.org/coprs/kylegospo/LatencyFleX/repo/fedora-$(rpm -E %fedora)/kylegospo-LatencyFleX-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \ wget https://copr.fedorainfracloud.org/coprs/kylegospo/system76-scheduler/repo/fedora-$(rpm -E %fedora)/kylegospo-system76-scheduler-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-system76-scheduler.repo && \
wget https://copr.fedorainfracloud.org/coprs/kylegospo/hl2linux-selinux/repo/fedora-$(rpm -E %fedora)/kylegospo-hl2linux-selinux-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo wget https://copr.fedorainfracloud.org/coprs/kylegospo/hl2linux-selinux/repo/fedora-$(rpm -E %fedora)/kylegospo-hl2linux-selinux-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo
# Install new packages # Install new packages
RUN rpm-ostree install \ RUN rpm-ostree install \
distrobox \ distrobox \
steam \ steamdeck-kde-themes \
gamescope \
gamescope-session \
jupiter-fan-control \
jupiter-hw-support-btrfs \
steamdeck-kde-presets \
gamemode \
latencyflex-vulkan-layer \
hl2linux-selinux \
wallpaper-engine-kde-plugin \ wallpaper-engine-kde-plugin \
vkBasalt \
mangohud \
duperemove \ duperemove \
kdeconnectd \ kdeconnectd \
system76-scheduler \
hl2linux-selinux \
btop \ btop \
fish \ fish \
kate kate
# Install dock updater, this is done manually as it has proprietary parts and cannot be built in Copr.
RUN git clone https://github.com/KyleGospo/jupiter-dock-updater-bin.git && \
mv -v jupiter-dock-updater-bin/packaged/usr/lib/jupiter-dock-updater /usr/lib/jupiter-dock-updater
# Remove unneeded packages # Remove unneeded packages
RUN rpm-ostree override remove toolbox RUN rpm-ostree override remove toolbox
# Cleanup & Finalize # Cleanup & Finalize
RUN sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \ RUN sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \ sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-system76-scheduler.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo && \ sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo && \
sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/user.conf && \ sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/user.conf && \
sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/system.conf && \ sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/system.conf && \
@ -51,4 +45,59 @@ RUN sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.re
/tmp/* \ /tmp/* \
/var/* && \ /var/* && \
mkdir -p /var/lib/duperemove && \ mkdir -p /var/lib/duperemove && \
ostree container commit && \
mkdir -p /var/tmp && \
chmod -R 1777 /var/tmp
FROM bazzite as bazzite-deck
ARG IMAGE_NAME="${IMAGE_NAME}"
ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION}"
# Add LatencyFlex Copr
RUN wget https://copr.fedorainfracloud.org/coprs/kylegospo/LatencyFleX/repo/fedora-$(rpm -E %fedora)/kylegospo-LatencyFleX-fedora-$(rpm -E %fedora).repo -O \
/etc/yum.repos.d/_copr_kylegospo-latencyflex.repo
# Re-enable Copr
RUN sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo
# Remove system76-scheduler
RUN rpm-ostree override remove system76-scheduler
RUN rm -f /usr/bin/system76-scheduler-dbus-proxy.sh
# Remove steamdeck-kde-themes
RUN rpm-ostree override remove steamdeck-kde-themes
COPY deck/etc /etc
COPY deck/usr /usr
RUN ln -s /usr/bin/steamos-logger /usr/bin/steamos-info && \
ln -s /usr/bin/steamos-logger /usr/bin/steamos-notice && \
ln -s /usr/bin/steamos-logger /usr/bin/steamos-warning
# Install new packages
RUN rpm-ostree install \
steam \
gamescope \
gamescope-session \
jupiter-fan-control \
jupiter-hw-support-btrfs \
steamdeck-kde-presets \
gamemode \
latencyflex-vulkan-layer \
vkBasalt \
mangohud
# Install dock updater, this is done manually as it has proprietary parts and cannot be built in Copr.
RUN git clone https://github.com/KyleGospo/jupiter-dock-updater-bin.git && \
mv -v jupiter-dock-updater-bin/packaged/usr/lib/jupiter-dock-updater /usr/lib/jupiter-dock-updater
# Cleanup & Finalize
RUN sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo && \
rm -rf \
/tmp/* \
/var/* && \
mkdir -p /var/lib/duperemove && \
ostree container commit ostree container commit

View File

@ -1,43 +0,0 @@
FROM ghcr.io/ublue-os/kinoite-nvidia:latest
COPY etc-desktop /etc
COPY usr-desktop /usr
# Re-enable RPMFusion repos & add Copr repos
RUN sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-nonfree{,-updates}.repo && \
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-free{,-updates}.repo && \
wget https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite/repo/fedora-$(rpm -E %fedora)/kylegospo-bazzite-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
wget https://copr.fedorainfracloud.org/coprs/kylegospo/system76-scheduler/repo/fedora-$(rpm -E %fedora)/kylegospo-system76-scheduler-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-system76-scheduler.repo && \
wget https://copr.fedorainfracloud.org/coprs/kylegospo/hl2linux-selinux/repo/fedora-$(rpm -E %fedora)/kylegospo-hl2linux-selinux-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo
# Install new packages
RUN rpm-ostree install \
distrobox \
steamdeck-kde-themes \
wallpaper-engine-kde-plugin \
duperemove \
kdeconnectd \
system76-scheduler \
hl2linux-selinux \
btop \
fish \
kate
# Remove unneeded packages
RUN rpm-ostree override remove toolbox
# Cleanup & Finalize
RUN sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-nonfree{,-updates}.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-free{,-updates}.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-system76-scheduler.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-hl2linux-selinux.repo && \
sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/user.conf && \
sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/system.conf && \
sed -i 's/#AutomaticUpdatePolicy.*/AutomaticUpdatePolicy=stage/' /etc/rpm-ostreed.conf && \
systemctl enable rpm-ostreed-automatic.timer && \
rm -rf \
/tmp/* \
/var/* && \
mkdir -p /var/lib/duperemove && \
ostree container commit

View File

@ -2,7 +2,7 @@
[![build-bazzite](https://github.com/ublue-os/bazzite/actions/workflows/build.yml/badge.svg)](https://github.com/ublue-os/bazzite/actions/workflows/build.yml) [![build-bazzite](https://github.com/ublue-os/bazzite/actions/workflows/build.yml/badge.svg)](https://github.com/ublue-os/bazzite/actions/workflows/build.yml)
Bazzite is an OCI based off of [ublue-os/kinoite-nvidia](https://github.com/ublue-os/nvidia) that is intended to be an alternative OS for the [Steam Deck](https://www.steamdeck.com/) and a SteamOS-alike for desktops. Bazzite is an OCI based off of [ublue-os/kinoite](https://github.com/ublue-os/main) that is intended to be an alternative OS for the [Steam Deck](https://www.steamdeck.com/) and is a SteamOS-alike for desktops.
### Bazzite is currently in development and should not be used on real hardware under any circumstance. Feel free to test in a VM. ### Bazzite is currently in development and should not be used on real hardware under any circumstance. Feel free to test in a VM.
### Bazzite is not associated with Valve Software in any way, and maintainers of the Bazzite project are not liable for any damage that may occur during use of the operating system. ### Bazzite is not associated with Valve Software in any way, and maintainers of the Bazzite project are not liable for any damage that may occur during use of the operating system.
@ -21,7 +21,7 @@ The `latest` tag will automatically point to the latest build.
## Features ## Features
- Start with a base [ublue-os/kinoite-nvidia](https://github.com/ublue-os/nvidia) image - Start with a base [ublue-os/kinoite](https://github.com/ublue-os/main) image
- Adds ported versions of Valve's Steam Deck packages - Adds ported versions of Valve's Steam Deck packages
- Adds h264 decoding out of the box via RPM Fusion - Adds h264 decoding out of the box via RPM Fusion
- Supports LatencyFleX & vkBasalt out of the box - Supports LatencyFleX & vkBasalt out of the box

1
deck/etc/sysctl.conf Normal file
View File

@ -0,0 +1 @@
vm.swappiness=35

View File

@ -4,5 +4,4 @@ Description=distrobox-upgrade Automatic Update
[Service] [Service]
Type=simple Type=simple
ExecStart=/usr/bin/distrobox-upgrade --all ExecStart=/usr/bin/distrobox-upgrade --all
ExecStartPost=/usr/bin/distrobox-enter -n bazzite-arch -- ' paru -Syu --noconfirm'
StandardOutput=null StandardOutput=null

View File

@ -1,5 +0,0 @@
# Dir to store hash files. Each instance has own, named by $(systemd-escape <instance>).hashfile
HashDir=/var/lib/duperemove
# Additional options for duperemove binary
OPTIONS="--skip-zeroes --hash=xxhash"

View File

@ -1,4 +0,0 @@
vm.swappiness=35
vm.max_map_count=1048576
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr

View File

@ -1,18 +0,0 @@
[Unit]
# Usage: systemctl enable --now duperemove-weekly@$(systemd-escape <path>).timer
# Utilize %J specifier for duration set.
# One can hardlink/copy with 'weekly' part changed
# to set other duration.
Description=Deduplicate %I at calendar event (%J)
After=local-fs.target
Requires=local-fs.target
Conflicts=shutdown.target rescue.target rescue.service emergency.service
[Timer]
Unit=duperemove@%i.service
RandomizedDelaySec=30
Persistent=true
OnCalendar=%J
[Install]
WantedBy=multi-user.target

View File

@ -1,22 +0,0 @@
[Unit]
Description=Recursive deduplication at %I
Documentation=man:duperemove(8)
Documentation=https://github.com/markfasheh/duperemove.git
Conflicts=shutdown.target rescue.target rescue.service emergency.service
After=local-fs.target
Before=shutdown.target
[Service]
Type=simple
Environment="HashDir=/var/lib/%p"
EnvironmentFile=-/etc/default/%p
MemoryHigh=1G
IOWeight=25
CPUWeight=25
Nice=18
IOSchedulingClass=idle
CPUSchedulingPolicy=idle
ExecStartPre=/bin/mkdir -p ${HashDir}
ExecStartPre=-/bin/df -h %I
ExecStart=/usr/sbin/duperemove --hashfile=${HashDir}/%i.hashfile -r -d -h $OPTIONS %I
ExecStopPost=-/bin/df -h %I

View File

@ -1,9 +0,0 @@
[Unit]
Description=distrobox-upgrade Automatic Update Trigger
[Timer]
OnBootSec=1h
OnUnitInactiveSec=1d
[Install]
WantedBy=timers.target

View File

@ -1,12 +0,0 @@
[Unit]
Description=flatpak Automatic Update
Documentation=man:flatpak(1)
Wants=network-online.target
After=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/bin/flatpak update -y
[Install]
WantedBy=multi-user.target

View File

@ -1,10 +0,0 @@
[Unit]
Description=flatpak Automatic Update Trigger
Documentation=man:flatpak(1)
[Timer]
OnBootSec=1h
OnUnitInactiveSec=1d
[Install]
WantedBy=timers.target

View File

@ -1 +1,4 @@
vm.swappiness=35 vm.swappiness=35
vm.max_map_count=1048576
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr

View File

@ -4,4 +4,5 @@ Description=distrobox-upgrade Automatic Update
[Service] [Service]
Type=simple Type=simple
ExecStart=/usr/bin/distrobox-upgrade --all ExecStart=/usr/bin/distrobox-upgrade --all
ExecStartPost=/usr/bin/distrobox-enter -n bazzite-arch -- ' paru -Syu --noconfirm'
StandardOutput=null StandardOutput=null