[test-arkanelinux-znver4] Add CachyOS-based znver4 image
This commit is contained in:
parent
1faab40c56
commit
4c6b7197e4
40 changed files with 626 additions and 0 deletions
8
arkdep-build.d/test-arkanelinux-znver4/bootstrap.list
Normal file
8
arkdep-build.d/test-arkanelinux-znver4/bootstrap.list
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
amd-ucode
|
||||||
|
arkane-keyring
|
||||||
|
base
|
||||||
|
dbus-broker-units
|
||||||
|
dracut
|
||||||
|
intel-ucode
|
||||||
|
linux-cachyos
|
||||||
|
linux-firmware
|
1
arkdep-build.d/test-arkanelinux-znver4/name.sh
Normal file
1
arkdep-build.d/test-arkanelinux-znver4/name.sh
Normal file
|
@ -0,0 +1 @@
|
||||||
|
echo "arkanelinux-znver4-$(date +%Y-%m-%d)"
|
|
@ -0,0 +1,2 @@
|
||||||
|
[org/gnome/shell]
|
||||||
|
favorite-apps = ['org.mozilla.firefox.desktop', 'org.gnome.Calendar.desktop', 'io.bassi.Amberol.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop']
|
|
@ -0,0 +1,7 @@
|
||||||
|
[org/gnome/desktop/background]
|
||||||
|
color-shading-type='solid'
|
||||||
|
picture-options='zoom'
|
||||||
|
picture-uri-dark='file:///usr/share/backgrounds/arkane/starstruck-d.webp'
|
||||||
|
picture-uri='file:///usr/share/backgrounds/arkane/starstruck-l.webp'
|
||||||
|
primary-color='#001a3f'
|
||||||
|
secondary-color='#0087d6'
|
|
@ -0,0 +1,2 @@
|
||||||
|
[org/gnome/desktop/interface]
|
||||||
|
color-scheme='prefer-dark'
|
|
@ -0,0 +1,3 @@
|
||||||
|
user-db:user
|
||||||
|
system-db:local
|
||||||
|
system-db:gnome
|
|
@ -0,0 +1,27 @@
|
||||||
|
# Default values for useradd(8)
|
||||||
|
#
|
||||||
|
# The SHELL variable specifies the default login shell on your
|
||||||
|
# system.
|
||||||
|
SHELL=/bin/zsh
|
||||||
|
|
||||||
|
# The default group for users
|
||||||
|
GROUP=users
|
||||||
|
|
||||||
|
# The default home directory.
|
||||||
|
HOME=/home
|
||||||
|
|
||||||
|
# The number of days after a password expires until the account is permanently
|
||||||
|
# disabled
|
||||||
|
INACTIVE=-1
|
||||||
|
|
||||||
|
# The default expire date
|
||||||
|
EXPIRE=
|
||||||
|
|
||||||
|
# The SKEL variable specifies the directory containing "skeletal" user files;
|
||||||
|
# in other words, files such as a sample .profile that will be copied to the
|
||||||
|
# new user's home directory when it is created.
|
||||||
|
SKEL=/etc/skel
|
||||||
|
|
||||||
|
# Defines whether the mail spool should be created while
|
||||||
|
# creating the account
|
||||||
|
CREATE_MAIL_SPOOL=no
|
|
@ -0,0 +1,19 @@
|
||||||
|
# Name Service Switch configuration file.
|
||||||
|
# See nsswitch.conf(5) for details.
|
||||||
|
|
||||||
|
passwd: files systemd extrausers
|
||||||
|
group: files [SUCCESS=merge] systemd extrausers
|
||||||
|
shadow: files systemd extrausers
|
||||||
|
gshadow: files systemd
|
||||||
|
|
||||||
|
publickey: files
|
||||||
|
|
||||||
|
hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns
|
||||||
|
networks: files
|
||||||
|
|
||||||
|
protocols: files
|
||||||
|
services: files
|
||||||
|
ethers: files
|
||||||
|
rpc: files
|
||||||
|
|
||||||
|
netgroup: files
|
|
@ -0,0 +1,2 @@
|
||||||
|
# Utilized to prioritize wrapper applications in PATH
|
||||||
|
PATH="/usr/abin:$PATH"
|
|
@ -0,0 +1 @@
|
||||||
|
Defaults secure_path="/usr/abin:/usr/local/sbin:/usr/local/bin:/usr/bin"
|
|
@ -0,0 +1 @@
|
||||||
|
%wheel ALL=(ALL:ALL) ALL
|
|
@ -0,0 +1 @@
|
||||||
|
vm.max_map_count=1048576
|
|
@ -0,0 +1,79 @@
|
||||||
|
# This file is part of systemd.
|
||||||
|
#
|
||||||
|
# systemd is free software; you can redistribute it and/or modify it under the
|
||||||
|
# terms of the GNU Lesser General Public License as published by the Free
|
||||||
|
# Software Foundation; either version 2.1 of the License, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# Entries in this file show the compile time defaults. Local configuration
|
||||||
|
# should be created by either modifying this file, or by creating "drop-ins" in
|
||||||
|
# the system.conf.d/ subdirectory. The latter is generally recommended.
|
||||||
|
# Defaults can be restored by simply deleting this file and all drop-ins.
|
||||||
|
#
|
||||||
|
# Use 'systemd-analyze cat-config systemd/system.conf' to display the full config.
|
||||||
|
#
|
||||||
|
# See systemd-system.conf(5) for details.
|
||||||
|
|
||||||
|
[Manager]
|
||||||
|
#LogLevel=info
|
||||||
|
#LogTarget=journal-or-kmsg
|
||||||
|
#LogColor=yes
|
||||||
|
#LogLocation=no
|
||||||
|
#LogTime=no
|
||||||
|
#DumpCore=yes
|
||||||
|
#ShowStatus=yes
|
||||||
|
#CrashChangeVT=no
|
||||||
|
#CrashShell=no
|
||||||
|
#CrashReboot=no
|
||||||
|
#CtrlAltDelBurstAction=reboot-force
|
||||||
|
#CPUAffinity=
|
||||||
|
#NUMAPolicy=default
|
||||||
|
#NUMAMask=
|
||||||
|
#RuntimeWatchdogSec=off
|
||||||
|
#RuntimeWatchdogPreSec=off
|
||||||
|
#RuntimeWatchdogPreGovernor=
|
||||||
|
#RebootWatchdogSec=10min
|
||||||
|
#KExecWatchdogSec=off
|
||||||
|
#WatchdogDevice=
|
||||||
|
#CapabilityBoundingSet=
|
||||||
|
#NoNewPrivileges=no
|
||||||
|
#SystemCallArchitectures=
|
||||||
|
#TimerSlackNSec=
|
||||||
|
#StatusUnitFormat=description
|
||||||
|
#DefaultTimerAccuracySec=1min
|
||||||
|
#DefaultStandardOutput=journal
|
||||||
|
#DefaultStandardError=inherit
|
||||||
|
#DefaultTimeoutStartSec=90s
|
||||||
|
DefaultTimeoutStopSec=15s
|
||||||
|
#DefaultTimeoutAbortSec=
|
||||||
|
#DefaultDeviceTimeoutSec=90s
|
||||||
|
#DefaultRestartSec=100ms
|
||||||
|
#DefaultStartLimitIntervalSec=10s
|
||||||
|
#DefaultStartLimitBurst=5
|
||||||
|
#DefaultEnvironment=
|
||||||
|
#DefaultCPUAccounting=no
|
||||||
|
#DefaultIOAccounting=no
|
||||||
|
#DefaultIPAccounting=no
|
||||||
|
#DefaultMemoryAccounting=yes
|
||||||
|
#DefaultTasksAccounting=yes
|
||||||
|
#DefaultTasksMax=15%
|
||||||
|
#DefaultLimitCPU=
|
||||||
|
#DefaultLimitFSIZE=
|
||||||
|
#DefaultLimitDATA=
|
||||||
|
#DefaultLimitSTACK=
|
||||||
|
#DefaultLimitCORE=
|
||||||
|
#DefaultLimitRSS=
|
||||||
|
#DefaultLimitNOFILE=1024:524288
|
||||||
|
#DefaultLimitAS=
|
||||||
|
#DefaultLimitNPROC=
|
||||||
|
#DefaultLimitMEMLOCK=8M
|
||||||
|
#DefaultLimitLOCKS=
|
||||||
|
#DefaultLimitSIGPENDING=
|
||||||
|
#DefaultLimitMSGQUEUE=
|
||||||
|
#DefaultLimitNICE=
|
||||||
|
#DefaultLimitRTPRIO=
|
||||||
|
#DefaultLimitRTTIME=
|
||||||
|
#DefaultOOMPolicy=stop
|
||||||
|
#DefaultSmackProcessLabel=
|
||||||
|
#ReloadLimitIntervalSec=
|
||||||
|
#ReloadLimitBurst=
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/bluetooth.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/bluetooth.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/NetworkManager-dispatcher.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/gdm.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/switcheroo-control.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/NetworkManager.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/apparmor.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/arkane-flatpak-init.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/cups.path
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/cups.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/NetworkManager-wait-online.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/cups.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/cups.socket
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/systemd-boot-update.service
|
|
@ -0,0 +1 @@
|
||||||
|
/etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/fstrim.timer
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/system/paccache.timer
|
|
@ -0,0 +1,142 @@
|
||||||
|
# Valve USB devices
|
||||||
|
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Steam Controller udev write access
|
||||||
|
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"
|
||||||
|
|
||||||
|
# Valve HID devices over USB hidraw
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Valve HID devices over bluetooth hidraw
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# DualShock 3 over USB hidraw
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0268", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# DualShock 3 over bluetooth hidraw
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*054C:0268*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# DualShock 4 over USB hidraw
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# DualShock 4 wireless adapter over USB hidraw
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# DualShock 4 Slim over USB hidraw
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# DualShock 4 over bluetooth hidraw
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# DualShock 4 Slim over bluetooth hidraw
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# PS5 DualSense controller over USB hidraw
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# PS5 DualSense controller over bluetooth hidraw
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*054C:0CE6*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Nintendo Switch Pro Controller over USB hidraw
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="2009", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Nintendo Switch Pro Controller over bluetooth hidraw
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*057E:2009*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Faceoff Wired Pro Controller for Nintendo Switch
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0180", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# PDP Wired Fight Pad Pro for Nintendo Switch
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0185", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# PowerA Wired Controller for Nintendo Switch
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="20d6", ATTRS{idProduct}=="a711", MODE="0660", TAG+="uaccess"
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="20d6", ATTRS{idProduct}=="a713", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# PowerA Wireless Controller for Nintendo Switch we have to use
|
||||||
|
# ATTRS{name} since VID/PID are reported as zeros. We use /bin/sh
|
||||||
|
# instead of udevadm directly becuase we need to use '*' glob at the
|
||||||
|
# end of "hidraw" name since we don't know the index it'd have.
|
||||||
|
#
|
||||||
|
KERNEL=="input*", ATTRS{name}=="Lic Pro Controller", RUN{program}+="/bin/sh -c 'udevadm test-builtin uaccess /sys/%p/../../hidraw/hidraw*'"
|
||||||
|
|
||||||
|
# Afterglow Deluxe+ Wired Controller for Nintendo Switch
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0188", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Nacon PS4 Revolution Pro Controller
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="146b", ATTRS{idProduct}=="0d01", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Razer Raiju PS4 Controller
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1000", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Razer Raiju 2 Tournament Edition
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1007", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Razer Panthera EVO Arcade Stick
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1008", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Razer Raiju PS4 Controller Tournament Edition over bluetooth hidraw
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*1532:100A*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Razer Raiju Ultimate over USB
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1004", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Razer Raiju Ultimate over PC Bluetooth
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*1532:1009*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Razer Panthera Arcade Stick
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0401", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Mad Catz - Street Fighter V Arcade FightPad PRO
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8250", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Mad Catz - Street Fighter V Arcade FightStick TE S+
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8384", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Brooks Universal Fighting Board
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0c30", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# EMiO Elite Controller for PS4
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="1cf6", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# ZeroPlus P4 (hitbox)
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0ef6", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# HORI RAP4
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="008a", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# HORIPAD 4 FPS
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0055", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# HORIPAD 4 FPS Plus
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0066", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# HORIPAD for Nintendo Switch
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="00c1", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# HORIPAD mini 4
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="00ee", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Armor Armor 3 Pad PS4
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0e10", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# STRIKEPAD PS4 Grip Add-on
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c5", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# NVIDIA Shield Portable (2013 - NVIDIA_Controller_v01.01 - In-Home Streaming only)
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7203", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""
|
||||||
|
|
||||||
|
# NVIDIA Shield Controller (2015 - NVIDIA_Controller_v01.03 over USB hidraw)
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7210", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""
|
||||||
|
|
||||||
|
# NVIDIA Shield Controller (2017 - NVIDIA_Controller_v01.04 over bluetooth hidraw)
|
||||||
|
KERNEL=="hidraw*", KERNELS=="*0955:7214*", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Astro C40
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="9886", ATTRS{idProduct}=="0025", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Thrustmaster eSwap Pro
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="d00e", MODE="0660", TAG+="uaccess"
|
||||||
|
|
||||||
|
# Performance Designed Products Victrix Pro FS-12 for PS4 & PS5
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="020c", MODE="0660", TAG+="uaccess"
|
|
@ -0,0 +1,57 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if [[ ! $1 ]]; then
|
||||||
|
cat <<-END
|
||||||
|
Usage: ${0##*/} enable|disable|status
|
||||||
|
|
||||||
|
Enable or disable read-only on currently booted Btrfs subvolume.
|
||||||
|
END
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $EUID -ne 0 ]]; then
|
||||||
|
printf 'You have to be root to perform this action.\n'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $2 ]]; then
|
||||||
|
printf 'This script only takes a single argument.\n'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $1 == 'enable' ]]; then
|
||||||
|
|
||||||
|
if btrfs property get / 2> /dev/null | grep -q 'ro=true'; then
|
||||||
|
printf 'The root filesystem is already locked.\n'
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf 'Locking the root filesystem...\n'
|
||||||
|
btrfs property set / ro true
|
||||||
|
|
||||||
|
elif [[ $1 == 'disable' ]]; then
|
||||||
|
|
||||||
|
if btrfs property get / 2> /dev/null | grep -q 'ro=false'; then
|
||||||
|
printf 'The root filesystem is already unlocked.\n'
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf 'Unlocking the root filesystem...\n'
|
||||||
|
btrfs property set / ro false &&
|
||||||
|
printf 'The root filesystem has now been unlocked, note that any changes made to it will not be carried over to future OS image updates.\n'
|
||||||
|
|
||||||
|
elif [[ $1 == 'status' ]]; then
|
||||||
|
|
||||||
|
if btrfs property get / 2> /dev/null | grep -q 'ro=true'; then
|
||||||
|
printf 'enabled\n'
|
||||||
|
elif btrfs property get / 2> /dev/null | grep -q 'ro=false'; then
|
||||||
|
printf 'disabled\n'
|
||||||
|
else
|
||||||
|
printf 'unknown\n'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
else
|
||||||
|
printf 'No valid argument provided.\n'
|
||||||
|
exit 1
|
||||||
|
fi
|
|
@ -0,0 +1,31 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if [[ $@ =~ (-r|--root) ]] || [[ $@ == "-Q"* ]] || [[ $@ == "-F"* ]] || [[ $LD_LIBRARY_PATH =~ (libfakeroot) ]]; then
|
||||||
|
no_check=1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! $no_check ]]; then
|
||||||
|
# Elevate permissions to root
|
||||||
|
[[ $EUID -eq 0 ]] || exec sudo bash $0 $@
|
||||||
|
|
||||||
|
# Check if the disk is ro'ed using subvolume properties
|
||||||
|
if btrfs property get / 2> /dev/null | grep -q 'ro=true'; then
|
||||||
|
cat <<- END
|
||||||
|
The root partition is currently in read-only mode, to run pacman it will have to be switched over to read-write mode.
|
||||||
|
|
||||||
|
Note that any changes made to the system will not carry over to future OS image updates.
|
||||||
|
|
||||||
|
END
|
||||||
|
read -p 'Do you want to unlock the root partition? (y/N) ' ans
|
||||||
|
|
||||||
|
if [[ $ans =~ ^(y|Y|yes|YES)$ ]]; then
|
||||||
|
btrfs property set / ro false
|
||||||
|
else
|
||||||
|
printf 'Quitting... no changes have been made to the system.\n'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# No exit statement here, we return pacman's exit code
|
||||||
|
/usr/bin/pacman $@
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/bin/nvim
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/bin/nvim
|
112
arkdep-build.d/test-arkanelinux-znver4/package.list
Normal file
112
arkdep-build.d/test-arkanelinux-znver4/package.list
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
# Can't use the depends package due to different kernel package name
|
||||||
|
arch-install-scripts
|
||||||
|
archiso
|
||||||
|
arkdep
|
||||||
|
bind
|
||||||
|
binutils
|
||||||
|
btrfs-progs
|
||||||
|
debugedit
|
||||||
|
diffutils
|
||||||
|
distrobox
|
||||||
|
dosfstools
|
||||||
|
efibootmgr
|
||||||
|
f2fs-tools
|
||||||
|
fakeroot
|
||||||
|
git
|
||||||
|
glibc-locales
|
||||||
|
libnss-extrausers
|
||||||
|
libva-mesa-driver
|
||||||
|
man-db
|
||||||
|
mesa
|
||||||
|
mesa-vdpau
|
||||||
|
neovim
|
||||||
|
networkmanager
|
||||||
|
openssh
|
||||||
|
pacman-contrib
|
||||||
|
plymouth
|
||||||
|
podman
|
||||||
|
podman-compose
|
||||||
|
pv
|
||||||
|
qemu-guest-agent
|
||||||
|
skel-arkane
|
||||||
|
sof-firmware
|
||||||
|
sudo
|
||||||
|
terminus-font
|
||||||
|
tpm2-tools
|
||||||
|
tpm2-tss
|
||||||
|
tpm2-tss-engine
|
||||||
|
vulkan-intel
|
||||||
|
vulkan-mesa-layers
|
||||||
|
vulkan-nouveau
|
||||||
|
vulkan-radeon
|
||||||
|
wget
|
||||||
|
zsh
|
||||||
|
zsh-autosuggestions
|
||||||
|
zsh-completions
|
||||||
|
zsh-syntax-highlighting
|
||||||
|
|
||||||
|
|
||||||
|
# GNOME
|
||||||
|
evolution-data-server # For gnome-calendar Flatpak
|
||||||
|
gdm
|
||||||
|
gnome-backgrounds
|
||||||
|
gnome-console
|
||||||
|
gnome-control-center
|
||||||
|
gnome-disk-utility
|
||||||
|
gnome-initial-setup
|
||||||
|
gnome-menus
|
||||||
|
gnome-shell
|
||||||
|
gnome-software
|
||||||
|
gnome-system-monitor
|
||||||
|
gnome-tour
|
||||||
|
mutter
|
||||||
|
nautilus
|
||||||
|
|
||||||
|
# GNOME extra
|
||||||
|
bluez
|
||||||
|
bluez-cups
|
||||||
|
bluez-plugins
|
||||||
|
bluez-utils
|
||||||
|
cups
|
||||||
|
cups-pdf
|
||||||
|
flatpak
|
||||||
|
fuse
|
||||||
|
fwupd
|
||||||
|
gst-plugin-pipewire
|
||||||
|
gst-plugins-base
|
||||||
|
gst-plugins-good
|
||||||
|
gvfs
|
||||||
|
gvfs-afc
|
||||||
|
gvfs-dnssd
|
||||||
|
gvfs-dnssd
|
||||||
|
gvfs-goa
|
||||||
|
gvfs-gphoto2
|
||||||
|
gvfs-mtp
|
||||||
|
gvfs-nfs
|
||||||
|
gvfs-smb
|
||||||
|
gvfs-wsdd
|
||||||
|
ibus-typing-booster
|
||||||
|
networkmanager-openconnect
|
||||||
|
networkmanager-openvpn
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-cjk
|
||||||
|
noto-fonts-emoji
|
||||||
|
pipewire
|
||||||
|
pipewire-alsa
|
||||||
|
pipewire-audio
|
||||||
|
pipewire-jack
|
||||||
|
pipewire-pulse
|
||||||
|
power-profiles-daemon
|
||||||
|
spice-vdagent
|
||||||
|
switcheroo-control
|
||||||
|
webp-pixbuf-loader
|
||||||
|
wireplumber
|
||||||
|
xdg-desktop-portal-gnome
|
||||||
|
xdg-user-dirs
|
||||||
|
xdg-utils
|
||||||
|
|
||||||
|
# Arkane Linux
|
||||||
|
arkane-application-cleaner
|
||||||
|
arkane-flatpak-init
|
||||||
|
arkane-wallpapers
|
||||||
|
libnss-extrausers
|
106
arkdep-build.d/test-arkanelinux-znver4/pacman.conf
Normal file
106
arkdep-build.d/test-arkanelinux-znver4/pacman.conf
Normal file
|
@ -0,0 +1,106 @@
|
||||||
|
#
|
||||||
|
# /etc/pacman.conf
|
||||||
|
#
|
||||||
|
# See the pacman.conf(5) manpage for option and repository directives
|
||||||
|
|
||||||
|
#
|
||||||
|
# GENERAL OPTIONS
|
||||||
|
#
|
||||||
|
[options]
|
||||||
|
# The following paths are commented out with their default values listed.
|
||||||
|
# If you wish to use different paths, uncomment and update the paths.
|
||||||
|
#RootDir = /
|
||||||
|
#DBPath = /var/lib/pacman/
|
||||||
|
#CacheDir = /var/cache/pacman/pkg/
|
||||||
|
#LogFile = /var/log/pacman.log
|
||||||
|
#GPGDir = /etc/pacman.d/gnupg/
|
||||||
|
#HookDir = /etc/pacman.d/hooks/
|
||||||
|
HoldPkg = pacman glibc
|
||||||
|
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
|
||||||
|
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||||
|
#CleanMethod = KeepInstalled
|
||||||
|
Architecture = auto x86_64_v4
|
||||||
|
|
||||||
|
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
|
||||||
|
#IgnorePkg =
|
||||||
|
#IgnoreGroup =
|
||||||
|
|
||||||
|
#NoUpgrade =
|
||||||
|
#NoExtract =
|
||||||
|
|
||||||
|
# Misc options
|
||||||
|
#UseSyslog
|
||||||
|
Color
|
||||||
|
#NoProgressBar
|
||||||
|
# We cannot check disk space from within a chroot environment
|
||||||
|
#CheckSpace
|
||||||
|
#VerbosePkgLists
|
||||||
|
ParallelDownloads = 5
|
||||||
|
ILoveCandy
|
||||||
|
|
||||||
|
# By default, pacman accepts packages signed by keys that its local keyring
|
||||||
|
# trusts (see pacman-key and its man page), as well as unsigned packages.
|
||||||
|
SigLevel = Required DatabaseOptional
|
||||||
|
LocalFileSigLevel = Optional
|
||||||
|
#RemoteFileSigLevel = Required
|
||||||
|
|
||||||
|
# NOTE: You must run `pacman-key --init` before first using pacman; the local
|
||||||
|
# keyring can then be populated with the keys of all official Arch Linux
|
||||||
|
# packagers with `pacman-key --populate archlinux`.
|
||||||
|
|
||||||
|
#
|
||||||
|
# REPOSITORIES
|
||||||
|
# - can be defined here or included from another file
|
||||||
|
# - pacman will search repositories in the order defined here
|
||||||
|
# - local/custom mirrors can be added here or in separate files
|
||||||
|
# - repositories listed first will take precedence when packages
|
||||||
|
# have identical names, regardless of version number
|
||||||
|
# - URLs will have $repo replaced by the name of the current repo
|
||||||
|
# - URLs will have $arch replaced by the name of the architecture
|
||||||
|
#
|
||||||
|
# Repository entries are of the format:
|
||||||
|
# [repo-name]
|
||||||
|
# Server = ServerName
|
||||||
|
# Include = IncludePath
|
||||||
|
#
|
||||||
|
# The header [repo-name] is crucial - it must be present and
|
||||||
|
# uncommented to enable the repo.
|
||||||
|
#
|
||||||
|
|
||||||
|
# The testing repositories are disabled by default. To enable, uncomment the
|
||||||
|
# repo name header and Include lines. You can add preferred servers immediately
|
||||||
|
# after the header, and they will be used before the default mirrors.
|
||||||
|
|
||||||
|
[arkane]
|
||||||
|
Server = https://repo.arkanelinux.org/$repo/os/$arch
|
||||||
|
|
||||||
|
[arkane-cauldron]
|
||||||
|
Server = https://repo.arkanelinux.org/$repo/os/$arch
|
||||||
|
|
||||||
|
[cachyos-znver4]
|
||||||
|
Server = https://nl-ams.soulharsh007.dev/repo/$arch_v4/$repo
|
||||||
|
SigLevel = Never
|
||||||
|
|
||||||
|
[cachyos-core-znver4]
|
||||||
|
Server = https://nl-ams.soulharsh007.dev/repo/$arch_v4/$repo
|
||||||
|
SigLevel = Never
|
||||||
|
|
||||||
|
[cachyos-extra-znver4]
|
||||||
|
Server = https://nl-ams.soulharsh007.dev/repo/$arch_v4/$repo
|
||||||
|
SigLevel = Never
|
||||||
|
|
||||||
|
[cachyos]
|
||||||
|
Server = https://nl-ams.soulharsh007.dev/repo/$arch/$repo
|
||||||
|
SigLevel = Never
|
||||||
|
|
||||||
|
[core]
|
||||||
|
Server = https://mirror.cj2.nl/archlinux/$repo/os/$arch
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
Server = https://mirror.cj2.nl/archlinux/$repo/os/$arch
|
||||||
|
|
||||||
|
# An example of a custom package repository. See the pacman manpage for
|
||||||
|
# tips on creating your own repositories.
|
||||||
|
#[custom]
|
||||||
|
#SigLevel = Optional TrustAll
|
||||||
|
#Server = file:///home/custompkgs
|
1
arkdep-build.d/test-arkanelinux-znver4/type
Normal file
1
arkdep-build.d/test-arkanelinux-znver4/type
Normal file
|
@ -0,0 +1 @@
|
||||||
|
archlinux
|
5
arkdep-build.d/test-arkanelinux-znver4/update.sh
Normal file
5
arkdep-build.d/test-arkanelinux-znver4/update.sh
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# Arkdep is pre EFI var drop version
|
||||||
|
if [[ -f $arkdep_boot/loader/entries/${data[0]}.conf ]]; then
|
||||||
|
mv $arkdep_boot/loader/entries/${data[0]}.conf $arkdep_boot/loader/entries/$(date +%Y%m%d-%H%M%S)-${data[0]}+3.conf
|
||||||
|
bootctl set-default ''
|
||||||
|
fi
|
Loading…
Add table
Reference in a new issue