Files
docs/src/content/docs/dev/environment.md
Naomi Carrigan 90de31a17d
Some checks failed
Node.js CI / Lint and Test (push) Successful in 1m17s
Code Analysis / SonarQube (push) Failing after 1m16s
chore: system updoot
2025-04-05 13:11:36 -07:00

4090 lines
98 KiB
Markdown

---
title: Development Environment
---
This page documents Naomi's local development environment. The information here is provided to allow contributors to mirror the environment as closely as possible, ensuring the smoothest developer experience.
## 1. System Information
Naomi's local environment runs on the Arch Linux kernel.
### 1.1. `hyfetch`
This is the current diagnostic report from `hyfetch`.
```bash title="hyfetch"
naomi@technomancer
------------------
OS: Arch Linux x86_64
├─Kernel: 6.13.8-arch1-1
├─Locale: en_GB.UTF-8
├─Shell: /usr/bin/zsh 5.9
├─WM: sway version 1.10.1
├─Terminal: ghostty
Host: MS-7B86 4.0
├─CPU: AMD Ryzen 5 3600X (12) @ 3.8GHz [08.8°on]
├─GPU: NVIDIA GeForce GTX 1070 Ti
├───GPU Driver: NVIDIA 570.133.07
├─Disk: /home: 330G/412G (85%)
├───Root: /: 36G/45G (84%)
├───Boot: /boot: 465M/1022M (46%)
└─Memory: 10.83GiB / 31.29GiB (34%)
Programming Languages
---------------------
Bash: 5.2.37(1)-release
Clang: 19.1.7
C++: 14.2.1
Dart
└─Flutter: failed
Dotnet: 9.0.104
└─C-sharp Compiler: 3.9.0-6.21124.20
Go: 1.24.2
Haskell: 9.2.8
└─Cabal: 3.6.2.0
Java: version
├─Gradle: 8.13
└─Kotlin: 2.1.20-release-217
Lua: 5.4.7
PHP: 8.4.5
Python: 3.13.2
└─PIP: 25.0.1
Node: v23.9.0
├─NPM: 11.2.0
├─Yarn: 1.22.22
└─PNPM: 10.7.1
Ruby: 3.3.7
Rust: 1.80.1
├─Rustup: 1.27.1
└─Cargo: 1.80.1
TypeScript: 5.8.2
Zig: 0.13.0
Databases
---------
MongoDB: v8.0.4
└─Mongo Shell: v8.0.4
MySQL: 9.2.0
PostgreSQL: 17.4
SQlite: 3.49.1
Tools
-----
Browser: Zen 1.11b
Editor: Emacs 30.1
└─Nano: 8.3
```
## 2. Packages
Naomi uses the following packages.
### 2.1. Foreign Packages
These packages come from unofficial repositories, such as the AUR. This list is generated with `yay -Qm`.
<details>
<summary>Expand List</summary>
```txt frame="terminal" title="yay -Qm"
1password-cli 2.30.3-1
amor 15.08.3-11
amor-debug 15.08.3-11
angular-cli 19.2.5-1
apg 2.2.3-5
asciiquarium-transparent-git r24.cfe288e-1
aws-cli-v2-bin 2:2.22.15-1
cal3d 0.11.0-7
cal3d-debug 0.11.0-7
cbonsai 1.3.1-3
ccze 0.2.1-13
chafa-git 1.14.5.r112.g9aa862e-1
ckb-next-debug 0.6.0-1
crowdin-cli 4.7.0-1
dependency-check-cli 12.1.0-1
dreamweb 1.1-1
electron25-bin 25.9.8-3
espanso-gui 24.7-1
espanso-wayland 2.2.1-4
eternallands 1.9.7.0-0
eternallands-debug 1.9.7.0-0
faudio 25.04-1
faudio-debug 25.04-1
flyctl 0.3.98-1
flyctl-debug 0.3.98-1
freetube-bin 0.23.3-1
freetube-nightly-debug 0.23.2_nightly_5764-1
ghostty-git 1.1.2.r307.ge07b6fd-1
ghostty-git-debug 1.1.2.r307.ge07b6fd-1
google-chat-linux-bin 5.29.23-1
google-chat-linux-bin-debug 5.29.23-1
gpu-usage-waybar-git 0.1.12.r17.g61ebe61-1
grimshot 1.10-1
gwenview-no-purpose 24.12.3-1
gwenview-no-purpose-debug 24.12.3-1
hollywood 1.21-7
insomnium 0.2.3_a-8
lib32-sdl2-debug 2.30.11-2
libelectron 2025.3-1
libelectron-debug 2025.3-1
libretro-beetle-psx-git 2747.80d3eba2-1
libretro-beetle-psx-git-debug 2747.80d3eba2-1
librewolf-bin 1:136.0.4_1-1
librewolf-bin-debug 1:136.0.4_1-1
libscanmem-git 0.17.1103.0def8b2-1
lrexlib-pcre5.1 2.9.0-2
lua-yajl 2.0-2
lua51-lcf 5.1-3
lua51-sql-sqlite 2.3.0-4
luazip5.1 1.2.7-1
mommy 1.6.0-1
mongodb-tools-bin 100.10.0-3
mongosh-bin 2.4.2-1
mongosh-bin-debug 2.4.2-1
moosync-debug 11.0.1-2
mpris-discord-rpc 0.2.2-1
mpris-discord-rpc-debug 0.2.2-1
neverwinter.nim-bin 2.0.1-1
nodejs-http-server 14.1.1-1
notepad++ 8.7.6-1
noto-fonts-emoji-flags 20200120-1
obs-retro-effects 1.0.0-1
obs-retro-effects-debug 1.0.0-1
obs-studio-liberty 31.0.3-1
obs-studio-liberty-debug 31.0.3-1
openlinkhub-bin-debug 0.5.1-4
openssl-1.0 1.0.2.u-6
otf-compagnon 1.000-1
pince 0.4.2-1
pince-debug 0.4.2-1
pipes.sh 1.3.0-1
play.it-git 2.29.1.r1.g03ba243f-1
proton-ge-custom 2:GE.Proton9.23-1
python-eyed3 0.9.7-3
python-keyboard 0.13.5-2
redact-bin 0.18.0-1
renovate-git-debug 39.83.2.r0.g68c05cf-1
resonance 0.1.3-1
resonance-debug 0.1.3-1
roam 155.0.0.beta001-1
samrewritten-git r261.cac0291-1
samrewritten-git-debug r261.cac0291-1
sdl2-debug 2.30.11-2
shellspec 0.28.1-3
slack-cli 3.0.0-0
slack-cli-debug 3.0.0-0
sonar-scanner 7.0.2.4839-1
spacecadetpinball-bin 2.1.0-2
spacecadetpinball-bin-debug 2.1.0-2
speedometer 2.9-3
theia-bin 1.58.100-1
ttf-joypixels 8.0.0-2
vercel 39.2.2-1
vercel-debug 39.2.2-1
vsce 3.2.2-2
vsce-debug 3.2.2-2
wofi-emoji 1.2-3
wscat 5.2.0-2
wxhexeditor 0.24-4
```
</details>
### 2.2. Explicit Installations
These are all of the packages Naomi has specifically installed. This list is generated with `yay -Qe`.
<details>
<summary>Expand List</summary>
```txt frame="terminal" title="yay -Qe"
1password 8.10.70-26
1password-cli 2.30.3-1
7zip 24.09-3
act 0.2.76-1
activitywatch-bin 0.13.2-1
alacarte 1:3.54.1-1
alacritty 0.15.1-1
alsa-utils 1.2.13-2
amberol 2024.2-1
amd-ucode 20250311.b69d4b74-3
amor 15.08.3-11
angular-cli 19.2.5-1
anime-games-launcher-bin 1.0.2-1
appimagelauncher 2.2.0-9
asciiquarium-transparent-git r24.cfe288e-1
aspell 0.60.8.1-2
aws-cli-v2-bin 2:2.22.15-1
baobab 48.0-1
base 3-2
base-devel 1-2
bind 9.20.7-1
brave-bin 1:1.77.95-1
btop 1.4.0-5
cabal-install 3.6.2.0-66
calc 2.15.1.0-1
cbonsai 1.3.1-3
ccls 0.20241108-1
chafa-git 1.14.5.r112.g9aa862e-1
chaotic-keyring 20230616-1
chaotic-mirrorlist 20240724-3
cheese 44.1-3
cinny-desktop 4.6.0-1
cliphist 1:0.6.1-1
cloc 2.04-1
cloudflared 2025.2.1-1
cmake 4.0.0-1
cmatrix 2.0-3
crowdin-cli 4.7.0-1
dependency-check-cli 12.1.0-1
discord 0.0.90-1
dkms 3.1.6-1
doctl 1.124.0-1
dolphin 24.12.3-1
dosbox-x 2025.02.01-1
dosfstools 4.2-5
dotnet-runtime-8.0 8.0.14.sdk114-1
dotnet-sdk 9.0.3.sdk104-1
dotnet-sdk-8.0 8.0.14.sdk114-1
dotnet-targeting-pack-8.0 8.0.14.sdk114-1
downgrade 11.5.1-1
dpkg 1.22.18-1
dreamweb 1.1-1
duckstation 0.1.7465-1.5
dunst 1.12.2-1
efibootmgr 18-3
elisa 24.12.3-1
emacs 30.1-4
espanso-gui 24.7-1
espanso-wayland 2.2.1-4
eternallands 1.9.7.0-0
eza 0.21.0-1
firefox 137.0-1
flameshot 12.1.0-6
flatpak-builder 1.4.4-1
fluffychat 1.25.1-1
flyctl 0.3.98-1
freetube-bin 0.23.3-1
gameconqueror 0.17-10
ghc 9.2.8-1
ghostty-git 1.1.2.r307.ge07b6fd-1
gimp 3.0.2-2
git 2.49.0-1
github-cli 2.69.0-1
gitleaks 8.24.0-1
gnome-clocks 48.0-1
gnome-keyring 1:48.0-1
gnu-netcat 0.7.1-10
google-chat-linux-bin 5.29.23-1
google-chrome 135.0.7049.52-1
gpu-usage-waybar-git 0.1.12.r17.g61ebe61-1
gradle 8.13-1
grim 1.4.1-3
grimshot 1.10-1
grype-bin 0.90.0-1
gst-plugin-pipewire 1:1.4.1-1
gwenview-no-purpose 24.12.3-1
hexchat 2.16.2-4
hexedit 1.6-2
hollywood 1.21-7
htop 3.4.0-1
hunspell-en_gb 2020.12.07-5
hyfetch 1.99.0-2
icoutils 0.32.3-3
id3v2 0.1.12-7
inetutils 2.5-1
innoextract 1.9-12
insomnium 0.2.3_a-8
iwd 3.6-1
joyutils 1.8.1-3
kazam 1.4.5-9.8
kdenlive 24.12.3-1
kitty 0.41.1-1
kotlin 2.1.20-1
lazygit 0.48.0-1
lib32-gnutls 3.8.9-1
lib32-libpulse 17.0+r43+g3e2bb8a1e-1
lib32-openal 1.24.3-1
libgnome-keyring 1:3.12.0+r14+g23438cc-1
libpulse 17.0+r43+g3e2bb8a1e-1
libqalculate 5.5.2-1
libredefender 0.7.0-2
libreoffice-fresh 25.2.2-1
libretro-beetle-psx-git 2747.80d3eba2-1
libretro-core-info 1.20.0-1
libretro-genesis-plus-gx 2216-1
libretro-mesen 2904-1
libretro-mesen-s 916-4
libretro-mgba 9298-2
libretro-picodrive 2686-1
libretro-sameboy 1720-3
libretro-shaders-slang 1648-1
librewolf-bin 1:136.0.4_1-1
libscanmem-git 0.17.1103.0def8b2-1
linux 6.13.8.arch1-1
linux-firmware 20250311.b69d4b74-3
linux-headers 6.13.8.arch1-1
lrzip 0.651-3
luanti 5.11.0-1
lutris 0.5.19-2
lynx 2.9.2-1
man-db 2.13.0-1
mari0 1.6.2-5
mommy 1.6.0-1
mongodb 8.0.4-1
mongodb-tools-bin 100.10.0-3
mongosh-bin 2.4.2-1
mpris-discord-rpc 0.2.2-1
mysql 9.2.0-1
nano 8.3-1
nasm 2.16.03-1
ncurses5-compat-libs 6.5-1.1
neofetch 7.1.0-2
net-tools 2.10-3
network-manager-applet 1.36.0-1
networkmanager 1.52.0-1
neverwinter.nim-bin 2.0.1-1
nmap 7.95-1
nodejs-http-server 14.1.1-1
nodejs-nativefier 52.0.0-1
notepad++ 8.7.6-1
notepadnext 0.11-1
noto-fonts 1:2025.04.01-1
noto-fonts-cjk 20240730-1
noto-fonts-emoji 1:2.047-1
noto-fonts-emoji-flags 20200120-1
npm-check-updates 17.1.15-1
nvidia-dkms 570.133.07-1
nvtop 3.2.0-1
obs-retro-effects 1.0.0-1
obs-studio-liberty 31.0.3-1
odilia 0.1.4-1
oneko 1.2.5-5.1
opendoas 6.8.2-3
openrgb 0.9-4
orca 48.0-1
otf-compagnon 1.000-1
otf-font-awesome 6.7.2-1
otf-opendyslexic-nerd 3.3.0-1
pavucontrol 1:6.1-1
pcsx2-avx-git 2.3.256.r0.g4b88a29-1
perl-archive-zip 1.68-10
perl-image-exiftool 13.25-1
perl-net-telnet 3.05-6
php 8.4.5-1
picom-git 12.5.r92.gb995372-1
pince 0.4.2-1
pipes.sh 1.3.0-1
pipewire 1:1.4.1-1
pipewire-alsa 1:1.4.1-1
pipewire-jack 1:1.4.1-1
pipewire-pulse 1:1.4.1-1
pnpm 10.7.1-1
pokemon-colorscripts-git r114.5802ff67-1
polkit-gnome 0.105-11
polkit-kde-agent 6.3.4-1
postgresql 17.4-1
proton-ge-custom 2:GE.Proton9.23-1
proton-vpn-gtk-app 4.9.5-1
pyright 1.1.398-1
python-eyed3 0.9.7-3
python-pipenv 2024.4.1-1
python-pipx 1.7.1-2
python-pyquery 2.0.1-1
python-virtualenv 20.28.0-1
qbittorrent 5.0.4-3
qt5-wayland 5.15.16+kde+r60-1
qt6-wayland 6.9.0-1
quodlibet 4.6.0-5
redact-bin 0.18.0-1
reflector 2023-3
resonance 0.1.3-1
retroarch 1.20.0-2
retroarch-assets-xmb 1:528-1
roam 155.0.0.beta001-1
rofimoji 6.5.0-2
rpm-tools 4.20.1-1
rsync 3.4.1-2
ruby 3.3.7-2
samrewritten-git r261.cac0291-1
scanmem 0.17-10
scrcpy 3.2-1
sddm 0.21.0-6
ser2net 4.6.2-1
signal-desktop 7.49.0-1
slack-cli 3.0.0-0
slack-desktop 4.43.43-1
slurp 1.5.0-1
smartmontools 7.4-2
sonar-scanner 7.0.2.4839-1
spacecadetpinball-bin 2.1.0-2
speedtest-cli 2.1.3-9
spotdl 4.2.11-1
spotify 1:1.2.59.514-1
squashfs-tools 4.6.1-2
starship 1.22.1-1
steam 1.0.0.82-2
strace 6.14-1
sublime-text-4 4.4192-1
swappy 1.5.1-2
sway 1:1.10.1-2
swaybg 1.2.1-1
swayidle 1.8.0-2
swaylock-effects 1.7.0.0-4.4
syft 1.20.0-1
tailscale 1.82.0-1
thefuck 3.32-11
theia-bin 1.58.100-1
thunar 4.20.2-1
thunderbird 137.0-1
tk 8.6.16-1
transmission-cli 4.0.6-9
trayscale 0.14.2-1
trivy 0.61.0-1
ttf-firacode-nerd 3.3.0-1
ttf-font-awesome 6.7.2-1
ttf-jetbrains-mono-nerd 3.3.0-1
ttf-joypixels 8.0.0-2
ttf-symbola 14.00-2
ttf-twemoji 15.1.0-1
typescript 5.8.2-1
typescript-language-server 4.3.3-1
unrar 1:7.1.6-1
v4l2loopback-dkms 0.14.0-1
valgrind 3.24.0-3
vercel 39.2.2-1
vi 1:070224-6
vim 9.1.1236-1
vosk-api 0.3.50-5
vsce 3.2.2-2
vscodium 1.99.02289-1
vscodium-marketplace 1.97.0-1
w3m 0.5.3.git20230713_1-1
waybar 0.12.0-1
waybar-module-pacman-updates-git 0.2.7-1
webcamoid 9.2.3-1.5
websocat 1.14.0-1
wev 1.0.0-13
wget 1.25.0-2
whatsapp-for-linux 1.7.0-1.3
wine 10.4-1
wireless_tools 30.pre9-4
wireplumber 0.5.8-1
wlogout 1.2.2-0.3
wofi 1.4.1-1
wofi-emoji 1.2-3
wscat 5.2.0-2
wxhexeditor 0.24-4
xclip 0.13-6
xdg-desktop-portal-hyprland 1.3.9-5
xdg-desktop-portal-wlr 0.7.1-1
xdg-utils 1.2.1-1
xorg-server 21.1.16-1
xorg-xcursorgen 1.0.8-2
xorg-xhost 1.0.10-1
xorg-xinit 1.4.4-1
yamllint 1.37.0-1
yay 12.4.2-1.1
zen-browser-bin 1.11b-2
zig 0.13.0-2
zoom 6.4.3-1
zsh 5.9-5
```
</details>
### 2.3. Pinned Packages
These packages have updates ignored, due to incompatibility issues. This list is generated with `grep "^IgnorePkg" /etc/pacman.conf`.
```ini frame="code" title="pacman.conf"
IgnorePkg =
```
### 2.4. All Packages
This is a complete list of all packages on the machine. This list is generated with `yay -Q`.
:::caution
This list is quite large.
:::
<details>
<summary>Expand List</summary>
```txt frame="terminal" title="yay -Q"
1password 8.10.70-26
1password-cli 2.30.3-1
7zip 24.09-3
a52dec 0.8.0-2
aalib 1.4rc5-18
abseil-cpp 20250127.1-1
accounts-qml-module 0.7-6
acl 2.3.2-1
act 0.2.76-1
activitywatch-bin 0.13.2-1
adobe-source-code-pro-fonts 2.042u+1.062i+1.026vf-2
adwaita-cursors 48.0-1
adwaita-fonts 48.2-1
adwaita-icon-theme 48.0-1
adwaita-icon-theme-legacy 46.2-3
alacarte 1:3.54.1-1
alacritty 0.15.1-1
alsa-card-profiles 1:1.4.1-1
alsa-lib 1.2.13-1
alsa-plugins 1:1.2.12-4
alsa-topology-conf 1.2.5.1-4
alsa-ucm-conf 1.2.13-2
alsa-utils 1.2.13-2
amberol 2024.2-1
amd-ucode 20250311.b69d4b74-3
amor 15.08.3-11
amor-debug 15.08.3-11
android-tools 35.0.2-14
android-udev 20250314-1
angular-cli 19.2.5-1
anime-games-launcher-bin 1.0.2-1
aom 3.12.0-1
apg 2.2.3-5
appimagelauncher 2.2.0-9
appmenu-gtk-module 24.05-1
appstream 1.0.4-1
appstream-glib 0.8.3-2
aquamarine 0.8.0-1
archlinux-keyring 20250123-1
argon2 20190702-6
aribb24 1.0.3-4
asciiquarium-transparent-git r24.cfe288e-1
aspell 0.60.8.1-2
at-spi2-core 2.56.1-1
atkmm 2.28.4-1
attica 6.12.0-1
attr 2.5.2-1
audit 4.0.3-1
autoconf 2.72-1
automake 1.17-1
avahi 1:0.8+r194+g3f79789-3
aws-cli-v2-bin 2:2.22.15-1
ayatana-ido 0.10.4-1
babl 0.1.112-1
baloo 6.12.0-1
baloo-widgets 24.12.3-1
baobab 48.0-1
base 3-2
base-devel 1-2
bash 5.2.037-2
bind 9.20.7-1
binutils 2.44-1
bison 3.8.2-8
blas 3.12.1-2
bluez-libs 5.82-1
bmon 4.0-5
boost 1.87.0-3
boost-libs 1.87.0-3
botan2 2.19.5-2
brave-bin 1:1.77.95-1
breeze-icons 6.12.0-1
breezy 3.3.9-4
bridge-utils 1.7.1-2
brltty 6.7-5
brotli 1.1.0-3
btop 1.4.0-5
bubblewrap 0.11.0-1
byobu 6.12-1
bzip2 1.0.8-6
c-ares 1.34.4-1
ca-certificates 20240618-1
ca-certificates-mozilla 3.110-1
ca-certificates-utils 20240618-1
cabal-install 3.6.2.0-66
cabextract 1.11-2
cairo 1.18.4-1
cairomm 1.14.5-1
cairomm-1.16 1.18.0-1
cal3d 0.11.0-7
cal3d-debug 0.11.0-7
calc 2.15.1.0-1
cantarell-fonts 1:0.303.1-2
capstone 5.0.6-1
cbindgen 0.28.0-1
cblas 3.12.1-2
cbonsai 1.3.1-3
ccls 0.20241108-1
ccze 0.2.1-13
cdparanoia 10.2-9
cfitsio 1:4.6.2-1
chafa-git 1.14.5.r112.g9aa862e-1
chaotic-keyring 20230616-1
chaotic-mirrorlist 20240724-3
cheese 44.1-3
chromaprint 1.5.1-10
cifs-utils 7.3-1
cinny-desktop 4.6.0-1
cjson 1.7.18-1
ckb-next-debug 0.6.0-1
clamav 1.4.2-1
clang 19.1.7-1
clang18 18.1.8-1
cliphist 1:0.6.1-1
cloc 2.04-1
cloudflared 2025.2.1-1
clucene 2.3.3.4-16
clutter 1.26.4-3
clutter-gst 3.0.27-5
clutter-gtk 1.8.4-4
cmake 4.0.0-1
cmatrix 2.0-3
cogl 1.22.8-3
colord 1.4.7-2
compiler-rt 19.1.7-1
compiler-rt18 18.1.8-1
composefs 1.0.7-1
confuse 3.3-4
containerd 2.0.4-1
convertlit 1.8-12
coreutils 9.6-4
cpio 2.15-2
cppdap 1.58.0-2
crowdin-cli 4.7.0-1
cryptsetup 2.7.5-2
curl 8.13.0-1
dav1d 1.5.1-1
db5.3 5.3.28-5
dbus 1.16.2-1
dbus-broker 36-4
dbus-broker-units 36-4
dbus-glib 0.114-1
dconf 0.40.0-3
debugedit 5.1-1
debuginfod 0.192-4
default-cursors 3-1
deno 2.2.3-1
dependency-check-cli 12.1.0-1
desktop-file-utils 0.28-1
device-mapper 2.03.31-1
diffutils 3.11-2
discord 0.0.90-1
dkms 3.1.6-1
dnssec-anchors 20190629-4
docbook-xml 4.5-10
docbook-xsl 1.79.2-9
doctl 1.124.0-1
dolphin 24.12.3-1
dosbox-x 2025.02.01-1
dosfstools 4.2-5
dotconf 1.4.1-1
dotnet-host 9.0.3.sdk104-1
dotnet-runtime 9.0.3.sdk104-1
dotnet-runtime-8.0 8.0.14.sdk114-1
dotnet-sdk 9.0.3.sdk104-1
dotnet-sdk-8.0 8.0.14.sdk114-1
dotnet-targeting-pack 9.0.3.sdk104-1
dotnet-targeting-pack-8.0 8.0.14.sdk114-1
double-conversion 3.3.1-1
downgrade 11.5.1-1
dpkg 1.22.18-1
dreamweb 1.1-1
duckstation 0.1.7465-1.5
duktape 2.7.0-7
dunst 1.12.2-1
e2fsprogs 1.47.2-2
ebook-tools 0.2.2-8
efibootmgr 18-3
efivar 39-1
egl-gbm 1.1.2.1-1
egl-wayland 4:1.1.18-1
egl-x11 1.0.0-1
eglexternalplatform 1.2-2
electron25-bin 25.9.8-3
electron32 32.3.1-3
electron34 34.5.0-2
elfutils 0.192-4
elisa 24.12.3-1
ell 0.75-1
emacs 30.1-4
enchant 2.8.2-2
enet 1.3.18-1
espanso-gui 24.7-1
espanso-wayland 2.2.1-4
eternallands 1.9.7.0-0
eternallands-debug 1.9.7.0-0
exiv2 0.28.5-1
exo 4.20.0-2
expat 2.7.1-1
extra-cmake-modules 6.12.0-1
eza 0.21.0-1
faac 1.31.1-1
faad2 2.11.2-1
fakeroot 1.37.1.1-1
faudio 25.04-1
faudio-debug 25.04-1
feh 3.10.3-1
ffmpeg 2:7.1-9
ffmpeg4.4 4.4.5-3
fftw 3.3.10-7
file 5.46-4
filesystem 2024.11.21-1
findutils 4.10.0-2
firefox 137.0-1
flac 1.5.0-1
flameshot 12.1.0-6
flatbuffers 25.2.10-1
flatpak 1:1.16.0-2
flatpak-builder 1.4.4-1
flex 2.6.4-5
fluffychat 1.25.1-1
fluidsynth 2.4.4-1
flutter-bin 3.29.2-1
flyctl 0.3.98-1
flyctl-debug 0.3.98-1
fmt 11.1.4-1
fontconfig 2:2.16.1-1
freeglut 3.6.0-1
freetube-bin 0.23.3-1
freetube-nightly-debug 0.23.2_nightly_5764-1
freetype2 2.13.3-3
frei0r-plugins 2.3.3-3
fribidi 1.0.16-1
fuse-common 3.17.1-1
fuse-overlayfs 1.14-2
fuse2 2.9.9-5
fuse3 3.17.1-1
fzf 0.60.3-1
gameconqueror 0.17-10
gawk 5.3.2-1
gc 8.2.8-2
gcc 14.2.1+r753+g1cd744a6828f-1
gcc-libs 14.2.1+r753+g1cd744a6828f-1
gcr 3.41.2-2
gcr-4 4.4.0.1-1
gd 2.3.3-8
gdb 16.2-1
gdb-common 16.2-1
gdbm 1.25-1
gdk-pixbuf2 2.42.12-2
gegl 0.4.58-1
gensio 2.8.10-1
geoclue 2.7.2-1
geocode-glib-2 3.26.4-4
geocode-glib-common 3.26.4-4
gettext 0.24-1
ghc 9.2.8-1
ghc-libs 9.2.8-1
ghostty-git 1.1.2.r307.ge07b6fd-1
ghostty-git-debug 1.1.2.r307.ge07b6fd-1
giflib 5.2.2-1
gimp 3.0.2-2
git 2.49.0-1
git-lfs 3.6.1-1
github-cli 2.69.0-1
gitleaks 8.24.0-1
glew 2.2.0-7
glew1.10 1.10.0-4
glib-networking 1:2.80.1-1
glib2 2.84.1-1
glibc 2.41+r9+ga900dbaf70f0-1
glibmm 2.66.8-1
glibmm-2.68 2.84.0-1
gloox 1.0.28-1
glslang 15.2.0-2
glu 9.0.3-2
gmp 6.3.0-2
gnome-clocks 48.0-1
gnome-desktop 1:44.1-1
gnome-desktop-4 1:44.1-1
gnome-desktop-common 1:44.1-1
gnome-keyring 1:48.0-1
gnome-menus 3.36.0-3
gnome-video-effects 1:0.6.0-2
gnu-free-fonts 20120503-8
gnu-netcat 0.7.1-10
gnulib-l10n 20241231-1
gnupg 2.4.7-1
gnutls 3.8.9-1
go 2:1.24.2-1
gobject-introspection 1.84.0-1
gobject-introspection-runtime 1.84.0-1
google-chat-linux-bin 5.29.23-1
google-chat-linux-bin-debug 5.29.23-1
google-chrome 135.0.7049.52-1
gperftools 2.16-1
gpgme 1.24.2-1
gpm 1.20.7.r38.ge82d1a6-6
gpu-usage-waybar-git 0.1.12.r17.g61ebe61-1
gradle 8.13-1
graphene 1.10.8-2
graphite 1:1.3.14-4
grep 3.11-1
grim 1.4.1-3
grimshot 1.10-1
groff 1.23.0-7
grype-bin 0.90.0-1
gsettings-desktop-schemas 48.0-1
gsettings-system-schemas 48.0-1
gsfonts 20200910-4
gsm 1.0.22-2
gspell 1.14.0-2
gssdp 1.6.3-2
gst-libav 1.26.0-3
gst-plugin-pipewire 1:1.4.1-1
gst-plugins-bad 1.26.0-3
gst-plugins-bad-libs 1.26.0-3
gst-plugins-base 1.26.0-3
gst-plugins-base-libs 1.26.0-3
gst-plugins-good 1.26.0-3
gst-plugins-ugly 1.26.0-3
gstreamer 1.26.0-3
gtest 1.16.0-2
gtk-layer-shell 0.9.0-1
gtk-update-icon-cache 1:4.18.3-1
gtk2 2.24.33-5
gtk3 1:3.24.49-1
gtk4 1:4.18.3-1
gtkmm-4.0 4.18.0-2
gtkmm3 3.24.10-1
gtksourceview3 1:3.24.11+r28+g73e57b57-2
guile 3.0.10-1
gulp 5.0.0-1
gupnp 1:1.6.8-1
gupnp-igd 1.6.0-1
gvfs 1.57.2-2
gwenview-no-purpose 24.12.3-1
gwenview-no-purpose-debug 24.12.3-1
gzip 1.13-4
harfbuzz 11.0.0-1
harfbuzz-icu 11.0.0-1
haskell-async 2.2.5-71
haskell-base-orphans 0.8.8.2-43
haskell-base16-bytestring 1.0.2.0-95
haskell-base64-bytestring 1.2.1.0-119
haskell-cryptohash-sha256 0.11.102.1-106
haskell-data-array-byte 0.1.0.1-84
haskell-echo 0.1.4-5
haskell-ed25519 0.0.5.0-25
haskell-edit-distance 0.2.2.1-222
haskell-ghc-bignum-orphans 0.1.1-2
haskell-hackage-security 0.6.2.6-22
haskell-hashable 1.4.4.0-53
haskell-http 4000.4.1-240
haskell-lukko 0.1.1.3-207
haskell-network 3.1.4.0-35
haskell-network-uri 2.6.4.2-46
haskell-os-string 2.0.7-10
haskell-random 1.2.1.2-52
haskell-regex-base 0.94.0.3-1
haskell-regex-posix 0.96.0.2-1
haskell-resolv 0.2.0.2-216
haskell-splitmix 0.1.0.5-53
haskell-tar 0.5.1.1-187
haskell-th-compat 0.1.5-17
haskell-zlib 0.6.3.0-75
hexchat 2.16.2-4
hexedit 1.6-2
hicolor-icon-theme 0.18-1
hidapi 0.14.0-3
highway 1.2.0-1
hollywood 1.21-7
htop 3.4.0-1
http-parser 2.9.4-2
hunspell 1.7.2-2
hunspell-en_gb 2020.12.07-5
hwdata 0.394-1
hyfetch 1.99.0-2
hyphen 2.8.8-6
hyprcursor 0.1.12-1
hyprgraphics 0.1.2-1
hyprland-qt-support 0.1.0-4
hyprland-qtutils 0.1.3-4
hyprlang 0.6.0-5
hyprutils 0.5.2-1
hyprwayland-scanner 0.4.4-1
i2c-tools 4.4-2
iana-etc 20250328-1
icoutils 0.32.3-3
icu 76.1-1
id3lib 3.8.3-19
id3v2 0.1.12-7
imagemagick 7.1.1.47-1
imake 1.0.10-2
imath 3.1.12-3
imlib2 1.12.4-1
inetutils 2.5-1
innoextract 1.9-12
insomnium 0.2.3_a-8
intltool 0.51.0-6
iproute2 6.14.0-1
iptables 1:1.8.11-2
iputils 20240905-1
iso-codes 4.17.0-1
iwd 3.6-1
jansson 2.14.1-1
jasper 4.2.5-1
java-environment-common 3-6
java-runtime-common 3-6
jbigkit 2.1-8
jdk17-openjdk 17.0.14.u7-1
jdk21-openjdk 21.0.6.u7-1
jemalloc 1:5.3.0-5
joyutils 1.8.1-3
jp2a 1.3.2-1
jq 1.7.1-2
json-c 0.18-1
json-glib 1.10.6-1
jsoncpp 1.9.6-3
kaccounts-integration 24.12.3-1
karchive 6.12.0-1
karchive5 5.116.0-1
kauth 6.12.0-1
kauth5 5.116.0-1
kazam 1.4.5-9.8
kbd 2.7.1-2
kbookmarks 6.12.0-1
kcmutils 6.12.0-1
kcodecs 6.12.0-1
kcodecs5 5.116.0-1
kcolorpicker 0.3.1-4
kcolorscheme 6.12.0-1
kcompletion 6.12.0-1
kconfig 6.12.0-1
kconfig5 5.116.0-1
kconfigwidgets 6.12.0-1
kconfigwidgets5 5.116.0-1
kcoreaddons 6.12.0-2
kcoreaddons5 5.116.0-1
kcrash 6.12.0-1
kdbusaddons 6.12.0-1
kdbusaddons5 5.116.0-1
kddockwidgets-qt6 2.2.2-2.1
kdenlive 24.12.3-1
kdnssd 6.12.0-1
kdoctools5 5.116.0-1
kdsoap-qt6 2.2.0-1
kdsoap-ws-discovery-client 0.4.0-1
keystone 0.9.2-7
keyutils 1.6.3-3
kfilemetadata 6.12.0-1
kglobalaccel 6.12.0-1
kglobalaccel5 5.116.0-1
kguiaddons 6.12.0-2
kguiaddons5 5.116.0-1
ki18n 6.12.0-1
ki18n5 5.116.0-1
kiconthemes 6.12.0-1
kiconthemes5 5.116.0-1
kidletime 6.12.0-1
kimageannotator 0.7.1-3
kio 6.12.0-1
kio-extras 24.12.3-1
kirigami 6.12.0-1
kirigami-addons 1.7.0-1
kitemmodels 6.12.0-1
kitemviews 6.12.0-1
kitemviews5 5.116.0-1
kitty 0.41.1-1
kitty-shell-integration 0.41.1-1
kitty-terminfo 0.41.1-1
kjobwidgets 6.12.0-1
kmod 34.2-1
knewstuff 6.12.0-1
knotifications 6.12.0-2
knotifyconfig 6.12.0-1
kotlin 2.1.20-1
kpackage 6.12.0-1
kparts 6.12.0-1
krb5 1.21.3-1
kservice 6.12.0-1
ksvg 6.12.0-1
ktextwidgets 6.12.0-1
kuserfeedback 6.12.0-1
kwallet 6.12.0-1
kwidgetsaddons 6.12.0-2
kwidgetsaddons5 5.116.0-1
kwindowsystem 6.12.0-3
kwindowsystem5 5.116.0-1
kxmlgui 6.12.0-2
kxmlgui5 5.116.0-1
l-smash 2.14.5-4
lame 3.100-5
lapack 3.12.1-2
lazygit 0.48.0-1
lcms2 2.17-1
ldb 2:4.22.0-1
leancrypto 1.3.0-1
lensfun 1:0.3.4-5
less 1:668-1
lib32-acl 2.3.2-1
lib32-alsa-lib 1.2.13-1
lib32-alsa-plugins 1.2.12-1
lib32-at-spi2-core 2.56.1-1
lib32-attr 2.5.2-1
lib32-audit 4.0.3-1
lib32-brotli 1.1.0-1
lib32-bzip2 1.0.8-4
lib32-cairo 1.18.4-1
lib32-curl 8.13.0-1
lib32-dbus 1.16.2-1
lib32-dbus-glib 0.112-3
lib32-duktape 2.7.0-7
lib32-e2fsprogs 1.47.2-1
lib32-expat 2.7.1-1
lib32-flac 1.5.0-1
lib32-fontconfig 2:2.16.1-1
lib32-freeglut 3.6.0-1
lib32-freetype2 2.13.3-3
lib32-fribidi 1.0.16-1
lib32-gcc-libs 14.2.1+r753+g1cd744a6828f-1
lib32-gdk-pixbuf2 2.42.12-2
lib32-gettext 0.24-1
lib32-giflib 5.2.2-1
lib32-glew1.10 1.10.0-6
lib32-glib-networking 1:2.80.1-1
lib32-glib2 2.84.1-1
lib32-glibc 2.41+r9+ga900dbaf70f0-1
lib32-glu 9.0.3-2
lib32-gmp 6.3.0-2
lib32-gnutls 3.8.9-1
lib32-gtk2 2.24.33-5
lib32-harfbuzz 11.0.0-1
lib32-icu 76.1-1
lib32-imlib2 1.12.4-1
lib32-json-c 0.18-1
lib32-keyutils 1.6.3-2
lib32-krb5 1.21.3-1
lib32-libappindicator-gtk2 12.10.0.r298-2
lib32-libasyncns 1:0.8+r3+g68cd5af-3
lib32-libcaca 0.99.beta20-2
lib32-libcanberra 1:0.30+r2+gc0620e4-3
lib32-libcap 2.75-1
lib32-libcups 2.4.11-1
lib32-libcurl-compat 8.13.0-1
lib32-libcurl-gnutls 8.13.0-1
lib32-libdatrie 0.2.13-3
lib32-libdbusmenu-glib 16.04.0-6
lib32-libdbusmenu-gtk2 16.04.0-6
lib32-libdrm 2.4.124-1
lib32-libelf 0.192-2
lib32-libffi 3.4.7-1
lib32-libgcrypt 1.11.0-1
lib32-libgcrypt15 1.5.6-8
lib32-libglvnd 1.7.0-1
lib32-libgpg-error 1.51-1
lib32-libgudev 238-2
lib32-libice 1.1.1-2
lib32-libidn11 1.33-3
lib32-libidn2 2.3.7-1
lib32-libindicator-gtk2 12.10.1-10
lib32-libjpeg-turbo 3.1.0-1
lib32-libjpeg6-turbo 1.5.3-3
lib32-libldap 2.6.9-1
lib32-libltdl 2.5.4+r1+gbaa1fe41-1
lib32-libmikmod 3.3.12-1
lib32-libmodplug 0.8.9.0-5
lib32-libnghttp2 1.65.0-1
lib32-libnghttp3 1.8.0-1
lib32-libnl 3.11.0-1
lib32-libnm 1.52.0-1
lib32-libnsl 2.0.1-1
lib32-libogg 1.3.5-2
lib32-libpcap 1.10.5-2
lib32-libpciaccess 0.18.1-1
lib32-libpipewire 1:1.4.1-1
lib32-libpng 1.6.47-1
lib32-libpng12 1.2.59-3
lib32-libproxy 0.5.9-1
lib32-libpsl 0.21.5-1
lib32-libpulse 17.0+r43+g3e2bb8a1e-1
lib32-librsvg 2:2.60.0-1
lib32-librtmp0 2.4-6
lib32-libsm 1.2.4-2
lib32-libsndfile 1.2.2-3
lib32-libsoup 2.74.3-2
lib32-libssh2 1.11.1-1
lib32-libtasn1 4.20.0-1
lib32-libthai 0.1.29-3
lib32-libtheora 1.1.1-14
lib32-libtiff 4.7.0-1
lib32-libtiff4 3.9.7-6
lib32-libtirpc 1.3.6-1
lib32-libudev0-shim 2-1
lib32-libunistring 1.3-1
lib32-libunwind 1.8.1-1
lib32-libusb 1.0.28-1
lib32-libva 2.22.0-1
lib32-libvdpau 1.5-3
lib32-libvorbis 1.3.7-4
lib32-libvpx 1.15.0-1
lib32-libvpx1.3 1.3.0-4
lib32-libwebp 1.5.0-1
lib32-libx11 1.8.12-1
lib32-libxau 1.0.11-2
lib32-libxcb 1.17.0-1
lib32-libxcomposite 0.4.6-2
lib32-libxcrypt 4.4.38-1
lib32-libxcrypt-compat 4.4.38-1
lib32-libxcursor 1.2.3-1
lib32-libxdamage 1.1.6-2
lib32-libxdmcp 1.1.5-1
lib32-libxext 1.3.6-1
lib32-libxfixes 6.0.1-2
lib32-libxft 2.3.8-2
lib32-libxi 1.8.2-1
lib32-libxinerama 1.1.5-2
lib32-libxkbcommon 1.8.1-1
lib32-libxml2 2.13.7-1
lib32-libxmu 1.2.1-1
lib32-libxrandr 1.5.4-1
lib32-libxrender 0.9.11-2
lib32-libxshmfence 1.3.3-1
lib32-libxss 1.2.4-2
lib32-libxt 1.3.1-1
lib32-libxtst 1.2.5-2
lib32-libxxf86vm 1.1.5-2
lib32-llvm-libs 1:19.1.7-1
lib32-lm_sensors 1:3.6.0.r41.g31d1f125-3
lib32-lzo 2.10-2
lib32-mesa 1:25.0.3-1
lib32-mpg123 1.32.10-1
lib32-ncurses 6.5-1
lib32-nettle 3.10.1-1
lib32-nspr 4.36-1
lib32-nss 3.110-1
lib32-nvidia-utils 570.133.07-1
lib32-openal 1.24.3-1
lib32-openssl 1:3.4.1-1
lib32-openssl-1.1 1.1.1.w-2
lib32-opus 1.5.2-1
lib32-p11-kit 0.25.5-1
lib32-pam 1.7.0-1
lib32-pango 1:1.56.3-1
lib32-pcre2 10.45-1
lib32-pipewire 1:1.4.1-1
lib32-pixman 0.44.2-1
lib32-sdl12-compat 1.2.68-2
lib32-sdl2-compat 2.32.54-1
lib32-sdl2-debug 2.30.11-2
lib32-sdl2_image 2.8.4-1
lib32-sdl2_mixer 2.8.0-1
lib32-sdl2_ttf 2.24.0-1
lib32-sdl3 3.2.10-1
lib32-sdl_image 1.2.12-9
lib32-sdl_mixer 1.2.12-6
lib32-sdl_ttf 2.0.11-9
lib32-speex 1.2.1-2
lib32-spirv-tools 1:1.4.309.0-1
lib32-sqlite 3.49.1-1
lib32-systemd 257.5-1
lib32-tdb 1.4.12-1
lib32-util-linux 2.41-1
lib32-vulkan-icd-loader 1.4.309.0-1
lib32-wayland 1.23.1-1
lib32-xz 5.8.1-1
lib32-zlib 1.3.1-2
lib32-zstd 1.5.7-2
libabw 0.1.3-4
libaccounts-glib 1.27-2
libaccounts-qt 1.17-1
libadwaita 1:1.7.0-2
libaio 0.3.113-3
libao 1.2.2-6
libappimage 1.0.4.5-9
libappindicator-gtk3 12.10.0.r298-4
libarchive 3.7.9-1
libass 0.17.3-1
libassuan 3.0.0-1
libasyncns 1:0.8+r3+g68cd5af-3
libatasmart 0.19-6
libatomic_ops 7.8.2-1
libavc1394 0.5.4-6
libavif 1.2.1-1
libavtp 0.2.0-3
libayatana-appindicator 0.5.94-1
libayatana-indicator 0.9.4-1
libb2 0.98.1-3
libb64 1.2.1-5
libbacktrace 1.0.git1-1
libblockdev 3.3.0-1
libblockdev-crypto 3.3.0-1
libblockdev-fs 3.3.0-1
libblockdev-loop 3.3.0-1
libblockdev-mdraid 3.3.0-1
libblockdev-nvme 3.3.0-1
libblockdev-part 3.3.0-1
libblockdev-swap 3.3.0-1
libbluray 1.3.4-2
libbpf 1.5.0-1
libbs2b 3.1.0-9
libbsd 0.12.2-2
libbytesize 2.11-1
libcaca 0.99.beta20-5
libcamera 0.4.0-1
libcamera-ipa 0.4.0-1
libcanberra 1:0.30+r2+gc0620e4-4
libcap 2.75-1
libcap-ng 0.8.5-3
libcbor 0.11.0-1
libcdio 2.2.0-1
libcdio-paranoia 10.2+2.0.2-1
libcdr 0.1.8-2
libcgif 0.5.0-1
libcheese 44.1-3
libcloudproviders 0.3.6-1
libcmis 0.6.2-3
libcolord 1.4.7-2
libconfig 1.7.3-3
libcups 2:2.4.11-2
libcurl-compat 8.13.0-1
libcurl-gnutls 8.13.0-1
libdaemon 0.14-6
libdatrie 0.2.13-4
libdbusmenu-glib 16.04.0.r498-2
libdbusmenu-gtk2 16.04.0.r498-2
libdbusmenu-gtk3 16.04.0.r498-2
libdbusmenu-qt5 0.9.3+16.04.20160218-7
libdc1394 2.2.7-1
libdca 0.0.7-2
libde265 1.0.15-3
libdecor 0.2.2-1
libdeflate 1.23-1
libdisplay-info 0.2.0-2
libdovi 3.3.1-1
libdrm 2.4.124-1
libdv 1.0.0-11
libdvbpsi 1:1.3.3-3
libdvdnav 6.1.1-2
libdvdread 6.1.3-2
libe-book 0.1.3-17
libebml 1.4.5-1
libebur128 1.2.6-2
libedit 20250104_3.1-1
libei 1.4.0-1
libelectron 2025.3-1
libelectron-debug 2025.3-1
libelf 0.192-4
libepoxy 1.5.10-3
libepubgen 0.1.1-5
libetonyek 0.1.12-2
libev 4.33-3
libevdev 1.13.4-1
libevent 2.1.12-4
libexif 0.6.25-1
libexttextcat 3.4.7-1
libfdk-aac 2.0.3-1
libffi 3.4.7-1
libfido2 1.15.0-1
libfontenc 1.1.8-1
libfreeaptx 0.2.2-1
libfreehand 0.1.2-5
libgccjit 14.2.1+r753+g1cd744a6828f-1
libgcrypt 1.11.0-3
libgcrypt15 1.5.6-6
libgdiplus 6.2-1
libgexiv2 0.14.3-2
libgirepository 1.84.0-1
libgit2 1:1.9.0-2
libglvnd 1.7.0-1
libgme 0.6.4-1
libgnome-keyring 1:3.12.0+r14+g23438cc-1
libgpg-error 1.51-1
libgtop 2.41.3-2
libgudev 238-1
libgusb 0.4.9-2
libgweather-4 4.4.4-1
libheif 1.19.7-2
libibus 1.5.31-2
libice 1.1.2-1
libidn 1.43-1
libidn11 1.33-2
libidn2 2.3.7-1
libiec61883 1.2.0-8
libimagequant 4.3.4-1
libimobiledevice 1.3.0-15
libimobiledevice-glue 1.3.1-1
libindicator-gtk2 12.10.1-10
libinih 58-1
libinput 1.28.1-1
libinstpatch 1.1.6-3
libisl 0.27-1
libixion 0.20.0-1
libjpeg-turbo 3.1.0-1
libjpeg6-turbo 1.5.3-2
libjxl 0.11.1-3
libkdcraw 24.12.3-1
libkexiv2 24.12.3-1
libkeybinder3 0.3.2-5
libksba 1.6.7-2
liblangtag 0.6.7-1
liblc3 1.1.3-1
libldac 2.0.2.3-2
libldap 2.6.9-1
libliftoff 0.5.0-1
liblouis 3.33.0-1
liblqr 0.4.3-1
liblrdf 0.6.1-5
libltc 1.3.2-2
libmad 0.15.1b-10
libmalcontent 0.13.0-1
libmanette 0.2.11-2
libmatroska 1.7.1-2
libmaxminddb 1.12.2-2
libmd 1.1.0-2
libmfx 23.2.2-3
libmicrodns 0.2.0-2
libmicrohttpd 1.0.1-1
libmikmod 3.3.12-1
libmm-glib 1.22.0-1
libmng 2.0.3-4
libmnl 1.0.5-2
libmodplug 0.8.9.0-6
libmpc 1.3.1-2
libmpcdec 1:0.1+r475-6
libmpdclient 2.22-1
libmpeg2 0.5.1-10
libmspack 1:1.11-1
libmspub 0.1.4-17
libmtp 1.1.22-1
libmwaw 0.3.22-3
libmypaint 1.6.1-2
libmysofa 1.3.3-1
libmysqlclient 9.2.0-1
libnatpmp 20230423-3
libndp 1.9-1
libnet 2:1.3-1
libnetfilter_conntrack 1.0.9-2
libnewt 0.52.25-1
libnfnetlink 1.0.2-2
libnftnl 1.2.8-1
libnghttp2 1.65.0-1
libnghttp3 1.8.0-1
libngtcp2 1.11.0-1
libnice 0.1.22-1
libnl 3.11.0-1
libnm 1.52.0-1
libnma 1.10.6-3
libnma-common 1.10.6-3
libnoise 1.0.0-7
libnotify 0.8.6-1
libnsl 2.0.1-1
libnumbertext 1.0.11-2
libnvme 1.12-2
libodfgen 0.1.8-3
libogg 1.3.5-2
libolm 3.2.16-5
libomxil-bellagio 0.9.3-5
libopenmpt 0.7.13-2
liborcus 0.20.0-1
libotf 0.9.16-5
libp11-kit 0.25.5-1
libpagemaker 0.0.4-4
libpcap 1.10.5-2
libpciaccess 0.18.1-2
libpgm 5.3.128-3
libpipeline 1.5.8-1
libpipewire 1:1.4.1-1
libplacebo 7.349.0-6
libplist 2.6.0-2
libpng 1.6.47-1
libpng12 1.2.59-2
libproxy 0.5.9-1
libpsl 0.21.5-2
libpulse 17.0+r43+g3e2bb8a1e-1
libqalculate 5.5.2-1
libqxp 0.0.2-13
libraqm 0.10.2-1
libraw 0.21.3-1
libraw1394 2.1.2-4
libredefender 0.7.0-2
libreoffice-fresh 25.2.2-1
libretro-beetle-psx-git 2747.80d3eba2-1
libretro-beetle-psx-git-debug 2747.80d3eba2-1
libretro-core-info 1.20.0-1
libretro-genesis-plus-gx 2216-1
libretro-mesen 2904-1
libretro-mesen-s 916-4
libretro-mgba 9298-2
libretro-picodrive 2686-1
libretro-sameboy 1720-3
libretro-shaders-slang 1648-1
librevenge 0.0.5-3
librewolf-bin 1:136.0.4_1-1
librewolf-bin-debug 1:136.0.4_1-1
librist 0.2.11-1
librsvg 2:2.60.0-1
librsync 1:2.3.4-2
librtmp0 2.4-6
libsamplerate 0.2.2-3
libsasl 2.1.28-5
libscanmem-git 0.17.1103.0def8b2-1
libseccomp 2.5.6-1
libsecret 0.21.7-1
libshout 1:2.4.6-3
libsigc++ 2.12.1-1
libsigc++-3.0 3.6.0-1
libslirp 4.9.0-1
libsm 1.2.6-1
libsndfile 1.2.2-3
libsodium 1.0.20-1
libsoup 2.74.3-1
libsoup3 3.6.5-1
libsoxr 0.1.3-4
libspeechd 0.12.0-1
libspiro 1:20240903-1
libspng 0.7.4-2
libsrtp 1:2.7.0-1
libssh 0.11.1-1
libssh2 1.11.1-1
libstaroffice 0.0.7-4
libstemmer 2.2.0-2
libsysprof-capture 48.0-3
libtar 1.2.20-7
libtasn1 4.20.0-1
libteam 1.32-2
libthai 0.1.29-3
libtheora 1.1.1-6
libtiff 4.7.0-1
libtiff4 3.9.7-6
libtirpc 1.3.6-1
libtommath 1.3.0-1
libtool 2.5.4+r1+gbaa1fe41-3
libtorrent-rasterbar 1:2.0.11-3
libudev0-shim 2-1
libunibreak 6.1-1
libunistring 1.3-1
libunwind 1.8.1-3
libupnp 1.14.20-2
liburcu 0.15.1-1
liburing 2.9-1
libusb 1.0.28-1
libusbmuxd 2.1.0-1
libutempter 1.2.3-1
libuv 1.50.0-1
libva 2.22.0-1
libvdpau 1.5-3
libverto 0.3.2-5
libvips 8.16.1-1
libvisio 0.1.8-2
libvlc 3.0.21-16
libvorbis 1.3.7-4
libvpl 2.14.0-1
libvpx 1.15.0-1
libvpx1.3 1.3.0-3
libwacom 2.15.0-1
libwbclient 2:4.22.0-1
libwebp 1.5.0-1
libwireplumber 0.5.8-1
libwmf 0.2.13-4
libwnck3 43.2-1
libwpd 0.10.3-5
libwps 0.4.14-3
libx11 1.8.12-1
libxau 1.0.12-1
libxaw 1.0.16-1
libxcb 1.17.0-1
libxcomposite 0.4.6-2
libxcrypt 4.4.38-1
libxcrypt-compat 4.4.38-1
libxcursor 1.2.3-1
libxcvt 0.1.3-1
libxdamage 1.1.6-2
libxdmcp 1.1.5-1
libxext 1.3.6-1
libxfce4ui 4.20.1-1
libxfce4util 4.20.1-1
libxfixes 6.0.1-2
libxfont2 2.0.7-1
libxft 2.3.8-2
libxi 1.8.2-1
libxinerama 1.1.5-2
libxkbcommon 1.8.1-1
libxkbcommon-x11 1.8.1-1
libxkbfile 1.1.3-1
libxml2 2.13.7-1
libxmlb 0.3.22-1
libxmu 1.2.1-1
libxpm 3.5.17-2
libxrandr 1.5.4-1
libxrender 0.9.12-1
libxres 1.2.2-2
libxshmfence 1.3.3-1
libxslt 1.1.43-1
libxss 1.2.4-2
libxt 1.3.1-1
libxtst 1.2.5-1
libxv 1.0.13-1
libxxf86vm 1.1.6-1
libyaml 0.2.5-3
libyuv r2426+464c51a03-1
libzip 1.11.3-1
libzmf 0.0.2-17
licenses 20240728-1
lilv 0.24.26-1
linux 6.13.8.arch1-1
linux-api-headers 6.13-1
linux-firmware 20250311.b69d4b74-3
linux-firmware-whence 20250311.b69d4b74-3
linux-headers 6.13.8.arch1-1
lld 19.1.7-1
lld18 18.1.6-2
llhttp 9.2.1-2
llvm 19.1.7-1
llvm-libs 19.1.7-1
llvm18-libs 18.1.8-1
lm_sensors 1:3.6.0.r41.g31d1f125-3
lmdb 0.9.33-1
love 11.5-1
lpsolve 5.5.2.11-3
lrexlib-pcre5.1 2.9.0-2
lrzip 0.651-3
lsb-release 2.0.r55.a25a4fc-1
lsof 4.99.4-1
lua 5.4.7-1
lua-yajl 2.0-2
lua51 5.1.5-12
lua51-filesystem 1.8.0-5
lua51-lcf 5.1-3
lua51-luautf8 0.1.6-1
lua51-sql-sqlite 2.3.0-4
luajit 2.1.1741730670-1
luanti 5.11.0-1
luanti-common 5.11.0-1
luarocks 3.11.1-2
luazip5.1 1.2.7-1
lutris 0.5.19-2
lv2 1.18.10-1
lynx 2.9.2-1
lz4 1:1.10.0-2
lzo 2.10-5
m17n-db 1.8.8-1
m17n-lib 1.8.4-4
m4 1.4.19-3
mailcap 2.1.54-2
make 4.4.1-2
man-db 2.13.0-1
mari0 1.6.2-5
mbedtls 3.6.2-1
mbedtls2 2.28.9-1
md4c 0.5.2-1
mdadm 4.4-1
media-player-info 26-1
mesa 1:25.0.3-1
mesa-utils 9.0.0-5
miniupnpc 2.3.0-1
minizip 1:1.3.1-2
mjpegtools 2.2.1-2
mkinitcpio 39.2-3
mkinitcpio-busybox 1.36.1-1
mlt 7.30.0-1
mobile-broadband-provider-info 20240407-1
mommy 1.6.0-1
mongodb 8.0.4-1
mongodb-tools-bin 100.10.0-3
mongosh-bin 2.4.2-1
mongosh-bin-debug 2.4.2-1
mono 6.12.0.206-1
mono-msbuild 16.10.1.xamarinxplat.2021.05.26.14.00-5
moosync-debug 11.0.1-2
moreutils 0.70-1
mpdecimal 4.0.0-2
mpfr 4.2.2-1
mpg123 1.32.10-1
mpris-discord-rpc 0.2.2-1
mpris-discord-rpc-debug 0.2.2-1
mtdev 1.1.7-1
mypaint-brushes1 1.3.1-2
mysql 9.2.0-1
mysql-clients 9.2.0-1
nano 8.3-1
nasm 2.16.03-1
ncompress 5.0-3
ncurses 6.5-3
ncurses5-compat-libs 6.5-1.1
neofetch 7.1.0-2
neon 0.34.0-1
net-tools 2.10-3
netstandard-targeting-pack 9.0.3.sdk104-1
nettle 3.10.1-1
network-manager-applet 1.36.0-1
networkmanager 1.52.0-1
networkmanager-openvpn 1.12.0-1
neverwinter.nim-bin 2.0.1-1
ninja 1.12.1-2
nm-connection-editor 1.36.0-1
nmap 7.95-1
node-gyp 11.2.0-1
nodejs 23.9.0-1
nodejs-http-server 14.1.1-1
nodejs-nativefier 52.0.0-1
nodejs-nopt 7.2.1-1
notepad++ 8.7.6-1
notepadnext 0.11-1
noto-fonts 1:2025.04.01-1
noto-fonts-cjk 20240730-1
noto-fonts-emoji 1:2.047-1
noto-fonts-emoji-flags 20200120-1
npm 11.2.0-1
npm-check-updates 17.1.15-1
npth 1.8-1
nspr 4.36-1
nss 3.110-1
numactl 2.0.19-1
nvidia-dkms 570.133.07-1
nvidia-utils 570.133.07-1
nvtop 3.2.0-1
obs-retro-effects 1.0.0-1
obs-retro-effects-debug 1.0.0-1
obs-studio-liberty 31.0.3-1
obs-studio-liberty-debug 31.0.3-1
ocl-icd 2.3.2-2
odilia 0.1.4-1
oneko 1.2.5-5.1
oniguruma 6.9.10-1
openal 1.24.3-1
opencore-amr 0.1.6-2
opendoas 6.8.2-3
openexr 3.3.3-1
openh264 2.6.0-1
openjpeg2 2.5.3-1
openlinkhub-bin-debug 0.5.1-4
openrgb 0.9-4
openssh 9.9p2-1
openssl 3.4.1-1
openssl-1.0 1.0.2.u-6
openssl-1.1 1.1.1.w-2
openvpn 2.6.14-1
opus 1.5.2-1
opusfile 0.12-4
orc 0.4.41-1
orca 48.0-1
ostree 2025.2-2
otf-compagnon 1.000-1
otf-font-awesome 6.7.2-1
otf-opendyslexic-nerd 3.3.0-1
p11-kit 0.25.5-1
pacman 7.0.0.r6.gc685ae6-2
pacman-contrib 1.11.0-1
pacman-mirrorlist 20250311-1
pahole 1:1.29-1
pam 1.7.0-2
pambase 20230918-2
pango 1:1.56.3-1
pangomm 2.46.4-1
pangomm-2.48 2.56.1-1
parted 3.6-2
patch 2.7.6-10
patchelf 0.18.0-3
patchutils 0.4.2-3
pavucontrol 1:6.1-1
pciutils 3.13.0-2
pcre 8.45-4
pcre2 10.45-1
pcsclite 2.3.3-1
pcsx2-avx-git 2.3.256.r0.g4b88a29-1
perl 5.40.1-2
perl-algorithm-diff 1:1.201-6
perl-archive-zip 1.68-10
perl-class-method-modifiers 2.15-4
perl-clone 0.47-1
perl-curses 1.45-2
perl-data-optlist 0.114-4
perl-devel-globaldestruction 0.14-11
perl-encode-locale 1.05-13
perl-error 0.17030-1
perl-file-listing 6.16-4
perl-html-parser 3.83-1
perl-html-tagset 3.24-2
perl-http-cookiejar 0.014-3
perl-http-cookies 6.11-2
perl-http-daemon 6.16-4
perl-http-date 6.06-3
perl-http-message 7.00-1
perl-http-negotiate 6.01-14
perl-image-exiftool 13.25-1
perl-import-into 1.002005-11
perl-io-html 1.004-6
perl-io-tty 1.20-2
perl-ipc-run 20231003.0-2
perl-libwww 6.78-1
perl-lwp-mediatypes 6.04-6
perl-mailtools 2.22-1
perl-module-runtime 0.016-4
perl-moo 2.005005-4
perl-net-http 6.23-4
perl-net-telnet 3.05-6
perl-parallel-forkmanager 2.03-2
perl-params-util 1.102-6
perl-regexp-common 2024080801-2
perl-role-tiny 2.002004-6
perl-sub-exporter 0.991-2
perl-sub-exporter-progressive 0.001013-11
perl-sub-install 0.929-2
perl-sub-quote 1:2.006008-4
perl-term-animation 2.6-12
perl-time-duration 1:1.21-2
perl-timedate 2.33-7
perl-try-tiny 0.32-2
perl-uri 5.31-1
perl-www-robotrules 6.02-14
perl-xml-parser 2.47-2
phonon-qt6 4.12.0-4
phonon-qt6-vlc 0.12.0-2
php 8.4.5-1
physfs 3.2.0-2
picom-git 12.5.r92.gb995372-1
pince 0.4.2-1
pince-debug 0.4.2-1
pinentry 1.3.1-5
pipes.sh 1.3.0-1
pipewire 1:1.4.1-1
pipewire-alsa 1:1.4.1-1
pipewire-audio 1:1.4.1-1
pipewire-jack 1:1.4.1-1
pipewire-pulse 1:1.4.1-1
pixman 0.44.2-1
pkcs11-helper 1.30.0-1
pkgconf 2.4.3-1
plasma-activities 6.3.4-1
play.it-git 2.29.1.r1.g03ba243f-1
playerctl 2.4.1-4
plocate 1.1.23-1
pnpm 10.7.1-1
pokemon-colorscripts-git r114.5802ff67-1
polkit 126-2
polkit-gnome 0.105-11
polkit-kde-agent 6.3.4-1
polkit-qt5 0.200.0-1
polkit-qt6 0.200.0-1
poppler 25.03.0-1
poppler-data 0.4.12-2
poppler-glib 25.03.0-1
poppler-qt6 25.03.0-1
popt 1.19-2
portaudio 1:19.7.0-3
postgresql 17.4-1
postgresql-libs 17.4-1
procps-ng 4.0.5-3
protobuf 30.1-1
proton-ge-custom 2:GE.Proton9.23-1
proton-vpn-gtk-app 4.9.5-1
psmisc 23.7-1
pugixml 1.15-2
purpose 6.12.0-1
pyright 1.1.398-1
python 3.13.2-1
python-aiohappyeyeballs 2.5.0-1
python-aiohttp 3.10.11-1
python-aiosignal 1.3.1-8
python-annotated-types 0.7.0-2
python-anyio 4.8.0-1
python-argcomplete 3.5.3-1
python-asgiref 3.8.1-2
python-attrs 23.2.0-4
python-autocommand 2.2.2-7
python-bandcamp-api 0.2.3-2.1
python-bcrypt 4.2.1-2
python-beautifulsoup4 4.12.3-3
python-cairo 1.27.0-2
python-capstone 5.0.6-1
python-certifi 2025.01.31-1
python-cffi 1.17.1-2
python-charset-normalizer 3.4.1-1
python-click 8.1.8-1
python-colorama 0.4.6-5
python-configargparse 1.5.5-3
python-configobj 5.0.9-5
python-cryptography 44.0.2-1
python-cssselect 1.2.0-8
python-dacite 1.9.2-2
python-dateutil 2.9.0-6
python-dbus 1.4.0-1
python-decorator 5.1.1-5
python-demjson3 3.0.6-2.1
python-deprecated 1.2.16-1
python-deprecation 2.1.0-10
python-distlib 0.3.9-2
python-distro 1.9.0-3
python-distutils-extra 2.39-14
python-dotenv 1.1.0-1
python-dulwich 0.22.8-1
python-evdev 1.9.0-1
python-eyed3 0.9.7-3
python-factory-boy 3.3.3-1
python-faker 36.2.3-1
python-fastapi 0.115.12-1
python-fastbencode 0.3.1-2
python-fastjsonschema 2.21.1-1
python-feedparser 6.0.11-3
python-filelock 3.18.0-1
python-filetype 1.2.0-6
python-frozenlist 1.4.1-4
python-gnupg 0.5.4-2
python-gobject 3.52.3-3
python-h11 0.14.0-6
python-html5lib 1.1-15
python-httptools 0.6.4-1
python-idna 3.10-2
python-importlib-metadata 7.2.1-4
python-inflect 7.5.0-1
python-iniconfig 2.0.0-6
python-jaconv 0.4.0-1
python-jaraco.classes 3.4.0-2
python-jaraco.collections 5.1.0-1
python-jaraco.context 6.0.1-1
python-jaraco.functools 4.1.0-1
python-jaraco.text 4.0.0-2
python-jeepney 0.9.0-1
python-jinja 1:3.1.5-1
python-keyboard 0.13.5-2
python-keyring 25.6.0-1
python-keystone 0.9.2-7
python-loguru 0.7.2-3
python-lxml 5.3.1-1
python-magic 1:0.4.27-5
python-mako 1.3.9-1
python-markdown 3.7-2
python-markdown-it-py 3.0.0-4
python-markupsafe 2.1.5-3
python-mdurl 0.1.2-8
python-merge3 0.0.15-2
python-moddb 0.12.0-1
python-more-itertools 10.6.0-1
python-multidict 6.0.5-4
python-mutagen 1.47.0-3
python-numpy 2.2.4-1
python-ordered-set 4.1.0-7
python-packaging 24.2-3
python-pathspec 0.12.1-3
python-patiencediff 0.2.15-2
python-pexpect 4.9.0-4
python-pillow 11.1.0-1
python-pip 25.0.1-1
python-pipenv 2024.4.1-1
python-pipx 1.7.1-2
python-platformdirs 4.3.6-2
python-pluggy 1.5.0-3
python-proton-core 0.4.0-4
python-proton-keyring-linux 0.2.0-4
python-proton-vpn-api-core 0.42.3-2
python-proton-vpn-local-agent 1.4.4-1
python-proton-vpn-network-manager 0.12.13-1
python-psutil 7.0.0-1
python-ptyprocess 0.7.0-8
python-pycparser 2.22-3
python-pydantic 2.11.2-1
python-pydantic-core 2:2.33.1-1
python-pydantic-extra-types 2.10.3-1
python-pydantic-settings 2.8.1-1
python-pygdbmi 0.11.0.0-5
python-pygments 2.19.1-1
python-pyinotify 0.9.6-15
python-pykakasi 2.3.0-2
python-pynacl 1.5.0-3
python-pyopenssl 25.0.0-1
python-pyqt5 5.15.11-2
python-pyqt5-sip 12.17.0-1
python-pyqt6 6.8.1-3
python-pyqt6-sip 13.10.0-1
python-pyquery 2.0.1-1
python-pyte 0.8.2-4
python-pytest 1:8.3.5-1
python-pytube 15.0.0-4
python-pyxdg 0.28-4
python-rapidfuzz 3.12.2-1
python-redis 5.2.1-2
python-requests 2.32.3-4
python-rich 14.0.0-1
python-scrap_engine-git 1.4.2-1
python-secretstorage 3.3.3-6
python-sentry_sdk 2.25.1-1
python-setproctitle 1.3.5-1
python-setuptools 1:75.8.0-1
python-sgmllib3k 1.0.0-7
python-six 1.17.0-1
python-slugify 8.0.4-3
python-sniffio 1.3.1-4
python-soundcloud-v2 1.6.0-1.1
python-soupsieve 2.6-2
python-spotipy 2.25.1-1
python-starlette 0.46.1-1
python-syncedlyrics 1.0.1-1.1
python-text-unidecode 1.3-12
python-tomli 2.0.1-5
python-tqdm 4.67.1-2
python-trove-classifiers 2025.3.19.19-1
python-typeguard 4.4.2-1
python-typing-inspection 0.4.0-1
python-typing_extensions 4.12.2-3
python-tzdata 2025.2-1
python-tzlocal 1:5.3.1-1
python-urllib3 2.3.0-1
python-urwid 2.6.15-2
python-userpath 1.9.2-3
python-uvloop 0.21.0-2
python-validate-pyproject 0.24.1-1
python-virtualenv 20.28.0-1
python-virtualenv-clone 0.5.7-6
python-wand 0.6.11-5
python-wcwidth 0.2.13-3
python-webencodings 0.5.1-12
python-websockets 12.0-3
python-wheel 0.45.1-1
python-wrapt 1.16.0-4
python-xlib 0.33-4
python-yaml 6.0.2-2
python-yarl 1.13.1-1
python-ytmusicapi 1.10.3-1
python-zipp 3.21.0-2
qbittorrent 5.0.4-3
qca-qt6 2.3.10-1
qqc2-desktop-style 6.12.0-1
qrcodegencpp-cmake 1:1.8.0-3
qrencode 4.1.1-3
qt5-base 5.15.16+kde+r130-4
qt5-declarative 5.15.16+kde+r22-3
qt5-gamepad 5.15.16-2
qt5-location 5.15.16+kde+r7-4
qt5-multimedia 5.15.16+kde+r2-3
qt5-remoteobjects 5.15.16-3
qt5-svg 5.15.16+kde+r5-3
qt5-tools 5.15.16+kde+r3-6
qt5-translations 5.15.16-3
qt5-wayland 5.15.16+kde+r60-1
qt5-webchannel 5.15.16+kde+r3-3
qt5-webengine 5.15.18-6
qt5-x11extras 5.15.16-3
qt6-5compat 6.9.0-1
qt6-base 6.9.0-1
qt6-declarative 6.9.0-1
qt6-multimedia 6.9.0-1
qt6-multimedia-ffmpeg 6.9.0-1
qt6-networkauth 6.9.0-1
qt6-positioning 6.9.0-1
qt6-shadertools 6.9.0-1
qt6-speech 6.9.0-1
qt6-svg 6.9.0-1
qt6-tools 6.9.0-1
qt6-translations 6.9.0-1
qt6-wayland 6.9.0-1
qt6-webchannel 6.9.0-1
qt6-webengine 6.9.0-1
qt6-websockets 6.9.0-1
qtkeychain-qt5 0.15.0-1
qtkeychain-qt6 0.15.0-1
quazip-qt5 1.5-1
quodlibet 4.6.0-5
rapidjson 1.1.0-6
raptor 2.0.16-6
rasqal 1:0.9.33-7
rav1e 0.7.1-1
re2 1:20240702-4
readline 8.2.013-1
redact-bin 0.18.0-1
redland 1:1.0.17-9
reflector 2023-3
renovate-git-debug 39.83.2.r0.g68c05cf-1
resonance 0.1.3-1
resonance-debug 0.1.3-1
retroarch 1.20.0-2
retroarch-assets-xmb 1:528-1
rhash 1.4.4-1
ripgrep 14.1.1-1
ripgrep-all 0.10.6-3
rnnoise 1:0.2-1
roam 155.0.0.beta001-1
rofimoji 6.5.0-2
rpcsvc-proto 1.4.4-2
rpm-sequoia 1.7.0-1
rpm-tools 4.20.1-1
rsync 3.4.1-2
rtkit 0.13-3
rtmpdump 1:2.4.r105.6f6bb13-1
rubberband 4.0.0-1
ruby 3.3.7-2
rubygems 3.5.22-3
runc 1.2.6-1
rustup 1.28.1-1
samrewritten-git r261.cac0291-1
samrewritten-git-debug r261.cac0291-1
sbc 2.0-2
scanmem 0.17-10
scrcpy 3.2-1
scummvm 2.9.0-2
sdbus-cpp 2.1.0-2
sddm 0.21.0-6
sdl12-compat 1.2.68-2
sdl2-compat 2.32.54-1
sdl2-debug 2.30.11-2
sdl2_image 2.8.8-1
sdl2_mixer 2.8.1-1
sdl2_net 1:2.2.0-2
sdl2_ttf 2.24.0-1
sdl3 3.2.10-1
sdl_gfx 2.0.27-1
sdl_image 1.2.12-9
sdl_mixer 1.2.12-12
sdl_ttf 2.0.11-7
seatd 0.9.1-1
sed 4.9-3
semver 7.7.1-1
ser2net 4.6.2-1
serd 0.32.4-1
sfml 3.0.0-2
shaderc 2025.1-3
shadow 4.17.4-1
shared-mime-info 2.4-1
shellspec 0.28.1-3
signal-desktop 7.49.0-1
signon-kwallet-extension 24.12.3-1
signon-plugin-oauth2 0.25-3
signon-ui 0.17+20231016-3
signond 8.61-3
simdjson 1:3.12.3-1
slack-cli 3.0.0-0
slack-cli-debug 3.0.0-0
slack-desktop 4.43.43-1
slang 2.3.3-3
slurp 1.5.0-1
smartmontools 7.4-2
smbclient 2:4.22.0-1
snappy 1.2.2-1
sndio 1.10.0-1
solid 6.12.0-1
sonar-scanner 7.0.2.4839-1
sonnet 6.12.0-1
sord 0.16.18-1
sound-theme-freedesktop 0.8-6
soundtouch 2.3.3-1
source-highlight 3.1.9-14
spacecadetpinball-bin 2.1.0-2
spacecadetpinball-bin-debug 2.1.0-2
spandsp 0.0.6-5
spatialindex 2.0.0-1
spdlog 1.15.2-1
speech-dispatcher 0.12.0-1
speedometer 2.9-3
speedtest-cli 2.1.3-9
speex 1.2.1-2
speexdsp 1.2.1-2
spirv-headers 1:1.4.309.0-1
spirv-tools 1:1.4.309.0-1
spotdl 4.2.11-1
spotify 1:1.2.59.514-1
sqlite 3.49.1-1
squashfs-tools 4.6.1-2
squashfuse 0.6.0-1
sratom 0.6.18-1
srt 1.5.4-1
starship 1.22.1-1
startup-notification 0.12-8
steam 1.0.0.82-2
steam-native-runtime 1.0.0.75-4
strace 6.14-1
sublime-text-4 4.4192-1
sudo 1.9.16.p2-2
suitesparse 7.10.1-1
svt-av1 3.0.2-1
svt-hevc 1.5.1-3
swappy 1.5.1-2
sway 1:1.10.1-2
swaybg 1.2.1-1
swayidle 1.8.0-2
swaylock-effects 1.7.0.0-4.4
syft 1.20.0-1
syndication 6.12.0-1
syntax-highlighting 6.12.0-1
systemd 257.5-1
systemd-libs 257.5-1
systemd-sysvcompat 257.5-1
taglib 2.0.2-1
tailscale 1.82.0-1
talloc 2.4.3-1
tar 1.35-2
tcl 8.6.16-1
tdb 1.4.13-1
tevent 1:0.16.2-1
texinfo 7.2-1
thefuck 3.32-11
theia-bin 1.58.100-1
thunar 4.20.2-1
thunderbird 137.0-1
tinysparql 3.9.1-1
tk 8.6.16-1
tmux 3.5_a-1
tomlplusplus 3.4.0-1
tpm2-tss 4.1.3-1
transmission-cli 4.0.6-9
trayscale 0.14.2-1
tree 2.2.1-1
tree-sitter 0.25.3-1
trivy 0.61.0-1
tslib 1.23-1
ttf-dejavu 2.37+18+g9b5d1b2f-7
ttf-firacode-nerd 3.3.0-1
ttf-font-awesome 6.7.2-1
ttf-jetbrains-mono-nerd 3.3.0-1
ttf-joypixels 8.0.0-2
ttf-liberation 2.1.5-2
ttf-symbola 14.00-2
ttf-twemoji 15.1.0-1
twolame 0.4.0-4
typescript 5.8.2-1
typescript-language-server 4.3.3-1
tzdata 2025b-1
udisks2 2.10.1-5
unionfs-fuse 3.6-1
unrar 1:7.1.6-1
unzip 6.0-22
upower 1.90.8-1
usbutils 018-1
util-linux 2.41-4
util-linux-libs 2.41-4
uvicorn 0.34.0-1
v4l-utils 1.28.1-2
v4l2loopback-dkms 0.14.0-1
valgrind 3.24.0-3
vapoursynth R70-2
vercel 39.2.2-1
vercel-debug 39.2.2-1
vesktop 1.5.5-5
vi 1:070224-6
vid.stab 1.1.1-2
vim 9.1.1236-1
vim-runtime 9.1.1236-1
vlc 3.0.21-16
vmaf 3.0.0-1
volume_key 0.3.12-10
vosk-api 0.3.50-5
vsce 3.2.2-2
vsce-debug 3.2.2-2
vscodium 1.99.02289-1
vscodium-marketplace 1.97.0-1
vulkan-headers 1:1.4.309.0-1
vulkan-icd-loader 1.4.309.0-1
vulkan-tools 1.4.309.0-1
vulkan-validation-layers 1.4.309.0-1
w3m 0.5.3.git20230713_1-1
wasi-compiler-rt 19.1.6-1
wasi-libc 1:0+410+574b88da-2
wasi-libc++ 19.1.6-2
wasi-libc++abi 19.1.6-2
wavpack 5.8.1-1
waybar 0.12.0-1
waybar-module-pacman-updates-git 0.2.7-1
wayland 1.23.1-1
wayland-protocols 1.42-1
webcamoid 9.2.3-1.5
webkit2gtk 2.48.1-1
webkit2gtk-4.1 2.48.1-1
webrtc-audio-processing-1 1.3-4
websocat 1.14.0-1
weston 14.0.0-2
wev 1.0.0-13
wget 1.25.0-2
whatsapp-for-linux 1.7.0-1.3
which 2.23-1
wildmidi 0.4.6-1
wine 10.4-1
wireless_tools 30.pre9-4
wireplumber 0.5.8-1
wl-clipboard 1:2.2.1-2
wlogout 1.2.2-0.3
wlroots 0.18.2-1
wlroots0.17 0.17.4-3
wmctrl 1.07-6
woff2 1.0.2-5
wofi 1.4.1-1
wofi-emoji 1.2-3
wpa_supplicant 2:2.11-3
wscat 5.2.0-2
wtype 0.4-2
wxhexeditor 0.24-4
wxwidgets-common 3.2.7.1-2
wxwidgets-gtk3 3.2.7.1-2
x264 3:0.164.r3108.31e19f9-2
x265 4.0-1
xautomation 1.09-6
xcb-proto 1.17.0-3
xcb-util 0.4.1-2
xcb-util-cursor 0.1.5-1
xcb-util-errors 1.0.1-2
xcb-util-image 0.4.1-3
xcb-util-keysyms 0.4.1-5
xcb-util-renderutil 0.3.10-2
xcb-util-wm 0.4.2-2
xcb-util-xrm 1.3-3
xclip 0.13-6
xdelta3 3.1.0-5
xdg-dbus-proxy 0.1.6-1
xdg-desktop-portal 1.20.0-2
xdg-desktop-portal-hyprland 1.3.9-5
xdg-desktop-portal-wlr 0.7.1-1
xdg-user-dirs 0.18-2
xdg-utils 1.2.1-1
xf86-input-libinput 1.5.0-1
xfconf 4.20.0-2
xkeyboard-config 2.44-1
xmlsec 1.3.7-1
xorg-fonts-alias-misc 1.0.5-1
xorg-fonts-encodings 1.1.0-1
xorg-fonts-misc 1.0.4-2
xorg-mkfontscale 1.2.3-1
xorg-server 21.1.16-1
xorg-server-common 21.1.16-1
xorg-setxkbmap 1.3.4-2
xorg-xauth 1.1.4-1
xorg-xcursorgen 1.0.8-2
xorg-xdpyinfo 1.3.4-2
xorg-xhost 1.0.10-1
xorg-xinit 1.4.4-1
xorg-xinput 1.6.4-2
xorg-xkbcomp 1.4.7-1
xorg-xmodmap 1.0.11-2
xorg-xprop 1.2.8-1
xorg-xrandr 1.5.3-1
xorg-xrdb 1.2.2-2
xorg-xset 1.2.5-2
xorg-xwayland 24.1.6-1
xorg-xwd 1.0.9-2
xorgproto 2024.1-2
xvidcore 1.3.7-3
xwayland-run-git 0.0.4.r4.g3d0a384-1.1
xxhash 0.8.3-1
xz 5.8.1-1
yad 14.1-2
yajl 2.1.0-6
yaml-cpp 0.8.0-2
yamllint 1.37.0-1
yarn 1.22.22-2
yasm 1.3.0-7
yay 12.4.2-1.1
yt-dlp 2025.03.31-1
zbar 0.23.93-4
zen-browser-bin 1.11b-2
zenity 4.1.90-1
zeromq 4.3.5-2
zig 0.13.0-2
zimg 3.0.5-1
zip 3.0-11
zix 0.6.2-1
zlib 1:1.3.1-2
zoom 6.4.3-1
zsh 5.9-5
zstd 1.5.7-2
zvbi 0.2.44-1
zxing-cpp 2.3.0-4
zycore-c 1.5.0-1
zydis 4.1.0-1
zziplib 0.13.78-1
```
</details>
### 2.5. AppImages
These are portable applications Naomi has installed locally.
```txt frame="terminal" title="ls ~/Applications"
0ad-0.0.27-rc1-27645-alpha-2306180726-jammy-x86_64_cbded66ae29716e935227ef4cb299d37.AppImage
Beyond-All-Reason-1.2988.0_9fb3f6a9297f1ec22d919932ae885bd3.AppImage
CameoMod-playtest-20250216-x86_64_a41bc76b4c0745adb0dfb1d5c63cfcf0.AppImage
CombinedArms-1.05.1-x86_64_417a5cc685d34536edaac5b40061bf46.AppImage
EternalLands-Linux-x86_64_1.9.7.0_19d1a1810624505aee843061155a6894.AppImage
Fractured Realms-release-v1.2_20230723-x86_64_7ab34cf8b77e62529b1195e8770eabd0.AppImage
GeneralsAlpha-gen-20240829-x86_64_8fbe511107c1325422c496eb7b4172d1.AppImage
naev-0.12.3-linux-x86-64_239e0699e5a8136b4eca1f590e3a23fb.AppImage
OpenDR-devtest-20221110-x86_64_10791154aedc0626e152a7902cfa1e68.AppImage
OpenHV-20240908-x86_64_d473508a0c9592b269617989d8a68cc8.AppImage
OpenRA-Dune-2000-x86_64_9fe830325d03aa43cd4c105115f185d4.AppImage
OpenRA-Red-Alert-x86_64_f1d7ea8052bd4fe918d45a31ba851215.AppImage
OpenRA-Tiberian-Dawn-x86_64_9c8e76f77716f90a652120ee035be3a5.AppImage
OpenSA-20230905-x86_64_240722c9473761e361e5e363f877603e.AppImage
openttd-14.1-linux-generic-amd64
Romanovs.Vengeance-playtest-20241215-x86_64_cb20ddd4d79808397df6503848e85692.AppImage
ShatteredParadise-playtest-20241231-x86_64_be7a765e388c6b6f9fd9d318f1687fd3.AppImage
Widelands-1.2.1-x86_64_769576562cd3efe6293fcd7e9b7023ce.AppImage
YouMustConstructAdditional-v0.95.49-x86_64_e20cd34f19f938052377b61b4d250292.AppImage
```
## 3. Configuration
Naomi's specific application configurations are noted here for posterity.
### 3.1. `git`
The most important thing to note is that Naomi signs her commits with her SSH key, not a GPG key.
```ini frame="code" title="~/.gitconfig"
[gpg]
format = ssh
[gpg "ssh"]
program = /opt/1Password/op-ssh-sign
[commit]
gpgsign = true
[user]
signingkey = ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDFObmWsDIA2Y95uY8PVmepbTkjG2EFp36PTcnHCi/MYlaBlVPT8c0ixLj6XMwGaTWiiw+SaoSds1zf/WFRfkd8KujWWLQg0xE9Nh0oThF07HwoRIvi1YuAa69TmOSaNaT1YjX5uCIp7QNck5AkLckMK6v5Vhb5XPwZktEp96IBCQqdBcV2F6wX6Oro73iqGCoiAcUZRzeA9dzLtNCg77n3hFKrSeNpuXzX/3SiVOx9x2+3vZdyLlCXogQvH29LU8exPaYOor2h+ijPLVRivlO+yyt6s11iArrVhgINRpTEDbHde7GtNzQeLRNdnFyFSwkj1KPVpbfvAWDTbzteCawic0OP5swQ0rFLtjSnQI+K2GqFFu+Nvypz3YX5ozqTBSFudyI5XZgLObIsR/Lug6zEdRnvoKDnHcBqRxnZeHOD5Mq+oHrHSyA8KROLH+XmtFwdtyakw1NnuwLrFM08HOHKFBj66zgU1SSNjUiUkv3lBIhlDIVAWDk7XG5yRJx0GzcNLA4vvIKhS3SVOqZezRVrfB60SglOIPOgxjvWJuY9jCTcN5aKBT46+Hjam3dF754dx3rG103Azvn0/b3Hicf30+LpRNtxi4k+QdD4q/LlRmsrSl00S4wcfaKeza7L8WAAUNmfCqeApJ06U1O+TopJikzT5bT5ObHyDeUgHdB1jw==
name = Naomi Carrigan
email = commits@nhcarrigan.com
[core]
editor = emacs -nw
[push]
autoSetupRemote = true
[init]
defaultBranch = main
[credential]
helper = store
```
### 3.2. `zsh`
Naomi uses Oh My ZSH instead of bash.
```bash frame="code" title="~/.zshrc"
####################
# Dotfile for Oh My Zsh.
# Installs on top of zsh,
# so install that first.
####################
# SYSTEM
####################
# Path to your Oh My Zsh installation.
export ZSH="$HOME/.oh-my-zsh"
# Plugins
plugins=(git zsh-256color zsh-autosuggestions zsh-syntax-highlighting)
source $ZSH/oh-my-zsh.sh
# We're lazy. :3
alias zshrc="source ~/.zshrc"
# We hate nano
alias nano="emacs -nw"
alias code="codium ."
# Listing files
alias ls="eza -ahl --extended --octal-permissions --git -g"
# More details on which thing to run
alias which="type -a"
# Untar
alias untar="tar -xvzf"
# Packages
alias yay-list="yay -Qs"
alias yay-clean="yay -Scc"
alias yay-update="yay -Syu"
alias yay-new="yay -Syuu"
alias yay-install="yay" # Just for consistency.
alias yay-uninstall="yay -R"
# File System
alias .2="cd ../.."
alias .3="cd ../../.."
alias .4="cd ../../../.."
alias .5="cd ../../../../.."
alias delete="rm -rf"
alias cp="cp -i"
alias mkdir="mkdir -p"
# git
alias clone="git clone"
alias comm="git add -A && git commit"
alias commv="git add -A && git commit --no-verify"
alias push="git push"
alias pull="git pull"
alias upmain="git checkout main && git fetch upstream && git merge upstream/main"
alias co="git checkout"
alias cob="git checkout -b"
alias fcc="cd ~/code/freecodecamp"
alias ridm="cd ~/code/rythm"
alias sc="cd ~/code/streamcord"
alias dg="cd ~/code/deepgram"
alias naomi="cd ~/code/naomi"
alias hug="curl -L https://api.github.com/octocat\?s\=You%20deserve%20a%20hug"
alias tunnel2="cloudflared tunnel --config ~/.cloudflared/local2.yml run local2"
alias tunnel1="cloudflared tunnel --config ~/.cloudflared/local.yml run local"
# Silly
alias tree="cbonsai -S"
alias poke="pokemon-colorscripts --no-title -r"
alias fish="asciiquarium --transparent"
alias matrix="cmatrix -r"
alias pipe="pipes.sh"
alias hacker="hollywood"
# THE FUCK
eval $(thefuck --alias)
alias shit="fuck"
alias damn="fuck"
alias crap="fuck"
# pnpm
export PNPM_HOME="/home/naomi/.local/share/pnpm"
case ":$PATH:" in
*":$PNPM_HOME:"*) ;;
*) export PATH="$PNPM_HOME:$PATH" ;;
esac
# pnpm end
export PATH=$HOME/.local/bin:$PATH
# sonarqube
export SONAR_SCANNER_HOME="/opt/sonar-scanner"
export PATH=${SONAR_SCANNER_HOME}/bin:${PATH}
# dotnet
export PATH="$PATH:/home/naomi/.dotnet/tools"
# Starship
eval "$(starship init zsh)"
```
#### 3.2.1. `starship`
Naomi uses `starship` to manage her customised shell prompt.
Note that her config requires your terminal be using a Nerd Font, or the symbols will not render.
```toml frame="code" title="~/.config/starship.toml"
"$schema" = 'https://starship.rs/config-schema.json'
format = '''
┌─  $username$hostname$fill$git_commit$git_branch󰊢 ─┐
│  $directory$fill$git_state$git_metrics$git_status│
└─  $dotnet$nodejs$golang$python$dart$c$gradle$java$kotlin$php$ruby$rust$package$fill$status$cmd_duration$time ─┘'''
right_format = '$custom'
add_newline = false
[fill]
symbol = " "
[username]
show_always = true
format = '[$user]($style) @ '
[hostname]
ssh_only = false
format = '[$hostname]($style)'
[directory]
truncate_to_repo = true
truncation_length = 5
truncation_symbol = ""
[nodejs]
format = '[$symbol($version )]($style)'
[dotnet]
format = '[$symbol($version )(🎯 $tfm )]($style)'
detect_extensions = ['csproj', 'fsproj', 'xproj', 'sln']
[golang]
format = '[$symbol($version )]($style)'
[python]
format = '[${symbol}${pyenv_prefix}(${version} )(\($virtualenv\) )]($style)'
[dart]
format = '[$symbol($version )]($style)'
[c]
format = '[$symbol($version(-$name) )]($style)'
[gradle]
format = '[$symbol($version )]($style)'
[java]
format = '[${symbol}(${version} )]($style)'
[kotlin]
format = '[$symbol($version )]($style)'
[php]
format = '[$symbol($version )]($style)'
[ruby]
format = '[$symbol($version )]($style)'
[rust]
format = '[$symbol($version )]($style)'
[cmd_duration]
format = 'took [$duration]($style) at '
min_time = 0
[git_commit]
only_detached = false
format = '[$hash$tag]($style) '
[git_status]
conflicted = '!'
untracked = 'u'
modified = 'm'
staged = 's'
renamed = 'r'
deleted = 'd'
stashed = ''
[git_metrics]
disabled = false
[package]
format = '[$symbol$version]($style) '
display_private = true
[time]
disabled = false
format = '[$time]($style) '
[status]
format = '[$symbol $status]($style) '
disabled = false
success_symbol = '✅'
[custom.mommy]
command = "mommy -1 -s $status"
when = true
```
### 3.3. `pacman`
Naomi's package manager configuration.
```ini frame="code" title="/etc/pacman.conf"
[options]
HoldPkg = pacman glibc
Architecture = auto
CheckSpace
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[multilib]
Include = /etc/pacman.d/mirrorlist
[chaotic-aur]
Include = /etc/pacman.d/chaotic-mirrorlist
[sublime-text]
Server = https://download.sublimetext.com/arch/stable/x86_64
```
### 3.4 `sway`
```ini frame="code" title="~/.config/sway/config"
# Logo key. Use Mod1 for Alt.
set $mod Mod4
set $left Left
set $down Down
set $up Up
set $right Right
set $term ghostty
set $menu wofi --show=drun --allow-images
output HDMI-A-1 mode 1920x1080 pos 0 0
output DP-2 mode 1920x1080 pos 1920 0
output DP-3 mode 1920x1080 pos 3840 0
output DP-2 bg /home/naomi/cloud/Photos/background.png fill
output DP-3 bg /home/naomi/cloud/Photos/bg-right.png fill
output HDMI-A-1 bg /home/naomi/cloud/Photos/bg-left.png fill
bindsym $mod+q exec $term
bindsym $mod+c kill
bindsym $mod+r exec $menu
bindsym $mod+e exec thunar
bindsym $mod+v floating toggle
bindsym $mod+x exec cliphist list | wofi --dmenu | cliphist decode | wl-copy
bindsym $mod+f fullscreen
exec swayidle -w \
timeout 240 'notify-send "Locking workstation due to inactivity"' \
resume 'notify-send "Cancelled lock"' \
timeout 300 'swaylock' \
before-sleep 'swaylock'
# Move with mod + left click, resize with mod + right click
floating_modifier $mod normal
input * {
xkb_layout us
xkb_numlock enabled
pointer_accel 0
accel_profile flat
}
focus_follows_mouse yes
default_border none
default_floating_border none
font pango:OpenDyslexicMono 10
#
# Keybinds:
#
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
bindsym $mod+Shift+h splith
bindsym $mod+Shift+v splitv
bindsym $mod+Shift+s layout stacking
bindsym $mod+Shift+w layout tabbed
bindsym $mod+Shift+e layout toggle split
bindsym $mod+l exec swaylock
bindsym $mod+p focus parent
bindsym $mod+Shift+space focus mode_toggle
bindsym $mod+period exec rofimoji -a copy --skin-tone light
bindsym $mod+period+Ctrl exec rofimoji -f all -a copy --skin-tone light
bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -1%
bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +1%
bindsym --locked XF86AudioPlay exec playerctl play-pause
bindsym --locked XF86AudioNext exec playerctl next
bindsym --locked XF86AudioPrev exec playerctl previous
bindsym Print exec grimshot --notify --cursor copy area
bindsym Ctrl+Print exec grimshot --notify --cursor --wait 5 copy area
bindsym $mod+Shift+r mode "resize"
bindsym $mod+Shift+c exec swaymsg reload
#
# Workspace bindings:
#
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
bindsym $mod+Shift+1 workspace number 11
bindsym $mod+Shift+2 workspace number 12
bindsym $mod+Shift+3 workspace number 13
bindsym $mod+Shift+4 workspace number 14
bindsym $mod+Shift+5 workspace number 15
bindsym $mod+Shift+6 workspace number 16
bindsym $mod+Shift+7 workspace number 17
bindsym $mod+Shift+8 workspace number 18
bindsym $mod+Shift+9 workspace number 19
bindsym $mod+Shift+0 workspace number 20
workspace 1 output HDMI-A-1
workspace 2 output DP-3
workspace 3 output DP-2
workspace 4 output HDMI-A-1
workspace 5 output HDMI-A-1
workspace 6 output HDMI-A-1
workspace 7 output HDMI-A-1
workspace 8 output HDMI-A-1
workspace 9 output HDMI-A-1
workspace 10 output DP-3
workspace 11 output DP-2
workspace 12 output DP-2
workspace 13 output DP-2
workspace 14 output DP-2
workspace 15 output DP-2
workspace 16 output DP-3
assign [title=".*Discord.*"] 1
assign [title=".*LibreWolf.*"] 2
assign [title=".*Google Chat.*"] 4
assign [title=".*Slack.*"] 5
assign [title=".*Roam.*"] 6
assign [title=".*WasIstLos.*"] 7
assign [title=".*NHCarrigan.*"] 8
assign [title=".*nhcarrigan.*"] 8
assign [title=".*NHcarrigan.*"] 8
assign [title=".*HexChat.*"] 9
assign [title=".*Amberol.*"] 10
assign [title=".*Sublime Text.*"] 11
assign [title=".*Thunderbird.*"] 12
assign [title=".*1Password.*"] 13
assign [title=".*Espanso.*"] 14
assign [title=".*Steam.*"] 15
assign [title=".*FreeTube.*"] 16
for_window [title=".*Discord.*"] opacity 0.9
for_window [title=".*VSCodium.*"] opacity 0.9
for_window [title=".*Amberol.*"] opacity 0.9
for_window [title=".*Sublime Text.*"] opacity 0.9
for_window [title=".*Thunderbird.*"] opacity 0.9
for_window [title=".*1Password.*"] opacity 0.9
for_window [title=".*Slack.*"] opacity 0.9
for_window [title=".*Google Chat.*"] opacity 0.9
for_window [title=".*WasIstLos.*"] opacity 0.9
#
# Resizing containers:
#
mode "resize" {
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
# Return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
#
# Startup Apps:
#
# Clipboard manager
exec wl-paste --watch cliphist store
# This creates the GUI for apps to ask for sudo perms
exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec gsettings set org.gnome.desktop.interface gtk-theme "Sweet-Ambar-Blue-Dark-v40"
exec gsettings set org.gnome.desktop.interface color-scheme prefer-dark
exec gsettings set org.gnome.desktop.interface font-name 'OpenDyslexicMono 10'
exec gsettings set org.gnome.desktop.interface cursor-theme miku-cursor-linux
exec echo "Xcursor.theme: miku-cursor-linux" | xrdb -merge
exec aw-qt
exec aw-awatcher
# Actual apps
exec discord
exec librewolf
exec google-chat-linux
exec slack
exec roam
exec wasistlos
exec /home/naomi/Applications/Forum-linux-x64/Forum
exec /home/naomi/Applications/Code-linux-x64/Code
exec amberol
exec subl
exec thunderbird
exec 1password
exec steam
exec freetube
#
# Status Bar:
#
# Read `man 5 sway-bar` for more information about this section.
bar {
swaybar_command waybar
}
include /etc/sway/config.d/*
```
#### 3.4.1. `swaylock`
```ini frame="code" title="~/.config/swaylock/config"
# Background image
image=/home/naomi/cloud/Photos/bg-left.png
scaling=fill
screenshot=false
ignore-empty-password
show-failed-attempts
# Background effects
fade-in=0.2
effect-blur=8x2
effect-vignette=0.5:0.5
# Ring customization
indicator-radius=120
indicator-thickness=20
indicator-idle-visible
clock
clockoutline-color=abfcec
clock-color=04624f
clock-radius=60
clock-thickness=10
timestr=%H:%M:%S
datestr=%a, %B %e
# Colors
key-hl-color=04624f
separator-color=04624f
inside-color=04624fcc
inside-clear-color=04624fcc
inside-ver-color=04624fcc
inside-wrong-color=04624fcc
ring-color=abfcec
ring-clear-color=abfcec
ring-ver-color=abfcec
ring-wrong-color=cc8822
line-color=04624f
line-clear-color=04624f
line-ver-color=04624f
line-wrong-color=04624f
text-color=abfcec
text-clear-color=abfcec
text-ver-color=abfcec
text-wrong-color=abfcec
# Text customization
font=OpenDyslexicMono
font-size=24
```
### 3.5 Waybar
These manage Naomi's waybar instance.
#### `config.jsonc`
```json frame="code" title="~/.config/waybar/config.jsonc"
{
"layer": "top",
"position": "top",
"mode": "dock",
"height": 15,
"exclusive": true,
"passthrough": false,
"gtk-layer-shell": true,
"reload_style_on_change": true,
"modules-left": ["custom/ws", "sway/workspaces", "sway/window"],
"modules-center": [
"custom/storage",
"custom/cpuinfo",
"memory",
"cpu",
"custom/gpu-usage",
"custom/arch",
"clock#time",
"clock#date",
"custom/weather"
],
"modules-right": [
"pulseaudio",
"custom/updates",
"tray",
"custom/notifs",
"custom/power"
],
"custom/notifs": {
"exec": "~/.config/waybar/scripts/dunst.sh",
"return-type": "json",
"interval": 1,
"tooltip": false,
"on-click": "dunstctl history-pop",
"on-click-right": "dunstctl set-paused toggle"
},
"custom/ws": {
"format": "",
"tooltip": false,
"on-click": "wofi --show=drun --allow-images"
},
"custom/gpu-usage": {
"format": "{icon} {0}",
"exec": "gpu-usage-waybar",
"return-type": "json",
"format-icons": "󰾲",
"on-click": "kitty nvtop",
"min-length": 8,
"max-length": 10
},
"custom/weather": {
"exec": "python ~/.config/waybar/scripts/weather.py",
"restart-interval": 300,
"return-type": "json",
"on-click": "zen-browser https://weather.com/weather/today/l/f1fc8cc5233b6f8620dda922b1cb97b5cc8781f508c572de2f969ff79c7b293a"
},
"custom/updates": {
"format": "{} {icon}",
"return-type": "json",
"format-icons": {
"has-updates": "<span foreground='#cc0099'>󱍷</span>",
"updated": "<span foreground='#00b300'>󰂪</span>"
},
"exec-if": "which waybar-module-pacman-updates",
"exec": "waybar-module-pacman-updates --interval-seconds 5 --network-interval-seconds 300",
"min-length": 4,
"max-length": 8,
"on-click": "ghostty -e yay -Syu"
},
"sway/workspaces": {
"all-outputs": false,
"active-only": false,
"on-click": "activate",
"disable-scroll": true,
"sort-by-number": true
},
"sway/window": {
"format": "{}",
"separate-outputs": true,
"rewrite": {
"naomi@technomancer:(.*)": " $1",
"(.*)naomi@technomancer:~": " naomi@technomancer",
"(.*) - Visual Studio Code": "<span foreground='#89b4fa'>󰨞</span> $1",
"(.*) - VSCodium": "<span foreground='#89b4fa'>󰨞</span> $1",
"(.*) - Sublime Text(.*)": "<span foreground='#f9e2af'>󰘦</span> $1",
"(.*)Zen Browser": "<span foreground='#94e2d5'>󰇧</span> $1",
"(.*) — LibreWolf": "<span foreground='#94e2d5'>󰇧</span> $1",
"(.*) — 1Password": "<span foreground='#89b4fa'>󰢁</span> $1",
"(.*) - Slack": "<span foreground='#f38ba8'>󰒱</span> $1",
"(.*) - Chat": "<span foreground='#a6e3a1'>󰊭</span> $1",
"(.*) - Roam": "<span foreground='#cba6f7'></span> $1",
"(.*) - Mozilla Thunderbird": "<span foreground='#fab387'>󰊫</span> $1",
"(.*)Steam": "<span foreground='#89b4fa'>󰓓</span> Steam",
"(.*) - Discord": "<span foreground='#5865F2'></span> $1",
"(.*)GNU Image Manipulation Program": "<span foreground='#a6adc8'></span> $1",
"(.*)GIMP": "<span foreground='#a6adc8'></span> $1",
"OBS(.*)": "<span foreground='#a6adc8'></span> OBS Studio",
"(.*) - FreeTube": "<span foreground='#FF1716'></span> $1",
"WasIstLos": "<span foreground='#02FB00'></span> WasIstLos",
"(.*).jpg": " $1.jpg",
"(.*).png": " $1.png",
"(.*).svg": " $1.svg",
"(.*)Thunar": " $1",
"Espanso.*": "<span foreground='#f9e2af'>󰌵</span> Espanso",
"(.*) - NHCarrigan": "<span foreground='#f9e2af'></span> $1",
"": "<span foreground='#cba6f7'></span> Naomi 󰅂 Technomancer"
}
},
"custom/cpuinfo": {
"exec": "~/.config/waybar/scripts/cpuinfo.sh",
"return-type": "json",
"format": "{}",
"tooltip": true,
"interval": 5,
"on-click": "ghostty -e watch sensors"
},
"memory": {
"states": { "c": 90 },
"format": "󰘚 {percentage}%",
"format-c": "<span foreground='#cc0000'>󰀪</span> {percentage}%",
"tooltip": true,
"tooltip-format": "{used:0.1f}GB / {total:0.1f}GB",
"interval": 20,
"on-click": "ghostty -e btop"
},
"cpu": {
"format": "󰻠 {usage}%",
"tooltip": true,
"interval": 5,
"on-click": "ghostty -e htop"
},
"custom/arch": {
"format": "",
"tooltip": true,
"tooltip-format": "Arch Version: {}",
"interval": 86400,
"exec": "uname -r",
"on-click": "ghostty"
},
"clock#time": {
"format": "󱑂 {:%H:%M:%S (%Z)} ",
"tooltip": true,
"tooltip-format": "{tz_list}",
"interval": 1,
"on-click": "gnome-clocks",
"timezones": [
"America/Los_Angeles",
"America/Chicago",
"Europe/London",
"Europe/Berlin",
"Asia/Tel_Aviv",
"Asia/Tokyo"
]
},
"clock#date": {
"format": "󱨴 {:L%A, %d %B}",
"tooltip-format": "<tt>{calendar}</tt>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"on-click": "thunderbird",
"on-click-right": "mode",
"format": {
"months": "<span color='#f5e0dc'><b>{}</b></span>",
"weekdays": "<span color='#f9e2af'><b>{}</b></span>",
"today": "<span color='#f38ba8'><b>{}</b></span>"
}
},
"actions": { "on-click-right": "mode" }
},
"pulseaudio": {
"format": "<span foreground='#00b300'>{icon}</span> {volume}%",
"format-muted": "<span foreground='#cc0099'></span> {volume}%",
"format-icons": {
"headphone": "󰋋",
"default": ["󰖀", "󰕾"]
},
"on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle",
"on-click-right": "pavucontrol -t 3",
"on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +1%",
"on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -1%",
"scroll-step": 10
},
"custom/power": {
"format": "<span foreground='#cc0000'></span>",
"tooltip": false,
"on-click": "swaylock",
"on-click-right": "shutdown now",
"interval": 86400
},
"tray": {
"icon-size": 15,
"spacing": 5,
"show-passive-items": true
},
"custom/storage": {
"format": "{}",
"return-type": "json",
"tooltip": true,
"interval": 10,
"exec": "~/.config/waybar/scripts/disk-use.sh",
"on-click": "baobab"
}
}
```
#### `style.css`
```css frame="code" title="~/.config/waybar/style.css"
#waybar {
border: none;
font-family: "OpenDyslexicM Nerd Font";
font-weight: bold;
font-size: 10px;
color: #ffb6c1;
text-shadow: 0px 0px 5px;
background: rgba(42, 10, 24, 0.8);
}
#workspaces button {
padding: 0px 3px;
color: #ffb6c1;
border-radius: 50%;
}
#tray menu {
background: rgba(42, 10, 24, 0.8);
color: #ffb6c1;
text-shadow: 0px 0px 5px;
}
#tray menu menuitem:hover {
background: rgba(255, 239, 239, 0.8);
color: #db7093;
}
tooltip {
color: #ffb6c1;
border: solid;
border-radius: 7px;
border-width: 1px;
border-color: #ffb6c1;
background-color: rgba(42, 10, 24, 0.8);
text-shadow: 0px 0px 5px;
}
.module {
background-color: rgba(42, 10, 24, 0.8);
border: solid;
border-radius: 10px;
border-width: 1px;
border-color: #ffb6c1;
padding: 0px 4px;
margin: 0px 0px 0px 0px;
}
.modules-left .module {
margin-right: 6px;
box-shadow: 2px 2px 3px #ffb6c177;
}
.modules-right .module {
margin-left: 6px;
box-shadow: -2px 2px 3px #ffb6c177;
}
.modules-center .module {
margin-left: 5px;
margin-right: 5px;
box-shadow: 0px 2px 3px #ffb6c177;
}
#custom-arch,
#custom-ws {
padding-left: 8px;
padding-right: 12px;
}
#custom-notifs,
#custom-power {
padding-left: 8px;
padding-right: 10px;
}
#workspaces button:hover {
background: rgba(255, 239, 239, 0.8);
color: #db7093;
}
#workspaces button.visible {
background: rgba(255, 239, 239, 0.8);
color: #db7093;
}
```
#### Scripts
There are a few scripts necessary for waybar to work.
<details>
<summary><code>disk-use.sh</code></summary>
```sh frame="code" title="~/.config/waybar/scripts/disk-use.sh"
#!/usr/bin/env sh
home_use=$(df -h /home | tail -1);
read -ra home_array <<< "$home_use"
boot_use=$(df -h /boot | tail -1);
read -ra boot_array <<< "$boot_use"
root_use=$(df -h / | tail -1);
read -ra root_array <<< "$root_use"
text=" ${home_array[2]} / ${home_array[1]}";
tooltip="Home: ${home_array[2]} / ${home_array[1]} (${home_array[4]})\nBoot: ${boot_array[2]} / ${boot_array[1]} (${boot_array[4]})\nRoot: ${root_array[2]} / ${root_array[1]} (${root_array[4]})";
echo "{\"text\":\"${text}\", \"tooltip\":\"${tooltip}\"}";
```
</details>
<details>
<summary><code>cpuinfo.sh</code></summary>
```sh frame="code" title="~/.config/waybar/scripts/cpuinfo.sh"
#!/usr/bin/env sh
model=$(cat /proc/cpuinfo | grep 'model name' | head -n 1 | awk -F ': ' '{print $2}')
utilization=$(top -bn1 | awk '/^%Cpu/ {print 100 - $8}')
freqlist=$(cat /proc/cpuinfo | grep "cpu MHz" | awk '{ print $4 }')
maxfreq=$(cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq | sed 's/...$//')
frequency=$(echo $freqlist | tr ' ' '\n' | awk "{ sum+=\$1 } END {printf \"%.0f/$maxfreq MHz\", sum/NR}")
temp=$(sensors | awk '/Package id 0/ {print $4}' | awk -F '[+.]' '{print $2}')
if [ -z "$temp" ]; then
temp=$(sensors | awk '/Tctl/ {print $2}' | tr -d '+°C')
fi
if [ -z "$temp" ]; then
temp="N/A"
fi
set_ico="{\"thermo\":{\"0\":\"󱃃\",\"45\":\"󰔏\",\"65\":\"󱃂\",\"85\":\"<span foreground='#cc0000'>󰸁</span>\"},\"util\":{\"0\":\"󰾆\",\"30\":\"󰾅\",\"60\":\"󰓅\",\"90\":\"<span foreground='#cc0000'>󰀪</span>\"}}"
eval_ico() {
map_ico=$(echo "${set_ico}" | jq -r --arg aky "$1" --argjson avl "$2" '.[$aky] | keys_unsorted | map(tonumber) | map(select(. <= $avl)) | max')
echo "${set_ico}" | jq -r --arg aky "$1" --arg avl "$map_ico" '.[$aky] | .[$avl]'
}
thermo=$(eval_ico thermo $temp)
speedo=$(eval_ico util $utilization)
echo "{\"text\":\"${thermo} ${temp}°C\", \"tooltip\":\"${model}\n${thermo} Temperature: ${temp}°C\n${speedo} Utilization: ${utilization}%\n󰘚 Clock Speed: ${frequency}\"}"
```
</details>
<details>
<summary><code>dunst.sh</code></summary>
```sh frame="code" title="~/.config/waybar/scripts/dunst.sh"
#!/bin/bash
if dunstctl is-paused | grep -q "true"; then
echo '{"text": "<span foreground=\"#cc0099\"></span>", "class": "paused"}'
else
echo '{"text": "<span foreground=\"#00b300\"></span>", "class": "active"}'
fi
```
</details>
<details>
<summary><code>weather.py</code></summary>
```py frame="code" title="~/.config/waybar/scripts/weather.py"
#!/usr/bin/env python
import subprocess
from pyquery import PyQuery
import json
weather_icons = {
"sunnyDay": "<span foreground='#dbd402'></span>",
"clearNight": "<span foreground='#3239fc'></span>",
"cloudyFoggyDay": "<span foreground='#e0dc62'></span>",
"cloudyFoggyNight": "<span foreground='#6368f9'></span>",
"rainyDay": "<span foreground='#dddba1'></span>",
"rainyNight": "<span foreground='#6c71fc'></span>",
"snowyIcyDay": "<span foreground='#cccbb7'></span>",
"snowyIcyNight": "<span foreground='#9c9ffc'></span>",
"severe": "<span foreground='#db0202'></span>",
"default": "",
}
location_id = "f1fc8cc5233b6f8620dda922b1cb97b5cc8781f508c572de2f969ff79c7b293a"
url = "https://weather.com/weather/today/l/" + location_id
html_data = PyQuery(url=url)
temp = html_data("span[data-testid='TemperatureValue']").eq(0).text()
status = html_data("div[data-testid='wxPhrase']").text()
status = f"{status[:16]}.." if len(status) > 17 else status
status_code = html_data("#regionHeader").attr("class").split(" ")[2].split("-")[2]
icon = (
weather_icons[status_code]
if status_code in weather_icons
else weather_icons["default"]
)
temp_feel = html_data(
"div[data-testid='FeelsLikeSection'] > span > span[data-testid='TemperatureValue']"
).text()
temp_feel_text = f"Feels like {temp_feel}F"
temp_min = (
html_data("div[data-testid='wxData'] > span[data-testid='TemperatureValue']")
.eq(0)
.text()
)
temp_max = (
html_data("div[data-testid='wxData'] > span[data-testid='TemperatureValue']")
.eq(1)
.text()
)
temp_min_max = f" {temp_min}\t\t {temp_max}"
wind_speed = html_data("span[data-testid='Wind']").text().split("\n")[1]
wind_text = f" {wind_speed}"
humidity = html_data("span[data-testid='PercentageValue']").text()
humidity_text = f" {humidity}"
visbility = html_data("span[data-testid='VisibilityValue']").text()
visbility_text = f" {visbility}"
air_quality_index = html_data("text[data-testid='DonutChartValue']").text()
prediction = html_data("section[aria-label='Hourly Forecast']")(
"div[data-testid='SegmentPrecipPercentage'] > span"
).text()
prediction = prediction.replace("Chance of Rain", "")
prediction = f"\n\n  (hourly) {prediction}" if len(prediction) > 0 else prediction
tooltip_text = str.format(
"\t\t{}\t\t\n{}\n{}\n{}\n\n{}\n{}\n{}{}",
f'<span size="xx-large">{temp}</span>',
f"<big>{icon}</big>",
f"<big>{status}</big>",
f"<small>{temp_feel_text}</small>",
f"<big>{temp_min_max}</big>",
f"{wind_text}\t{humidity_text}",
f"{visbility_text}\tAQI {air_quality_index}",
f"<i>{prediction}</i>",
)
out_data = {
"text": f"{icon} {temp}",
"alt": status,
"tooltip": tooltip_text,
"class": status_code,
}
print(json.dumps(out_data))
```
</details>
### 3.6 Ghostty
```ini frame="code" title="~/.config/ghostty/config"
font-family="OpenDyslexicM Nerd Font"
theme="SakuraDreamsDark"
background-opacity=0.8
gtk-titlebar=false
```
```ini frame="code" title="~/.config/ghostty/themes/SakuraDreamsDark"
palette = 0=#26010a
palette = 1=#ff66b2
palette = 2=#ff1493
palette = 3=#db7093
palette = 4=#b03060
palette = 5=#c71585
palette = 6=#d87093
palette = 7=#ff5c8a
palette = 8=#ff85a2
palette = 9=#ff004f
palette = 10=#ff3377
palette = 11=#ff77a8
palette = 12=#ff3b6f
palette = 13=#ff6b94
palette = 14=#ff96b5
palette = 15=#ffe6ee
background = #2a0a18
background-blur-radius = 20
foreground = #ffd1dc
selection-background = #b03060
selection-foreground = #ffe6ee
cursor-color = #ff3b6f
cursor-text = #ffe6ee
```
### 3.7 Discord
```json frame="code" title="~/.config/discord/settings.json"
{
"chromiumSwitches": {},
"IS_MAXIMIZED": false,
"IS_MINIMIZED": false,
"WINDOW_BOUNDS": {
"x": 22,
"y": 42,
"width": 1876,
"height": 1016
},
"SKIP_HOST_UPDATE": true,
"DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING": true,
"MINIMIZE_TO_TRAY": true
}
```
### 3.8 Hyfetch
There are two config files here.
```json frame="code" title="~/.config/hyfetch.json"
{
"preset": "transfeminine",
"mode": "rgb",
"light_dark": "dark",
"lightness": 0.81,
"color_align": {
"mode": "vertical",
"custom_colors": [],
"fore_back": []
},
"backend": "neofetch",
"args": null,
"distro": null,
"pride_month_shown": [],
"pride_month_disable": false,
"image": "/home/naomi/pics/profile.png"
}
```
```ini frame="code" title="~/.config/neofetch/config.conf"
home_disk_info() {
df -h | grep '/home$' | awk '{printf "%s: %s/%s (%s)", $NF, $3, $2, $5}'
}
boot_disk_info() {
df -h | grep '/boot$' | awk '{printf "%s: %s/%s (%s)", $NF, $3, $2, $5}'
}
root_disk_info() {
df -h | grep '/$' | awk '{printf "%s: %s/%s (%s)", $NF, $3, $2, $5}'
}
print_info() {
info title
info underline
info "OS" distro
info "├─Kernel" kernel
info "├─Locale" locale
info "├─Shell" shell
prin "├─WM" "$(sway --version)"
info "├─Terminal" term
info "└───Terminal Font" term_font
info "Host" model
info "├─BIOS" bios
info "├─CPU" cpu
info "├─GPU" gpu
info "├───GPU Driver" gpu_driver
prin "├─Disk" "$(home_disk_info)"
prin "├───Root" "$(root_disk_info)"
prin "├───Boot" "$(boot_disk_info)"
info "└─Memory" memory
prin ""
prin "Programming Languages"
info underline
prin "Bash" "$(bash --version | head -n1 | cut -d' ' -f4)"
prin "Clang" "$(clang --version | head -n1 | cut -d' ' -f3)"
prin "C++" "$(cpp --version | head -n1 | cut -d' ' -f3)"
prin "Dart" "$(dart --version | cut -d' ' -f4)"
prin "└─Flutter" "$(flutter --version | head -n1 | cut -d' ' -f2)"
prin "Dotnet" "$(dotnet --version)"
prin "└─C-sharp Compiler" "$(csc -v | head -n1 | cut -d' ' -f7)"
prin "Go" "$(go version | cut -d' ' -f3 | sed 's/go//')"
prin "Haskell" "$(ghc --version | head -n1 | cut -d' ' -f8)"
prin "└─Cabal" "$(cabal --version | head -n1 | cut -d' ' -f3)"
prin "Java" "$(java -version 2>&1 | head -n1 | cut -d' ' -f2 | sed 's/\"//g')"
prin "├─Gradle" "$(gradle -v | head -n3 | tail -n1 | cut -d' ' -f2)"
prin "└─Kotlin" "$(kotlin -version | cut -d' ' -f3)"
prin "Lua" "$(lua -v | cut -d' ' -f2)"
prin "PHP" "$(php -v | head -n1 | cut -d' ' -f2)"
prin "Python" "$(python --version | cut -d' ' -f2)"
prin "└─PIP" "$(pip --version | cut -d' ' -f2)"
prin "Node" "$(node -v)"
prin "├─NPM" "$(npm -v)"
prin "├─Yarn" "$(yarn -v)"
prin "└─PNPM" "$(pnpm -v)"
prin "Ruby" "$(ruby -v | cut -d' ' -f2)"
prin "Rust" "$(rustc --version | cut -d' ' -f2)"
prin "├─Rustup" "$(rustup -V | head -n1 | cut -d' ' -f2)"
prin "└─Cargo" "$(cargo version | cut -d' ' -f2)"
prin "TypeScript" "$(tsc -v | cut -d' ' -f2)"
prin "Zig" "$(zig version)"
prin ""
prin "Databases"
info underline
prin "MongoDB" "$(mongod --version | head -n1 | cut -d' ' -f3)"
prin "└─Mongo Shell" "$(mongo --version | head -n1 | cut -d' ' -f4)"
prin "MySQL" "$(mysql --version | cut -d' ' -f4)"
prin "PostgreSQL" "$(psql --version | cut -d' ' -f3)"
prin "SQlite" "$(sqlite3 --version | cut -d' ' -f1)"
prin ""
prin "Tools"
info underline
prin "Browser" "Zen $(zen-browser --version | cut -d' ' -f3)"
prin "Editor" "Emacs $(emacs --version | head -n1 | cut -d' ' -f3)"
prin "└─Nano" "$(nano --version | head -n1 | cut -d' ' -f5)"
}
title_fqdn="on"
kernel_shorthand="on"
distro_shorthand="off"
os_arch="on"
memory_percent="on"
memory_unit="gib"
mem_precision=2
shell_path="on"
shell_version="on"
speed_type="bios_limit"
speed_shorthand="on"
cpu_brand="on"
cpu_speed="on"
cpu_cores="logical"
cpu_temp="on"
gpu_brand="on"
gpu_type="all"
refresh_rate="on"
gtk3="on"
bold="on"
underline_enabled="on"
underline_char="-"
separator=":"
block_range=(0 15)
color_blocks="on"
block_width=3
block_height=1
col_offset="auto"
bar_char_elapsed="-"
bar_char_total="="
bar_border="on"
bar_length=15
bar_color_elapsed="distro"
bar_color_total="distro"
memory_display="on"
disk_display="on"
image_backend="kitty"
image_source="/home/naomi/pics/profile.png"
image_loop="off"
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
crop_mode="normal"
crop_offset="center"
image_size="auto"
catimg_size="2"
gap=3
yoffset=0
xoffset=0
background_color=
stdout="off"
```
### 3.9 Wofi
```css frame="code" title="~/.config/wofi/style.css"
#window {
background-color: rgba(42, 10, 24, 0.75);
border-radius: 1rem;
font-size: 1.2rem;
font-family: "OpenDyslexicM Nerd Font";
text-shadow: 0px 0px 5px;
}
#window #outer-box #input {
background-color: rgba(42, 10, 24, 0.75);
color: #ffb6c1;
border: none;
border-bottom: 1px solid rgba(24, 24, 24, 0.2);
padding: 0.8rem 1rem;
font-size: 1.5rem;
border-radius: 1rem 1rem 0 0;
}
#window #outer-box #input::placeholder {
color: #ffb6c1;
}
#window #outer-box #input:focus, #window #outer-box #input:focus-visible, #window #outer-box #input:active {
border: none;
outline: 2px solid transparent;
outline-offset: 2px;
}
#window #outer-box #scroll #inner-box #entry {
color: #ffb6c1;
background-color: rgba(24, 24, 24, 0.1);
padding: 0.6rem 1rem;
}
#window #outer-box #scroll #inner-box #entry #img {
width: 1rem;
margin-right: 0.5rem;
}
#window #outer-box #scroll #inner-box #entry:selected {
color: #ffb6c1;
background-color: rgba(255, 255, 255, 0.1);
outline: none;
}
#text:selected {
color: rgb(219, 112, 147);
background-color: #ffb6c1;
}
#img:selected {
background: none;
}
```
### 3.10 Dunst
`dunst` manages Naomi's system notifications, and (like many other aspects of her environment) has been highly customised.
```toml frame="code" title="~/.config/dunst/dunstrc"
[global]
follow=mouse
width=(0, 750)
height=(0, 250)
notification_limit=10
origin=center
icon_corner_radius=10
sort=update
word_wrap=false
ellipsize=end
layer=overlay
show_age_threshold=-1
stack_duplicates=false
corner_radius=10
mouse_left_click=close_current
mouse_right_click=do_action, close_current
mouse_middle_click=none
font=OpenDyslexicMono 12
format="<b>%a - %s</b>\n<big>%b</big>"
background="#2a0a1899"
foreground="#ffb6c1"
max_icon_size=32
icon_corner_radius=10
frame_color="#ffefef"
```
## 4. Code Editors
These are the code editors Naomi uses.
### 4.1. VSCodium
Naomi uses VSCodium as her current code editor.
#### 4.1.1. Settings
This is Naomi's configuration.
```json frame="code" title="~/.config/VSCodium/User/settings.json"
{
"workbench.iconTheme": "vscode-icons",
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"javascript.preferences.importModuleSpecifierEnding": "js",
"javascript.updateImportsOnFileMove.enabled": "always",
"typescript.preferences.importModuleSpecifierEnding": "js",
"typescript.preferences.preferTypeOnlyAutoImports": true,
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"typescript.updateImportsOnFileMove.enabled": "always",
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"editor.fontFamily": "'OpenDyslexicM Nerd Font'",
"files.exclude": {
"**/node_modules/": true
},
"editor.fontLigatures": true,
"editor.codeLensFontFamily": "'OpenDyslexicM Nerd Font'",
"editor.inlineSuggest.fontFamily": "'OpenDyslexicM Nerd Font'",
"editor.inlayHints.fontFamily": "'OpenDyslexicM Nerd Font'",
"terminal.integrated.fontFamily": "'OpenDyslexicM Nerd Font'",
"notebook.output.fontFamily": "'OpenDyslexicM Nerd Font'",
"chat.editor.fontFamily": "'OpenDyslexicM Nerd Font'",
"markdown.preview.fontFamily": "'OpenDyslexicM Nerd Font'",
"colorize.languages": [
"html",
"javascript",
"typescript",
"json",
"typescriptreact",
"css",
"sass",
"scss",
"less",
"postcss",
"sss",
"stylus",
"xml",
"svg"
],
"cSpell.language": "en-GB",
"http.proxyAuthorization": null,
"github.copilot.enable": {
"*": true,
},
"discord.detailsIdling": "She's not editing a file...",
"discord.detailsEditing": "{file_name}:L{current_line}:{current_column}",
"discord.lowerDetailsEditing": "{workspace}/{git_branch}",
"discord.largeImageIdling": "Nothing to see here...",
"discord.lowerDetailsIdling": "Off in lala land...",
"editor.inlayHints.enabled": "off",
"workbench.colorCustomizations": {
"editor.lineHighlightBackground": "#1073cf2d",
"editor.lineHighlightBorder": "#9fced11f"
},
"editor.wordWrap": "off",
"diffEditor.wordWrap": "off",
"editor.guides.indentation": false,
"editor.guides.bracketPairs": false,
"sonarlint.connectedMode.connections.sonarcloud": [],
"terminal.integrated.lineHeight": 1,
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"debug.console.fontFamily": "'OpenDyslexicM Nerd Font'",
"scm.inputFontFamily": "'OpenDyslexicM Nerd Font'",
"errorLens.fontFamily": "'OpenDyslexicM Nerd Font'",
"gitlens.currentLine.fontFamily": "'OpenDyslexicM Nerd Font'",
"gitlens.blame.fontFamily": "'OpenDyslexicM Nerd Font'",
"sonarlint.disableTelemetry": true,
"explorer.confirmDelete": false,
"wordcounter.include_eol_chars": false,
"wordcounter.side.left": [
"word",
"char"
],
"explorer.confirmDragAndDrop": false,
"vscord.app.name": "VSCodium",
"vscord.status.buttons.button1.active.label": "Wanna chat?",
"vscord.status.buttons.button1.active.url": "https://chat.nhcarrigan.com",
"vscord.status.buttons.button2.active.enabled": true,
"vscord.status.buttons.button2.active.url": "https://chat.nhcarrigan.com",
"vscord.status.buttons.button2.active.label": "Wanna chat?",
"vscord.status.buttons.button2.enabled": true,
"vscord.status.buttons.button2.idle.enabled": true,
"vscord.status.buttons.button2.idle.label": "Wanna chat?",
"vscord.status.buttons.button2.idle.url": "https://chat.nhcarrigan.com",
"vscord.status.buttons.button2.inactive.enabled": true,
"vscord.status.buttons.button2.inactive.label": "Wanna chat?",
"vscord.status.buttons.button2.inactive.url": "https://chat.nhcarrigan.com",
"vscord.status.buttons.button2.git.active.enabled": true,
"vscord.status.buttons.button2.git.active.label": "Wanna chat?",
"vscord.status.buttons.button2.git.active.url": "https://chat.nhcarrigan.com",
"vscord.status.buttons.button2.git.idle.enabled": true,
"vscord.status.buttons.button2.git.idle.label": "Wanna chat?",
"vscord.status.buttons.button2.git.inactive.enabled": true,
"vscord.status.buttons.button2.git.idle.url": "https://chat.nhcarrigan.com",
"vscord.status.buttons.button2.git.inactive.label": "Wanna chat?",
"vscord.status.buttons.button2.git.inactive.url": "https://chat.nhcarrigan.com",
"sonarlint.connectedMode.connections.sonarqube": [
{
"serverUrl": "https://quality.nhcarrigan.com",
"connectionId": "Naomi"
}
],
"window.menuBarVisibility": "toggle",
"workbench.colorTheme": "Sakura Dreams (Dark)",
}
```
#### 4.1.2. Extensions
Naomi uses the following extensions sourced from the Pulsar marketplace. This list does not include the core extensions bundled with the editor.
```txt frame="terminal" title="codium --list-extensions"
1password.op-vscode
aaron-bond.better-comments
addy2142.avalonia-templates
adpyke.codesnap
ahmadalli.vscode-nginx-conf
anchoreinc.grype-vscode
aquasecurityofficial.trivy-vulnerability-scanner
astro-build.astro-vscode
avaloniateam.vscode-avalonia
bmewburn.vscode-intelephense-client
bradlc.vscode-tailwindcss
bungcip.better-toml
chrmarti.regex
dabbinavo.xamlstyler
dart-code.dart-code
dart-code.flutter
dbaeumer.vscode-eslint
donjayamanne.githistory
eamodio.gitlens
esbenp.prettier-vscode
firefox-devtools.vscode-firefox-debug
fwcd.kotlin
github.copilot
github.copilot-chat
golang.go
haskell.haskell
ionide.ionide-fsharp
justusadam.language-haskell
jzmstrjp.color-the-tag-name
kirozen.wordcounter
leodevbro.blockman
leonardssh.vscord
mkxml.vscode-filesize
mrmlnc.vscode-scss
ms-dotnettools.csdevkit
ms-dotnettools.csharp
ms-dotnettools.dotnet-interactive-vscode
ms-dotnettools.vscode-dotnet-pack
ms-dotnettools.vscode-dotnet-runtime
ms-dotnettools.vscodeintellicode-csharp
ms-python.black-formatter
ms-python.debugpy
ms-python.pylint
ms-python.python
ms-python.vscode-pylance
ms-toolsai.jupyter
ms-toolsai.jupyter-keymap
ms-toolsai.jupyter-renderers
ms-toolsai.vscode-jupyter-cell-tags
ms-toolsai.vscode-jupyter-slideshow
ms-vscode.cmake-tools
ms-vscode.cpptools
ms-vscode.cpptools-extension-pack
ms-vscode.cpptools-themes
mskelton.npm-outdated
nhcarrigan.naomis-themes
oderwat.indent-rainbow
oracle.oracle-java
prisma.prisma
rebornix.ruby
redhat.java
rust-lang.rust-analyzer
sonarsource.sonarlint-vscode
streetsidesoftware.code-spell-checker
twxs.cmake
usernamehw.errorlens
visualstudioexptteam.intellicode-api-usage-examples
visualstudioexptteam.vscodeintellicode
vitest.explorer
vscjava.vscode-gradle
vscjava.vscode-java-debug
vscjava.vscode-java-dependency
vscjava.vscode-java-pack
vscjava.vscode-java-test
vscjava.vscode-maven
vscode-icons-team.vscode-icons
william-voyek.vscode-nginx
wingrunr21.vscode-ruby
wix.vscode-import-cost
xdebug.php-debug
yandeu.five-server
yoavbls.pretty-ts-errors
yutengjing.vscode-colorize-plus
yzane.markdown-pdf
ziglang.vscode-zig
```
#### 4.1.3. Themes
Naomi uses her own custom built themes, which can be found at https://git.nhcarrigan.com/nhcarrigan/vscode-themes
### 4.2. Emacs
Naomi uses `emacs` for her terminal editing.
#### 4.2.1. Config
```lisp frame="code" title="~/.config/emacs/init.el"
;; Initialize package system
(require 'package)
(setq package-archives '(("melpa" . "https://melpa.org/packages/")
("org" . "https://orgmode.org/elpa/")
("elpa" . "https://elpa.gnu.org/packages/")))
(package-initialize)
;; Bootstrap use-package
(unless (package-installed-p 'use-package)
(package-install 'use-package))
(require 'use-package)
(setq use-package-always-ensure t)
;; Terminal-specific settings
(xterm-mouse-mode 1) ; Enable mouse support
(global-set-key (kbd "<mouse-4>") 'scroll-down-line)
(global-set-key (kbd "<mouse-5>") 'scroll-up-line)
(menu-bar-mode -1) ; Disable menu bar in terminal
;; Better terminal colors
(use-package eterm-256color
:hook (term-mode . eterm-256color-mode))
;; Line numbers configuration
(global-display-line-numbers-mode 1) ; Enable line numbers globally
(setq display-line-numbers-type t)
;; Make line numbers stand out a bit
(set-face-background 'line-number-current-line nil)
(set-face-foreground 'line-number-current-line "yellow")
;; Optional: Customize line number format
(setq display-line-numbers-width 4) ; Reserve space for line numbers
(setq display-line-numbers-widen t) ; Expand line number space as needed
;; Disable line numbers for some modes where they don't make sense
(dolist (mode '(term-mode-hook
shell-mode-hook
treemacs-mode-hook
eshell-mode-hook))
(add-hook mode (lambda () (display-line-numbers-mode 0))))
;; Project management
(use-package projectile
:config
(projectile-mode +1)
:bind-keymap ("C-c p" . projectile-command-map))
;; File tree with treemacs
(use-package treemacs
:bind
(:map global-map
("C-c t" . treemacs))
:config
(treemacs-follow-mode t)
(treemacs-project-follow-mode t))
(use-package treemacs-projectile
:after (treemacs projectile))
;; LSP Mode base configuration
(use-package lsp-mode
:init
(setq lsp-keymap-prefix "C-c l"
lsp-enable-symbol-highlighting t
lsp-enable-snippet t
lsp-enable-indentation t)
:hook
((typescript-mode . lsp)
(js2-mode . lsp)
(web-mode . lsp)
(python-mode . lsp)
(java-mode . lsp)
(c++-mode . lsp)
(c-mode . lsp)
(csharp-mode . lsp))
:commands lsp)
;; LSP UI enhancements
(use-package lsp-ui
:commands lsp-ui-mode
:config
(setq lsp-ui-doc-enable t
lsp-ui-doc-position 'at-point))
(use-package typescript-mode
:mode ("\\.ts\\'")
:hook (typescript-mode . (lambda () (setq typescript-indent-level 2))))
(use-package web-mode
:mode (("\\.tsx\\'" . web-mode)
("\\.jsx\\'" . web-mode))
:config
(setq web-mode-markup-indent-offset 2
web-mode-css-indent-offset 2
web-mode-code-indent-offset 2)
web-mode-json-indent-offset 2)
;; JavaScript better syntax highlighting
(use-package js2-mode
:mode "\\.js\\'")
(setq js-indent-level 2)
(use-package csharp-mode
:config
(add-to-list 'auto-mode-alist '("\\.cs\\'" . csharp-mode)))
(use-package ccls
:hook ((c-mode c++-mode) . (lambda () (require 'ccls) (lsp))))
(use-package lsp-java
:config (add-hook 'java-mode-hook 'lsp))
(use-package kotlin-mode)
(use-package python-mode
:hook (python-mode . (lambda ()
(require 'lsp-pyright)
(lsp))))
(use-package lsp-pyright
:ensure t)
(use-package markdown-mode
:mode (("README\\.md\\'" . gfm-mode)
("\\.md\\'" . markdown-mode)
("\\.mdx\\'" . markdown-mode))
:init (setq markdown-command "multimarkdown"))
(use-package git-gutter
:config
(global-git-gutter-mode +1))
(use-package hl-todo
:config
(setq hl-todo-keyword-faces
'(("TODO" . "#FF0000")
("FIXME" . "#FF0000")
("DEBUG" . "#A020F0")
("GOTCHA" . "#FF4500")
("STUB" . "#1E90FF")))
(global-hl-todo-mode))
(use-package elcord)
(elcord-mode)
;; Redirect backup files
(setq backup-directory-alist `(("." . "~/.config/emacs/backups")))
;; Redirect auto-save files
(setq auto-save-file-name-transforms `((".*" "~/.config/emacs/auto-saves/" t)))
(setq backup-by-copying t)
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(package-selected-packages
'(hl-todo format-all flycheck git-gutter lsp-pyright python-mode kotlin-mode lsp-java ccls js2-mode web-mode typescript-mode lsp-ui lsp-mode treemacs-projectile treemacs projectile eterm-256color)))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
(setq-default indent-tabs-mode nil)
(setq-default tab-width 2)
(setq indent-line-function 'insert-tab)
(add-to-list 'custom-theme-load-path "/home/naomi/.config/emacs/themes/")
(load-theme 'sakura-dreams t)
```
#### 4.2.2. Theme
```lisp frame="code" title="~/.config/emacs/themes/sakura-dreams-theme.el"
(deftheme sakura-dreams
"A light pink Emacs theme inspired by cherry blossoms.")
;; Set frame transparency
(set-frame-parameter nil 'alpha-background 0)
(add-to-list 'default-frame-alist '(alpha-background . 0))
(let ((class '((class color) (min-colors 89)))
;; Core colors
(bg "unspecified-bg")
(bg-light "#fff0f5")
(bg-lighter "#ffeef3")
(fg "#7a2048")
(fg-dark "#5a1737")
(selection-bg "#ffd6e0")
(selection-fg "#7a2048")
(cursor "#ff69b4")
;; ANSI color palette
(black "#fff0f5")
(red "#ff1493")
(green "#ff69b4")
(yellow "#ffb6c1")
(blue "#db7093")
(magenta "#ff85a2")
(cyan "#ffafc5")
(white "#ffd1dc")
;; Bright ANSI colors
(bright-black "#ffe4e8")
(bright-red "#ff0066")
(bright-green "#ff77a8")
(bright-yellow "#ffa6c9")
(bright-blue "#f08080")
(bright-magenta "#ff9aac")
(bright-cyan "#ffc0cb")
(bright-white "#fff5f7"))
(custom-theme-set-faces
'sakura-dreams
;; Basic faces
`(default ((,class (:foreground ,fg :background ,bg))))
`(cursor ((,class (:background ,cursor))))
`(region ((,class (:background ,selection-bg :foreground ,selection-fg))))
`(highlight ((,class (:background ,selection-bg))))
`(hl-line ((,class (:background ,bg-light))))
`(fringe ((,class (:background ,bg))))
`(vertical-border ((,class (:foreground ,bg-lighter))))
;; Font-lock faces
`(font-lock-builtin-face ((,class (:foreground ,magenta))))
`(font-lock-comment-face ((,class (:foreground ,bright-blue :italic t))))
`(font-lock-constant-face ((,class (:foreground ,cyan))))
`(font-lock-doc-face ((,class (:foreground ,green))))
`(font-lock-function-name-face ((,class (:foreground ,blue))))
`(font-lock-keyword-face ((,class (:foreground ,magenta))))
`(font-lock-string-face ((,class (:foreground ,green))))
`(font-lock-type-face ((,class (:foreground ,yellow))))
`(font-lock-variable-name-face ((,class (:foreground ,fg))))
`(font-lock-warning-face ((,class (:foreground ,red))))
;; Mode line
`(mode-line ((,class (:background ,bright-cyan :foreground ,fg))))
`(mode-line-inactive ((,class (:background ,bg-light :foreground ,bright-blue))))
;; Search
`(isearch ((,class (:background ,yellow :foreground ,fg-dark))))
`(lazy-highlight ((,class (:background ,bright-yellow :foreground ,fg-dark))))
;; Others
`(minibuffer-prompt ((,class (:foreground ,blue))))
`(link ((,class (:foreground ,bright-magenta :underline t))))
`(show-paren-match ((,class (:background ,selection-bg :foreground ,bright-red))))
`(show-paren-mismatch ((,class (:background ,red :foreground ,white))))))
;;;###autoload
(when load-file-name
(add-to-list 'custom-theme-load-path
(file-name-as-directory (file-name-directory load-file-name))))
(provide-theme 'sakura-dreams)
```