Compare commits

...

45 Commits

Author SHA1 Message Date
tumillanino
a22098a5bc Update README.md 2026-04-13 18:23:57 +10:00
tumillanino
53367334a0 Update README.md 2026-04-13 18:23:36 +10:00
tumillanino
d53403697b Update recipe.yml 2026-04-09 19:18:15 +10:00
tumillanino
aa2765828f resolving dnf conflicts with kernel tools 2026-04-09 17:50:58 +10:00
tumillanino
c9199dbafd fixed grub install mess 2026-04-09 16:47:12 +10:00
tumillanino
7c1b837bf9 switching from cachy to bazzite kernel 2026-04-09 16:34:59 +10:00
tumillanino
57fdc02539 switching from cachy to bazzite kernel 2026-04-09 16:33:56 +10:00
tumillanino
3f52e6286f kernel still breaking. updated name which may have been issue 2026-04-09 15:59:23 +10:00
tumillanino
c6ffa3591f kernel still breaking. updated name which may have been issue 2026-04-09 15:58:55 +10:00
tumillanino
1c59f8a718 Merge pull request #12 from tumillanino/staging
fix for kernel issues
2026-04-09 14:55:50 +10:00
tumillanino
f371fba55e btrfs flags added to kernel install 2026-04-09 14:29:37 +10:00
tumillanino
7e73dff9b7 Merge pull request #11 from tumillanino/staging
move cachyos kernel and base image change into prod
2026-04-09 13:24:44 +10:00
tumillanino
ac7d14e98a latest tag doesn't exist for main fedora images 2026-04-09 13:08:16 +10:00
tumillanino
9a06941829 stupidly forgot to replace whole rebase link 2026-04-09 13:03:25 +10:00
tumillanino
a3f1e0843a some kernel fixes that were lost 2026-04-09 12:45:26 +10:00
tumillanino
f615d38e86 Merge pull request #9 from tumillanino/staging
attempts to fix kernel changes
2026-04-09 11:50:10 +10:00
tumillanino
a936328c28 Merge branch 'main' into staging 2026-04-09 11:31:34 +10:00
tumillanino
3b7a1e440f fixed kernel cleanup and initramfs generation 2026-04-09 10:18:35 +10:00
tumillanino
09760ca4a9 changing wallpaper to be less shit 2026-04-09 10:01:22 +10:00
tumillanino
e91adc45ce Merge pull request #8 from tumillanino/revert-7-staging
Revert "update to use cachyos kernel and kinoite base image"
2026-04-08 18:00:10 +10:00
tumillanino
e43e54dba9 Revert "update to use cachyos kernel and kinoite base image" 2026-04-08 17:57:18 +10:00
tumillanino
17ece6cfde Merge pull request #7 from tumillanino/staging
update to use cachyos kernel and kinoite base image
2026-04-08 17:11:53 +10:00
tumillanino
03bc0c3bba remove zram to resolve cachyos kernel install 2026-04-08 16:55:41 +10:00
tumillanino
e00db9e3fa trying to adapt cachyos kernel from zena linux 2026-04-08 16:37:17 +10:00
tumillanino
b924a4a4d8 Merge pull request #6 from tumillanino/staging
branding changes
2026-04-08 16:07:37 +10:00
tumillanino
a78782e54d hopefully fixes the branding issues on boot 2026-04-08 15:53:24 +10:00
tumillanino
1eefc90924 Merge pull request #5 from tumillanino/staging
fix app loading issues
2026-04-08 12:31:13 +10:00
tumillanino
2fe52fc3c1 hardcode release type 2026-04-08 12:10:29 +10:00
tumillanino
2b26de7110 fixes for renoise install 2026-04-08 11:50:17 +10:00
tumillanino
1d328bcbc5 fixes for renoise install 2026-04-08 11:48:35 +10:00
tumillanino
ab913ad8f5 bitwig was not launching. immuntability stuff 2026-04-08 11:25:44 +10:00
tumillanino
d2dc21a83f Merge pull request #4 from tumillanino/staging
Remove notify from flatpak install script
2026-04-08 09:34:19 +10:00
tumillanino
0bd50850cf remove notify completely 2026-04-08 09:33:07 +10:00
tumillanino
1ca3554ae7 Merge pull request #3 from tumillanino/staging
fixes to theming
2026-04-08 09:31:28 +10:00
tumillanino
d91f91c809 added hostname 2026-04-08 09:30:27 +10:00
tumillanino
6ad6008e1b updated plymouth branding 2026-04-08 09:27:07 +10:00
tumillanino
a6da2af97c fixed issue breaking Zen install 2026-04-08 09:05:59 +10:00
tumillanino
fa8dee1ba4 Merge pull request #2 from tumillanino/staging
merge bitwig install
2026-04-08 08:58:19 +10:00
tumillanino
83c5550ec4 typo on file path 2026-04-08 08:47:12 +10:00
tumillanino
ef8da056dc bitwig install script created 2026-04-08 07:38:46 +10:00
tumillanino
51f18558fc remove oh-my-posh as it has annoying quirks 2026-04-08 07:08:10 +10:00
tumillanino
2665d4847a basis for a couple of install scripts 2026-04-08 06:46:26 +10:00
tumillanino
c0cccee037 some more branding 2026-03-26 16:48:25 +11:00
tumillanino
4c9eb4b38e some more branding 2026-03-26 16:39:13 +11:00
tumillanino
e7d6daf595 some more branding 2026-03-26 14:36:06 +11:00
102 changed files with 12511 additions and 66 deletions

View File

@@ -5,7 +5,8 @@
<img src="https://raw.githubusercontent.com/tumillanino/miasma-os/refs/heads/main/docs/logo.png" width=180 />
</a>
</p>
[!WARNING]
this project has been rebranded and moved to [Caracal](https://github.com/caracal-dev/caracal). If you are interested in an stable immutable distribution built for music producers and sound engineers, please visit Caracal.
## About
Miasma OS is a [Fedora Atomic desktop](https://fedoraproject.org/atomic-desktops/) built with love on top of a Bazzite base. It is a spin aimed at music producers and musicians utilising features found in [Fedora Jam Lab](https://fedoraproject.org/labs/jam/), [Av Linux](https://www.bandshed.net/avlinux/) and [Ubuntu Studio](https://ubuntustudio.org/) but on an immutable base thanks to [Bazzite](https://bazzite.gg/) and [Universal blue](https://universal-blue.org/).

BIN
docs/wallpapers/6293645.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 957 KiB

BIN
docs/wallpapers/8.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 868 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 819 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 868 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 957 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 564 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 387 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 576 KiB

View File

@@ -13,4 +13,3 @@ setup-zsh:
echo ')'
} >> ~/.zshrc
@echo 'eval "$(oh-my-posh init zsh --config 'https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/refs/heads/main/themes/json.omp.json')"' >> ~/.zshrc

View File

@@ -26,6 +26,12 @@ first-run:
sed -i '/^lv2path=/ s/$/;\/usr\/lib64\/lv2/;' ~/.config/REAPER/reaper.ini
sed -i '/^clappath=/ s/$/;\/usr\/lib64\/clap/' ~/.config/REAPER/reaper.ini
mkdir ~/.vst3
mkdir ~/.vst
cp -r /usr/lib64/vst3/* ~/.vst3/
cp -r /usr/lib64/vst/* ~/.vst/
@echo 'Paths updated. Please restart Reaper and clear cache/rescan'
export WINELOADER='/opt/wine-staging/bin/wine'

View File

@@ -8,4 +8,9 @@ route-plugins:
sed -i '/^lv2path=/ s/$/;\/usr\/lib64\/lv2/;' ~/.config/REAPER/reaper.ini
sed -i '/^clappath=/ s/$/;\/usr\/lib64\/clap/' ~/.config/REAPER/reaper.ini
mkdir ~/.vst3
mkdir ~/.vst
cp -r /usr/lib64/vst3/* ~/.vst3/
cp -r /usr/lib64/vst/* ~/.vst/
@echo 'Paths updated. Please restart Reaper and clear cache/rescan'

View File

@@ -1,53 +0,0 @@
#!/usr/bin/env bash
set -oue pipefail
./install-divested.sh 20250714
./install-divested.sh https://divested.dev/rpm/fedora/divested-release-20250714-1.noarch.rpm
BASE_URL='https://divested.dev/rpm/fedora'
PKG_PREFIX='divested-release'
ARCH='noarch'
RPM_SUFFIX='-1' # adjust if upstream uses a different release number
RETRY_OPTS=(--retry 3 --retry-delay 5 -S -L -O)
if [ "${#}" -eq 0 ]; then
echo "Usage: $0 YYYYMMDD | FULL_RPM_URL" >&2
exit 2
fi
INPUT="$1"
case "$INPUT" in
http:// | https://)
RPM_URL="$INPUT"
;;
[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9])
RELEASE_VERSION="$INPUT"
FILENAME="${PKG_PREFIX}-${RELEASE_VERSION}${RPM_SUFFIX}.${ARCH}.rpm"
RPM_URL="${BASE_URL}/${FILENAME}"
;;
*)
echo "Invalid argument. Provide a date (YYYYMMDD) or a full URL." >&2
exit 1
;;
esac
TMPDIR="$(mktemp -d)"
trap 'rm -rf "$TMPDIR"' EXIT
RPM_PATH="${TMPDIR}/$(basename "$RPM_URL")"
echo "Downloading ${RPM_URL} ..."
if command -v curl >/dev/null 2>&1; then
curl "${RETRY_OPTS[@]}" -o "$RPM_PATH" "$RPM_URL"
elif command -v wget >/dev/null 2>&1; then
wget --tries=3 --wait=5 -O "$RPM_PATH" "$RPM_URL"
else
echo "Neither curl nor wget available." >&2
exit 1
fi
echo "Installing ${RPM_PATH} ..."
sudo dnf install -y "$RPM_PATH"
echo "Installed $(basename "$RPM_PATH")"

View File

@@ -0,0 +1,89 @@
#!/usr/bin/env bash
# Replaces the stock Fedora kernel with the Bazzite kernel.
# The Bazzite kernel ships sched-ext (SCX) support and gaming/realtime
# optimizations, making it well-suited for low-latency audio workloads.
#
# Based on the solarpowered project kernel install approach:
# https://github.com/solar-powered/solarpowered
set -ouex pipefail
OS_VERSION=$(rpm -E %fedora)
VER=$(basename "$(curl -Ls -o /dev/null -w '%{url_effective}' https://github.com/bazzite-org/kernel-bazzite/releases/latest)")
# Verify we got a valid version string
if [[ -z "$VER" ]]; then
echo "ERROR: Failed to determine latest bazzite kernel version" >&2
exit 1
fi
echo "Bazzite kernel version: ${VER}"
# Disable kernel-install hooks so they don't trigger inside the container
# build environment. The initramfs will be generated explicitly below.
mkdir -p /usr/lib/kernel/install.d
pushd /usr/lib/kernel/install.d
printf '%s\n' '#!/bin/sh' 'exit 0' >05-rpmostree.install
printf '%s\n' '#!/bin/sh' 'exit 0' >50-dracut.install
chmod +x 05-rpmostree.install 50-dracut.install
popd
# Erase stock Fedora kernel RPMs from the package database (matches Bazzite's approach)
for pkg in kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra kernel-tools-libs kernel-tools; do
rpm --erase "$pkg" --nodeps || true
done
# Remove ALL existing kernel module directories.
rm -rf /usr/lib/modules
# Create /boot/grub2 so grub2 RPM scriptlets don't fail in the container
# build environment. It gets removed by the rm -rf /boot/* below.
mkdir -p /boot/grub2
echo "Installing Bazzite kernel ${VER}..."
dnf5 install -y \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-common-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-core-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-devel-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-devel-matched-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-modules-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-modules-akmods-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-modules-core-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-modules-extra-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-modules-extra-matched-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-modules-internal-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-tools-$VER.fc$OS_VERSION.x86_64.rpm \
https://github.com/bazzite-org/kernel-bazzite/releases/download/$VER/kernel-tools-libs-$VER.fc$OS_VERSION.x86_64.rpm
# Identify the newly installed Bazzite kernel version
NEW_KVER=$(ls /usr/lib/modules | head -n1)
# Ensure vmlinuz is at the path expected by rpm-ostree and bootc for boot
# entry generation.
if [ ! -f "/usr/lib/modules/${NEW_KVER}/vmlinuz" ]; then
if [ -f "/boot/vmlinuz-${NEW_KVER}" ]; then
cp "/boot/vmlinuz-${NEW_KVER}" "/usr/lib/modules/${NEW_KVER}/vmlinuz"
else
echo "ERROR: vmlinuz not found for kernel ${NEW_KVER}" >&2
exit 1
fi
fi
# Rebuild kernel module dependency map before generating initramfs.
depmod -a "${NEW_KVER}"
# Generate the initramfs inside the container image so that rpm-ostree and
# bootc can use it directly at deploy time.
dracut \
--no-hostonly \
--kver "${NEW_KVER}" \
--reproducible \
--zstd \
-v \
--add ostree \
--force \
"/usr/lib/modules/${NEW_KVER}/initramfs.img"
# Atomic images manage /boot via the bootloader layer; clear any kernel
# files the RPM dropped there.
rm -rf /boot/*

View File

@@ -1,7 +1,40 @@
#!/usr/bin/env bash
set -oue pipefail
# Fix boot entry title and OS identity
sed -i 's|^PRETTY_NAME=.*|PRETTY_NAME="Miasma OS"|' /usr/lib/os-release
sed -i 's|^NAME=.*|NAME="Miasma OS"|' /usr/lib/os-release
sed -i 's|^ID=.*|ID=miasma-os|' /usr/lib/os-release
sed -i 's|^ID_LIKE=.*|ID_LIKE=fedora|' /usr/lib/os-release
sed -i 's|^LOGO=.*|LOGO=distributor-logo|' /usr/lib/os-release
mv /tmp/files/assets/images/distributor-logo.svg /usr/share/icons/hicolor/scalable/places/distributor-logo.svg
mv /tmp/files/assets/splash/default.jxl /usr/share/backgrounds/default.jxl
mv /tmp/files/assets/splash/default-dark.jxl /usr/share/backgrounds/default-dark.jxl
mv /tmp/files/assets/images/watermark.png /usr/share/plymouth/themes/spinner/watermark.png
# Remove Bazzite animation/throbber frames so Plymouth uses only our watermark
rm -f /usr/share/plymouth/themes/spinner/animation-*.png
rm -f /usr/share/plymouth/themes/spinner/throbber-*.png
mv /tmp/files/assets/images/fedora-gdm-logo.png /usr/share/pixmaps/fedora-gdm-logo.png
mv /tmp/files/assets/images/fedora-logo-small.png /usr/share/pixmaps/fedora-logo-small.png
mv /tmp/files/assets/images/fedora-logo-sprite.png /usr/share/pixmaps/fedora-logo-sprite.png
mv /tmp/files/assets/images/fedora-logo-sprite.svg /usr/share/pixmaps/fedora-logo-sprite.svg
mv /tmp/files/assets/images/fedora-logo.png /usr/share/pixmaps/fedora-logo.png
mv /tmp/files/assets/images/fedora_logo_med.png /usr/share/pixmaps/fedora_logo_med.png
mv /tmp/files/assets/images/fedora_whitelogo.svg /usr/share/pixmaps/fedora_whitelogo.svg
mv /tmp/files/assets/images/fedora_whitelogo_med.png /usr/share/pixmaps/fedora_whitelogo_med.png
mv /tmp/files/assets/images/system-logo-white.png /usr/share/pixmaps/system-logo-white.png
# Replace EFI boot picker icon (shown before SDDM) with Miasma OS logo
mkdir -p /usr/share/pixmaps/bootloader
python3 -c "
import struct
with open('/usr/share/pixmaps/system-logo-white.png', 'rb') as f:
png_data = f.read()
# ICNS format: embed PNG data directly using ic09 (512x512) slot
entry = b'ic09' + struct.pack('>I', 8 + len(png_data)) + png_data
icns = b'icns' + struct.pack('>I', 8 + len(entry)) + entry
with open('/usr/share/pixmaps/bootloader/fedora.icns', 'wb') as f:
f.write(icns)
"

View File

@@ -0,0 +1,82 @@
#!/usr/bin/env bash
# Replaces the stock Fedora kernel with the CachyOS LTO kernel.
# CachyOS LTO kernel is compiled with Link-Time Optimization and ships
# sched-ext (SCX) support, giving lower latency for realtime audio workloads.
#
# Adapted from the Zena project (https://github.com/zena-linux/zena),
# specifically build-scripts/modules/base/kernel.sh.
# Zena is licensed under the Apache License 2.0.
# Credit to the Zena contributors: https://github.com/zena-linux/zena/graphs/contributors
set -ouex pipefail
shopt -s nullglob
KERNEL_PACKAGES=(
kernel-cachyos-lto
kernel-cachyos-lto-core
kernel-cachyos-lto-devel-matched
kernel-cachyos-lto-modules
)
# Disable kernel-install hooks so they don't trigger inside the container
# build environment. The initramfs will be generated explicitly below.
pushd /usr/lib/kernel/install.d
printf '%s\n' '#!/bin/sh' 'exit 0' >05-rpmostree.install
printf '%s\n' '#!/bin/sh' 'exit 0' >50-dracut.install
chmod +x 05-rpmostree.install 50-dracut.install
popd
# Erase stock Fedora kernel RPMs from the package database
for pkg in kernel kernel-core kernel-modules kernel-modules-core; do
rpm --erase "$pkg" --nodeps || true
done
# Remove ALL existing kernel module directories. The original script used
# `head -n1` which only removed the first entry — on Kinoite's base image
# there are typically two kernel versions, leaving an orphaned module
# directory that confuses rpm-ostree/bootc at deploy time.
for KVER in $(ls /usr/lib/modules 2>/dev/null); do
rm -rf "/usr/lib/modules/$KVER"
done
dnf5 -y install "${KERNEL_PACKAGES[@]}"
dnf5 versionlock add "${KERNEL_PACKAGES[@]}" || true
# Identify the newly installed CachyOS kernel version
NEW_KVER=$(ls /usr/lib/modules | head -n1)
# Ensure vmlinuz is at the path expected by rpm-ostree and bootc for boot
# entry generation. Some COPR kernel RPMs only install vmlinuz to /boot and
# not to /usr/lib/modules/<kver>/vmlinuz; copy it over if missing.
if [ ! -f "/usr/lib/modules/${NEW_KVER}/vmlinuz" ]; then
if [ -f "/boot/vmlinuz-${NEW_KVER}" ]; then
cp "/boot/vmlinuz-${NEW_KVER}" "/usr/lib/modules/${NEW_KVER}/vmlinuz"
else
echo "ERROR: vmlinuz not found for kernel ${NEW_KVER}" >&2
exit 1
fi
fi
# Rebuild kernel module dependency map before generating initramfs.
depmod -a "${NEW_KVER}"
# Generate the initramfs inside the container image so that rpm-ostree and
# bootc can use it directly at deploy time. Without this step, Kinoite boots
# with no initramfs and hits a dracut emergency shell (the "wall of errors").
# --no-hostonly : include all drivers, not just the CI build host's hardware
# --add ostree : include the ostree dracut module for atomic deployments
dracut \
--reproducible \
--no-hostonly \
--add "ostree" \
--filesystems "btrfs" \
--add-drivers "btrfs" \
--force \
"/usr/lib/modules/${NEW_KVER}/initramfs.img" \
"${NEW_KVER}"
# Atomic images manage /boot via the bootloader layer; clear any kernel
# files the RPM dropped there.
rm -rf /boot/*

View File

@@ -0,0 +1,34 @@
#!/usr/bin/env bash
set -euo pipefail
echo "Installing Bitwig Studio..."
dnf install -y libbsd bzip2-libs dpkg
curl -L -o /tmp/bitwig.deb "https://www.bitwig.com/dl/?id=419&os=installer_linux"
# Extract to temp dir to avoid /opt -> /var/opt symlink issues on immutable OS
mkdir -p /tmp/bitwig-extract
dpkg-deb -x /tmp/bitwig.deb /tmp/bitwig-extract
# Install main app to /usr/lib instead of /opt (which resolves to /var/opt at runtime)
mv /tmp/bitwig-extract/opt/bitwig-studio /usr/lib/bitwig-studio
# Copy remaining files (desktop entry, icons, mime types, etc.)
cp -rT /tmp/bitwig-extract/usr /usr
# Fix symlink to point to the new location
ln -sf /usr/lib/bitwig-studio/bitwig-studio /usr/bin/bitwig-studio
# Fix paths in .desktop file
if [ -f /usr/share/applications/com.bitwig.BitwigStudio.desktop ]; then
sed -i 's|/opt/bitwig-studio|/usr/lib/bitwig-studio|g' /usr/share/applications/com.bitwig.BitwigStudio.desktop
fi
ln -sf /usr/lib64/libbz2.so.1 /usr/lib64/libbz2.so.1.0
rm -rf /tmp/bitwig-extract /tmp/bitwig.deb
echo "Bitwig Studio installation complete."
exit 0

View File

@@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -euo pipefail
curl -L -o /tmp/decent-sampler.tar.gz "https://cdn.decentsamples.com/production/builds/ds/1.18.1/Decent_Sampler-1.18.1-Linux-Static-x86_64.tar.gz"
tar xvf /tmp/decent-sampler.tar.gz -C /tmp
cd /tmp
mkdir -p /usr/lib64/vst/decentsampler
cd Decent_Sampler-1.18.1-Linux-Static-x86_64
mv DecentSampler.so /usr/lib64/vst/decentsampler/
rm -rf /tmp/decent-sampler.tar.gz /tmp/Decent* || true
exit 0

View File

@@ -1,12 +1,44 @@
#!/usr/bin/env bash
set -euo pipefail
RENOISE_VERSION=3.5.4
EXTRACT_DIR=/tmp/Renoise_3_5_4_Demo_Linux_x86_64
curl -L -o /tmp/renoise.tar.gz "https://files.renoise.com/demo/Renoise_3_5_4_Demo_Linux_x86_64.tar.gz"
tar xvf /tmp/renoise.tar.gz -C /tmp
tar xf /tmp/renoise.tar.gz -C /tmp
cd /tmp/Renoise_3_5_4_Demo_Linux_x86_64
./install.sh || echo "Installer finished with minor warnings (likely desktop-integration related)"
# Skip install.sh — it targets /usr/local which symlinks to /var/usrlocal on immutable OS
# and is not included in the deployed ostree image.
# Instead, install directly into /usr paths.
rm -rf /tmp/renoise.tar.gz /tmp/Renoise* || true
# Keep binary and Resources/ together so Renoise can find its resources via relative path
mkdir -p /usr/lib/renoise
cp -r "${EXTRACT_DIR}/Resources" /usr/lib/renoise/
install -m755 "${EXTRACT_DIR}/renoise" /usr/lib/renoise/renoise
# Wrapper script so 'renoise' is in PATH and the binary runs from its own directory
cat > /usr/bin/renoise << 'EOF'
#!/bin/bash
exec /usr/lib/renoise/renoise "$@"
EOF
chmod 755 /usr/bin/renoise
# Desktop entry, icons, MIME types, man pages
install -D -m644 "${EXTRACT_DIR}/Installer/renoise.desktop" \
/usr/share/applications/renoise.desktop
install -D -m644 "${EXTRACT_DIR}/Installer/renoise-48.png" \
/usr/share/icons/hicolor/48x48/apps/renoise.png
install -D -m644 "${EXTRACT_DIR}/Installer/renoise-64.png" \
/usr/share/icons/hicolor/64x64/apps/renoise.png
install -D -m644 "${EXTRACT_DIR}/Installer/renoise-128.png" \
/usr/share/icons/hicolor/128x128/apps/renoise.png
install -D -m644 "${EXTRACT_DIR}/Installer/renoise.xml" \
/usr/share/mime/packages/renoise.xml
install -D -m644 "${EXTRACT_DIR}/Installer/renoise.1.gz" \
/usr/share/man/man1/renoise.1.gz
install -D -m644 "${EXTRACT_DIR}/Installer/renoise-pattern-effects.5.gz" \
/usr/share/man/man5/renoise-pattern-effects.5.gz
rm -rf /tmp/renoise.tar.gz "${EXTRACT_DIR}"
exit 0

View File

@@ -0,0 +1 @@
miasma

View File

@@ -0,0 +1,12 @@
[Default Applications]
text/html=app.zen_browser.zen.desktop
x-scheme-handler/http=app.zen_browser.zen.desktop
x-scheme-handler/https=app.zen_browser.zen.desktop
x-scheme-handler/ftp=app.zen_browser.zen.desktop
x-scheme-handler/chrome=app.zen_browser.zen.desktop
application/x-extension-htm=app.zen_browser.zen.desktop
application/x-extension-html=app.zen_browser.zen.desktop
application/x-extension-shtml=app.zen_browser.zen.desktop
application/xhtml+xml=app.zen_browser.zen.desktop
application/x-extension-xhtml=app.zen_browser.zen.desktop
application/x-extension-xht=app.zen_browser.zen.desktop

View File

@@ -0,0 +1,5 @@
[General]
LogoPath=/usr/share/pixmaps/system-logo-white.png
Name=Miasma OS
Website=https://miasma-os.com
Variant=Desktop Edition

View File

@@ -0,0 +1,3 @@
[Greeter][Wallpaper][org.kde.image][General]
Image=/usr/share/wallpapers/miasma-default.jxl
PreviewImage=/usr/share/wallpapers/miasma-default.jxl

View File

@@ -5,4 +5,4 @@ Free=1,2
Container=1
[Applets][1][Configuration][General]
Image=file:///usr/share/wallpapers/miasma/dmitry-dreyer-O_7jOtM_Hg0-unsplash.jpg
Image=file:///usr/share/wallpapers/miasma/Miasma-Blue-Purple.jpg

View File

@@ -0,0 +1,147 @@
[ColorEffects:Disabled]
Color=56,56,56
ColorAmount=0
ColorEffect=0
ContrastAmount=0.65
ContrastEffect=1
IntensityAmount=0.1
IntensityEffect=2
[ColorEffects:Inactive]
ChangeSelectionColor=true
Color=112,111,110
ColorAmount=0.025
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=2
Enable=false
IntensityAmount=0
IntensityEffect=0
[Colors:Button]
BackgroundAlternate=77,77,77
BackgroundNormal=36,39,44
DecorationFocus=52,108,146
DecorationHover=85,161,205
ForegroundActive=61,174,233
ForegroundInactive=189,195,199
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=199,130,61
ForegroundNormal=239,240,241
ForegroundPositive=126,166,75
ForegroundVisited=127,140,141
[Colors:Complementary]
BackgroundAlternate=59,64,69
BackgroundNormal=49,54,59
DecorationFocus=30,146,255
DecorationHover=61,174,230
ForegroundActive=246,116,0
ForegroundInactive=175,176,179
ForegroundLink=61,174,230
ForegroundNegative=237,21,21
ForegroundNeutral=201,206,59
ForegroundNormal=239,240,241
ForegroundPositive=17,209,22
ForegroundVisited=61,174,230
[Colors:Selection]
BackgroundAlternate=29,153,243
BackgroundNormal=86,159,204
DecorationFocus=52,108,146
DecorationHover=85,161,205
ForegroundActive=252,252,252
ForegroundInactive=239,240,241
ForegroundLink=253,188,75
ForegroundNegative=218,68,83
ForegroundNeutral=199,130,61
ForegroundNormal=31,31,38
ForegroundPositive=126,166,75
ForegroundVisited=189,195,199
[Colors:Tooltip]
BackgroundAlternate=77,77,77
BackgroundNormal=36,39,44
DecorationFocus=52,108,146
DecorationHover=85,161,205
ForegroundActive=61,174,233
ForegroundInactive=189,195,199
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=199,130,61
ForegroundNormal=239,240,241
ForegroundPositive=126,166,75
ForegroundVisited=127,140,141
[Colors:View]
BackgroundAlternate=26,33,42
BackgroundNormal=21,28,35
DecorationFocus=52,108,146
DecorationHover=85,161,205
ForegroundActive=61,174,233
ForegroundInactive=189,195,199
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=199,130,61
ForegroundNormal=239,240,241
ForegroundPositive=126,166,75
ForegroundVisited=127,140,141
[Colors:Window]
BackgroundAlternate=77,77,77
BackgroundNormal=36,39,44
DecorationFocus=52,108,146
DecorationHover=85,161,205
ForegroundActive=61,174,233
ForegroundInactive=189,195,199
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=199,130,61
ForegroundNormal=241,241,242
ForegroundPositive=126,166,75
ForegroundVisited=127,140,141
[Colors:Header]
BackgroundAlternate=77,77,77
BackgroundNormal=36,39,44
DecorationFocus=52,108,146
DecorationHover=85,161,205
ForegroundActive=61,174,233
ForegroundInactive=189,195,199
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=199,130,61
ForegroundNormal=241,241,242
ForegroundPositive=126,166,75
ForegroundVisited=127,140,141
[Colors:Header][Inactive]
BackgroundAlternate=77,77,77
BackgroundNormal=36,39,44
DecorationFocus=52,108,146
DecorationHover=85,161,205
ForegroundActive=61,174,233
ForegroundInactive=189,195,199
ForegroundLink=41,128,185
ForegroundNegative=218,68,83
ForegroundNeutral=199,130,61
ForegroundNormal=241,241,242
ForegroundPositive=126,166,75
ForegroundVisited=127,140,141
[General]
ColorScheme=Vapor
Name=Vapor
shadeSortColumn=true
[KDE]
contrast=4
[WM]
activeBackground=36,39,47
activeBlend=255,255,255
activeForeground=239,240,241
inactiveBackground=36,39,44
inactiveBlend=74,83,101
inactiveForeground=127,140,141

View File

@@ -0,0 +1,18 @@
[Desktop Entry]
Comment=Vapor - SteamOS Theme based on KDE Breeze and Breath
Name=Vapor
X-KDE-PluginInfo-Author=Valve
X-KDE-PluginInfo-Category=Plasma Theme
X-KDE-PluginInfo-Email=
X-KDE-PluginInfo-EnabledByDefault=true
X-KDE-PluginInfo-License=GPL version 3
X-KDE-PluginInfo-Name=Vapor
X-KDE-PluginInfo-Version=0.0.17
X-KDE-PluginInfo-Website=
X-Plasma-API=5.0
[Wallpaper]
defaultFileSuffix=.png
defaultHeight=1080
defaultWallpaperTheme=Vapor
defaultWidth=1920

View File

@@ -0,0 +1,2 @@
[AdaptiveTransparency]
enabled=true

View File

@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg id="svg2" version="1.1" viewBox="0 0 173 56.000004" sodipodi:docname="plasmoidheading.svg" inkscape:version="1.2-dev (3978b257e3, 2021-12-14, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
<defs id="defs50" />
<sodipodi:namedview id="namedview48" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" showgrid="true" inkscape:zoom="7.5562581" inkscape:cx="71.265432" inkscape:cy="14.292789" inkscape:window-width="1920" inkscape:window-height="1007" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg2" inkscape:blackoutopacity="0.0">
<inkscape:grid type="xygrid" id="grid4266" />
</sodipodi:namedview>
<style id="current-color-scheme" type="text/css">
.ColorScheme-Text {
color:#232629;
}
.ColorScheme-Background {
color:#eff0f1;
}
.ColorScheme-ViewBackground {
color:#ffffff;
}
</style>
<path id="hint-stretch-borders" d="m-7-7h5v5h-5z" opacity=".6" />
<g id="header-topleft">
<path id="path1780" class="ColorScheme-Background" fill="currentColor" d="M 16 6 C 14.338 6 13 7.338 13 9 L 13 12 L 19 12 L 19 6 L 16 6 z " opacity=".75" />
<path id="rect20523-3" class="ColorScheme-ViewBackground" style="fill:currentColor;fill-rule:evenodd;fill-opacity:.5" d="M 16 6 C 14.3774542034 6 13.0653658941 7.27584226003 13.00390625 8.8828125 C 13.0641327208 7.82972546125 13.9313095588 7 15 7 L 19 7 L 19 6 L 16 6 z " />
<path id="rect20523-3" style="fill:#fff;fill-rule:evenodd;fill-opacity:.15" d="M 16 6 C 14.3774542034 6 13.0653658941 7.27584226003 13.00390625 8.8828125 C 13.0641327208 7.82972546125 13.9313095588 7 15 7 L 19 7 L 19 6 L 16 6 z " />
</g>
<g id="header-top">
<path id="path1066" class="ColorScheme-Background" transform="rotate(-90)" d="m-12 19h6v32h-6z" fill="currentColor" opacity=".75" />
<rect id="rect934" x="19" y="6" width="32" height="1" ry="0" class="ColorScheme-ViewBackground" style="fill:currentColor;fill-rule:evenodd;fill-opacity:.5" />
<rect id="rect934" x="19" y="6" width="32" height="1" ry="0" style="fill:#fff;fill-rule:evenodd;fill-opacity:.15" />
</g>
<g id="header-topright">
<path id="path1785" class="ColorScheme-Background" fill="currentColor" d="M 51 6 L 51 12 L 57 12 L 57 9 C 57 7.338 55.662 6 54 6 L 51 6 z " opacity=".75" />
<path id="rect20523-3-7" class="ColorScheme-ViewBackground" style="fill:currentColor;fill-rule:evenodd;fill-opacity:.5" d="m 54,6 c 1.6225457966,0 2.9346341059,1.27584226003 2.99609375,2.8828125 C 56.9358672792,7.82972546125 56.0686904412,7 55,7 H 51 V 6 Z" />
<path id="rect20523-3-7" style="fill:#fff;fill-opacity:.15;fill-rule:evenodd" d="m 54,6 c 1.6225457966,0 2.9346341059,1.27584226003 2.99609375,2.8828125 C 56.9358672792,7.82972546125 56.0686904412,7 55,7 H 51 V 6 Z" />
</g>
<path id="header-left" class="ColorScheme-Background" transform="scale(-1)" d="m-19-44h6v32h-6z" fill="currentColor" opacity=".75" />
<path id="header-center" class="ColorScheme-Background" d="m19 12h32v32h-32z" fill="currentColor" opacity=".75" />
<path id="header-right" class="ColorScheme-Background" d="m51 12h6v32h-6z" fill="currentColor" opacity=".75" />
<g id="header-bottomleft" fill="currentColor">
<path id="path3182" class="ColorScheme-Background" d="m 19,50 v -6 h -6 v 6 z" opacity="0.75" fill="currentColor" sodipodi:nodetypes="ccccc" />
<path id="path3184" class="ColorScheme-Text" d="m19 50v-1h-4l-2-2e-5v1l2 2e-5h1z" fill-rule="evenodd" opacity=".15" fill="currentColor" />
</g>
<g id="header-bottom" fill="currentColor">
<path id="rect3152" class="ColorScheme-Background" transform="rotate(90)" d="m44-51h6v32h-6z" opacity=".75" fill="currentColor" />
<path id="rect3154" class="ColorScheme-Text" transform="rotate(90)" d="m49-51h1v32h-1z" opacity=".15" fill="currentColor" />
</g>
<g id="header-bottomright" fill="currentColor">
<path id="path3176" class="ColorScheme-Background" d="m 57,44 h -6 v 6 h 6 z" opacity="0.75" fill="currentColor" sodipodi:nodetypes="ccccc" />
<path id="path3178" class="ColorScheme-Text" d="m57 49h-6v1h6c0-1-2e-5 0 0-1z" fill-rule="evenodd" opacity=".15" fill="currentColor" />
</g>
<g id="footer-topleft" fill="currentColor">
<path id="path3182-1" class="ColorScheme-Background" d="m 67,6 v 6 H 61 V 6 Z" opacity="0.75" fill="currentColor" sodipodi:nodetypes="ccccc" />
<path id="path3184-8" class="ColorScheme-Text" d="m67 6v1h-4l-2 2e-5v-1l2-2e-5h1z" fill-rule="evenodd" opacity=".15" fill="currentColor" />
</g>
<g id="footer-top" fill="currentColor">
<path id="rect3152-0" class="ColorScheme-Background" transform="matrix(0 -1 -1 0 0 0)" d="m-12-99h6v32h-6z" opacity=".75" fill="currentColor" />
<path id="rect3154-9" class="ColorScheme-Text" transform="matrix(0 -1 -1 0 0 0)" d="m-7-99h1v32h-1z" opacity=".15" fill="currentColor" />
</g>
<g id="footer-topright" fill="currentColor">
<path id="path3176-6" class="ColorScheme-Background" d="M 105,12 H 99 V 6 h 6 z" opacity="0.75" fill="currentColor" sodipodi:nodetypes="ccccc" />
<path id="path3178-2" class="ColorScheme-Text" d="m105 7h-6v-1h6c0 1-2e-5 0 0 1z" fill-rule="evenodd" opacity=".15" fill="currentColor" />
</g>
<path id="footer-left" class="ColorScheme-Background" transform="scale(-1 1)" d="m-67 12h6v32h-6z" fill="currentColor" opacity=".75" />
<path id="footer-center" class="ColorScheme-Background" transform="scale(1 -1)" d="m67-44h32v32h-32z" fill="currentColor" opacity=".75" />
<path id="footer-right" class="ColorScheme-Background" transform="scale(1 -1)" d="m99-44h6v32h-6z" fill="currentColor" opacity=".75" />
<path id="footer-bottomleft" opacity=".75" class="ColorScheme-Background" fill="currentColor" d="M 61 44 L 61 47 C 61 48.662 62.338 50 64 50 L 67 50 L 67 44 L 61 44 z " />
<path id="footer-bottom" class="ColorScheme-Background" transform="matrix(0 1 1 0 0 0)" d="m44 67h6v32h-6z" fill="currentColor" opacity=".75" />
<path id="footer-bottomright" class="ColorScheme-Background" fill="currentColor" d="M 99 44 L 99 50 L 102 50 C 103.662 50 105 48.662 105 47 L 105 44 L 99 44 z " opacity=".75" />
<path id="hint-top-margin" d="m33 12h4v6h-4z" fill="#f0f" />
<path id="hint-bottom-margin" d="m33 38h4v6h-4z" fill="#f0f" />
<path id="hint-right-margin" transform="rotate(90)" d="m26-51h4v6h-4z" fill="#f0f" />
<path id="hint-left-margin" transform="rotate(90)" d="m26-25h4v6h-4z" fill="#f0f" />
</svg>

After

Width:  |  Height:  |  Size: 6.8 KiB

View File

@@ -0,0 +1,106 @@
var panel = new Panel
var panelScreen = panel.screen
// No need to set panel.location as ShellCorona::addPanel will automatically pick one available edge
// For an Icons-Only Task Manager on the bottom, *3 is too much, *2 is too little
// Round up to next highest even number since the Panel size widget only displays
// even numbers
panel.height = 2 * Math.ceil(gridUnit * 2.5 / 2)
// Restrict horizontal panel to a maximum size of a 21:9 monitor
const maximumAspectRatio = 21/9;
if (panel.formFactor === "horizontal") {
const geo = screenGeometry(panelScreen);
const maximumWidth = Math.ceil(geo.height * maximumAspectRatio);
if (geo.width > maximumWidth) {
panel.alignment = "center";
panel.minimumLength = maximumWidth;
panel.maximumLength = maximumWidth;
}
}
panel.addWidget("org.kde.plasma.kickoff")
//panel.addWidget("org.kde.plasma.showActivityManager")
panel.addWidget("org.kde.plasma.pager")
panel.addWidget("org.kde.plasma.icontasks")
panel.addWidget("org.kde.plasma.marginsseparator")
/* Next up is determining whether to add the Input Method Panel
* widget to the panel or not. This is done based on whether
* the system locale's language id is a member of the following
* white list of languages which are known to pull in one of
* our supported IME backends when chosen during installation
* of common distributions. */
var langIds = ["as", // Assamese
"bn", // Bengali
"bo", // Tibetan
"brx", // Bodo
"doi", // Dogri
"gu", // Gujarati
"hi", // Hindi
"ja", // Japanese
"kn", // Kannada
"ko", // Korean
"kok", // Konkani
"ks", // Kashmiri
"lep", // Lepcha
"mai", // Maithili
"ml", // Malayalam
"mni", // Manipuri
"mr", // Marathi
"ne", // Nepali
"or", // Odia
"pa", // Punjabi
"sa", // Sanskrit
"sat", // Santali
"sd", // Sindhi
"si", // Sinhala
"ta", // Tamil
"te", // Telugu
"th", // Thai
"ur", // Urdu
"vi", // Vietnamese
"zh_CN", // Simplified Chinese
"zh_TW"] // Traditional Chinese
if (langIds.indexOf(languageId) != -1) {
panel.addWidget("org.kde.plasma.kimpanel");
}
panel.addWidget("org.kde.plasma.systemtray")
panel.addWidget("org.kde.plasma.digitalclock")
panel.addWidget("org.kde.plasma.showdesktop")
const allPanels = panels();
for (let i = 0; i < allPanels.length; ++i) {
const panel = allPanels[i];
const widgets = panel.widgets();
for (let j = 0; j < widgets.length; ++j) {
const widget = widgets[j];
if (widget.type === "org.kde.plasma.icontasks") {
widget.currentConfigGroup = ["General"];
// Read the current launchers value
const currentLaunchers = widget.readConfig("launchers", "");
// Only set our default if launchers is empty
if (!currentLaunchers || currentLaunchers.trim() === "") {
widget.writeConfig("launchers", [
"preferred://browser",
"applications:Alacritty.desktop",
"applications:io.github.kolunmi.Bazaar.desktop",
"preferred://filemanager",
"cockos-reaper.desktop"
]);
widget.reloadConfig();
}
}
}
}

View File

@@ -0,0 +1,178 @@
{
"KPackageStructure": "Plasma/LayoutTemplate",
"KPlugin": {
"Authors": [
{
"Email": "aseigo@kde.org",
"Name": "Aaron Seigo",
"Name[ar]": "آرون سيغو",
"Name[az]": "Aaron Seigo",
"Name[be]": "Aaron Seigo",
"Name[bg]": "Aaron Seigo",
"Name[ca@valencia]": "Aaron Seigo",
"Name[ca]": "Aaron Seigo",
"Name[cs]": "Aaron Seigo",
"Name[da]": "Aaron Seigo",
"Name[de]": "Aaron Seigo",
"Name[el]": "Aaron Seigo",
"Name[en_GB]": "Aaron Seigo",
"Name[eo]": "Aaron Seigo",
"Name[es]": "Aaron Seigo",
"Name[et]": "Aaron Seigo",
"Name[eu]": "Aaron Seigo",
"Name[fi]": "Aaron Seigo",
"Name[fr]": "Aaron Seigo",
"Name[ga]": "Aaron Seigo",
"Name[gl]": "Aaron Seigo",
"Name[he]": "אהרון סייגו",
"Name[hu]": "Aaron Seigo",
"Name[ia]": "Aaron Seigo",
"Name[id]": "Aaron Seigo",
"Name[ie]": "Aaron Seigo",
"Name[is]": "Aaron Seigo",
"Name[it]": "Aaron Seigo",
"Name[ja]": "Aaron Seigo",
"Name[ka]": "აარონ სეიგო",
"Name[ko]": "Aaron Seigo",
"Name[lt]": "Aaron Seigo",
"Name[lv]": "Aaron Seigo",
"Name[nb]": "Aaron Seigo",
"Name[nl]": "Aaron Seigo",
"Name[nn]": "Aaron Seigo",
"Name[pl]": "Aaron Seigo",
"Name[pt]": "Aaron Seigo",
"Name[pt_BR]": "Aaron Seigo",
"Name[ro]": "Aaron Seigo",
"Name[ru]": "Aaron Seigo",
"Name[sa]": "एरोन् सेइगो",
"Name[sk]": "Aaron Seigo",
"Name[sl]": "Aaron Seigo",
"Name[sv]": "Aaron Seigo",
"Name[ta]": "ஆரோன் சீகோ",
"Name[tr]": "Aaron Seigo",
"Name[uk]": "Aaron Seigo",
"Name[vi]": "Aaron Seigo",
"Name[zh_CN]": "Aaron Seigo",
"Name[zh_TW]": "Aaron Seigo"
}
],
"Category": "",
"Description": "Default panel featuring application launcher, task manager and system tray",
"Description[ar]": "لوحة مبدئية تحوي مطلق تطبيقات و مدير مهام و صينية نظام",
"Description[az]": "Tətbiq başlatma menyusundan, tapşırıq panelindən və Sistem trey-dən ibarət standart panel",
"Description[be]": "Прадвызначаная панэль са сродкам запуску праграм, кіраўніком задач і прасторай апавяшчэнняў",
"Description[bg]": "Стандартен панел, съдържащ стартер на приложение, диспечер на задачи и системна област",
"Description[ca@valencia]": "Quadro predeterminat amb l'iniciador d'aplicacions, el gestor de tasques i la safata del sistema",
"Description[ca]": "Plafó predeterminat amb el llançador d'aplicacions, el gestor de tasques i la safata del sistema",
"Description[cs]": "Výchozí panel se spouštěčem aplikací, správcem úloh a systémovou částí",
"Description[da]": "Standardpanel med programstarter, opgavelinje og statusområde",
"Description[de]": "Standardkontrollleiste mit dem Anwendungsstarter, Fensterleiste und dem Systemabschnitt der Kontrollleiste",
"Description[el]": "Προεπιλεγμένος πίνακας με εκκινητή εφαρμογών, διαχειριστή εργασιών και πλαίσιο συστήματος",
"Description[en_GB]": "Default panel featuring application launcher, task manager and system tray",
"Description[eo]": "Defaŭlta panelo kun aplikaĵlanĉilo, taskadministrilo kaj sistempleto",
"Description[es]": "Panel por defecto que contiene un lanzador de aplicaciones, un gestor de tareas y la bandeja del sistema",
"Description[et]": "Vaikimisi paneel rakenduste käivitaja, ülesannete halduri ja süsteemisalvega",
"Description[eu]": "Lehenetsitako panela, aplikazio abiarazlea, ataza kudeatzailea eta sistemaren erretilua dituena",
"Description[fi]": "Oletuspaneeli, jossa sovelluskäynnistin, tehtävänhallinta ja ilmoitusalue",
"Description[fr]": "Panneau par défaut contenant le lanceur d'application, le gestionnaire de tâches et la boite à miniatures.",
"Description[ga]": "Painéal réamhshocraithe ina bhfuil lainseálaí feidhmchlár, bainisteoir tascanna agus tráidire córais",
"Description[gl]": "Panel predeterminado que contén un iniciador de aplicacións, un xestor de tarefas e unha área de notificación.",
"Description[he]": "לוח ברירת מחדל שמציג משגר חלונות, מנהל משימות ומגש מערכת",
"Description[hu]": "Az alapértelmezett panel, amely tartalmazza az alkalmazásindítót, a feladatkezelőt és a rendszertálcát",
"Description[ia]": "Pannello predefinite con lanceator de application, administrator de carga e tabuliero de systema ",
"Description[id]": "Perfituran panel baku peluncur aplikasi, pengelola tugas dan baki sistem",
"Description[is]": "Sjálfgefin skjáborðsstika með forritaræsi, verkefnastjóra og kerfisbakka",
"Description[it]": "Pannello p che offre un avviatore di applicazioni, un gestore dei processi e un vassoio di sistema",
"Description[ja]": "アプリケーションランチャー、タスクマネージャ、システムトレイを含む標準のパネル",
"Description[ka]": "ნაგულისხმევი პანელი, რომელიც აპლიკაციების გამშვებს, აპლიკაციების მმართველს და საათს შეიცავს",
"Description[ko]": "앱 실행기, 작업 관리자, 시스템 트레이가 있는 기본 패널",
"Description[lt]": "Numatytasis skydelis su programų paleidykle, užduočių tvarkytuve ir sistemos dėklu",
"Description[lv]": "Noklusējuma panelis, kas satur lietotņu palaidēju, uzdevumu pārvaldnieku un sistēmas ikonu joslu",
"Description[nb]": "Standardpanel med programstarter, oppgavebehandler og systemkurv",
"Description[nl]": "Standaard paneel met starter van toepassingen, taakbeheerder en systeemvak",
"Description[nn]": "Standardpanel med programstartar, oppgåvehandsamar og systemtrau",
"Description[pa]": "ਡਿਫਾਲਟ ਪੈਨਲ ਵਿੱਚ ਐਪਲੀਕੇਸ਼ਨ ਲਾਂਚਰ, ਟਾਸਕ ਮੈਨੇਜਰ ਅਤੇ ਸਿਸਟਮ ਟਰੇ ਹੁੰਦੇ ਹਨ",
"Description[pl]": "Domyślny panel zawierający uruchamiacza programów, pasek zadań i tackę systemową",
"Description[pt]": "O painel predefinido, que possui o lançador de aplicações, o gestor de tarefas e a bandeja do sistema",
"Description[pt_BR]": "Painel padrão contendo o lançador de aplicativos, gerenciador de tarefas e área de notificação",
"Description[ro]": "Panou implicit cu lansator de aplicații, gestionar de sarcini și tavă de sistem",
"Description[ru]": "Стандартная панель, содержащая меню запуска приложений, панель задач и системный лоток",
"Description[sa]": "पूर्वनिर्धारितं पटलं यत्र अनुप्रयोगप्रक्षेपकः, कार्यप्रबन्धकः, प्रणालीट्रे च सन्ति",
"Description[sk]": "Predvolený panel obsahuje spúšťač aplikácií, správcu úloh a systémovú lištu",
"Description[sl]": "Privzeta plošča, ki vsebuje zaganjalnik programov, upravljalnik opravil in sistemsko vrstico",
"Description[sv]": "Standardpanel med funktionerna programstart, aktivitetshanterare och systembricka",
"Description[ta]": "செயலி ஏவி, பணி மேலாளர், மற்றும் கணினி தட்டை கொண்ட இயல்பிருப்பு பலகை",
"Description[tr]": "Uygulama başlatıcısını, görev yöneticisini ve sistem tepsisini sunan öntanımlı panel",
"Description[uk]": "Типова панель із засобом запуску програм, панеллю керування задачами та системним лотком",
"Description[vi]": "Bảng mặc định chứa trình khởi chạy ứng dụng, trình quản lí tác vụ và khay hệ thống",
"Description[zh_CN]": "带有应用程序启动器、任务管理器和系统托盘的默认面板",
"Description[zh_TW]": "擁有應用程式啟動器、工作管理員與系統匣的面板。",
"EnabledByDefault": true,
"Id": "org.kde.plasma.desktop.defaultPanel",
"License": "LGPLv2+",
"Name": "Default Panel",
"Name[ar]": "اللوحة المبدئية",
"Name[az]": "Əsas Panel",
"Name[be]": "Прадвызначаная панэль",
"Name[bg]": "Стандартен панел",
"Name[bs]": "Podrazumijevani panel",
"Name[ca@valencia]": "Quadro predeterminat",
"Name[ca]": "Plafó predeterminat",
"Name[cs]": "Výchozí panel",
"Name[da]": "Standardpanel",
"Name[de]": "Standard-Kontrollleiste",
"Name[el]": "Προεπιλεγμένος πίνακας",
"Name[en_GB]": "Default Panel",
"Name[eo]": "Defaŭlta Panelo",
"Name[es]": "Panel por omisión",
"Name[et]": "Vaikimisi paneel",
"Name[eu]": "Panel lehenetsia",
"Name[fi]": "Oletuspaneeli",
"Name[fr]": "Tableau de bord par défaut",
"Name[ga]": "Painéal Réamhshocraithe",
"Name[gl]": "Panel predeterminado",
"Name[he]": "לוחות ברירת מחדל",
"Name[hu]": "Alapértelmezett panel",
"Name[ia]": "Pannello predefinite",
"Name[id]": "Panel Bawaan",
"Name[ie]": "Predefinit panel",
"Name[is]": "Sjálfgefin skjáborðsstika",
"Name[it]": "Pannello predefinito",
"Name[ja]": "標準のパネル",
"Name[ka]": "ნაგულისხმევი პანელი",
"Name[ko]": "기본 패널",
"Name[lt]": "Numatytasis skydelis",
"Name[lv]": "Noklusētais panelis",
"Name[mr]": "मूलभूत पटल",
"Name[nb]": "Standardpanel",
"Name[nds]": "Standardpaneel",
"Name[nl]": "Standaard paneel",
"Name[nn]": "Standard­panel",
"Name[pa]": "ਡਿਫਾਲਟ ਪੈਨਲ",
"Name[pl]": "Domyślny panel",
"Name[pt]": "Painel Predefinido",
"Name[pt_BR]": "Painel padrão",
"Name[ro]": "Panou implicit",
"Name[ru]": "Стандартная панель",
"Name[sa]": "पूर्वनिर्धारित पटल",
"Name[sk]": "Štandardný panel",
"Name[sl]": "Privzeti pult",
"Name[sr@ijekavian]": "Подразумијевани панел",
"Name[sr@ijekavianlatin]": "Podrazumijevani panel",
"Name[sr@latin]": "Podrazumevani panel",
"Name[sr]": "Подразумевани панел",
"Name[sv]": "Standardpanel",
"Name[ta]": "இயல்பிருப்பு பலகை",
"Name[tg]": "Лавҳаи стандартӣ",
"Name[tr]": "Öntanımlı Pano",
"Name[uk]": "Типова панель",
"Name[vi]": "Bảng mặc định",
"Name[zh_CN]": "默认面板",
"Name[zh_TW]": "預設面板",
"Website": "https://www.kde.org/plasma-desktop"
},
"X-Plasma-ContainmentCategories": [
"panel"
],
"X-Plasma-Shell": "plasmashell"
}

View File

@@ -0,0 +1,26 @@
[kdeglobals][KDE]
widgetStyle=Breeze
[kdeglobals][General]
ColorScheme=Vapor
[kdeglobals][Icons]
Theme=breeze-dark
[plasmarc][Theme]
name=Vapor
[kcminputrc][Mouse]
cursorTheme=breeze_cursors
[kwinrc][WindowSwitcher]
LayoutName=org.kde.breeze.desktop
[kwinrc][DesktopSwitcher]
LayoutName=org.kde.breeze.desktop
[kwinrc][org.kde.kdecoration2]
library=org.kde.breeze
[KSplash]
Theme=com.valve.vapor

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,4 @@
applet.wallpaperPlugin = 'org.kde.image'
applet.currentConfigGroup = ["Wallpaper", "org.kde.image", "General"]
applet.writeConfig("Image", "/usr/share/wallpapers/miasma-default.jxl")
applet.reloadConfig()

View File

@@ -0,0 +1,3 @@
applet.currentConfigGroup = ["General"]
applet.writeConfig("icon", "distributor-logo-steamdeck")
applet.reloadConfig()

View File

@@ -0,0 +1,6 @@
systemtrayId = applet.readConfig("SystrayContainmentId");
if (systemtrayId) {
const systrayContainer = desktopById(systemtrayId);
systrayContainer.currentConfigGroup = ["General"];
systrayContainer.writeConfig("scaleIconsToFit", true);
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

View File

@@ -0,0 +1,85 @@
/*
SPDX-FileCopyrightText: 2014 Marco Martin <mart@kde.org>
SPDX-License-Identifier: GPL-2.0-or-later
*/
import QtQuick
import org.kde.kirigami 2 as Kirigami
Rectangle {
id: root
color: "black"
property int stage
onStageChanged: {
if (stage == 2) {
introAnimation.running = true;
} else if (stage == 5) {
introAnimation.target = busyIndicator;
introAnimation.from = 1;
introAnimation.to = 0;
introAnimation.running = true;
}
}
width: 1280
height: 800
Component.onCompleted: stage = 2
Item {
id: content
anchors.fill: parent
opacity: 0
Image {
id: logo
//match SDDM/lockscreen avatar positioning
readonly property real size: Kirigami.Units.gridUnit * 8
anchors.centerIn: parent
asynchronous: true
source: "images/miasma-logo.svg"
sourceSize.width: size
sourceSize.height: size
}
// TODO: port to PlasmaComponents3.BusyIndicator
Image {
id: busyIndicator
//in the middle of the remaining space
y: parent.height - (parent.height - logo.y) / 2 - height/2
anchors.horizontalCenter: parent.horizontalCenter
asynchronous: true
source: "images/busywidget.svgz"
sourceSize.height: Kirigami.Units.gridUnit * 2
sourceSize.width: Kirigami.Units.gridUnit * 2
RotationAnimator on rotation {
id: rotationAnimator
from: 0
to: 360
// Not using a standard duration value because we don't want the
// animation to spin faster or slower based on the user's animation
// scaling preferences; it doesn't make sense in this context
duration: 2000
loops: Animation.Infinite
// Don't want it to animate at all if the user has disabled animations
running: Kirigami.Units.longDuration > 1
}
}
}
OpacityAnimator {
id: introAnimation
running: false
target: content
from: 0
to: 1
duration: Kirigami.Units.veryLongDuration * 2
easing.type: Easing.InOutQuad
}
}

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 868 KiB

View File

@@ -0,0 +1,16 @@
[Desktop Entry]
Comment=Vapor - SteamOS Theme based on KDE BreezeDark
Name=Vapor
Type=Service
X-KDE-ServiceTypes=Plasma/LookAndFeel
X-KDE-ParentApp=
X-KDE-PluginInfo-Author=Valve
X-KDE-PluginInfo-Category=
X-KDE-PluginInfo-Email=
X-KDE-PluginInfo-License=GPL-2.0+
X-KDE-PluginInfo-Name=com.valve.vapor.desktop
X-KDE-PluginInfo-Version=0.01
X-KDE-PluginInfo-Website=
X-Plasma-MainScript=defaults
X-KDE-PluginInfo-License=GPLv2+

View File

@@ -0,0 +1,23 @@
{
"KPackageStructure": "Plasma/LookAndFeel",
"KPlugin": {
"Authors": [
{
"Email": "",
"Name": "Valve"
}
],
"Category": "",
"Description": "The stock SteamOS theme",
"Id": "com.valve.vapor.desktop",
"License": "GPLv2+",
"Name": "Vapor",
"ServiceTypes": [
"Plasma/LookAndFeel"
],
"Version": "0.01",
"Website": "https://steampowered.com/"
},
"X-KDE-ParentApp": "",
"X-Plasma-MainScript": "defaults"
}

View File

@@ -0,0 +1,27 @@
[kdeglobals][KDE]
widgetStyle=Windows
[kdeglobals][General]
ColorScheme=VGUI
[kdeglobals][Icons]
Theme=breeze-dark
[plasmarc][Theme]
name=default
[kcminputrc][Mouse]
cursorTheme=KDE_Classic
[kwinrc][WindowSwitcher]
LayoutName=org.kde.breeze.desktop
[kwinrc][DesktopSwitcher]
LayoutName=org.kde.breeze.desktop
[kwinrc][org.kde.kdecoration2]
library=org.kde.kwin.aurorae
theme=kwin4_decoration_qml_plastik
[KSplash]
Theme=com.valve.vapor

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,4 @@
applet.wallpaperPlugin = 'org.kde.image'
applet.currentConfigGroup = ["Wallpaper", "org.kde.image", "General"]
applet.writeConfig("Image", "/usr/share/wallpapers/miasma-default.jxl")
applet.reloadConfig()

View File

@@ -0,0 +1,3 @@
applet.currentConfigGroup = ["General"]
applet.writeConfig("icon", "distributor-logo-steamdeck")
applet.reloadConfig()

View File

@@ -0,0 +1,6 @@
systemtrayId = applet.readConfig("SystrayContainmentId");
if (systemtrayId) {
const systrayContainer = desktopById(systemtrayId);
systrayContainer.currentConfigGroup = ["General"];
systrayContainer.writeConfig("scaleIconsToFit", true);
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 KiB

View File

@@ -0,0 +1,85 @@
/*
SPDX-FileCopyrightText: 2014 Marco Martin <mart@kde.org>
SPDX-License-Identifier: GPL-2.0-or-later
*/
import QtQuick
import org.kde.kirigami 2 as Kirigami
Rectangle {
id: root
color: "black"
property int stage
onStageChanged: {
if (stage == 2) {
introAnimation.running = true;
} else if (stage == 5) {
introAnimation.target = busyIndicator;
introAnimation.from = 1;
introAnimation.to = 0;
introAnimation.running = true;
}
}
width: 1280
height: 800
Component.onCompleted: stage = 2
Item {
id: content
anchors.fill: parent
opacity: 0
Image {
id: logo
//match SDDM/lockscreen avatar positioning
readonly property real size: Kirigami.Units.gridUnit * 8
anchors.centerIn: parent
asynchronous: true
source: "images/miasma-logo.svg"
sourceSize.width: size
sourceSize.height: size
}
// TODO: port to PlasmaComponents3.BusyIndicator
Image {
id: busyIndicator
//in the middle of the remaining space
y: parent.height - (parent.height - logo.y) / 2 - height/2
anchors.horizontalCenter: parent.horizontalCenter
asynchronous: true
source: "images/busywidget.svgz"
sourceSize.height: Kirigami.Units.gridUnit * 2
sourceSize.width: Kirigami.Units.gridUnit * 2
RotationAnimator on rotation {
id: rotationAnimator
from: 0
to: 360
// Not using a standard duration value because we don't want the
// animation to spin faster or slower based on the user's animation
// scaling preferences; it doesn't make sense in this context
duration: 2000
loops: Animation.Infinite
// Don't want it to animate at all if the user has disabled animations
running: Kirigami.Units.longDuration > 1
}
}
}
OpacityAnimator {
id: introAnimation
running: false
target: content
from: 0
to: 1
duration: Kirigami.Units.veryLongDuration * 2
easing.type: Easing.InOutQuad
}
}

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 868 KiB

View File

@@ -0,0 +1,16 @@
[Desktop Entry]
Comment=VGUI2 Classic styled theme for KDE Plasma
Name=VGUI2 Classic
Type=Service
X-KDE-ServiceTypes=Plasma/LookAndFeel
X-KDE-ParentApp=
X-KDE-PluginInfo-Author=Valve
X-KDE-PluginInfo-Category=
X-KDE-PluginInfo-Email=
X-KDE-PluginInfo-License=GPL-2.0+
X-KDE-PluginInfo-Name=com.valve.vgui.desktop
X-KDE-PluginInfo-Version=0.01
X-KDE-PluginInfo-Website=
X-Plasma-MainScript=defaults
X-KDE-PluginInfo-License=GPLv2+

View File

@@ -0,0 +1,23 @@
{
"KPackageStructure": "Plasma/LookAndFeel",
"KPlugin": {
"Authors": [
{
"Email": "",
"Name": "Valve"
}
],
"Category": "",
"Description": "Any color you like, as long as it's green",
"Id": "com.valve.vgui.desktop",
"License": "GPLv2+",
"Name": "VGUI2",
"ServiceTypes": [
"Plasma/LookAndFeel"
],
"Version": "0.01",
"Website": "https://steampowered.com/"
},
"X-KDE-ParentApp": "",
"X-Plasma-MainScript": "defaults"
}

View File

@@ -0,0 +1,61 @@
[Plymouth Theme]
Name=Spinner
Description=A theme designed by jimmac that features a simple spinner.
ModuleName=two-step
[two-step]
Font=Cantarell 12
TitleFont=Cantarell Light 30
ImageDir=/usr/share/plymouth/themes/spinner
DialogHorizontalAlignment=.5
DialogVerticalAlignment=.382
TitleHorizontalAlignment=.5
TitleVerticalAlignment=.382
HorizontalAlignment=.5
VerticalAlignment=.7
WatermarkHorizontalAlignment=.5
WatermarkVerticalAlignment=.96
Transition=none
TransitionDuration=0.0
BackgroundStartColor=0x000000
BackgroundEndColor=0x000000
ProgressBarBackgroundColor=0x606060
ProgressBarForegroundColor=0xffffff
MessageBelowAnimation=true
[boot-up]
UseEndAnimation=false
[shutdown]
UseEndAnimation=false
[reboot]
UseEndAnimation=false
[updates]
SuppressMessages=true
ProgressBarShowPercentComplete=true
UseProgressBar=true
Title=Installing Updates...
SubTitle=Do not turn off your computer
[system-upgrade]
SuppressMessages=true
ProgressBarShowPercentComplete=true
UseProgressBar=true
Title=Upgrading System...
SubTitle=Do not turn off your computer
[firmware-upgrade]
SuppressMessages=true
ProgressBarShowPercentComplete=true
UseProgressBar=true
Title=Upgrading Firmware...
SubTitle=Do not turn off your computer
[system-reset]
SuppressMessages=true
ProgressBarShowPercentComplete=true
UseProgressBar=true
Title=Resetting System...
SubTitle=Do not turn off your computer

Binary file not shown.

After

Width:  |  Height:  |  Size: 957 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 564 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 387 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 576 KiB

View File

@@ -9,4 +9,7 @@ modules:
- installreaper.sh
- installrenoise.sh
- installsurgext.sh
- installbitwig.sh
- installdecentsampler.sh
- branding.sh

View File

@@ -2,6 +2,7 @@ modules:
- type: dnf
repos:
copr:
- bieszczaders/kernel-cachyos-addons
- patrickl/wine-tkg
- timlau/audio
- alternateved/eza

View File

@@ -1,7 +1,23 @@
modules:
- type: dnf
remove:
packages:
- zram-generator-defaults
- type: dnf
install:
packages:
# CachyOS kernel performance companion packages
# cachyos-settings: kernel tunables and sysctl optimisations from CachyOS
# cachyos-ksm-settings: Kernel Samepage Merging tuning (reduces RAM usage)
# scx-manager / scx-scheds / scx-tools: sched-ext schedulers;
# scx_lavd is ideal for low-latency realtime audio workloads
- cachyos-settings
- cachyos-ksm-settings
- scx-manager
- scx-scheds-git
- scx-tools-git
# useful tools
- zsh
- openssl
@@ -12,7 +28,6 @@ modules:
- alacritty
- ripgrep
- fd-find
- realtime-setup
- zoxide
- fzf

Some files were not shown because too many files have changed in this diff Show More