From 668a6bd0f15c8af5a9e6c672a80b306921372879 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Fri, 4 Sep 2026 01:34:56 +0300 Subject: [PATCH 01/13] feat(ufw): add rules for steam local network game transfers --- setup_ufw.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/setup_ufw.sh b/setup_ufw.sh index 7c4d438..070bc4d 100755 --- a/setup_ufw.sh +++ b/setup_ufw.sh @@ -2,7 +2,7 @@ # ============================================================================== # UFW GÜVENLİK DUVARI KURALLARI # ============================================================================== -# Bu betik, sistem servislerinin (KDE Connect, Syncthing, Jellyfin, SSH, Sunshine) +# Bu betik, sistem servislerinin (KDE Connect, Syncthing, Jellyfin, SSH, Sunshine, Steam) # yerel ağda sorunsuz çalışabilmesi için gerekli port kurallarını tanımlar. set -e @@ -38,6 +38,12 @@ sudo ufw allow 47998:48000/udp comment 'Sunshine Video/Control Stream' sudo ufw allow 48002/udp comment 'Sunshine Audio Stream' sudo ufw allow 48010/udp comment 'Sunshine Mic Stream' +# 6. Steam Yerel Ağ Oyun Dosyası Aktarımı (Local Network Game Transfers) +# 27040 TCP: Oyun dosyalarının eşler arası aktarımı (veri transferi) +# 27031-27036 UDP: Yerel ağdaki cihazların birbirini keşfetmesi (Steam Discovery) +sudo ufw allow 27040/tcp comment 'Steam Local Transfer' +sudo ufw allow 27031:27036/udp comment 'Steam Discovery' + # UFW'yi etkinleştir ve yeniden yükle sudo ufw --force enable sudo ufw reload From 07583fd8c67df1557b29081170be902f08d87c05 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:26:50 +0300 Subject: [PATCH 02/13] docs(specs): add scripts refactor design document --- .../2026-09-08-scripts-refactor-design.md | 122 + migrate_dotfiles.sh | 114 - newpackages.txt | 1967 ----------------- setup_internet_monitor.sh | 79 - switch_to_wpa_supplicant.sh | 72 - 5 files changed, 122 insertions(+), 2232 deletions(-) create mode 100644 docs/superpowers/specs/2026-09-08-scripts-refactor-design.md delete mode 100755 migrate_dotfiles.sh delete mode 100644 newpackages.txt delete mode 100755 setup_internet_monitor.sh delete mode 100755 switch_to_wpa_supplicant.sh diff --git a/docs/superpowers/specs/2026-09-08-scripts-refactor-design.md b/docs/superpowers/specs/2026-09-08-scripts-refactor-design.md new file mode 100644 index 0000000..e20b7cf --- /dev/null +++ b/docs/superpowers/specs/2026-09-08-scripts-refactor-design.md @@ -0,0 +1,122 @@ +# Tasarım Şartnamesi: Dotfiles Betiklerinin Modülerleştirilmesi ve Düzenlenmesi (Scripts Refactor) + +**Tarih:** 2026-09-08 +**Durum:** Onaylandı +**Kapsam:** Architectural + +--- + +## 1. Genel Bakış ve Amaç + +Bu çalışmanın amacı, dotfiles deposunun kök dizininde bulunan 13'ten fazla kurulum ve sistem yapılandırma betiğini tek bir düz `scripts/` dizini altında toplamak, GNU Stow paket yapısını temiz tutmak, daha önce silinmiş/çöp haline gelmiş eski betikleri depodan kalıcı olarak temizlemek ve CachyOS/Arch, Fedora ve Ubuntu/Debian için çoklu dağıtım (multi-distro) desteğini koruyarak betikleri daha sürdürülebilir hale getirmektir. + +--- + +## 2. Dizin Yapısı & Dosya Değişiklikleri + +### 2.1 Kök Dizinde Kalacak Dosyalar +- `install.sh`: Ana orkestrasyon ve modüler kurulum giriş noktası. +- `stow_all.sh`: Dotfiles paketlerini GNU Stow ile `$HOME` dizinine bağlayan betik. +- `packages.txt`: Pacman / AUR paket listesi. +- `flat_packages.txt`: Flathub Flatpak paket listesi. +- `.stow-local-ignore`: Stow tarafından yok sayılacak kalıplar (`scripts/` kalıbı da eklenecek). +- `.gitignore`: Git tarafından izlenmeyecek dosyalar. +- `README.md`: Ana depo dokümantasyonu. +- Yapılandırma klasörleri (`btop/`, `fish/`, `ghostty/`, `hypr/`, `kitty/`, `mango/`, `niri/`, `nvim/`, `ssh/`, `starship/`, `sunshine/`, `systemd/`, `user-dirs/`, `vivaldi/`, `zshrc.d/`, `antigravity/`). + +### 2.2 `scripts/` Dizinine Taşınacak Betikler +Tüm yardımcı betikler düz (flat) bir yapıda `scripts/` altına taşınacak ve çalıştırılabilir (`chmod +x`) olacaktır: +- `install_flatpaks.sh` -> `scripts/install_flatpaks.sh` +- `setup_1password.sh` -> `scripts/setup_1password.sh` +- `setup_discord_proxy.sh` -> `scripts/setup_discord_proxy.sh` +- `setup_fkeys.sh` -> `scripts/setup_fkeys.sh` +- `setup_fonts.sh` -> `scripts/setup_fonts.sh` +- `setup_keychron.sh` -> `scripts/setup_keychron.sh` +- `setup_npm.sh` -> `scripts/setup_npm.sh` +- `setup_services.sh` -> `scripts/setup_services.sh` +- `setup_sshd.sh` -> `scripts/setup_sshd.sh` +- `setup_ufw.sh` -> `scripts/setup_ufw.sh` +- `setup_warp.sh` -> `scripts/setup_warp.sh` +- `switch_to_iwd.sh` -> `scripts/switch_to_iwd.sh` +- `vivaldi_middle_click.sh` -> `scripts/vivaldi_middle_click.sh` + +### 2.3 Kalıcı Olarak Silinecek Obsolete Dosyalar +- `migrate_dotfiles.sh` +- `newpackages.txt` +- `setup_internet_monitor.sh` +- `switch_to_wpa_supplicant.sh` + +--- + +## 3. Betik Güncellemeleri & Çoklu Dağıtım Mantığı + +### 3.1 Bağımsızlık & Yol Çözümleme (Self-Contained Scripts) +- Her betik ek bir kütüphaneye bağımlı kalmadan hem `install.sh` üzerinden hem de doğrudan `./scripts/.sh` şeklinde çalışabilmelidir. +- `scripts/install_flatpaks.sh`: Repo kök dizinindeki `flat_packages.txt` dosyasını bulmak için dinamik yol çözümlemesi kullanacaktır: + ```bash + DOTFILES_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." &>/dev/null && pwd)" + ``` + +### 3.2 Çoklu Dağıtım Desteğinin Geri Kazandırılması +1. **`install.sh`**: + - `/etc/os-release` dosyasından `DETECTED_OS` değişkeni okunacaktır. + - `install_base_packages()`: + - Arch/CachyOS/Manjaro: `sudo pacman -Syu --needed git base-devel --noconfirm` + - Fedora/RHEL: `sudo dnf install -y git @development-tools` + - Ubuntu/Debian: `sudo apt update && sudo apt install -y git build-essential` + - `install_package_manager()`: + - Arch tabanlı: `yay` kontrolü ve AUR üzerinden otomatik kurulumu. + - Fedora/Debian: İlgili paket yöneticilerinin mevcut olduğunu bildirme. +2. **`scripts/setup_services.sh`**: + - Dağıtım tespit edilerek `SYSTEM_SERVICES` dizisi dağıtıma göre belirlenecektir: + - **Arch/CachyOS**: `bluetooth`, `ufw`, `avahi-daemon`, `ananicy-cpp`, `bpftune`, `warp-svc`, `docker`, `tailscaled`, `fstrim.timer`, `cachyos-rate-mirrors.timer`, `snapper-cleanup.timer`, `grub-btrfs-snapper.path`, `cachyos-iw-set-regdomain.path`. + - **Fedora**: `bluetooth`, `firewalld`, `avahi-daemon`, `tuned`, `bpftune`, `warp-svc`, `docker`, `tailscaled`, `fstrim.timer`, `dnf-makecache.timer`, `snapper-cleanup.timer`, `grubby`. + - **Debian/Ubuntu**: `bluetooth`, `ufw`, `avahi-daemon`, `warp-svc`, `docker`, `tailscaled`, `fstrim.timer`, `apt-daily.timer`, `apt-daily-upgrade.timer`. + - Kullanıcı servisleri (`psd.service`, `arch-update.timer`, `warp-taskbar.service`, `syncthing.service`) ortak olarak denetlenecektir. +3. **`scripts/setup_fonts.sh`**: + - Arch tabanlı sistemlerde: `sudo pacman -S --needed --noconfirm ttf-jetbrains-mono-nerd` + - Diğer dağıtımlarda: GitHub release üzerinden JetBrainsMono zip arşivi indirilip `~/.local/share/fonts/` içerisine çıkarılacak ve `fc-cache -f` çalıştırılacaktır. + +--- + +## 4. `install.sh` Entegrasyonu ve Yeni Modüller + +### 4.1 Betik Çağrıları +- `install.sh` içindeki tüm `run_script` çağrıları `$DOTFILES_DIR/scripts/...` konumuna yönlendirilecektir. +- `link_dotfiles` fonksiyonu `$DOTFILES_DIR/stow_all.sh` betiğini kök dizinden çağıracaktır. + +### 4.2 `1password` İsteğe Bağlı Modülü +- Varsayılan argümansız tam kurulum akışında (`if [ $# -eq 0 ]`) `setup_1password.sh` çalıştırılmayacaktır. +- CLI argümanlarında `1password` veya `onepassword` verildiğinde `scripts/setup_1password.sh` sudo ile tetiklenecektir: + ```bash + 1password|onepassword) run_script "$DOTFILES_DIR/scripts/setup_1password.sh" sudo ;; + ``` + +--- + +## 5. Dokümantasyon Güncellemeleri + +- **`README.md`**: + - `## 🧩 Modüler Kurulum Seçenekleri`: `1password` seçeneği tabloya eklenecektir. + - `## 🛠️ Donanım & Sistem Betikleri`: Betik yolları `scripts/` olarak güncellenecektir. +- **`ssh/README.md`**: + - `setup_sshd.sh` referansı `scripts/setup_sshd.sh` olarak düzeltilecektir. +- **`vivaldi/README.md`**: + - `vivaldi_middle_click.sh` referansı `scripts/vivaldi_middle_click.sh` olarak düzeltilecektir. +- **`.stow-local-ignore`**: + - `scripts` ve `scripts/` kalıbı eklenerek yanlışlıkla stow edilmesinin önüne geçilecektir. + +--- + +## 6. Doğrulama ve Test Planı + +1. **Sözdizimi Kontrolü (Syntax Check):** + - `bash -n install.sh` + - `bash -n stow_all.sh` + - `bash -n scripts/*.sh` +2. **Yol ve Bağımlılık Doğrulaması:** + - `scripts/install_flatpaks.sh` içindeki dosya yolu çözümlemesinin `$DOTFILES_DIR/flat_packages.txt` dosyasını bulduğu teyit edilecektir. +3. **Referans Bütünlüğü:** + - Depo genelinde `grep` araması ile kök dizindeki eski `./setup_*.sh` referanslarının tamamen temizlendiği doğrulanacaktır. +4. **Git Durumu:** + - Silinen 4 dosyanın depodan çıkarıldığı, yeni dosyaların `scripts/` altında izlendiği ve çalışma ağacının temiz olduğu teyit edilecektir. diff --git a/migrate_dotfiles.sh b/migrate_dotfiles.sh deleted file mode 100755 index 08964ff..0000000 --- a/migrate_dotfiles.sh +++ /dev/null @@ -1,114 +0,0 @@ -#!/bin/bash -# -# migrate_dotfiles.sh -# Mevcut .config dosyalarını Dotfiles klasörüne taşır ve "stow" ile bağlar. -# Sadece BİR KEZ çalıştırılmalıdır. - -# --- Değişkenler --- -# Dotfiles klasörünün yolu -DOTFILES_DIR="$HOME/Documents/Dotfiles" -# Yapılandırma dosyalarının (config) ana dizini -CONFIG_DIR="$HOME/.config" - -# --- Kategori 1: Standart Klasörler --- -# ~/.config/klasor şeklinde olanlar -STOW_FOLDERS=( - "btop" - "fastfetch" - "fish" - "ghostty" - "hypr" - "kitty" - "mango" - "niri" - "nvim" - "sunshine" - "systemd" - "vivaldi" - "zshrc.d" -) - -# --- Kategori 2: Tekil Dosyalar --- -# ~/.config/dosya.conf şeklinde olanlar -STOW_FILES=( - "starship.toml" - "user-dirs.dirs" -) - -# --- Kategori 3: Gruplanmış Paketler (GTK) --- -STOW_GROUP_GTK=( - "gtk-3.0" - "gtk-4.0" - "gtkrc" - "gtkrc-2.0" -) - -# --- İşlem Başlangıcı --- -echo "Dotfiles taşıma ve 'stow' işlemi başlıyor..." -echo "Dotfiles Dizinim: $DOTFILES_DIR" -echo "Hedef Dizinim: $HOME" -echo "--------------------------------" -cd "$DOTFILES_DIR" || exit - -# --- Kategori 1 İşlemi --- -echo "📦 Kategori 1: Klasörler işleniyor..." -for pkg in "${STOW_FOLDERS[@]}"; do - echo " -> İşleniyor: $pkg" - # Eğer kaynak dosya yoksa atla - if [ ! -d "$CONFIG_DIR/$pkg" ]; then - echo " Uyarı: $CONFIG_DIR/$pkg bulunamadı, atlanıyor." - continue - fi - - # 1. Stow paket yapısını oluştur - mkdir -p "$DOTFILES_DIR/$pkg/.config" - # 2. Mevcut yapılandırmayı taşı - mv "$CONFIG_DIR/$pkg" "$DOTFILES_DIR/$pkg/.config/" - # 3. Stow et - stow -R -t "$HOME" "$pkg" - echo " Başarılı: $pkg taşındı ve bağlandı." -done - -# --- Kategori 2 İşlemi --- -echo "📄 Kategori 2: Tekil dosyalar işleniyor..." -for file in "${STOW_FILES[@]}"; do - # starship.toml -> paket adı "starship" - pkg_name=$(basename "$file" .toml | sed 's/\.dirs$//') - echo " -> İşleniyor: $file (Paket: $pkg_name)" - - if [ ! -f "$CONFIG_DIR/$file" ]; then - echo " Uyarı: $CONFIG_DIR/$file bulunamadı, atlanıyor." - continue - fi - - # 1. Stow paket yapısını oluştur - mkdir -p "$DOTFILES_DIR/$pkg_name/.config" - # 2. Mevcut dosyayı taşı - mv "$CONFIG_DIR/$file" "$DOTFILES_DIR/$pkg_name/.config/" - # 3. Stow et - stow -R -t "$HOME" "$pkg_name" - echo " Başarılı: $file taşındı ve bağlandı." -done - -# --- Kategori 3 İşlemi --- -echo "🎨 Kategori 3: Gruplanmış paket (GTK) işleniyor..." -pkg_name="gtk" -mkdir -p "$DOTFILES_DIR/$pkg_name/.config" -moved_count=0 - -for item in "${STOW_GROUP_GTK[@]}"; do - if [ -e "$CONFIG_DIR/$item" ]; then # -e hem dosya hem klasörü kontrol eder - mv "$CONFIG_DIR/$item" "$DOTFILES_DIR/$pkg_name/.config/" - ((moved_count++)) - fi -done - -if [ $moved_count -gt 0 ]; then - stow -t "$HOME" "$pkg_name" - echo " Başarılı: $moved_count adet GTK yapılandırması taşındı ve bağlandı." -else - echo " Uyarı: Taşınacak GTK yapılandırması bulunamadı." -fi - -echo "--------------------------------" -echo "✅ Tüm işlemler tamamlandı!" diff --git a/newpackages.txt b/newpackages.txt deleted file mode 100644 index e07c172..0000000 --- a/newpackages.txt +++ /dev/null @@ -1,1967 +0,0 @@ -1password 8.12.24-34 -7zip 26.01-1.1 -a52dec 0.8.0-3.1 -aalib 1.4rc5-19.1 -abseil-cpp 20260526.0-2.1 -accountsservice 26.13.3-1.1 -acl 2.3.2-2.1 -ada 3.4.4-1.1 -adwaita-cursors 50.0-1 -adwaita-fonts 50.0-1 -adwaita-icon-theme 50.0-1 -adwaita-icon-theme-legacy 46.2-3 -aha 0.5.1-3.1 -akonadi 26.04.2-1.1 -akonadi-calendar 26.04.2-2.1 -akonadi-contacts 26.04.2-2.1 -akonadi-import-wizard 26.04.2-1.1 -akonadi-mime 26.04.2-2.1 -akonadi-search 26.04.2-2.1 -alacritty 0.17.0-1.1 -alsa-card-profiles 1:1.6.7-1.1 -alsa-firmware 1.2.4-4 -alsa-lib 1.2.16.1-1.1 -alsa-plugins 1:1.2.12-5.5 -alsa-topology-conf 1.2.5.1-4 -alsa-ucm-conf 1.2.16.1-1 -alsa-utils 1.2.16-1.1 -amd-ucode 1:20260519-1 -amdgpu_top 0.11.5-1.1 -ananicy-cpp 1.2.0-1.1 -android-tools 35.0.2-27.1 -antigravity 2.1.4-1 -antigravity-cli 1.0.10_6349723456634880-1 -antigravity-ide 2.1.1-1 -aom 3.14.1-1.1 -appmenu-gtk-module 25.04-3.1 -appstream 1.1.3-1.1 -appstream-qt 1.1.3-1.1 -archlinux-contrib 20260611-1 -archlinux-keyring 1:20260612-1 -argon2 20190702-6.3 -aribb24 1.0.3-4.1 -aribb25 0.2.7-3.1 -ark 26.04.2-1.1 -at-spi2-core 2.60.4-1.1 -atkmm 2.28.5-2.1 -attica 6.27.0-1.1 -attr 2.5.2-2.1 -audit 4.1.4-2.1 -aurorae 6.7.1-1.1 -autoconf 2.73-1 -automake 1.18.1-1 -avahi 1:0.9rc4-1.1 -awesome-terminal-fonts 1.1.0-5 -ayatana-ido 0.10.4-1.2 -baloo 6.27.0-1.1 -baloo-widgets 26.04.2-2.1 -bandwhich 0.23.1-3 -base 3-3 -base-devel 1-2 -bash 5.3.9-2 -bash-completion 2.17.0-3 -bat 0.26.1-2.1 -bigsh0t 2.7-2.1 -bind 9.20.24-1.1 -binutils 2.46+r70+g155188ea10a7-2 -bison 3.8.2-8 -blas 3.12.1-2.1 -bluedevil 1:6.7.1-1.1 -bluez 5.86-6.1 -bluez-hid2hci 5.86-6.1 -bluez-libs 5.86-6.1 -bluez-obex 5.86-6.1 -bluez-qt 6.27.0-1.1 -bluez-utils 5.86-6.1 -bolt 0.9.11-1.1 -boost-libs 1.91.0-1.1 -bpf 7.0.10-1 -bpftune-git r764.4712347-1 -brave-bin 1:1.91.175-1 -breeze 6.7.1-1.1 -breeze-cursors 6.7.1-1.1 -breeze-gtk 6.7.0-1 -breeze-icons 6.27.0-1.1 -brotli 1.2.0-1.1 -btop 1.4.7-1.1 -btrfs-assistant 2.2-5.1 -btrfs-progs 7.0-1 -bubblewrap 0.11.2-1.1 -bun 1.3.14-1 -bzip2 1.0.8-6.1 -c-ares 1.34.6-1.1 -ca-certificates 20240618-1 -ca-certificates-mozilla 3.125-1.1 -ca-certificates-utils 20240618-1 -cabextract 1.11-3.1 -cachy-update 3.20.2-1 -cachyos-alacritty-config 1.0-1 -cachyos-ananicy-rules 1:1.1.42-1 -cachyos-emerald-kde-theme-git r25.d61d1dd-1 -cachyos-gaming-applications 1.0.0-2 -cachyos-gaming-meta 1:1.0.0-7 -cachyos-hello 0.25.0-1 -cachyos-hooks 2026.02.05-1 -cachyos-iridescent-kde r2.16aa352-1 -cachyos-kde-settings 4.9-8 -cachyos-kernel-manager 1.19.0-1 -cachyos-keyring 20240331-1 -cachyos-micro-settings 1.0.0-1 -cachyos-mirrorlist 27-1 -cachyos-nord-kde-theme-git r16.d75759c-1 -cachyos-packageinstaller 1.6.2-1 -cachyos-plymouth-bootanimation 2-3 -cachyos-rate-mirrors 23-3 -cachyos-settings 1:1.3.5-1 -cachyos-snapper-support 1.0.2-1 -cachyos-themes-sddm 1.0-3 -cachyos-v3-mirrorlist 27-1 -cachyos-v4-mirrorlist 27-1 -cachyos-wallpapers r23.964263e-1 -cairo 1.18.4-1.1 -cairomm 1.14.6-1.1 -cairomm-1.16 1.18.1-1.1 -calendarsupport 26.04.2-2.1 -calf 0.90.9-2.1 -calibre 8.7.0-12 -cantarell-fonts 1:0.311-1 -capitaine-cursors 4-3 -cava 0.10.7-1.1 -cblas 3.12.1-2.1 -cdparanoia 10.2-9.1 -cfitsio 1:4.6.4-1.1 -char-white r3.ef1c007-1 -chmlib 0.40-10.1 -chromaprint 1.6.0-3.1 -chwd 1.21.1-1 -cifs-utils 7.5-1.1 -clang 22.1.6-2 -clinfo 3.0.25.02.14-1.1 -cloudflare-warp-bin 2026.4.1390-1 -clucene 2.3.3.4-17.1 -cmark 0.31.2-1.1 -compiler-rt 22.1.6-1.1 -composefs 1.0.8-1.1 -confuse 3.3-5.1 -containerd 2.3.2-1.1 -convertlit 1.8-13.1 -coreutils 9.11-1.1 -cpio 2.15-3.1 -cpupower 7.0.10-1 -cracklib 2.10.3-1.1 -cryfs 1.0.3-5.1 -cryptsetup 2.8.6-1.1 -curl 8.20.0-7 -curseforge 1.308.1_34958-1 -darkly-bin 0.5.38-1 -dav1d 1.5.3-1.1 -davfs2 1.7.3-1.1 -db 6.2.32-4.1 -db5.3 5.3.28-7.1 -dbeaver 26.1.0-1.1 -dbus 1.16.2-1.1 -dbus-broker 37-3.1 -dbus-broker-units 37-3.1 -dbus-glib 0.114-1.1 -dbus-units 37-3.1 -dconf 0.49.0-1.1 -ddcutil 2.2.7-1.1 -debugedit 5.3-1 -default-cursors 3-1 -delfin 0.4.8-1.1 -deno 2.8.3-1.1 -desktop-file-utils 0.28-1.1 -device-mapper 2.03.41-1.1 -diffutils 3.12-2 -ding-libs 0.7.0-1.1 -discord 1:1.0.143-1 -discount 3.0.1.3-1.1 -djvulibre 3.5.30.1-1.1 -dmemcg-booster 0.1.2-1 -dmidecode 3.7-1.3 -dmraid 1.0.0.rc16.3-15.1 -dnsmasq 2.93-1.1 -dnssec-anchors 20250524-1 -docker 1:29.6.0-1.1 -docker-buildx 0.35.0-1.1 -docker-compose 5.1.4-1.1 -dolphin 26.04.2-1.1 -dosfstools 4.2-5.1 -double-conversion 3.4.0-1.1 -duf 0.9.1-1.1 -duktape 2.7.0-7.1 -dvgrab 3.5.2-1.1 -e2fsprogs 1.47.4-1.1 -easyeffects 8.2.4-1.1 -ebook-tools 0.2.2-9.1 -editorconfig-core-c 0.12.11-1.1 -efibootmgr 18-4.1 -efitools 1.9.2-7.1 -efivar 39-2.1 -egl-gbm 1.1.3-1.1 -egl-wayland 4:1.1.21-1.1 -egl-wayland2 1.0.1-1.1 -egl-x11 1.0.5-1.1 -eglexternalplatform 1.2.1-1 -eigen 5.0.1-2.1 -electron39 39.8.10-1.1 -elfutils 0.195-1 -elisa 26.04.2-1.1 -ell 0.83-1.1 -encfs 1.9.5-9.1 -enchant 2.8.15-2.1 -envycontrol 3.5.2-2 -ethtool 1:7.0-1.1 -eventviews 26.04.2-1.1 -evtest 1.36-1.2 -exfatprogs 1.4.2-1.1 -exiv2 0.28.8-2.1 -expac 10-12.2 -expat 2.8.1-1.1 -eza 0.23.4-3.1 -f2fs-tools 1.16.0-3.1 -faac 1.50-1.1 -faad2 2.11.2-1.1 -fakeroot 1:1.37.2-2.1 -falkon 26.04.2-1.1 -fastfetch 2.64.2-2.1 -faugus-launcher 1.22.4-1 -fcft 3.3.3-1.1 -fd 10.4.2-2.1 -ffmpeg 2:8.1.2-6.1 -ffmpeg4.4 4.4.8-1.1 -ffmpegthumbnailer 2.3.0-1.2 -ffmpegthumbs 26.04.2-1.1 -fftw 3.3.11-1.1 -file 5.48-1.1 -filelight 26.04.2-1.1 -filesystem 2025.10.12-1 -findutils 4.10.0-3.1 -firefox 152.0.2-1.1 -flac 1.5.0-1.1 -fladder-bin 0.10.3-2 -flatpak 1:1.18.0-1.1 -flex 2.6.4-6.1 -fluidsynth 2.5.5-1.1 -fluxer-bin 0.0.8-1 -fmt 12.2.0-1.1 -fontconfig 2:2.18.1-1.1 -foot 1.27.0-1.1 -fortune-mod 3.26.1-1.1 -frameworkintegration 6.27.0-1.1 -frameworkintegration5 5.116.0-3.1 -freedownloadmanager 6.34.1.6907-1 -freeglut 3.8.0-1.1 -freerdp 2:3.27.1-1.1 -freetype2 2.14.3-1.1 -frei0r-plugins 3.2.2-1.1 -fribidi 1.0.16-2.1 -fsarchiver 0.8.9-1.1 -fsearch 0.2.3-3.6 -ftgl 2.4.0-3.1 -fuse-common 3.18.2-1.1 -fuse-overlayfs 1.17-1.1 -fuse2 2.9.9-5 -fuse3 3.18.2-1.1 -fwupd 2.1.5-2.1 -fwupd-efi 1.8-2 -fzf 0.72.0-1.1 -gamemode 1.8.2-2.1 -gamescope 3.16.23-2 -gavl 2.0.1-2.1 -gawk 5.4.0-1.1 -gc 8.2.12-1.1 -gcc 16.1.1+r12+g301eb08fa2c5-2 -gcc-libs 16.1.1+r12+g301eb08fa2c5-2 -gcr-4 4.4.0.1-1.1 -gdb 17.2-1.1 -gdb-common 17.2-1.1 -gdbm 1.26-2.1 -gdk-pixbuf2 2.44.6-2.1 -gettext 1.0-2.1 -gflags 2.2.2-6.1 -ghostscript 10.07.1-1.1 -ghostty 1.3.1-2.1 -ghostty-shell-integration 1.3.1-2.1 -ghostty-terminfo 1.3.1-2.1 -giflib 6.1.3-1.1 -git 2.54.0-1.1 -git-lfs 3.7.1-1.2 -github-cli 2.95.0-1.1 -glances 4.5.5-1 -glew 2.3.1-1.1 -glfw 1:3.4-1.1 -glib-networking 1:2.80.1-1.1 -glib2 2.88.1-1.1 -glibc 2.43+r22+g8362e8ce10b2-4 -glibmm 2.66.8-2.1 -glibmm-2.68 2.88.0-2.1 -glm 1.0.3-1.1 -glslang 1:1.4.350.1-1.1 -glu 9.0.3-3.1 -glycin 2.1.1-1.2 -glycin-gtk4 2.1.1-1.2 -gmp 6.3.0-3.1 -gnome-calculator 50.0-1 -gnome-desktop 1:44.5-1.1 -gnome-desktop-common 1:44.5-1.1 -gnome-disk-utility 46.1-2.4 -gnulib-l10n 20241231-1 -gnupg 2.4.9-1.1 -gnutls 3.8.13-2.1 -gobject-introspection-runtime 1.86.0-2.1 -gocryptfs 2.6.1-1.1 -google-glog 0.7.1-2.1 -goverlay 1.8.4-1.1 -gparted 1.8.1-2.1 -gperftools 2.18.1-1.1 -gpgme 2.1.0-1.1 -gpgmepp 2.1.0-1.1 -gpm 1.20.7.r38.ge82d1a6-6.1 -gpu-screen-recorder 5.13.9-2.1 -gpu-screen-recorder-notification 1.3.3-1.1 -gpu-screen-recorder-ui 1.12.5-1.1 -grantleetheme 26.04.2-1.1 -graphene 1.10.8-2.1 -graphite 1:1.3.15-1 -grep 3.12-2.1 -groff 1.24.1-1.1 -gsettings-desktop-schemas 50.1-1 -gsettings-system-schemas 50.1-1 -gsl 2.8-1 -gsm 1.0.24-1.1 -gssdp 1.6.5-1 -gssproxy 0.9.2-3.1 -gst-libav 1.28.4-1 -gst-plugin-pipewire 1:1.6.7-1.1 -gst-plugin-va 1.28.4-1 -gst-plugins-bad 1.28.4-1 -gst-plugins-bad-libs 1.28.4-1 -gst-plugins-base 1.28.4-1 -gst-plugins-base-libs 1.28.4-1 -gst-plugins-good 1.28.4-1 -gst-plugins-ugly 1.28.4-1 -gstreamer 1.28.4-1 -gtest 1.17.0-2.1 -gtk-layer-shell 0.10.1-1.1 -gtk-update-icon-cache 1:4.22.4-1.1 -gtk3 1:3.24.52-1.1 -gtk4 1:4.22.4-1.1 -gtk4-layer-shell 1.3.0-1.1 -gtkmm-4.0 4.22.0-2.1 -gtkmm3 3.24.11-1.1 -gtksourceview4 4.8.4-2.1 -gtksourceview5 5.20.0-1.1 -guile 3.0.11-1.1 -gumbo-parser 0.13.2-1.1 -gupnp 1:1.6.10-1.1 -gupnp-igd 1.6.0-2.3 -gwenview 26.04.2-1.1 -gzip 1.14-2.1 -handy-bin 0.8.3-1 -harfbuzz 14.2.1-1.1 -harfbuzz-icu 14.2.1-1.1 -haruna 1.8.1-1.1 -hdparm 9.65-3.1 -headsetcontrol-git 3.1.0.r87.gda4477e-1 -headsetkontrol 2.0.4-4 -heroic-games-launcher-bin 2.22.0-1 -hicolor-icon-theme 0.18-1 -hidapi 0.15.0-1.1 -highway 1.4.0-1.1 -hsa-rocr 7.2.4-1.1 -htmlq 0.4.0-3.1 -htop 3.5.1-1.1 -hunspell 1.7.3-1.1 -hwdata 0.408-1 -hwdetect 2025.08.16.1333-1 -hwinfo 25.4-1.1 -hwloc 2.14.0-1.1 -hydra-launcher-bin 4.0.3-1 -hyphen 2.8.9-1.1 -hyprism-bin 3.0.3-1 -i2c-tools 4.4-4.1 -iana-etc 20260530-1 -icoextract 0.3.0-1 -icu 78.3-1.1 -identity 26.03-1.1 -iftop 1.0pre4-6.1 -iio-sensor-proxy 3.9-1.1 -ijs 0.35-7.1 -imagemagick 7.1.2.26-1.1 -imath 3.2.2-6.1 -imlib2 1.12.6-1.1 -incidenceeditor 26.04.2-2.1 -inetutils 2.8-1.1 -iniparser 4.2.6-2.1 -intel-oneapi-common 2026.0.0_235-1 -intel-oneapi-mkl 2026.0.0_908-1.1 -intel-oneapi-openmp 2026.0.0_947-1.1 -intel-oneapi-tbb 2023.0.0_724-1.1 -intel-oneapi-tcm 1.5.0_489-1.1 -inxi 3.3.40.1-1 -iproute2 7.1.0-1.1 -iptables 1:1.8.13-1.1 -iputils 20250605-1.1 -iso-codes 4.20.1-1 -iw 6.17-1.1 -iwd 3.12-1.1 -jack 0.126.0-6 -jansson 2.15.0-1.1 -jasper 4.2.9-1.1 -java-environment-common 3-6 -java-runtime-common 3-6 -jbig2dec 0.20-2.1 -jbigkit 2.1-8.1 -jdk-openjdk 26.0.1.u8-2 -jdownloader2 latest-22 -jemalloc 1:5.3.1-2.1 -jetbrains-toolbox 3.5.0.84344-1 -jfsutils 1.1.15-9.1 -jq 1.8.2-1.1 -json-c 0.18-2.1 -json-glib 1.10.8-1.1 -jsoncpp 1.9.6-3.2 -jxrlib 1.3.2-1.1 -kaccounts-integration 26.04.2-1.1 -kaccounts-providers 26.04.2-1.1 -kactivitymanagerd 6.7.1-1.1 -karchive 6.27.0-1.1 -karchive5 5.116.0-3.1 -kate 26.04.2-1.1 -kauth 6.27.0-1.1 -kauth5 5.116.0-2.1 -kbd 2.10.0-1.1 -kbookmarks 6.27.0-1.1 -kbookmarks5 5.116.0-2.1 -kcalc 26.04.2-1.1 -kcalendarcore 6.27.0-1.1 -kcalutils 26.04.2-1.1 -kcgroups 0.0.dmemcg.experimental-3 -kcmutils 6.27.0-1.1 -kcmutils5 5.116.0-2.1 -kcodecs 6.27.0-1.1 -kcodecs5 5.116.0-2.4 -kcolorchooser 26.04.2-1.1 -kcolorpicker 0.3.1-6 -kcolorscheme 6.27.0-1.1 -kcompletion 6.27.0-1.1 -kcompletion5 5.116.0-2.1 -kconfig 6.27.0-1.1 -kconfig5 5.116.0-2.1 -kconfigwidgets 6.27.0-1.1 -kconfigwidgets5 5.116.0-3.1 -kcontacts 1:6.27.0-1.1 -kcoreaddons 6.27.0-1.1 -kcoreaddons5 5.116.0-2.1 -kcrash 6.27.0-1.1 -kcrash5 5.116.0-2.1 -kdav 1:6.27.0-1.1 -kdbusaddons 6.27.0-1.1 -kdbusaddons5 5.116.0-2.2 -kddockwidgets 2.4.0-3.1 -kde-cli-tools 6.7.1-1.1 -kde-gtk-config 6.7.1-1.1 -kdeclarative 6.27.0-1.1 -kdeclarative5 5.116.0-2.1 -kdeconnect 26.04.2-1.1 -kdecoration 6.7.1-1.1 -kded 6.27.0-1.1 -kded5 5.116.0-2.1 -kdegraphics-mobipocket 26.04.2-1.1 -kdegraphics-thumbnailers 26.04.2-1.1 -kdenlive 26.04.2-1.1 -kdepim-addons 26.04.2-2.1 -kdepim-runtime 26.04.2-2.1 -kdeplasma-addons 6.7.1-1.1 -kdesu 6.27.0-1.1 -kdiagram 3.0.1-5.1 -kdialog 26.04.2-1.1 -kdnssd 6.27.0-1.1 -kdsingleapplication 1.2.1-1.1 -kdsoap 2.3.0-1 -kdsoap-ws-discovery-client 0.4.0-3.1 -keyutils 1.6.3-4.1 -kfilemetadata 6.27.0-1.1 -kget 26.04.2-1.1 -kglobalaccel 6.27.0-1.1 -kglobalaccel5 5.116.0-2.1 -kglobalacceld 6.7.1-1.1 -kguiaddons 6.27.0-1.1 -kguiaddons5 5.116.0-2.1 -kholidays 1:6.27.0-1.1 -ki18n 6.27.0-1.1 -ki18n5 5.116.0-2.1 -kiconthemes 6.27.0-1.1 -kiconthemes5 5.116.0-2.1 -kidentitymanagement 26.04.2-1.1 -kidletime 6.27.0-1.1 -kimageannotator 0.7.2-2 -kimageformats 6.27.0-1.1 -kimap 26.04.2-2.1 -kinfocenter 6.7.1-1.1 -kio 6.27.0-1.1 -kio-admin 26.04.2-1.1 -kio-extras 26.04.2-1.1 -kio-fuse 5.1.1-2.1 -kio-gdrive 26.04.2-1.1 -kio5 5.116.0-6.1 -kirigami 6.27.0-1.1 -kirigami-addons 1.12.1-1.1 -kirigami2 5.116.0-2.1 -kitemmodels 6.27.0-1.1 -kitemviews 6.27.0-1.1 -kitemviews5 5.116.0-2.1 -kitinerary 26.04.2-3.1 -kitty 0.47.1-1.1 -kitty-shell-integration 0.47.1-1.1 -kitty-terminfo 0.47.1-1.1 -kjobwidgets 6.27.0-1.1 -kjobwidgets5 5.116.0-2.1 -kldap 26.04.2-1.1 -kmail-account-wizard 26.04.2-2.1 -kmailtransport 26.04.2-1.1 -kmbox 26.04.2-2.1 -kmenuedit 6.7.1-1.1 -kmime 1:6.27.0-2.1 -kmod 34.2-1 -knewstuff 6.27.0-1.1 -knighttime 6.7.1-1.1 -knotifications 6.27.0-1.1 -knotifications5 5.116.0-3.1 -knotifyconfig 6.27.0-1.1 -konsole 26.04.2-1.1 -kontact 26.04.2-1.1 -kontactinterface 26.04.2-1.1 -korganizer 26.04.2-2.1 -kpackage 6.27.0-1.1 -kpackage5 5.116.0-3.1 -kparts 6.27.0-1.1 -kpeople 6.27.0-1.1 -kpimtextedit 26.04.2-1.1 -kpipewire 6.7.1-1.1 -kpkpass 26.04.2-1.1 -kpmcore 26.04.2-1.1 -kpty 6.27.0-1.1 -kquickcharts 6.27.0-1.1 -kquickimageeditor 0.6.2-1.1 -krb5 1.22.2-1.1 -krdc 26.04.2-1.1 -krdp 6.7.1-1.1 -krfb 26.04.2-1.1 -krunner 6.27.0-1.1 -kscreen 6.7.1-1.1 -kscreenlocker 6.7.1-1.1 -kservice 6.27.0-1.1 -kservice5 5.116.0-3.3 -ksmtp 26.04.2-1.1 -kstatusnotifieritem 6.27.0-1.1 -ksvg 6.27.0-1.1 -ksystemstats 6.7.1-1.1 -ktextaddons 2.1.0-1.1 -ktexteditor 6.27.0-1.1 -ktexttemplate 6.27.0-1.1 -ktextwidgets 6.27.0-1.1 -ktextwidgets5 5.116.0-2.1 -ktnef 26.04.2-1.1 -kunitconversion 6.27.0-1.1 -kuserfeedback 6.27.0-1.1 -kwallet 6.27.0-1.1 -kwallet-pam 6.7.1-1.1 -kwallet5 5.116.0-6.1 -kwalletmanager 26.04.2-1.1 -kwayland 6.7.1-1.1 -kwidgetsaddons 6.27.0-1.1 -kwidgetsaddons5 5.116.0-2.1 -kwin 6.7.1-1.1 -kwindowsystem 6.27.0-1.1 -kwindowsystem5 5.116.0-2.1 -kxmlgui 6.27.0-1.1 -kxmlgui5 5.116.0-2.1 -l-smash 2.14.5-4.1 -ladspa 1.17-7.1 -lame 3.101.r6531-1.1 -lapack 3.12.1-2.1 -layer-shell-qt 6.7.1-1.1 -layer-shell-qt5 5.27.12-2 -lazydocker 0.25.2-1.1 -lazygit 0.62.2-1.1 -lcms2 2.19.1-1.1 -ldb 2:4.24.3-1.1 -leancrypto 1.7.2-1.1 -leptonica 1.87.0-1.1 -less 1:704-1.1 -level-zero-loader 1.28.2-1 -lib32-acl 2.3.2-2 -lib32-alsa-lib 1.2.16.1-1 -lib32-alsa-plugins 1.2.12-1 -lib32-at-spi2-core 2.60.4-1 -lib32-attr 2.5.2-2 -lib32-brotli 1.1.0-1 -lib32-bzip2 1.0.8-4 -lib32-cairo 1.18.4-1 -lib32-colord 1.4.8-1 -lib32-curl 8.20.0-7 -lib32-dbus 1.16.2-1 -lib32-dbus-glib 0.114-1 -lib32-e2fsprogs 1.47.4-1 -lib32-expat 2.8.1-1 -lib32-flac 1.5.0-1 -lib32-fontconfig 2:2.18.1-1 -lib32-freeglut 3.8.0-1.1 -lib32-freetype2 2.14.3-1 -lib32-fribidi 1.0.16-2 -lib32-gcc-libs 16.1.1+r12+g301eb08fa2c5-2 -lib32-gdk-pixbuf2 2.44.6-2 -lib32-gettext 1.0-1 -lib32-giflib 6.1.3-1 -lib32-glew 2.3.1-1 -lib32-glib2 2.88.1-1 -lib32-glibc 2.43+r22+g8362e8ce10b2-4 -lib32-glu 9.0.3-2 -lib32-gmp 6.3.0-2 -lib32-gnutls 3.8.13-3 -lib32-gtk3 1:3.24.52-1 -lib32-harfbuzz 14.2.1-1 -lib32-icu 78.3-1 -lib32-imlib2 1.12.6-1 -lib32-json-c 0.18-2 -lib32-keyutils 1.6.3-4 -lib32-krb5 1.22.2-1 -lib32-lcms2 2.17-1 -lib32-libasyncns 1:0.8+r3+g68cd5af-3 -lib32-libcaca 0.99.beta20-2 -lib32-libcanberra 1:0.30+r2+gc0620e4-4 -lib32-libcups 2.4.19-1 -lib32-libdatrie 0.2.13-3 -lib32-libdisplay-info 0.3.0-1 -lib32-libdrm 2.4.134-1 -lib32-libelf 0.195-1 -lib32-libepoxy 1.5.10-2 -lib32-libffi 3.5.2-1 -lib32-libgcrypt 1.12.2-1 -lib32-libglvnd 1.7.0-1 -lib32-libgpg-error 1.61-1 -lib32-libgudev 238-3 -lib32-libice 1.1.1-2 -lib32-libidn2 2.3.8-1 -lib32-libjpeg-turbo 3.1.4.1-1 -lib32-libldap 2.6.13-1 -lib32-libltdl 2.6.1-1 -lib32-libmodplug 0.8.9.0-5 -lib32-libnghttp2 1.69.0-1 -lib32-libnghttp3 1.16.0-1 -lib32-libngtcp2 1.23.0-1 -lib32-libnl 3.12.0-1 -lib32-libnm 1.56.1-1 -lib32-libnsl 2.0.1-2 -lib32-libogg 1.3.6-1 -lib32-libpcap 1.10.6-1 -lib32-libpciaccess 0.19-1 -lib32-libpipewire 1:1.6.6-1 -lib32-libpng 1.6.58-1 -lib32-libpsl 0.21.5-1 -lib32-libpulse 17.0+r98+gb096704c0-1 -lib32-librsvg 2:2.62.3-1 -lib32-libsm 1.2.6-1 -lib32-libsndfile 1.2.2-3 -lib32-libssh2 1.11.1-1 -lib32-libtasn1 4.21.0-1 -lib32-libthai 0.1.29-3 -lib32-libtheora 1.2.0-1 -lib32-libtiff 4.7.1-1 -lib32-libtirpc 1.3.7-1 -lib32-libunistring 1.4.2-1 -lib32-libunwind 1.8.2-1 -lib32-libusb 1.0.30-1 -lib32-libva 2.22.0-1 -lib32-libvdpau 1.5-3 -lib32-libvorbis 1.3.7-4 -lib32-libvpx 1.16.0-2 -lib32-libwebp 1.6.0-1 -lib32-libx11 1.8.13-1 -lib32-libxau 1.0.12-1 -lib32-libxcb 1.17.0-1 -lib32-libxcomposite 0.4.7-1 -lib32-libxcrypt 4.5.2-1 -lib32-libxcrypt-compat 4.5.2-1 -lib32-libxcursor 1.2.3-1 -lib32-libxdamage 1.1.7-1 -lib32-libxdmcp 1.1.5-1 -lib32-libxext 1.3.7-1 -lib32-libxfixes 6.0.1-2 -lib32-libxft 2.3.9-1 -lib32-libxi 1.8.3-1 -lib32-libxinerama 1.1.6-1 -lib32-libxkbcommon 1.13.2-1 -lib32-libxml2 2.15.3-1 -lib32-libxmu 1.3.1-1 -lib32-libxrandr 1.5.5-1 -lib32-libxrender 0.9.11-2 -lib32-libxshmfence 1.3.3-1 -lib32-libxss 1.2.5-1 -lib32-libxt 1.3.1-1 -lib32-libxtst 1.2.5-2 -lib32-libxxf86vm 1.1.5-2 -lib32-llvm-libs 1:22.1.6-1 -lib32-lm_sensors 1:3.6.2-2 -lib32-mangohud 0.8.4-1 -lib32-mesa 3:26.1.2-1 -lib32-mpg123 1.33.5-1 -lib32-ncurses 6.6-2 -lib32-nettle 4.0-2 -lib32-nspr 4.39-1 -lib32-nss 3.125-1 -lib32-nvidia-utils 610.43.02-1 -lib32-ocl-icd 2.3.3-1 -lib32-openal 1.25.2-1 -lib32-opencl-nvidia 610.43.02-1 -lib32-openssl 1:3.6.3-1 -lib32-opus 1.6.1-1 -lib32-p11-kit 0.26.2-1 -lib32-pango 1:1.57.1-1 -lib32-pcre2 10.47-1 -lib32-pipewire 1:1.6.6-1 -lib32-pixman 0.46.4-1 -lib32-sdl2-compat 2.32.70-1 -lib32-sdl2_image 2.8.12-1 -lib32-sdl2_mixer 2.8.2-1 -lib32-sdl2_ttf 2.24.0-2 -lib32-sdl3 3.4.10-1 -lib32-speex 1.2.1-2 -lib32-speexdsp 1.2.1-2 -lib32-spirv-tools 1:1.4.350.0-1 -lib32-sqlite 3.53.2-1 -lib32-systemd 260.2-1 -lib32-tdb 1.4.13-1 -lib32-util-linux 2.42.2-1 -lib32-vulkan-icd-loader 1.4.350.0-1 -lib32-vulkan-mesa-implicit-layers 3:26.1.2-1 -lib32-vulkan-radeon 3:26.1.2-1 -lib32-wayland 1.25.0-1 -lib32-xcb-util-keysyms 0.4.1-2 -lib32-xz 5.8.3-1 -lib32-zlib-ng 2.3.3-2 -lib32-zlib-ng-compat 2.3.3-2 -lib32-zstd 1.5.7-2 -libabw 0.1.4-1.1 -libaccounts-glib 1.27-3.1 -libaccounts-qt 1.17-2.1 -libadwaita 1:1.9.1-1 -libaio 0.3.113-4.1 -libappindicator 12.10.1-1 -libarchive 3.8.7-1.1 -libasan 16.1.1+r12+g301eb08fa2c5-2 -libass 0.17.4-2.1 -libassuan 3.0.0-1.1 -libasyncns 1:0.8+r3+g68cd5af-3.1 -libatasmart 0.19-8.1 -libatomic 16.1.1+r12+g301eb08fa2c5-2 -libatomic_ops 7.8.2-2.1 -libavc1394 0.5.4-7.1 -libavif 1.4.2-1.1 -libavtp 0.2.0-3.1 -libayatana-appindicator 0.6.0-1.1 -libayatana-indicator 0.9.5-1.1 -libb2 0.98.1-3.1 -libblake3 1.8.4-1.1 -libblockdev 3.5.0-2.1 -libblockdev-crypto 3.5.0-2.1 -libblockdev-fs 3.5.0-2.1 -libblockdev-loop 3.5.0-2.1 -libblockdev-mdraid 3.5.0-2.1 -libblockdev-nvme 3.5.0-2.1 -libblockdev-part 3.5.0-2.1 -libblockdev-smart 3.5.0-2.1 -libblockdev-swap 3.5.0-2.1 -libbluray 1.4.1-1.1 -libbpf 1.7.0-1.1 -libbs2b 3.1.0-10.1 -libbsd 0.12.2-2.1 -libbytesize 2.12-3.1 -libcaca 0.99.beta20-7.1 -libcanberra 1:0.30+r2+gc0620e4-6.1 -libcap 2.78-1.1 -libcap-ng 0.9.3-1.1 -libcbor 0.14.0-1.1 -libcddb 1.3.2-9.2 -libcdio 2.3.0-1.1 -libcdio-paranoia 10.2+2.0.2-2.1 -libcdr 0.1.9-1.1 -libclapper 0.10.0-1.1 -libclapper-gtk 0.10.0-1.1 -libcloudproviders 0.4.0-1.1 -libcmis 0.6.3-1.1 -libcolord 1.4.8-1 -libcups 2:2.4.19-1 -libdaemon 0.14-6.3 -libdatachannel 0.24.3-2.1 -libdatrie 0.2.14-1.1 -libdbusmenu-glib 18.10.20180917-1 -libdbusmenu-gtk3 18.10.20180917-1 -libdbusmenu-qt5 0.9.3+16.04.20160218-8 -libdc1394 2.2.7-2.1 -libdca 0.0.7-3.1 -libde265 1.1.1-1.1 -libdecor 0.2.5-1.1 -libdeflate 1.25-1.1 -libdispatch 6.2.2-1.1 -libdisplay-info 0.3.0-1.1 -libdmtx 0.7.8-1.1 -libdovi 3.3.2-2.1 -libdrm 2.4.134-1.1 -libdv 1.0.0-12.1 -libdvbpsi 1:1.3.3-4 -libdvdcss 1.5.0-1.1 -libdvdnav 7.0.0-1.1 -libdvdread 7.0.1-1.1 -libe-book 0.1.3-20.1 -libebml 1.4.5-2.1 -libebur128 1.2.6-2.1 -libedit 20260512_3.1-1.1 -libei 1.6.0-1 -libelf 0.195-1 -libepoxy 1.5.10-3.1 -libepubgen 0.1.1-6.1 -libetonyek 0.1.13-2.1 -libev 4.33-5.1 -libevdev 1.13.6-1.1 -libevent 2.1.12-5.1 -libexttextcat 3.4.8-1.1 -libfabric 2.5.1-1.1 -libfakekey 0.3-4.1 -libfdk-aac 2.0.3-2.1 -libffi 3.5.2-1.1 -libfido2 1.17.0-1.1 -libfontenc 1.1.9-1.1 -libfreeaptx 0.2.2-1.1 -libfreehand 0.1.3-1.1 -libftdi 1.5-10.1 -libfyaml 0.9.6-2.1 -libgbinder 1.1.47-1.1 -libgcc 16.1.1+r12+g301eb08fa2c5-2 -libgcrypt 1.12.2-1.1 -libgee 0.20.8-1.1 -libgfortran 16.1.1+r12+g301eb08fa2c5-2 -libgirepository 1.86.0-2.1 -libgit2 1:1.9.4-1.1 -libglibutil 1.0.82-1.1 -libglvnd 1.7.0-3.1 -libgme 0.6.5-1.1 -libgomp 16.1.1+r12+g301eb08fa2c5-2 -libgoom2 2k4-5 -libgpg-error 1.61-1.1 -libgravatar 26.04.2-1.1 -libgsf 1.14.58-1.1 -libgudev 238-3.1 -libhandy 1.8.3-2.1 -libheif 1.23.0-2.1 -libibus 1.5.34-1.1 -libical 4.0.3-2.1 -libice 1.1.2-1.1 -libidn 1.44-1.1 -libidn2 2.3.8-1.1 -libiec61883 1.2.0-9.1 -libimagequant 4.4.1-2 -libimobiledevice 1.4.0-2.2 -libimobiledevice-glue 1.3.2-1.3 -libinih 62-2.1 -libinput 1.31.3-1.1 -libisl 0.27-1.1 -libixion 0.20.0-7.1 -libjcat 0.2.6-1.1 -libjpeg-turbo 3.1.4.1-1.1 -libjuice 1.7.2-1.1 -libjxl 0.11.2-2.1 -libkate 0.4.3-4.1 -libkdcraw 26.04.2-1 -libkdepim 26.04.2-1.1 -libkexiv2 26.04.2-1.1 -libkgapi 26.04.2-1.1 -libkleo 26.04.2-1.1 -libksba 1.8.0-1.1 -libkscreen 6.7.1-1.1 -libksieve 26.04.2-2.1 -libksysguard 6.7.0-1 -liblangtag 0.6.8-1.1 -liblc3 1.1.3-2.1 -libldac 2.0.2.5-1.1 -libldap 2.6.13-1 -liblqr 0.4.3-1.1 -liblrdf 0.6.1-5.1 -liblsan 16.1.1+r12+g301eb08fa2c5-2 -libltc 1.3.2-2.1 -libluv 1.52.1-1 -libmad 0.15.1b-10.1 -libmakepkg-dropins 20-1 -libmalcontent 0.14.0-4 -libmanette 0.2.13-2.1 -libmatroska 1.7.1-2.1 -libmaxminddb 1.13.3-1.1 -libmbim 1.34.0-1.1 -libmd 1.2.0-1.1 -libmfx 23.2.2-6 -libmicrodns 0.2.0-2.1 -libmm-glib 1.24.2-1.1 -libmng 2.0.3-4.1 -libmnl 1.0.5-2.1 -libmodplug 0.8.9.0-7.1 -libmpc 1.4.1-1.1 -libmpcdec 1:0.1+r475-6 -libmpeg2 0.5.1-11.1 -libmspub 0.1.5-1.1 -libmtp 1.1.23-1.1 -libmwaw 0.3.22-4.1 -libmysofa 1.3.4-1.1 -libmythes 1:1.2.6-1.1 -libndp 1.9-1.1 -libnet 2:1.3-2.1 -libnetfilter_conntrack 1.1.1-1.1 -libnewt 0.52.25-2.1 -libnfnetlink 1.0.2-2.1 -libnfs 6.0.2-5.1 -libnftnl 1.3.1-1.1 -libnghttp2 1.69.0-1.1 -libnghttp3 1.16.0-1.1 -libngtcp2 1.23.0-1.1 -libnice 0.1.23-1.1 -libnl 3.12.0-1.1 -libnm 1.56.1-1 -libnma-common 1.10.6-3.1 -libnma-gtk4 1.10.6-3.1 -libnotify 0.8.8-1.1 -libnsl 2.0.1-2.1 -libntfs-3g 2026.2.25-1.1 -libnumbertext 1.0.11-3.1 -libnvme 1.16.2-1.1 -libobjc 16.1.1+r12+g301eb08fa2c5-2 -libodfgen 0.1.8-5.1 -libogg 1.3.6-1.1 -libopenmpt 0.8.7-1.1 -libopenraw 0.3.7-2.1 -liborcus 0.21.0-6.1 -libp11-kit 0.26.2-1.1 -libpagemaker 0.0.4-5.1 -libpaper 2.2.8-1.1 -libpathrs 0.2.5-2.1 -libpcap 1.10.6-1.1 -libpciaccess 0.19-1.1 -libpeas-2 2.2.1-1.1 -libpgm 5.3.128-4.1 -libphonenumber 1:9.0.32-2.1 -libpipeline 1.5.8-1.1 -libpipewire 1:1.6.7-1.1 -libplacebo 7.360.1-3.1 -libplasma 6.7.1-1.1 -libplist 2.7.0-3.1 -libpng 1.6.58-1.1 -libproxy 0.5.12-1.1 -libpsl 0.21.5-2.1 -libpulse 17.0+r98+gb096704c0-1.2 -libpwquality 1.4.5-7.3 -libqaccessibilityclient-qt6 0.6.0-4 -libqalculate 5.11.0-1.1 -libqmi 1.38.0-1.1 -libqrtr-glib 1.4.0-1.1 -libquadmath 16.1.1+r12+g301eb08fa2c5-2 -libqxp 0.0.3-1.1 -libraqm 0.10.5-1.1 -libraw 0.22.1-1.1 -libraw1394 2.1.2-4.1 -libreoffice-fresh 26.2.4-2.1 -libretro-overlays 332-1 -libretro-shaders-slang 1759-1 -librevenge 0.0.5-4.1 -librewolf-bin 1:152.0.0_1-1 -librsvg 2:2.62.3-1.1 -librsync 1:2.3.4-2.1 -libsamplerate 0.2.2-3.1 -libsasl 2.1.28-5.1 -libseccomp 2.6.0-1 -libsecret 0.21.7-1 -libshout 1:2.4.6-5.1 -libsigc++ 2.12.2-1.1 -libsigc++-3.0 3.8.1-1.1 -libsixel 1.10.5-1.1 -libsm 1.2.6-1.1 -libsndfile 1.2.2-4.1 -libsodium 1.0.22-1.1 -libsoup3 3.6.6-2.1 -libsoxr 0.1.3-4.1 -libspectre 0.2.12-2.1 -libsrtp 1:2.8.0-1.1 -libssc 0.4.3-1.1 -libssh 0.12.0-1.1 -libssh2 1.11.1-1.1 -libstaroffice 0.0.7-5.1 -libstdc++ 16.1.1+r12+g301eb08fa2c5-2 -libstemmer 3.1.1-1.1 -libsysprof-capture 50.0-2.1 -libtasn1 4.21.0-1.1 -libtatsu 1.0.5-1.1 -libteam 1.32-3.1 -libthai 0.1.30-1.1 -libtheora 1.2.0-1.1 -libtiff 4.7.1-2.1 -libtiger 0.3.4-8.1 -libtirpc 1.3.7-1.1 -libtommath 1.3.0-2.1 -libtool 2.6.1-1 -libtorrent 0.16.15-1.1 -libtorrent-rasterbar 1:2.0.13-1.1 -libtsan 16.1.1+r12+g301eb08fa2c5-2 -libubsan 16.1.1+r12+g301eb08fa2c5-2 -libunibreak 7.0-1.1 -libunistring 1.4.2-1.1 -libunrar 1:7.2.6-1.1 -libunwind 1.8.2-1.2 -libupnp 1.14.31-1.1 -liburcu 0.15.6-1.1 -liburing 2.14-1.1 -libusb 1.0.30-1.1 -libusb-compat 0.1.9-1.1 -libusbmuxd 2.1.1-2.1 -libutempter 1.2.3-1.1 -libutf8proc 2.11.3-1.1 -libuv 1.52.1-1.1 -libva 2.23.0-1.1 -libva-nvidia-driver 0.0.17-1.1 -libvdpau 1.5-4.1 -libverto 0.3.2-6.1 -libvisio 0.1.11-1.1 -libvlc 3.0.23_2-8.1 -libvncserver 0.9.15-1.1 -libvorbis 1.3.7-4.1 -libvpl 2.16.0-2.1 -libvpx 1.16.0-3.1 -libvterm 0.3.3-2.1 -libwacom 2.19.0-1 -libwbclient 2:4.24.3-1.1 -libwebp 1.6.0-2.1 -libwireplumber 0.5.15-1.1 -libwmf 0.2.15-1.1 -libwpd 0.10.3-6.1 -libwps 0.4.14-4.1 -libx11 1.8.13-1.1 -libx86emu 3.7-2.1 -libxau 1.0.12-1.1 -libxaw 1.0.16-2.1 -libxcb 1.17.0-1.1 -libxcomposite 0.4.7-1.1 -libxcrypt 4.5.2-1.1 -libxcrypt-compat 4.5.2-1.1 -libxcursor 1.2.3-1.1 -libxcvt 0.1.3-1.1 -libxdamage 1.1.7-1.1 -libxdmcp 1.1.5-2.1 -libxext 1.3.7-1.1 -libxfixes 6.0.2-1.1 -libxfont2 2.0.7-1.1 -libxft 2.3.9-1.1 -libxi 1.8.3-1.1 -libxinerama 1.1.6-1.1 -libxkbcommon 1.13.2-1.1 -libxkbcommon-x11 1.13.2-1.1 -libxkbfile 1.2.0-1.1 -libxml2 2.15.3-1.1 -libxmlb 0.3.27-1.1 -libxmp 4.7.0-1.1 -libxmu 1.3.1-1.1 -libxnvctrl 610.43.02-1 -libxpm 3.5.19-1.1 -libxpresent 1.0.2-1.1 -libxrandr 1.5.5-1.1 -libxrender 0.9.12-1.1 -libxres 1.2.3-1.1 -libxshmfence 1.3.3-1.1 -libxslt 1.1.45-2.1 -libxss 1.2.5-1.1 -libxt 1.3.1-1.1 -libxtst 1.2.5-1.1 -libxv 1.0.13-1.1 -libxxf86vm 1.1.7-1.1 -libyaml 0.2.5-3.1 -libyuv r2426+464c51a03-1.1 -libzip 1.11.4-1.1 -libzmf 0.0.2-20.1 -licenses 20240728-1 -lilv 0.28.0-1 -limine 12.3.3-1 -limine-mkinitcpio-hook 1.36.0-1 -limine-snapper-sync 1.30.1-1 -linutil-bin 2026.05.21-1 -linux-api-headers 1:7.0-1 -linux-cachyos 7.1.1-2 -linux-cachyos-headers 7.1.1-2 -linux-cachyos-lts 6.18.36-1 -linux-cachyos-lts-headers 6.18.36-1 -linux-cachyos-lts-nvidia-open 6.18.36-1 -linux-cachyos-nvidia-open 7.1.1-2 -linux-firmware 1:20260519-1 -linux-firmware-amdgpu 1:20260519-1 -linux-firmware-atheros 1:20260519-1 -linux-firmware-broadcom 1:20260519-1 -linux-firmware-cirrus 1:20260519-1 -linux-firmware-intel 1:20260519-1 -linux-firmware-mediatek 1:20260519-1 -linux-firmware-nvidia 1:20260519-1 -linux-firmware-other 1:20260519-1 -linux-firmware-radeon 1:20260519-1 -linux-firmware-realtek 1:20260519-1 -linux-firmware-whence 1:20260519-1 -lirc 1:0.10.2-6.1 -litehtml0.9 0.9-2.1 -live-media 2025.05.24-1.1 -lld 22.1.6-1.1 -llhttp 9.3.1-1.1 -llvm 22.1.6-2 -llvm-libs 22.1.6-2 -llvm20-libs 20.1.8-1.2 -llvm21-libs 21.1.8-1.1 -lm_sensors 1:3.6.2-1.1 -lmdb 0.9.35-1.1 -localsend-bin 1.17.0-1 -logrotate 3.22.0-1.1 -lpsolve 5.5.2.14-1.1 -lsb-release 2.0.r55.a25a4fc-1 -lsfg-vk 1:1.0.0.r0.7113d7d-1 -lsof 4.99.7-1.1 -lsp-plugins-lv2 1.2.29-1.1 -lsscsi 0.32-2.1 -lttng-ust2.12 2.12.10-2.1 -lua 5.5.0-2.1 -lua-luarocks 3.13.0-5 -lua51 5.1.5-13.1 -lua51-lpeg 1.1.0-5 -lua54 5.4.8-6.1 -luajit 2.1.1780076327+b925b3e-1.1 -luarocks 3.13.0-5 -lutris 0.5.22-1 -lv2 1.18.10-2.1 -lvm2 2.03.41-1.1 -lxc 1:7.0.0-1.1 -lz4 1:1.10.0-3 -lzo 2.10-5.1 -m4 1.4.21-2.1 -mailcap 2.1.54-2 -mailcommon 26.04.2-2.1 -mailimporter 26.04.2-2.1 -make 4.4.1-3.1 -man-db 2.13.1-1.1 -man-pages 6.18-1 -mangohud 0.8.4-1.1 -mariadb 12.3.2-2.1 -mariadb-clients 12.3.2-2.1 -mariadb-libs 12.3.2-2.1 -mbedtls 3.6.5-1 -md4c 0.5.3-1.1 -mda.lv2 1.2.12-1.1 -mdadm 4.6-2 -media-player-info 26-1 -meld 3.22.3-2 -mesa 3:26.1.2-1 -mesa-utils 9.0.0-7.1 -messagelib 26.04.2-3.1 -micro 2.0.15-3.1 -milou 6.7.1-1.1 -miniupnpc 2.3.3-3.1 -minizip 1:1.3.2-3.1 -mission-center 1.1.0-1.1 -mjpegtools 2.2.1-4.1 -mkinitcpio 41-5 -mkinitcpio-busybox 1.36.1-1.1 -mkvtoolnix-cli 99.0-1 -mlt 7.38.0-1.1 -mobile-broadband-provider-info 20251101-1 -modemmanager 1.24.2-1.1 -modemmanager-qt 6.27.0-1.1 -mpdecimal 4.0.1-3.1 -mpfr 4.2.2-1.1 -mpg123 1.33.5-1.1 -mpv 1:0.41.0-3.1 -mpvqt 1.2.0-1.1 -msgpack-c 7.0.1-1.1 -msodbcsql 18.6.2.1-1 -mssql-tools 18.6.2.1-1 -mtdev 1.1.7-1.1 -mtools 1:4.0.49-1.1 -mtr 0.96-1.1 -mujs 1.3.9-1.1 -mullvad-vpn 2026.2-1.1 -mullvad-vpn-daemon 2026.2-1.1 -multitail 7.1.5-1 -mxw-git v0.2.2.r4.g6978ea2-1 -nano 9.0-1.1 -nano-syntax-highlighting 2025.07.01.r0.g256995b-2 -ncdu 2.9.2-1.1 -ncurses 6.6-2.1 -neon 0.37.1-1.1 -neovim 0.12.3-1.1 -net-tools 2.10-3.1 -netctl 1.29-2 -nethogs 0.8.8-2.1 -nettle 4.0-1 -networkmanager 1.56.1-1 -networkmanager-openvpn 1.12.5-1.1 -networkmanager-qt 6.27.0-1.1 -networkmanager-vpn-plugin-openvpn 1.12.5-1.1 -newsflash 5.1.0-1.1 -nexusmods-app-bin 0.21.1-1 -nfs-utils 2.9.1-1.1 -nfsidmap 2.9.1-1.1 -nftables 1:1.1.6-3 -nilfs-utils 2.3.0-1.1 -nlohmann-json 3.12.0-2 -node-gyp 13.0.0-1 -nodejs 26.1.0-2 -nodejs-nopt 10.0.1-1 -noise-suppression-for-voice 1.21-1.1 -noto-fonts 1:2026.06.01-1 -noto-fonts-cjk 20240730-1 -noto-fonts-emoji 1:2.051-1 -npm 11.16.0-1 -npth 1.8-1.1 -nspr 4.39-1.1 -nss 3.125-1.1 -nss-mdns 0.15.1-2.1 -ntfs-3g 2026.2.25-1.1 -ntfsprogs 2026.2.25-1.1 -numactl 2.0.19-1 -nvidia-prime 1.0-6 -nvidia-settings 610.43.02-1 -nvidia-utils 610.43.02-3 -nvtop 3.3.2-1.1 -obs-studio 32.1.2-5.1 -obsidian 1.12.7-2 -ocean-sound-theme 6.7.0-1 -ocl-icd 2.3.4-1.1 -okular 26.04.2-1.1 -onefetch 2.27.1-1.1 -onetbb 2023.0.0-1.1 -oniguruma 6.9.10-1.1 -openal 1.25.2-1.1 -opencl-nvidia 610.43.02-3 -opencore-amr 0.1.6-2.1 -opencv 4.13.0-10.1 -openexr 3.4.13-2.1 -openh264 2.6.0-2.1 -openjpeg2 2.5.4-1.1 -openjph 0.30.1-1.1 -openmp 22.1.6-1.1 -openmpi 5.0.10-3.1 -openpmix 5.0.10-2.1 -openrgb-git 0.9.1974.g4306603-1 -openssh 10.3p1-1.1 -openssl 3.6.3-1.1 -opentimelineio 0.18.1-3.1 -openucx 1.20.1-1.1 -openvpn 2.7.4-1.1 -openxr 1.1.60-1.1 -optipng 7.9.1-1.1 -opus 1.6.1-1.1 -opusfile 0.12-4.1 -orc 0.4.42-1.1 -os-prober 1.84-1.1 -ostree 2025.7-3.1 -oxygen 6.7.1-1.1 -oxygen-cursors 6.7.1-1.1 -oxygen-icons 1:6.27.0-1 -oxygen5 6.7.1-1.1 -p11-kit 0.26.2-1.1 -pacman 7.1.0.r9.g54d9411-4 -pacman-contrib 1.13.1-1.2 -pacman-mirrorlist 20260610-1 -pacutils 0.15.0-3 -pahole 1:1.31-2.1 -pam 1.7.2-2.1 -pambase 20260616-1 -pango 1:1.57.1-1.1 -pangomm 2.46.4-3.1 -pangomm-2.48 2.56.1-2.1 -parallel 20260522-1 -parted 3.7-1.1 -partitionmanager 26.04.2-1.1 -paru 2.1.0-3 -passim 0.1.11-1.1 -patch 2.8-1 -pavucontrol 1:6.2-1.1 -pciutils 3.15.0-1.1 -pcre 8.45-4.1 -pcre2 10.47-1.1 -pcsclite 2.5.1-1.1 -perl 5.42.2-1.1 -perl-class-inspector 1.36-10 -perl-clone 0.50-1.1 -perl-encode-locale 1.05-15 -perl-error 0.17030-3 -perl-file-listing 6.16-6 -perl-file-sharedir 1.118-8 -perl-html-parser 3.85-1.1 -perl-html-tagset 3.24-4 -perl-http-cookiejar 0.014-5 -perl-http-cookies 6.11-4 -perl-http-daemon 6.17-1 -perl-http-date 6.06-5 -perl-http-message 7.02-1 -perl-http-negotiate 6.01-16 -perl-io-html 1.004-8 -perl-libwww 6.83-1 -perl-lwp-mediatypes 6.04-8 -perl-mailtools 2.22-3 -perl-mime-base32 1.303-13 -perl-mime-charset 1.013.1-6 -perl-net-http 6.24-2 -perl-timedate 2.35-1 -perl-try-tiny 0.32-4 -perl-unicode-linebreak 2019.001-9.4 -perl-uri 5.35-1 -perl-www-robotrules 6.03-1 -perl-xml-parser 2.59-1.1 -perl-xml-writer 0.900-6 -perl-yaml-tiny 1.76-3 -phonon-qt6 4.12.0-6 -phonon-qt6-vlc 0.12.0-6 -pimcommon 26.04.2-1.1 -pinentry 1.3.2-2.1 -pipewire 1:1.6.7-1.1 -pipewire-alsa 1:1.6.7-1.1 -pipewire-audio 1:1.6.7-1.1 -pipewire-pulse 1:1.6.7-1.1 -pixman 0.46.4-1.1 -pkcs11-helper 1.31.0-1.1 -pkgconf 2.5.1-1.1 -pkgfile 25-2.1 -plasma-activities 6.7.1-1.1 -plasma-activities-stats 6.7.1-1.1 -plasma-browser-integration 6.7.1-1.1 -plasma-desktop 6.7.1-1.1 -plasma-firewall 6.7.1-1.1 -plasma-foreground-booster 0.0.dmemcg.experimental-3 -plasma-integration 6.7.1-1.1 -plasma-keyboard 6.7.1-1.1 -plasma-login-manager 6.7.0-2 -plasma-nm 6.7.1-1.1 -plasma-pa 6.7.1-1.1 -plasma-systemmonitor 6.7.1-1.1 -plasma-thunderbolt 6.7.1-1.1 -plasma-vault 6.7.1-1.1 -plasma-workspace 6.7.1-1.1 -plasma5support 6.7.1-1.1 -plasma6-wallpapers-smart-video-wallpaper-reborn 2.13.0-1 -plocate 1.1.24-1.1 -plymouth 26.134.222-2.1 -plymouth-kcm 6.7.1-1.1 -po4a 0.74-1 -podofo 0.10.6-1.1 -polkit 127-3.1 -polkit-kde-agent 6.7.1-1.1 -polkit-qt5 0.201.1-1 -polkit-qt6 0.201.1-1 -poppler 26.06.0-1.1 -poppler-data 0.4.12-2 -poppler-glib 26.06.0-1.1 -poppler-qt6 26.06.0-1.1 -popt 1.19-2.1 -portaudio 1:19.7.0-4.1 -portmidi 1:2.0.8-1.1 -power-profiles-daemon 0.30-3 -powerdevil 6.7.1-1.1 -powertop 2.15-2.2 -ppp 2.5.2-1.1 -prismlauncher 11.0.2-1.1 -prison 6.27.0-1.1 -procps-ng 4.0.6-2.1 -profile-sync-daemon 1:7.03-1 -projectm 3.1.12-5.1 -protobuf 35.0-2.1 -protobuf-c 1.5.2-11.1 -proton-cachyos-native 1:11.0.20260602-3 -proton-cachyos-slr 1:11.0.20260602-3 -proton-pass-bin 1.37.0-1 -protonplus 0.5.20-1 -protontricks 1.14.1-1 -protonup-qt 2.15.0-1 -prrte 3.0.13-1.1 -psmisc 23.7-2.1 -pugixml 1.16-1.1 -pulseaudio-qt 1.8.1-1.1 -purpose 6.27.0-1.1 -pv 1.10.5-1.1 -pyalpm 0.11.1-1.1 -pybind11 3.0.4-1 -pyside6 6.11.1-1.1 -python 3.14.6-2 -python-aaf2 1.7.1-4 -python-aiofiles 25.1.0-2 -python-annotated-types 0.7.0-3 -python-anyio 4.14.0-1 -python-apsw 3.53.2.0-1.1 -python-attrs 26.1.0-1 -python-autocommand 2.2.2-9 -python-beautifulsoup4 4.15.0-1 -python-bidict 0.23.1-5 -python-blinker 1.9.0-4 -python-brotli 1.2.0-1.1 -python-brotlicffi 1.2.0.1-3.1 -python-cachetools 7.1.4-1 -python-cairo 1.29.0-2.1 -python-cbor2 6.1.2-1.1 -python-certifi 2026.06.17-1 -python-cffi 2.0.0-2.1 -python-chardet 6.0.0.post1-1 -python-charset-normalizer 3.4.7-1.1 -python-click 8.3.3-1 -python-contourpy 1.3.3-4.1 -python-cryptography 49.0.0-1.1 -python-css-parser 1.1.1-1 -python-cssselect 1.4.0-1 -python-cycler 0.12.1-4 -python-dateutil 2.9.0-8 -python-dbus 1.4.0-2 -python-defusedxml 0.7.1-8 -python-deprecated 1.3.1-1 -python-distro 1.9.0-4 -python-dnspython 1:2.8.0-3 -python-evdev 1.9.3-1.1 -python-faust-cchardet 2.1.19-5.1 -python-feedparser 6.0.12-2 -python-filelock 3.29.3-1 -python-flask 3.1.3-1 -python-fonttools 4.63.0-1.1 -python-fsspec 2026.4.0-1 -python-gbinder 1.3.1-1.1 -python-gevent 26.5.0-1.1 -python-gmpy2 2.3.1-1.1 -python-gobject 3.56.3-1 -python-greenlet 3.5.1-1.1 -python-h11 0.16.0-2 -python-html2text 2025.4.15-2 -python-html5-parser 0.4.12-5.1 -python-html5lib 1.1-17 -python-httpcore 1.0.9-3 -python-httpx 0.28.1-7 -python-icalendar 7.1.2-1 -python-idna 3.18-1 -python-ifaddr 0.2.0-7 -python-inflate64 1.0.4-2.1 -python-inputs 0.5-7 -python-itsdangerous 2.2.0-2 -python-jaconv 0.5.0-1 -python-jaraco.collections 5.1.0-3 -python-jaraco.context 6.1.2-1 -python-jaraco.functools 4.1.0-3 -python-jaraco.text 4.0.0-4 -python-jeepney 0.9.0-3 -python-jinja 1:3.1.6-3 -python-kiwisolver 1.5.0-1.1 -python-llvmlite 0.47.0-1.1 -python-lxml 6.1.1-1.1 -python-lxml-html-clean 0.4.5-1 -python-markdown 3.10.2-1 -python-markupsafe 3.0.3-1.1 -python-matplotlib 3.11.0-1 -python-mechanize 1:0.4.10-3 -python-moddb 0.14.0-2 -python-more-itertools 11.1.0-1 -python-mpmath 1.4.1-1 -python-msgpack 1.1.2-2.1 -python-multivolumefile 0.2.3-10 -python-netifaces 0.11.0-9.1 -python-networkx 3.6.1-1 -python-numba 0.65.1-1 -python-numpy 2.5.0-1.1 -python-openai-whisper 20250625-3 -python-orjson 3.11.9-1.1 -python-packaging 26.2-1 -python-pandas 2.3.3-2.1 -python-pdftotext 2.2.2-11.1 -python-pefile 2024.8.26-2 -python-pillow 12.2.0-1 -python-pip 26.1.2-1 -python-pkg_resources 81.0.0-1 -python-platformdirs 4.10.0-1 -python-pooch 1.9.0-1 -python-prettytable 3.17.0-2 -python-protobuf 35.0-2.1 -python-psutil 7.2.2-1 -python-py7zr 1.1.2-1 -python-pyaml 26.2.1-1 -python-pybcj 1.0.7-2.1 -python-pychm 0.8.6-11.1 -python-pyclip 0.7.0-9 -python-pycparser 3.00-1 -python-pycryptodome 3.23.0-2.1 -python-pycryptodomex 3.23.0-3.1 -python-pydantic 2.13.4-1 -python-pydantic-core 3:2.46.4-1.1 -python-pydbus 0.6.0-13 -python-pyelftools 0.33-1 -python-pygame 2.6.1-5.1 -python-pygments 2.20.0-1 -python-pykakasi 2.3.0-3 -python-pyparsing 3.3.2-1 -python-pyppmd 1.2.0-2.1 -python-pyqt6 6.11.0-2 -python-pyqt6-sip 13.11.1-1.1 -python-pyqt6-webengine 6.11.0-1 -python-pytorch 2.12.0-5 -python-pytz 2026.1-1 -python-pywayland 0.4.18-3.1 -python-pyxdg 0.28-7 -python-pyzstd 0.19.1-3.1 -python-regex 2026.5.9-1.1 -python-requests 2.34.2-1 -python-scipy 1.18.0-1.1 -python-setuptools 1:82.0.1-1 -python-sgmllib3k 1.0.0-8 -python-shtab 1.8.0-2 -python-six 1.17.0-3 -python-soupsieve 2.8.4-1 -python-srt 3.5.3-3 -python-srt_equalizer 0.1.12-1 -python-steam 2.0.0.alpha1-2 -python-sympy 1.14.0-6 -python-texttable 1.7.0-5 -python-tiktoken 0.12.0-3.1 -python-tqdm 4.68.2-1 -python-typing-inspection 0.4.2-2 -python-typing_extensions 4.15.0-3 -python-unrardll 0.1.7-5.1 -python-urllib3 2.7.0-1 -python-vdf 4.0-5 -python-vosk 0.3.50-7 -python-wand 0.7.1-1 -python-wcwidth 0.8.1-1 -python-webencodings 0.5.1-13 -python-websockets 16.0-1 -python-werkzeug 3.1.8-1 -python-wheel 0.47.0-1 -python-wrapt 2.2.2-1.1 -python-wsproto 1.3.2-1 -python-xlib 0.33-6 -python-xxhash 3.7.0-1.1 -python-yaml 6.0.3-2.1 -python-zeroconf 0.149.1-1.1 -python-zope-event 6.2-1 -python-zope-interface 8.5-1.1 -python-zstandard 0.25.0-2.1 -qbittorrent 5.2.2-1 -qca-qt6 2.3.10-7 -qcoro 0.13.0-2 -qgpgme 2.1.0-1.1 -qhull 2020.2-5.1 -qqc2-breeze-style 6.7.1-1.1 -qqc2-desktop-style 6.27.0-1.1 -qrca 26.04.2-1.1 -qrcodegencpp-cmake 1.8.0-4.7 -qrencode 4.1.1-4.4 -qt5-base 5.15.19+kde+r96-1.1 -qt5-declarative 5.15.19+kde+r23-1.1 -qt5-graphicaleffects 5.15.19-1.1 -qt5-multimedia 5.15.19+kde+r2-1.1 -qt5-quickcontrols 5.15.19-1.1 -qt5-quickcontrols2 5.15.19+kde+r5-1.1 -qt5-speech 5.15.19+kde+r1-1.1 -qt5-svg 5.15.19+kde+r5-1.1 -qt5-tools 5.15.19+kde+r3-1.1 -qt5-translations 5.15.19-1 -qt5-wayland 5.15.19+kde+r55-1.1 -qt5-x11extras 5.15.19-1.1 -qt6-5compat 6.11.1-1.1 -qt6-base 6.11.1-1 -qt6-charts 6.11.1-1.1 -qt6-connectivity 6.11.1-1.1 -qt6-declarative 6.11.1-3.1 -qt6-graphs 6.11.1-1.1 -qt6-imageformats 6.11.1-1.1 -qt6-location 6.11.1-1.1 -qt6-multimedia 6.11.1-1.1 -qt6-multimedia-ffmpeg 6.11.1-1.1 -qt6-multimedia-gstreamer 6.11.1-1.1 -qt6-networkauth 6.11.1-1.1 -qt6-positioning 6.11.1-1.1 -qt6-quick3d 6.11.1-1.1 -qt6-quicktimeline 6.11.1-1.1 -qt6-sensors 6.11.1-1.1 -qt6-shadertools 6.11.1-1.1 -qt6-speech 6.11.1-1.1 -qt6-svg 6.11.1-1.1 -qt6-tools 6.11.1-3.1 -qt6-translations 6.11.1-1 -qt6-virtualkeyboard 6.11.1-1.1 -qt6-wayland 6.11.1-1.1 -qt6-webchannel 6.11.1-1.1 -qt6-webengine 6.11.1-4 -qt6-websockets 6.11.1-1.1 -qt6pas 6.2.10-4.1 -qtkeychain-qt6 0.16.0-1 -radeontop 1.4-3.1 -raptor 2.0.16-9.1 -rasqal 1:0.9.33-9.1 -rate-mirrors 0.28.3-2 -rav1e 0.8.1-2.2 -rclone 1.74.3-1.1 -rclone-browser 1.8.0-4.8 -rclone-manager 0.2.8-1 -re2 2:2025.11.05-5.1 -readline 8.3.003-1.2 -rebuild-detector 4.4.5-1 -recode 3.7.15-1.5 -recordmydesktop 0.4.0-4.1 -redland 1:1.0.17-10.1 -reflector 2023-5 -retroarch 1.22.2-4.1 -retroarch-assets-ozone 1:538-1 -retroarch-assets-xmb 1:538-1 -ripgrep 15.1.0-2 -ripgrep-all 0.10.10-1.2 -rnnoise 1:0.2-1.1 -rocm-core 7.2.4-1.1 -rocm-device-libs 2:7.2.4-1.1 -rocm-smi-lib 7.2.0-2.1 -rocprofiler-register 7.2.4-1.1 -rpcbind 1.2.9-1.1 -rsync 3.4.4-1.1 -rtkit 0.14-1.1 -rtmpdump 1:2.6-2.1 -rubberband 4.0.0-2.1 -runc 1.5.0-1.1 -rust 1:1.96.0-1.1 -rustdesk 1.4.8-1 -rustdesk-server 1.1.15-1 -s-nail 14.9.25-1.1 -sbc 2.2-1.1 -scrcpy 4.0-1.1 -scx-manager 1.15.11-1 -scx-scheds 1.1.1-1 -scx-tools 1.1.1-1.1 -sd 1.1.0-1.1 -sddm 0.21.0-8 -sdl12-compat 1.2.68-2.1 -sdl2-compat 2.32.70-1.1 -sdl2_image 2.8.12-1.1 -sdl2_mixer 2.8.2-1.1 -sdl2_ttf 2.24.0-2.1 -sdl3 3.4.10-1.1 -sdl3_ttf 3.2.2-3.2 -sdl_image 1.2.12-9.1 -seatd 0.9.3-1.1 -sed 4.10-1.1 -semver 7.8.4-1 -serd 0.32.10-1.1 -sg3_utils 1.48-1.2 -shaderc 2026.2-2.1 -shadow 4.19.4.arch1-1.1 -shared-mime-info 2.4-3.1 -shelly 2.4.0.4-2 -shiboken6 6.11.1-1.1 -signon-kwallet-extension 26.04.2-1.1 -signon-plugin-oauth2 0.25-4 -signon-ui 0.17+20231016-4.1 -signond 8.61-4.1 -simde 0.8.2-1 -simdjson 1:4.6.4-1.1 -slang 2.3.3-4.1 -smartmontools 7.5-1.1 -smbclient 2:4.24.3-1.1 -snap-pac 3.0.1-3 -snapper 0.13.1-2.1 -snappy 1.2.2-3.1 -sndio 1.10.0-1.1 -socat 1.8.1.1-1.1 -sof-firmware 2025.12.2-1 -solid 6.27.0-1.1 -solid5 5.116.0-2.1 -sonnet 6.27.0-1.1 -sonnet5 5.116.0-2.1 -sord 0.16.22-1.1 -sound-theme-freedesktop 0.8-6 -soundtouch 2.4.1-1.1 -source-highlight 3.1.9-18.1 -spandsp 0.0.6-7 -spdlog 1.17.0-2.1 -spectacle 1:6.7.1-1.1 -speedtest++ 1.15.r72.b743996-2 -speex 1.2.1-2.1 -speexdsp 1.2.1-2.1 -spirv-tools 1:1.4.350.1-1.1 -sqlite 3.53.2-2 -sratom 0.6.22-1.1 -srt 1.5.5-1.1 -sshfs 3.7.6-1.1 -stacer-bin 1.7.0-1 -starship 1.25.1-1 -startup-notification 0.12-9.1 -steam 1.0.0.85-7 -steam-devices 1.0.0.85-7 -stow 2.4.1-1 -sudo 1.9.17.p2-6.1 -sunshine 2026.516.143833-1 -supergfxctl 5.2.7-2 -svt-av1 4.1.0-2 -svt-hevc 1.5.1-4.1 -switcheroo-control 3.0-1.1 -syncthing 2.1.1-1.1 -syndication 6.27.0-1.1 -syntax-highlighting 6.27.0-1.1 -sysfsutils 2.1.1-2.2 -systemd 260.2-2 -systemd-libs 260.2-2 -systemd-resolvconf 260.2-2 -systemd-sysvcompat 260.2-2 -systemsettings 6.7.1-1.1 -taglib 2.3-1.1 -tail-tray 0.2.33-1 -tailscale 1.98.4-1.1 -talloc 2.4.4-1.1 -tar 1.35-2.1 -tcl 8.6.16-1.1 -tcpdump 4.99.6-1.1 -tdb 1.4.15-1.1 -tealdeer 1.8.1-2.1 -teamspeak 6.0.0beta4-2 -telegram-desktop 6.9.3-6.1 -termius 9.36.2-1 -tesseract 5.5.2-1.1 -tesseract-data-eng 2:4.1.0-5 -tesseract-data-osd 2:4.1.0-5 -tesseract-data-tur 2:4.1.0-5 -tevent 1:0.17.1-2.1 -texinfo 7.3-1.1 -thin-provisioning-tools 1.3.2-1.1 -threadweaver 6.27.0-1.1 -tinysparql 3.11.1-1 -tinyxml2 11.0.0-2 -tk 8.6.16-1.1 -tmux 3.6_b-2.1 -tomlplusplus 3.4.0-2.1 -topgrade 17.6.2-1 -tpm2-tss 4.1.3-1.1 -traceroute 2.1.6-1.2 -trash-cli 0.24.5.26-3 -tree 2.3.2-1 -tree-sitter 0.26.9-1.1 -tree-sitter-c 0.24.1-2.1 -tree-sitter-lua 0.5.0-3.1 -tree-sitter-markdown 0.5.3-2.1 -tree-sitter-query 0.8.0-2.1 -tree-sitter-vim 0.8.1-3.1 -tree-sitter-vimdoc 4.1.0-2.1 -tslib 1.24-1.2 -ttf-bitstream-vera 1.10-16 -ttf-dejavu 2.37+18+g9b5d1b2f-8 -ttf-fantasque-nerd 3.4.0-2 -ttf-fira-sans 1:4.301-3 -ttf-firacode-nerd 3.4.0-2 -ttf-hack 3.003-7 -ttf-jetbrains-mono 2.304-2 -ttf-jetbrains-mono-nerd 3.4.0-2 -ttf-liberation 2.1.5-2 -ttf-meslo-nerd 3.4.0-2 -ttf-opensans 3.003-1 -ttf-roboto 3.015-1 -twolame 0.4.0-4.1 -tzdata 2026b-1.1 -uchardet 0.0.8-4.1 -udisks2 2.11.1-2.1 -ufw 0.36.2-7 -ufw-docker 251123-1 -umu-launcher 1.4.0-3 -unibilium 2.1.2-1.1 -unixodbc 2.3.14-1.1 -unrar 1:7.2.6-1.1 -unzip 6.0-23.1 -upower 1.91.2-1.1 -usb_modeswitch 2.6.2.20251207-1.1 -usbutils 019-1.1 -uthash 2.3.0-3 -util-linux 2.42.2-1 -util-linux-libs 2.42.2-1 -v4l-utils 1.32.0-2.1 -vapoursynth 77-2.1 -verdict 1.4.5-2 -vicinae-bin 0.22.0-1 -vid.stab 1.1.1-3.1 -vim 9.2.0699-1.1 -vim-runtime 9.2.0699-1.1 -visual-studio-code-bin 1.126.0-1 -vivaldi 8.0.4033.50-1.1 -vivaldi-ffmpeg-codecs 148.0.7778.256-1.1 -vlc-plugin-a52dec 3.0.23_2-8.1 -vlc-plugin-aalib 3.0.23_2-8.1 -vlc-plugin-alsa 3.0.23_2-8.1 -vlc-plugin-aom 3.0.23_2-8.1 -vlc-plugin-archive 3.0.23_2-8.1 -vlc-plugin-aribb24 3.0.23_2-8.1 -vlc-plugin-aribb25 3.0.23_2-8.1 -vlc-plugin-ass 3.0.23_2-8.1 -vlc-plugin-avahi 3.0.23_2-8.1 -vlc-plugin-bluray 3.0.23_2-8.1 -vlc-plugin-caca 3.0.23_2-8.1 -vlc-plugin-cddb 3.0.23_2-8.1 -vlc-plugin-chromecast 3.0.23_2-8.1 -vlc-plugin-dav1d 3.0.23_2-8.1 -vlc-plugin-dbus 3.0.23_2-8.1 -vlc-plugin-dbus-screensaver 3.0.23_2-8.1 -vlc-plugin-dca 3.0.23_2-8.1 -vlc-plugin-dvb 3.0.23_2-8.1 -vlc-plugin-dvd 3.0.23_2-8.1 -vlc-plugin-faad2 3.0.23_2-8.1 -vlc-plugin-ffmpeg 3.0.23_2-8.1 -vlc-plugin-firewire 3.0.23_2-8.1 -vlc-plugin-flac 3.0.23_2-8.1 -vlc-plugin-fluidsynth 3.0.23_2-8.1 -vlc-plugin-freetype 3.0.23_2-8.1 -vlc-plugin-gme 3.0.23_2-8.1 -vlc-plugin-gnutls 3.0.23_2-8.1 -vlc-plugin-gstreamer 3.0.23_2-8.1 -vlc-plugin-inflate 3.0.23_2-8.1 -vlc-plugin-jack 3.0.23_2-8.1 -vlc-plugin-journal 3.0.23_2-8.1 -vlc-plugin-jpeg 3.0.23_2-8.1 -vlc-plugin-kate 3.0.23_2-8.1 -vlc-plugin-libsecret 3.0.23_2-8.1 -vlc-plugin-lirc 3.0.23_2-8.1 -vlc-plugin-live555 3.0.23_2-8.1 -vlc-plugin-lua 3.0.23_2-8.1 -vlc-plugin-mad 3.0.23_2-8.1 -vlc-plugin-matroska 3.0.23_2-8.1 -vlc-plugin-mdns 3.0.23_2-8.1 -vlc-plugin-modplug 3.0.23_2-8.1 -vlc-plugin-mpeg2 3.0.23_2-8.1 -vlc-plugin-mpg123 3.0.23_2-8.1 -vlc-plugin-mtp 3.0.23_2-8.1 -vlc-plugin-musepack 3.0.23_2-8.1 -vlc-plugin-nfs 3.0.23_2-8.1 -vlc-plugin-notify 3.0.23_2-8.1 -vlc-plugin-ogg 3.0.23_2-8.1 -vlc-plugin-opus 3.0.23_2-8.1 -vlc-plugin-png 3.0.23_2-8.1 -vlc-plugin-pulse 3.0.23_2-8.1 -vlc-plugin-samplerate 3.0.23_2-8.1 -vlc-plugin-sdl 3.0.23_2-8.1 -vlc-plugin-sftp 3.0.23_2-8.1 -vlc-plugin-shout 3.0.23_2-8.1 -vlc-plugin-smb 3.0.23_2-8.1 -vlc-plugin-soxr 3.0.23_2-8.1 -vlc-plugin-speex 3.0.23_2-8.1 -vlc-plugin-srt 3.0.23_2-8.1 -vlc-plugin-svg 3.0.23_2-8.1 -vlc-plugin-tag 3.0.23_2-8.1 -vlc-plugin-theora 3.0.23_2-8.1 -vlc-plugin-twolame 3.0.23_2-8.1 -vlc-plugin-udev 3.0.23_2-8.1 -vlc-plugin-upnp 3.0.23_2-8.1 -vlc-plugin-vorbis 3.0.23_2-8.1 -vlc-plugin-vpx 3.0.23_2-8.1 -vlc-plugin-x264 3.0.23_2-8.1 -vlc-plugin-x265 3.0.23_2-8.1 -vlc-plugin-xml 3.0.23_2-8.1 -vlc-plugin-zvbi 3.0.23_2-8.1 -vlc-plugins-all 3.0.23_2-8.1 -vlc-plugins-base 3.0.23_2-8.1 -vlc-plugins-extra 3.0.23_2-8.1 -vlc-plugins-video-output 3.0.23_2-8.1 -vlc-plugins-visualization 3.0.23_2-8.1 -vmaf 3.2.0-1.1 -volume_key 0.3.12-12.1 -vosk-api 0.3.50-7 -vte-common 0.84.0-1.2 -vte4 0.84.0-1.2 -vulkan-icd-loader 1.4.350.1-1.1 -vulkan-mesa-implicit-layers 3:26.1.2-1 -vulkan-radeon 3:26.1.2-1 -vulkan-tools 1.4.350.1-1.1 -wavpack 5.9.0-1.1 -waydroid 1.6.3-1 -waydroid-helper 0.2.9-1.1 -wayland 1.25.0-1.1 -wayland-utils 1.3.0-1.1 -webkit2gtk-4.1 2.52.4-1 -webkitgtk-6.0 2.52.4-1 -webrtc-audio-processing 2.1-8.1 -webrtc-audio-processing-1 1.3-5.2 -wev 1.1.0-1.1 -wget 1.25.0-5.1 -which 2.25-1.1 -wildmidi 0.4.6-1.1 -win2xcur 0.2.1-1 -winboat 0.9.0-9 -windscribe-v2-bin 2.22.10-1 -wine 11.11-1.1 -wine-cachyos-opt 2:10.0.20260425-1 -winetricks 20260125-2 -wireless-regdb 2026.05.30-1 -wireplumber 0.5.15-1.1 -wl-clipboard 1:2.3.0-1.1 -woff2 1.0.2-6.1 -wpa_supplicant 2:2.11-5.1 -wqy-zenhei 0.9.45-10 -x264 3:0.165.r3222.b35605a-2.5 -x265 4.2-2.1 -xapian-core 1:2.0.0-2.1 -xcb-proto 1.17.0-4 -xcb-util 0.4.1-2.1 -xcb-util-cursor 0.1.6-1.1 -xcb-util-errors 1.0.1-2.1 -xcb-util-image 0.4.1-3.1 -xcb-util-keysyms 0.4.1-5.1 -xcb-util-renderutil 0.3.10-2.1 -xcb-util-wm 0.4.2-2.1 -xdg-dbus-proxy 0.1.7-1.1 -xdg-desktop-portal 1.22.1-2.1 -xdg-desktop-portal-gtk 1.15.3-1.1 -xdg-desktop-portal-kde 6.7.1-1.1 -xdg-terminal-exec 0.14.0-1 -xdg-user-dirs 0.20-1.1 -xdg-utils 1.2.1-2 -xdotool 4.20260303.1-1.1 -xf86-input-libinput 1.5.0-1.2 -xf86-video-amdgpu 25.0.0-1.1 -xfsprogs 7.0.1-1.1 -xkeyboard-config 2.47-1 -xl2tpd 1.3.20-1.1 -xmlsec 1.3.11-1.1 -xorg-fonts-encodings 1.1.0-2 -xorg-server 21.1.23-1.1 -xorg-server-common 21.1.23-1.1 -xorg-setxkbmap 1.3.5-1.1 -xorg-xauth 1.1.5-1.1 -xorg-xdpyinfo 1.4.0-1.1 -xorg-xkbcomp 1.5.0-1.1 -xorg-xmessage 1.0.7-2.1 -xorg-xprop 1.2.8-1.1 -xorg-xrandr 1.5.4-1.1 -xorg-xrdb 1.2.2-2.1 -xorg-xwayland 24.1.12-1.1 -xorgproto 2025.1-1 -xsettingsd 1.0.2-3.1 -xvidcore 1.3.7-4.1 -xxhash 0.8.3-1 -xz 5.8.3-2 -yay 13.0.1-1 -yelp 49.1-1.1 -yelp-xsl 49.0-1 -yt-dlp 2026.06.09-1 -yt-dlp-ejs 0.8.0-1 -ytmdesktop-bin 2.0.11-1 -yyjson 0.12.0-1.1 -zam-plugins-lv2 4.5-1.1 -zbar 0.23.93-6.1 -zen-browser-bin 1.21.3b-1 -zenity 4.2.2-1.1 -zeromq 4.3.5-3.1 -zimg 3.0.6-1.1 -zint 2.16.0-2.1 -zip 3.0-13.1 -zita-convolver 4.0.3-5.1 -zix 0.8.2-1.1 -zlib-ng 2.3.3-2 -zlib-ng-compat 2.3.3-2 -zoxide 0.9.9-2.1 -zram-generator 1.2.1-1.1 -zsh 5.9.1-1.1 -zsh-theme-powerlevel10k 1:1.20.15-1 -zstd 1.5.7-5 -zvbi 0.2.44-1.1 -zxing-cpp 3.0.2-1.1 diff --git a/setup_internet_monitor.sh b/setup_internet_monitor.sh deleted file mode 100755 index 2076c97..0000000 --- a/setup_internet_monitor.sh +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/bash - -# --- AYARLAR --- -# Healthchecks.io'dan aldığın Laptop Ping URL'ini buraya yapıştır: -PING_URL="BURAYA_PING_URL_ADRESINI_YAPISTIR" -SCRIPT_DIR="$HOME/Documents/scripts" -SYSTEMD_DIR="$HOME/.config/systemd/user" - -if [ "$PING_URL" = "BURAYA_PING_URL_ADRESINI_YAPISTIR" ]; then - echo "⚠️ Lütfen script içindeki PING_URL değişkenini kendi Healthchecks.io URL'iniz ile güncelleyin!" - exit 1 -fi - -echo "Genel İnternet İzleme Sistemi kurulumu başlatılıyor..." - -# 1. Klasörleri oluştur -mkdir -p "$SCRIPT_DIR" -mkdir -p "$SYSTEMD_DIR" - -# 2. Ping Scriptini oluştur (Genel adlandırma) -cat <"$SCRIPT_DIR/internet_heartbeat.sh" -#!/bin/bash -# Herhangi bir bağlantı sorunu veya DNS hatasında --fail hata döndürür -curl --fail --connect-timeout 10 -s "$PING_URL" > /dev/null -EOF - -chmod +x "$SCRIPT_DIR/internet_heartbeat.sh" -echo "✓ İzleme scripti oluşturuldu: $SCRIPT_DIR/internet_heartbeat.sh" - -# 3. Systemd Service dosyasını oluştur -cat <"$SYSTEMD_DIR/internet_monitor.service" -[Unit] -Description=General Internet Connection Heartbeat - -[Service] -Type=oneshot -ExecStart=$SCRIPT_DIR/internet_heartbeat.sh -EOF - -# 4. Systemd Timer dosyasını oluştur -cat <"$SYSTEMD_DIR/internet_monitor.timer" -[Unit] -Description=Run Internet Connection Check every minute - -[Timer] -OnCalendar=*:0/1 -Unit=internet_monitor.service - -[Install] -WantedBy=timers.target -EOF - -# 5. Kapanışta Duraklatma (Pause) servisini oluştur -cat <"$SYSTEMD_DIR/internet_pause.service" -[Unit] -Description=Pause Connection Monitor on Shutdown/Sleep -DefaultDependencies=no -Before=shutdown.target sleep.target - -[Service] -Type=oneshot -ExecStart=/usr/bin/curl -s "$PING_URL/pause" - -[Install] -WantedBy=shutdown.target sleep.target -EOF - -echo "✓ Systemd servisleri (Genel) oluşturuldu." - -# 6. Servisleri aktif et -systemctl --user daemon-reload -systemctl --user enable --now internet_monitor.timer -systemctl --user enable --now internet_pause.service - -echo "-----------------------------------------------" -echo "GENEL KURULUM TAMAMLANDI!" -echo "1. Durum: \$(systemctl --user is-active internet_monitor.timer)" -echo "2. Dosya Konumu: $SCRIPT_DIR" -echo "-----------------------------------------------" diff --git a/switch_to_wpa_supplicant.sh b/switch_to_wpa_supplicant.sh deleted file mode 100755 index 64fded1..0000000 --- a/switch_to_wpa_supplicant.sh +++ /dev/null @@ -1,72 +0,0 @@ -#!/bin/bash - -# Renk Tanımlamaları -GREEN='\033[0;32m' -RED='\033[0;31m' -YELLOW='\033[1;33m' -NC='\033[0m' # No Color - -# 1. Root Yetkisi Kontrolü -if [ "$EUID" -ne 0 ]; then - echo -e "${RED}[HATA] Bu script root yetkisi gerektirir. Lütfen 'sudo' ile çalıştırın.${NC}" - exit 1 -fi - -echo -e "${YELLOW}[BİLGİ] NetworkManager backend değişimi başlatılıyor (iwd -> wpa_supplicant)...${NC}" - -# 2. wpa_supplicant Paketinin Kontrolü -echo -e "${YELLOW}[ADIM 1] wpa_supplicant paketi kontrol ediliyor...${NC}" -if pacman -S --needed --noconfirm wpa_supplicant; then - echo -e "${GREEN}[OK] wpa_supplicant paketi hazır.${NC}" -else - echo -e "${RED}[HATA] wpa_supplicant paketi yüklenemedi. İnternet bağlantınızı kontrol edin.${NC}" - exit 1 -fi - -# 3. iwd Konfigürasyonunun Kaldırılması -CONF_FILE="/etc/NetworkManager/conf.d/iwd.conf" -echo -e "${YELLOW}[ADIM 2] iwd konfigürasyonu kaldırılıyor...${NC}" - -if [ -f "$CONF_FILE" ]; then - rm -f "$CONF_FILE" - echo -e "${GREEN}[OK] $CONF_FILE silindi.${NC}" -else - echo -e "${YELLOW}[BİLGİ] $CONF_FILE zaten mevcut değil.${NC}" -fi - -# Jitter (Ping Spike) Sorununu Çözmek için Güç Tasarrufunu Kapatma -POWERSAVE_CONF="/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf" -echo -e "${YELLOW}[ADIM 3] Jitter (Ping Spike) sorununu azaltmak için Wi-Fi güç tasarrufu (powersave) kapatılıyor...${NC}" -echo -e "[connection]\nwifi.powersave = 2" > "$POWERSAVE_CONF" -echo -e "${GREEN}[OK] Güç tasarrufu devre dışı bırakıldı ($POWERSAVE_CONF).${NC}" - -# 4. Servis Yönetimi (iwd -> OFF, wpa_supplicant -> ON) -echo -e "${YELLOW}[ADIM 4] Servisler yeniden yapılandırılıyor...${NC}" - -# iwd'yi durdur ve devre dışı bırak -systemctl stop iwd 2>/dev/null -systemctl disable iwd 2>/dev/null -echo -e "${GREEN}[OK] iwd devre dışı bırakıldı.${NC}" - -# wpa_supplicant'ı maskeden çıkar ve başlat -systemctl unmask wpa_supplicant 2>/dev/null -systemctl enable --now wpa_supplicant -if systemctl is-active --quiet wpa_supplicant; then - echo -e "${GREEN}[OK] wpa_supplicant servisi başarıyla başlatıldı.${NC}" -else - echo -e "${RED}[HATA] wpa_supplicant servisi başlatılamadı!${NC}" - exit 1 -fi - -# 5. NetworkManager'ı Yeniden Başlatma -echo -e "${YELLOW}[ADIM 5] NetworkManager yeniden başlatılıyor...${NC}" -systemctl restart NetworkManager - -if systemctl is-active --quiet NetworkManager; then - echo -e "${GREEN}[BAŞARILI] İşlem tamamlandı. NetworkManager artık wpa_supplicant backend'ini kullanıyor.${NC}" - echo -e "${YELLOW}[NOT] Jitter sorununu en aza indirmek için powersave devre dışı bırakıldı.${NC}" - echo -e "${YELLOW}[NOT] Eğer hala spike yaşıyorsanız, kullandığınız ağın BSSID'sini NetworkManager üzerinden kilitlemeyi (BSSID lock) deneyebilirsiniz.${NC}" -else - echo -e "${RED}[HATA] NetworkManager yeniden başlatılamadı. 'systemctl status NetworkManager' ile kontrol edin.${NC}" - exit 1 -fi From ef27778ce552e5ce7f00bc31b3d4a59b576d7516 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:29:01 +0300 Subject: [PATCH 03/13] docs(plans): add scripts refactor implementation plan --- .../plans/2026-09-08-scripts-refactor.md | 482 ++++++++++++++++++ 1 file changed, 482 insertions(+) create mode 100644 docs/superpowers/plans/2026-09-08-scripts-refactor.md diff --git a/docs/superpowers/plans/2026-09-08-scripts-refactor.md b/docs/superpowers/plans/2026-09-08-scripts-refactor.md new file mode 100644 index 0000000..2b41868 --- /dev/null +++ b/docs/superpowers/plans/2026-09-08-scripts-refactor.md @@ -0,0 +1,482 @@ +# Dotfiles Betiklerinin Modülerleştirilmesi (Scripts Refactor) Implementation Plan + +> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. + +**Goal:** Kök dizindeki 13 kurulum ve sistem betiğini `scripts/` dizini altına taşımak, `install.sh` ve `stow_all.sh`'ı kök dizinde korumak, çoklu dağıtım (Arch/CachyOS, Fedora, Ubuntu/Debian) desteğini geri kazandırmak ve isteğe bağlı `1password` modülünü eklemek. + +**Architecture:** Betikler bağımsız (self-contained) düz bir yapıda `scripts/` altında toplanır. `install.sh` ana orkestrasyonu sağlar ve `$DOTFILES_DIR/scripts/.sh` yollarını çağırır. Göreceli dosya yolları dinamik çözümlenir, GNU Stow uyumluluğu `.stow-local-ignore` ile korunur. + +**Tech Stack:** Bash, GNU Stow, systemd, pacman/yay, dnf, apt, ufw. + +**Spec:** [`docs/superpowers/specs/2026-09-08-scripts-refactor-design.md`](file:///home/melih/Projects/dotfiles/docs/superpowers/specs/2026-09-08-scripts-refactor-design.md) + +## Global Constraints + +- Kök dizinde yalnızca `install.sh` ve `stow_all.sh` kalacaktır; diğer tüm `setup_*.sh`, `install_flatpaks.sh`, `switch_to_iwd.sh`, `vivaldi_middle_click.sh` betikleri `scripts/` altında toplanacaktır. +- Çoklu dağıtım (Arch/CachyOS, Fedora, Ubuntu/Debian) algılama ve dallanma mantığı korunacaktır. +- `setup_1password.sh` varsayılan argümansız tam kurulumda çalışmayacak; yalnızca `./install.sh 1password` (veya `onepassword`) istendiğinde çalışacaktır. +- Tüm betikler çalıştırılabilir (`chmod +x`) ve sözdizimi açısından geçerli (`bash -n`) olacaktır. +- `.stow-local-ignore` güncellenerek `scripts/` dizininin `$HOME` dizinine stowlanması engellenecektir. + +--- + +### Task 1: Dizin Oluşturma, Betiklerin Taşınması ve Stow İhmal Kuralı + +**Files:** +- Create: `scripts/` (directory) +- Move via git: + - `install_flatpaks.sh` -> `scripts/install_flatpaks.sh` + - `setup_1password.sh` -> `scripts/setup_1password.sh` + - `setup_discord_proxy.sh` -> `scripts/setup_discord_proxy.sh` + - `setup_fkeys.sh` -> `scripts/setup_fkeys.sh` + - `setup_fonts.sh` -> `scripts/setup_fonts.sh` + - `setup_keychron.sh` -> `scripts/setup_keychron.sh` + - `setup_npm.sh` -> `scripts/setup_npm.sh` + - `setup_services.sh` -> `scripts/setup_services.sh` + - `setup_sshd.sh` -> `scripts/setup_sshd.sh` + - `setup_ufw.sh` -> `scripts/setup_ufw.sh` + - `setup_warp.sh` -> `scripts/setup_warp.sh` + - `switch_to_iwd.sh` -> `scripts/switch_to_iwd.sh` + - `vivaldi_middle_click.sh` -> `scripts/vivaldi_middle_click.sh` +- Modify: `.stow-local-ignore` + +**Interfaces:** +- Produces: `scripts/` dizini altında toplanmış 13 adet çalıştırılabilir betik. + +- [ ] **Step 1: Dizin oluştur ve betikleri git mv ile taşı** + +```bash +mkdir -p scripts +git mv install_flatpaks.sh scripts/ +git mv setup_1password.sh scripts/ +git mv setup_discord_proxy.sh scripts/ +git mv setup_fkeys.sh scripts/ +git mv setup_fonts.sh scripts/ +git mv setup_keychron.sh scripts/ +git mv setup_npm.sh scripts/ +git mv setup_services.sh scripts/ +git mv setup_sshd.sh scripts/ +git mv setup_ufw.sh scripts/ +git mv setup_warp.sh scripts/ +git mv switch_to_iwd.sh scripts/ +git mv vivaldi_middle_click.sh scripts/ +chmod +x scripts/*.sh +``` + +- [ ] **Step 2: `.stow-local-ignore` dosyasına `scripts/` kalıbını ekle** + +`.stow-local-ignore` dosyasına `scripts` ve `scripts/` satırlarını ekle: +``` +# GNU Stow Ignore List +# Bu dosyadaki kalıplar 'stow' işlemi sırasında $HOME dizinine bağlanmaz. + +README.* +README.md +LICENSE.* +*.md +.gitignore +scripts +scripts/ +``` + +- [ ] **Step 3: Taşıma ve izinleri doğrula** + +Run: `ls -la scripts/ && git status -s` +Expected: 13 betik `scripts/` altında listelenmeli ve `git status` taşımaları (`R`) göstermeli. + +- [ ] **Step 4: Commit** + +```bash +git add .stow-local-ignore scripts/ +git commit -m "refactor(scripts): move helper and setup scripts to scripts/ directory" +``` + +--- + +### Task 2: `scripts/install_flatpaks.sh` ve `scripts/setup_fonts.sh` Güncellemeleri + +**Files:** +- Modify: `scripts/install_flatpaks.sh` +- Modify: `scripts/setup_fonts.sh` + +**Interfaces:** +- Consumes: Repo kökündeki `flat_packages.txt` +- Produces: Kök dizindeki dosyayı dinamik çözen `install_flatpaks.sh` ve çoklu dağıtım destekleyen `setup_fonts.sh`. + +- [ ] **Step 1: `scripts/install_flatpaks.sh` dosyasında `DOTFILES_DIR` yol çözümlemesini güncelle** + +`scripts/install_flatpaks.sh` dosyasında `baseDir` tanımını ana repo dizinini bulacak şekilde güncelle: +```bash +# Dizini bul (repo kök dizini) +DOTFILES_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." &>/dev/null && pwd)" + +# flat_packages.txt dosyasından paket listesini al +if [ -f "${DOTFILES_DIR}/flat_packages.txt" ]; then + flats=$(awk -F '#' '{print $1}' "${DOTFILES_DIR}/flat_packages.txt" 2>/dev/null | sed 's/ //g' | xargs) +... +``` + +- [ ] **Step 2: `scripts/setup_fonts.sh` dosyasında çoklu dağıtım desteğini geri kazandır** + +`scripts/setup_fonts.sh` içeriğini Arch için pacman, diğer sistemler için doğrudan Nerd Fonts GitHub sürümünden indiren mantıkla güncelle: +```bash +#!/bin/bash +# ============================================================================== +# Font Kurulumu ve Yapılandırması +# ============================================================================== +# Bu betik, JetBrains Mono Nerd Font yazı tipini kurar ve font önbelleğini günceller. +# Arch tabanlı dağıtımlarda (CachyOS, Arch, Manjaro vb.) resmi paketi kurar. +# Diğer dağıtımlarda GitHub üzerinden en güncel sürümü indirerek kurar. + +set -e + +echo ":: Font kurulumu başlıyor..." + +DETECTED_OS="" +if [ -f /etc/os-release ]; then + . /etc/os-release + DETECTED_OS="$ID" +fi + +case "$DETECTED_OS" in + arch|manjaro|endeavouros|artix|cachyos) + sudo pacman -S --needed --noconfirm ttf-jetbrains-mono-nerd + ;; + *) + FONT_DIR="$HOME/.local/share/fonts" + mkdir -p "$FONT_DIR" + echo ":: JetBrains Mono Nerd Font GitHub'dan indiriliyor..." + TEMP_DIR=$(mktemp -d) + curl -fsSL -o "$TEMP_DIR/JetBrainsMono.tar.xz" "https://github.com/ryanoasis/nerd-fonts/releases/latest/download/JetBrainsMono.tar.xz" + tar -xf "$TEMP_DIR/JetBrainsMono.tar.xz" -C "$FONT_DIR" + rm -rf "$TEMP_DIR" + ;; +esac + +# Font önbelleğini güncelle +echo ":: Font önbelleği güncelleniyor..." +fc-cache -f + +echo ":: Font kurulumu tamamlandı!" +``` + +- [ ] **Step 3: Sözdizimi ve yol kontrolü** + +Run: `bash -n scripts/install_flatpaks.sh && bash -n scripts/setup_fonts.sh` +Expected: 0 çıkış kodu (hata yok). + +- [ ] **Step 4: Commit** + +```bash +git add scripts/install_flatpaks.sh scripts/setup_fonts.sh +git commit -m "refactor(scripts): resolve root path in install_flatpaks and restore multi-distro fonts" +``` + +--- + +### Task 3: `scripts/setup_services.sh` İçinde Çoklu Dağıtım Desteğini Geri Kazandırma + +**Files:** +- Modify: `scripts/setup_services.sh` + +**Interfaces:** +- Produces: Arch, Fedora ve Debian dağıtımlarına göre dinamik sistem servis listesi oluşturan ve kullanıcı servislerini etkinleştiren betik. + +- [ ] **Step 1: `scripts/setup_services.sh` dosyasında OS tespiti ve servis dizilerini güncelle** + +`scripts/setup_services.sh` dosyasında `SYSTEM_SERVICES` bölümüne `DETECTED_OS` tespiti ve case yapısını ekle: +```bash +# OS Tespiti +DETECTED_OS="" +if [ -f /etc/os-release ]; then + . /etc/os-release + DETECTED_OS="$ID" +fi + +case "$DETECTED_OS" in + arch|manjaro|endeavouros|artix|cachyos) + SYSTEM_SERVICES=( + "bluetooth.service" # Bluetooth Servisi + "ufw.service" # UFW Güvenlik Duvarı + "avahi-daemon.service" # Yerel Ağ Cihaz Keşif Servisi (mDNS) + "ananicy-cpp.service" # Otomatik Süreç Önceliklendirici (Performans/Oyun) + "bpftune.service" # BPF Otomatik Ağ Optimizasyon Servisi + "warp-svc.service" # Cloudflare WARP Daemon Servisi + "docker.service" # Docker Konteyner Servisi + "tailscaled.service" # Tailscale VPN Servisi + "fstrim.timer" # SSD TRIM Otomatik Bakım Zamanlayıcısı + "cachyos-rate-mirrors.timer" # CachyOS Yansıma Hızı Zamanlayıcısı + "snapper-cleanup.timer" # Btrfs Snapper Temizlik Zamanlayıcısı + "grub-btrfs-snapper.path" # Btrfs GRUB Yansıma Güncelleyici + "cachyos-iw-set-regdomain.path" # Kablosuz Ağ Bölge Ayarı Servisi + ) + ;; + fedora|rhel|centos|rocky|almalinux) + SYSTEM_SERVICES=( + "bluetooth.service" # Bluetooth Servisi + "firewalld.service" # Firewall Servisi + "avahi-daemon.service" # Yerel Ağ Cihaz Keşif Servisi (mDNS) + "tuned.service" # Sistem Performans Tuning Servisi + "bpftune.service" # BPF Otomatik Ağ Optimizasyon Servisi + "warp-svc.service" # Cloudflare WARP Daemon Servisi + "docker.service" # Docker Konteyner Servisi + "tailscaled.service" # Tailscale VPN Servisi + "fstrim.timer" # SSD TRIM Otomatik Bakım Zamanlayıcısı + "dnf-makecache.timer" # DNF Önbellek Güncelleme Zamanlayıcısı + "snapper-cleanup.timer" # Btrfs Snapper Temizlik Zamanlayıcısı + "grubby.service" # GRUB Yapılandırma Aracı + ) + ;; + ubuntu|debian|linuxmint|pop|elementary) + SYSTEM_SERVICES=( + "bluetooth.service" # Bluetooth Servisi + "ufw.service" # UFW Güvenlik Duvarı + "avahi-daemon.service" # Yerel Ağ Cihaz Keşif Servisi (mDNS) + "warp-svc.service" # Cloudflare WARP Daemon Servisi + "docker.service" # Docker Konteyner Servisi + "tailscaled.service" # Tailscale VPN Servisi + "fstrim.timer" # SSD TRIM Otomatik Bakım Zamanlayıcısı + "apt-daily.timer" # Günlük APT Güncelleme Zamanlayıcısı + "apt-daily-upgrade.timer" # Günlük APT Yükseltme Zamanlayıcısı + ) + ;; + *) + SYSTEM_SERVICES=( + "bluetooth.service" + "ufw.service" + "avahi-daemon.service" + "warp-svc.service" + "docker.service" + "tailscaled.service" + "fstrim.timer" + ) + ;; +esac +``` + +- [ ] **Step 2: Sözdizimi kontrolü** + +Run: `bash -n scripts/setup_services.sh` +Expected: 0 çıkış kodu. + +- [ ] **Step 3: Commit** + +```bash +git add scripts/setup_services.sh +git commit -m "refactor(scripts): restore multi-distro system services in setup_services.sh" +``` + +--- + +### Task 4: `install.sh` Dosyasının Güncellenmesi (Yollar, Çoklu Dağıtım ve `1password` Modülü) + +**Files:** +- Modify: `install.sh` + +**Interfaces:** +- Consumes: `$DOTFILES_DIR/scripts/*.sh` ve `$DOTFILES_DIR/stow_all.sh` +- Produces: Tüm modülleri `scripts/` altından çalıştıran, OS algılamalı ve `1password` destekli ana CLI. + +- [ ] **Step 1: `install.sh` dosyasında OS tespiti ve paket yöneticisi mantığını geri getir** + +`install.sh` başındaki OS tespitini ve `install_base_packages`, `install_package_manager` fonksiyonlarını çoklu dağıtım destekleyecek şekilde güncelle: +```bash +# OS Tespiti +DETECTED_OS="" +if [ -f /etc/os-release ]; then + . /etc/os-release + DETECTED_OS="$ID" +fi +``` +`install_base_packages`: +```bash +install_base_packages() { + print_section "'git' ve temel geliştirme paketleri kontrol ediliyor..." + case "$DETECTED_OS" in + arch|manjaro|endeavouros|artix|cachyos) + sudo pacman -Syu --needed git base-devel --noconfirm + ;; + fedora|rhel|centos|rocky|almalinux) + sudo dnf install -y git @development-tools + ;; + ubuntu|debian|linuxmint|pop|elementary) + sudo apt update && sudo apt install -y git build-essential + ;; + *) + echo "Desteklenmeyen dağıtım: $DETECTED_OS. pacman deneniyor..." + sudo pacman -Syu --needed git base-devel --noconfirm 2>/dev/null || true + ;; + esac +} +``` +`install_package_manager`: +```bash +install_package_manager() { + print_section "Paket Yöneticisi Kontrolü..." + case "$DETECTED_OS" in + arch|manjaro|endeavouros|artix|cachyos) + if ! command -v yay &>/dev/null; then + echo ":: 'yay' bulunamadı. AUR'dan kuruluyor..." + git clone https://aur.archlinux.org/yay.git /tmp/yay + (cd /tmp/yay && makepkg -si --noconfirm) + rm -rf /tmp/yay + echo ":: 'yay' başarıyla kuruldu." + else + echo ":: 'yay' zaten kurulu." + fi + ;; + fedora|rhel|centos|rocky|almalinux) + echo ":: Fedora tabanlı sistemde dnf hazır." + ;; + ubuntu|debian|linuxmint|pop|elementary) + echo ":: Debian tabanlı sistemde apt hazır." + ;; + *) + echo ":: Dağıtım: $DETECTED_OS" + ;; + esac +} +``` + +- [ ] **Step 2: Betik yollarını `$DOTFILES_DIR/scripts/` olarak güncelle** + +`install.sh` içindeki modül fonksiyonlarını güncelle: +- `install_flatpaks()` -> `run_script "$DOTFILES_DIR/scripts/install_flatpaks.sh"` +- `link_dotfiles()` -> `run_script "$DOTFILES_DIR/stow_all.sh"` (stow_all kök dizinde) +- `apply_hardware_settings()` -> `run_script "$DOTFILES_DIR/scripts/setup_fkeys.sh" sudo` ve `run_script "$DOTFILES_DIR/scripts/setup_keychron.sh" sudo` +- `apply_network_settings()` -> `run_script "$DOTFILES_DIR/scripts/switch_to_iwd.sh" sudo` ve `run_script "$DOTFILES_DIR/scripts/vivaldi_middle_click.sh"` +- `apply_discord_settings()` -> `run_script "$DOTFILES_DIR/scripts/setup_discord_proxy.sh"` +- `configure_services()` -> `run_script "$DOTFILES_DIR/scripts/setup_services.sh"` +- `apply_ufw_rules()` -> `run_script "$DOTFILES_DIR/scripts/setup_ufw.sh" sudo` +- `apply_warp_settings()` -> `run_script "$DOTFILES_DIR/scripts/setup_warp.sh"` +- `install_fonts()` -> `run_script "$DOTFILES_DIR/scripts/setup_fonts.sh"` +- `configure_npm()` -> `run_script "$DOTFILES_DIR/scripts/setup_npm.sh"` +- `apply_sshd_settings()` -> `run_script "$DOTFILES_DIR/scripts/setup_sshd.sh"` +- Yeni fonksiyon `apply_1password_settings()`: + ```bash + apply_1password_settings() { + print_section "1Password özel tarayıcı izinleri yapılandırılıyor..." + run_script "$DOTFILES_DIR/scripts/setup_1password.sh" sudo + echo ":: 1Password yapılandırması tamamlandı." + } + ``` + +- [ ] **Step 3: CLI argümanlarında `1password` seçeneğini ekle** + +`main()` içindeki `case "$section" in` bloğuna ekle: +```bash +1password|onepassword) apply_1password_settings ;; +``` +Not: Varsayılan tam kurulum akışına (`if [ $# -eq 0 ]`) `apply_1password_settings` çağrısı eklenmez (kullanıcı tercihine uygun olarak). + +- [ ] **Step 4: Sözdizimi kontrolü** + +Run: `bash -n install.sh` +Expected: 0 çıkış kodu. + +- [ ] **Step 5: Commit** + +```bash +git add install.sh +git commit -m "refactor(install): update script paths to scripts/, restore multi-distro logic, add 1password module" +``` + +--- + +### Task 5: Dokümantasyon Güncellemeleri (`README.md`, `ssh/README.md`, `vivaldi/README.md`) + +**Files:** +- Modify: `README.md` +- Modify: `ssh/README.md` +- Modify: `vivaldi/README.md` + +**Interfaces:** +- Produces: Yeni `scripts/` yolunu ve `1password` modülünü yansıtan güncel dokümanlar. + +- [ ] **Step 1: `README.md` dosyasını güncelle** + +1. `## 🧩 Modüler Kurulum Seçenekleri` tablosuna `1password` satırını ekle: + ```markdown + | `1password` | 1Password için özel tarayıcı izinlerini (`scripts/setup_1password.sh`) uygular | + ``` +2. `## 🛠️ Donanım & Sistem Betikleri` bölümündeki yolları `scripts/` olarak güncelle: + - `scripts/setup_fkeys.sh` + - `scripts/setup_keychron.sh` + - `scripts/setup_ufw.sh` + - `scripts/setup_sshd.sh` + - `scripts/setup_services.sh` + - `scripts/vivaldi_middle_click.sh` + - `scripts/setup_1password.sh` (yeni ekle) +3. İlgili açıklamalarda `./setup_*.sh` yerine `./scripts/setup_*.sh` örneklerini kullan. + +- [ ] **Step 2: `ssh/README.md` dosyasını güncelle** + +Satır 60 civarındaki referansı güncelle: +```markdown +sudo ./scripts/setup_sshd.sh +# veya +./install.sh sshd +``` + +- [ ] **Step 3: `vivaldi/README.md` dosyasını güncelle** + +Satır 37 civarındaki referansı güncelle: +```markdown +* İlgili ayarı sisteme uygulamak için `./scripts/vivaldi_middle_click.sh` betiği de kullanılabilir. +``` + +- [ ] **Step 4: Commit** + +```bash +git add README.md ssh/README.md vivaldi/README.md +git commit -m "docs: update script paths to scripts/ and add 1password module to README" +``` + +--- + +### Task 6: Kapsamlı Doğrulama ve Bütünlük Kontrolleri + +**Files:** +- Test: `install.sh`, `stow_all.sh`, `scripts/*.sh` +- Verify: `git status`, `grep` + +- [ ] **Step 1: Tüm betiklerin sözdizimini doğrula** + +Run: +```bash +bash -n install.sh +bash -n stow_all.sh +for f in scripts/*.sh; do bash -n "$f" || exit 1; done +``` +Expected: Tüm dosyalar hatasız geçer. + +- [ ] **Step 2: Eski kök betik referanslarını ara** + +Run: +```bash +git grep "setup_" || true +git grep "vivaldi_middle_click" || true +git grep "switch_to_iwd" || true +git grep "install_flatpaks" || true +``` +Expected: Kök dizindeki `./setup_*.sh` şeklindeki tüm eski yolların `scripts/` veya `install.sh ` olarak güncellendiğini doğrula. + +- [ ] **Step 3: `flat_packages.txt` çözümleme simülasyonu** + +Run: +```bash +bash -c 'DOTFILES_DIR="$(cd -- scripts/.. && pwd)"; test -f "$DOTFILES_DIR/flat_packages.txt" && echo "FOUND OK"' +``` +Expected: "FOUND OK" + +- [ ] **Step 4: Git çalışma ağacını kontrol et** + +Run: +```bash +git status +``` +Expected: `nothing to commit, working tree clean` + +- [ ] **Step 5: Final onay ve raporlama** + +Tüm adımların başarıyla tamamlandığını doğrula. From 9a5cf20a9c84dfa63b11bf5d382a9fc7f24e9b0c Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:30:24 +0300 Subject: [PATCH 04/13] chore(antigravity): update allowed paths and model selection --- antigravity/.gemini/antigravity-cli/settings.json | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/antigravity/.gemini/antigravity-cli/settings.json b/antigravity/.gemini/antigravity-cli/settings.json index 20277ec..1bb63cd 100644 --- a/antigravity/.gemini/antigravity-cli/settings.json +++ b/antigravity/.gemini/antigravity-cli/settings.json @@ -3,7 +3,7 @@ "editor": "nvim", "enableTelemetry": false, "enableTerminalSandbox": true, - "model": "Gemini 3.7 Flash (High)", + "model": "Gemini 3.8 Flash (High)", "notifications": true, "permissions": { "deny": [ @@ -56,6 +56,9 @@ "/home/melih/Documents", "/home/melih/Projects/dotfiles", "/home/melih/Downloads/Proton Pass", - "/home/melih/.config/ghostty" + "/home/melih/.config/ghostty", + "/home/melih/Sync/Obsidian/Personal-Obsidian/02-University Notes/Semester 8/Internship II", + "/home/melih/Sync/Obsidian/Personal-Obsidian/99-index/Templates", + "/home/melih/Projects/bookorbit" ] } From b519448fc9cf64819de337c840ca5e70174b7efe Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:30:29 +0300 Subject: [PATCH 05/13] refactor(stow): define explicit stow packages array --- stow_all.sh | 57 +++++++++++++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 26 deletions(-) diff --git a/stow_all.sh b/stow_all.sh index ac2a718..d6933c9 100755 --- a/stow_all.sh +++ b/stow_all.sh @@ -1,33 +1,38 @@ #!/bin/bash -# -# install_dotfiles.sh -# YENİ bir sistemde tüm dotfiles'ları "stow" ile bağlar. -# Dotfiles klasörünün içindeyken çalıştırılmalıdır. +set -e -echo "Tüm dotfiles'lar 'stow' ile ana dizine bağlanıyor..." +DOTFILES_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" +cd "$DOTFILES_DIR" -# Stow komutunun kendisi modülerdir. -# Dotfiles klasöründeki *her* alt klasörü (hypr, nvim, fish, gtk...) -# tek tek paket olarak görür ve -t ~ hedefine bağlar. +if ! command -v stow &>/dev/null; then + echo "⚠️ 'stow' bulunamadı. Kuruluyor..." + sudo pacman -S --needed --noconfirm stow +fi -# '*' (yıldız) bu dizindeki tüm klasörleri (paketleri) al demektir. -# Betiklerimizi (install.sh vb.) ve text dosyalarını (packages.txt) -# görmezden gelmesi için basit bir filtreleme yapabiliriz. +PACKAGES=( + btop + fastfetch + fish + ghostty + hypr + kitty + mango + niri + nvim + ssh + starship + sunshine + systemd + user-dirs + vivaldi + zshrc.d +) -# Sadece klasör olanları "stow" et -for pkg in */; do - # Eğer gerçekten bir 'stow' paketi ise (içinde .config gibi yapılar varsa) - # veya daha basitçe: betik dosyası değilse - if [ -d "$pkg" ]; then - # 'scripts' gibi betik klasörlerini hariç tutabiliriz - if [ "$pkg" != "scripts/" ]; then - echo " -> Bağlanıyor: ${pkg%/}" # Sonundaki / işaretini kaldır - stow -R -t "$HOME" "${pkg%/}" - fi - fi -done +echo ":: Dotfiles 'stow' ile ana dizine bağlanıyor ($HOME)..." +stow -R -t "$HOME" "${PACKAGES[@]}" -# VEYA DAHA BASİT YÖNTEM (Eğer Dotfiles'da sadece paketler varsa): -# stow -t "$HOME" * +if [ -f "$DOTFILES_DIR/fastfetch/.config/fastfetch/update-logo.sh" ]; then + bash "$DOTFILES_DIR/fastfetch/.config/fastfetch/update-logo.sh" "$HOME/.config/fastfetch/logo" 2>/dev/null || true +fi -echo "✅ 'Stow' işlemi tamamlandı." +echo "✅ 'stow' işlemi tamamlandı." From 3a4230c404f29d25d31ea9df1fe8deb2347d76f2 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:30:34 +0300 Subject: [PATCH 06/13] refactor(vivaldi): simplify middle click script to user desktop override --- vivaldi_middle_click.sh | 31 ++----------------------------- 1 file changed, 2 insertions(+), 29 deletions(-) diff --git a/vivaldi_middle_click.sh b/vivaldi_middle_click.sh index 5554fb1..859dd9b 100755 --- a/vivaldi_middle_click.sh +++ b/vivaldi_middle_click.sh @@ -1,9 +1,7 @@ #!/bin/bash # Değişkenler -DOTFILES_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" -DOTFILES_CONF="$DOTFILES_DIR/vivaldi/.config/vivaldi-stable.conf" -CONF_FILE="$HOME/.config/vivaldi-stable.conf" + LOCAL_DESKTOP_DIR="$HOME/.local/share/applications" LOCAL_DESKTOP="$LOCAL_DESKTOP_DIR/vivaldi-stable.desktop" SYSTEM_DESKTOP="/usr/share/applications/vivaldi-stable.desktop" @@ -13,32 +11,7 @@ FLAGS="--enable-blink-features=MiddleClickAutoscroll --enable-features=MiddleCli echo "Vivaldi Middle Click Scroll Yapılandırması Başlatılıyor..." -# 1. Dotfiles içindeki vivaldi-stable.conf dosyasını oluştur / güncelle -if [ -d "$DOTFILES_DIR/vivaldi/.config" ]; then - cat << EOF > "$DOTFILES_CONF" ---enable-blink-features=MiddleClickAutoscroll ---enable-features=MiddleClickAutoscroll -EOF - echo "✅ Dotfiles yapılandırma dosyası güncellendi: $DOTFILES_CONF" - - # Stow ile bağla (eğer stow mevcutsa) - if command -v stow &>/dev/null; then - (cd "$DOTFILES_DIR" && stow -R -t "$HOME" vivaldi) - echo "✅ Dotfiles 'stow' ile senkronize edildi." - fi -fi - -# 2. Home dizinindeki conf dosyasını da doğrudan garantiye al -if [ ! -L "$CONF_FILE" ]; then - mkdir -p "$(dirname "$CONF_FILE")" - cat << EOF > "$CONF_FILE" ---enable-blink-features=MiddleClickAutoscroll ---enable-features=MiddleClickAutoscroll -EOF - echo "✅ Kullanıcı yapılandırma dosyası güncellendi: $CONF_FILE" -fi - -# 3. Masaüstü (.desktop) dosyasını güncelle +# Masaüstü (.desktop) dosyasını güncelle mkdir -p "$LOCAL_DESKTOP_DIR" if [ -f "$SYSTEM_DESKTOP" ]; then cp "$SYSTEM_DESKTOP" "$LOCAL_DESKTOP" From 9309c47f30bf6deabc2caab69665cc509446c6f0 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:30:45 +0300 Subject: [PATCH 07/13] chore: ignore .superpowers directory --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 480ce08..60507a3 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,6 @@ antigravity/.gemini/antigravity-cli/* sunshine/.config/sunshine/credentials/ sunshine/.config/sunshine/sunshine_state.json sunshine/.config/sunshine/sunshine.log + +# Superpowers SDD workspace +.superpowers/ From a061097d27794ac1399572fe249cd0145781e651 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:31:30 +0300 Subject: [PATCH 08/13] refactor(scripts): move helper and setup scripts to scripts/ directory --- .stow-local-ignore | 2 ++ install_flatpaks.sh => scripts/install_flatpaks.sh | 0 setup_1password.sh => scripts/setup_1password.sh | 0 setup_discord_proxy.sh => scripts/setup_discord_proxy.sh | 0 setup_fkeys.sh => scripts/setup_fkeys.sh | 0 setup_fonts.sh => scripts/setup_fonts.sh | 0 setup_keychron.sh => scripts/setup_keychron.sh | 0 setup_npm.sh => scripts/setup_npm.sh | 0 setup_services.sh => scripts/setup_services.sh | 0 setup_sshd.sh => scripts/setup_sshd.sh | 0 setup_ufw.sh => scripts/setup_ufw.sh | 0 setup_warp.sh => scripts/setup_warp.sh | 0 switch_to_iwd.sh => scripts/switch_to_iwd.sh | 0 vivaldi_middle_click.sh => scripts/vivaldi_middle_click.sh | 0 14 files changed, 2 insertions(+) rename install_flatpaks.sh => scripts/install_flatpaks.sh (100%) rename setup_1password.sh => scripts/setup_1password.sh (100%) rename setup_discord_proxy.sh => scripts/setup_discord_proxy.sh (100%) rename setup_fkeys.sh => scripts/setup_fkeys.sh (100%) rename setup_fonts.sh => scripts/setup_fonts.sh (100%) rename setup_keychron.sh => scripts/setup_keychron.sh (100%) rename setup_npm.sh => scripts/setup_npm.sh (100%) rename setup_services.sh => scripts/setup_services.sh (100%) rename setup_sshd.sh => scripts/setup_sshd.sh (100%) rename setup_ufw.sh => scripts/setup_ufw.sh (100%) rename setup_warp.sh => scripts/setup_warp.sh (100%) rename switch_to_iwd.sh => scripts/switch_to_iwd.sh (100%) rename vivaldi_middle_click.sh => scripts/vivaldi_middle_click.sh (100%) diff --git a/.stow-local-ignore b/.stow-local-ignore index 14b9dd1..1b80d7f 100644 --- a/.stow-local-ignore +++ b/.stow-local-ignore @@ -6,3 +6,5 @@ README.md LICENSE.* *.md .gitignore +scripts +scripts/ diff --git a/install_flatpaks.sh b/scripts/install_flatpaks.sh similarity index 100% rename from install_flatpaks.sh rename to scripts/install_flatpaks.sh diff --git a/setup_1password.sh b/scripts/setup_1password.sh similarity index 100% rename from setup_1password.sh rename to scripts/setup_1password.sh diff --git a/setup_discord_proxy.sh b/scripts/setup_discord_proxy.sh similarity index 100% rename from setup_discord_proxy.sh rename to scripts/setup_discord_proxy.sh diff --git a/setup_fkeys.sh b/scripts/setup_fkeys.sh similarity index 100% rename from setup_fkeys.sh rename to scripts/setup_fkeys.sh diff --git a/setup_fonts.sh b/scripts/setup_fonts.sh similarity index 100% rename from setup_fonts.sh rename to scripts/setup_fonts.sh diff --git a/setup_keychron.sh b/scripts/setup_keychron.sh similarity index 100% rename from setup_keychron.sh rename to scripts/setup_keychron.sh diff --git a/setup_npm.sh b/scripts/setup_npm.sh similarity index 100% rename from setup_npm.sh rename to scripts/setup_npm.sh diff --git a/setup_services.sh b/scripts/setup_services.sh similarity index 100% rename from setup_services.sh rename to scripts/setup_services.sh diff --git a/setup_sshd.sh b/scripts/setup_sshd.sh similarity index 100% rename from setup_sshd.sh rename to scripts/setup_sshd.sh diff --git a/setup_ufw.sh b/scripts/setup_ufw.sh similarity index 100% rename from setup_ufw.sh rename to scripts/setup_ufw.sh diff --git a/setup_warp.sh b/scripts/setup_warp.sh similarity index 100% rename from setup_warp.sh rename to scripts/setup_warp.sh diff --git a/switch_to_iwd.sh b/scripts/switch_to_iwd.sh similarity index 100% rename from switch_to_iwd.sh rename to scripts/switch_to_iwd.sh diff --git a/vivaldi_middle_click.sh b/scripts/vivaldi_middle_click.sh similarity index 100% rename from vivaldi_middle_click.sh rename to scripts/vivaldi_middle_click.sh From 8713a2dbb5734fc6bb712a1ffb1e8d2c4701a75c Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:33:15 +0300 Subject: [PATCH 09/13] refactor(scripts): resolve root path in install_flatpaks and restore multi-distro fonts --- scripts/install_flatpaks.sh | 7 +++---- scripts/setup_fonts.sh | 35 ++++++----------------------------- 2 files changed, 9 insertions(+), 33 deletions(-) diff --git a/scripts/install_flatpaks.sh b/scripts/install_flatpaks.sh index c866ada..7b2c93e 100755 --- a/scripts/install_flatpaks.sh +++ b/scripts/install_flatpaks.sh @@ -11,8 +11,7 @@ set -e echo ":: Flatpak kurulumu ve yapılandırması başlıyor..." # Dizini bul -baseDir=$(dirname "$(realpath "$0")") -scrDir=$(dirname "$(dirname "$(realpath "$0")")") +DOTFILES_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." &>/dev/null && pwd)" # OS Tespiti DETECTED_OS="" @@ -74,8 +73,8 @@ echo ":: Flathub deposu ekleniyor..." flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo # flat_packages.txt dosyasından paket listesini al -if [ -f "${baseDir}/flat_packages.txt" ]; then - flats=$(awk -F '#' '{print $1}' "${baseDir}/flat_packages.txt" 2>/dev/null | sed 's/ //g' | xargs) +if [ -f "${DOTFILES_DIR}/flat_packages.txt" ]; then + flats=$(awk -F '#' '{print $1}' "${DOTFILES_DIR}/flat_packages.txt" 2>/dev/null | sed 's/ //g' | xargs) if [ -n "${flats}" ]; then echo ":: Flatpak paketleri kuruluyor: $flats" flatpak install -y flathub ${flats} diff --git a/scripts/setup_fonts.sh b/scripts/setup_fonts.sh index 0305a03..3b6a014 100755 --- a/scripts/setup_fonts.sh +++ b/scripts/setup_fonts.sh @@ -3,8 +3,7 @@ # Font Kurulumu ve Yapılandırması # ============================================================================== # Bu betik, JetBrains Mono Nerd Font yazı tipini kurar ve font önbelleğini günceller. -# Arch tabanlı dağıtımlarda (CachyOS, Arch, Manjaro vb.) doğrudan resmi -# 'extra/ttf-jetbrains-mono-nerd' paketini kurar. +# Arch tabanlı dağıtımlarda (CachyOS, Arch, Manjaro vb.) resmi paketi kurar. # Diğer dağıtımlarda GitHub üzerinden en güncel sürümü indirerek kurar. set -e @@ -20,37 +19,15 @@ fi case "$DETECTED_OS" in arch|manjaro|endeavouros|artix|cachyos) - echo "-> Arch tabanlı dağıtım tespit edildi ($DETECTED_OS)." - echo "-> 'extra/ttf-jetbrains-mono-nerd' paketi pacman ile kuruluyor..." sudo pacman -S --needed --noconfirm ttf-jetbrains-mono-nerd ;; *) - echo "-> Dağıtım: $DETECTED_OS. GitHub üzerinden manuel indiriliyor..." - FONT_DIR_LOCAL="$HOME/.local/share/fonts" - mkdir -p "$FONT_DIR_LOCAL" - - JETBRAINS_ZIP="$HOME/Downloads/JetBrainsMono.zip" - JETBRAINS_URL="https://github.com/ryanoasis/nerd-fonts/releases/download/v3.5.0/JetBrainsMono.zip" - - if [ ! -f "$JETBRAINS_ZIP" ]; then - echo "-> JetBrains Mono Nerd Font indiriliyor..." - mkdir -p "$HOME/Downloads" - if command -v curl &>/dev/null; then - curl -L -o "$JETBRAINS_ZIP" "$JETBRAINS_URL" - elif command -v wget &>/dev/null; then - wget -O "$JETBRAINS_ZIP" "$JETBRAINS_URL" - else - echo "Hata: İndirmek için ne curl ne de wget bulunamadı." - exit 1 - fi - else - echo "-> JetBrains Mono Nerd Font zip önbellekte bulundu." - fi - + FONT_DIR="$HOME/.local/share/fonts" + mkdir -p "$FONT_DIR" + echo ":: JetBrains Mono Nerd Font GitHub'dan indiriliyor..." TEMP_DIR=$(mktemp -d) - echo "-> Font paketi çıkarılıyor ve kuruluyor..." - unzip -q -o "$JETBRAINS_ZIP" -d "$TEMP_DIR" - find "$TEMP_DIR" -name "*.ttf" -exec cp {} "$FONT_DIR_LOCAL/" \; + curl -fsSL -o "$TEMP_DIR/JetBrainsMono.tar.xz" "https://github.com/ryanoasis/nerd-fonts/releases/latest/download/JetBrainsMono.tar.xz" + tar -xf "$TEMP_DIR/JetBrainsMono.tar.xz" -C "$FONT_DIR" rm -rf "$TEMP_DIR" ;; esac From bca682fef40f3b9a2e400152507ca3f327e13fa8 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:35:45 +0300 Subject: [PATCH 10/13] refactor(scripts): restore multi-distro system services in setup_services.sh --- scripts/setup_services.sh | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/scripts/setup_services.sh b/scripts/setup_services.sh index 8a385dc..2c2b7cb 100755 --- a/scripts/setup_services.sh +++ b/scripts/setup_services.sh @@ -103,52 +103,41 @@ case "$DETECTED_OS" in fedora|rhel|centos|rocky|almalinux) SYSTEM_SERVICES=( "bluetooth.service" # Bluetooth Servisi - "firewalld.service" # Firewall Servisi (Fedora farklı firewall kullanır) + "firewalld.service" # Firewall Servisi "avahi-daemon.service" # Yerel Ağ Cihaz Keşif Servisi (mDNS) - " tuned.service" # Sistem Performans Tuning Servisi + "tuned.service" # Sistem Performans Tuning Servisi "bpftune.service" # BPF Otomatik Ağ Optimizasyon Servisi "warp-svc.service" # Cloudflare WARP Daemon Servisi "docker.service" # Docker Konteyner Servisi "tailscaled.service" # Tailscale VPN Servisi "fstrim.timer" # SSD TRIM Otomatik Bakım Zamanlayıcısı "dnf-makecache.timer" # DNF Önbellek Güncelleme Zamanlayıcısı - "snapper-cleanup.timer" # Btrfs Snapper Temizlik Zamanlayıcısı (eğer Btrfs kullanılıyorsa) + "snapper-cleanup.timer" # Btrfs Snapper Temizlik Zamanlayıcısı "grubby.service" # GRUB Yapılandırma Aracı - " ModemManager.service" # Modem Yönetimi Servisi ) ;; ubuntu|debian|linuxmint|pop|elementary) SYSTEM_SERVICES=( "bluetooth.service" # Bluetooth Servisi - "ufw.service" # UFW Güvenlik Duvarı (Varsayılan) + "ufw.service" # UFW Güvenlik Duvarı "avahi-daemon.service" # Yerel Ağ Cihaz Keşif Servisi (mDNS) - "timered.service" # Sistem Saati Servisi - "bolt.service" # Thunderbolt Güvenlik Servisi "warp-svc.service" # Cloudflare WARP Daemon Servisi "docker.service" # Docker Konteyner Servisi "tailscaled.service" # Tailscale VPN Servisi "fstrim.timer" # SSD TRIM Otomatik Bakım Zamanlayıcısı "apt-daily.timer" # Günlük APT Güncelleme Zamanlayıcısı "apt-daily-upgrade.timer" # Günlük APT Yükseltme Zamanlayıcısı - "snapd.service" # Snap Daemon - " ModemManager.service" # Modem Yönetimi Servisi ) ;; *) - # Varsayılan sistem servis listesi (Arch-based olarak kalacak) SYSTEM_SERVICES=( - "bluetooth.service" # Bluetooth Servisi - "ufw.service" # UFW Güvenlik Duvarı - "avahi-daemon.service" # Yerel Ağ Cihaz Keşif Servisi (mDNS) - "ananicy-cpp.service" # Otomatik Süreç Önceliklendirici (Performans/Oyun) - "bpftune.service" # BPF Otomatik Ağ Optimizasyon Servisi - "warp-svc.service" # Cloudflare WARP Daemon Servisi - "docker.service" # Docker Konteyner Servisi - "tailscaled.service" # Tailscale VPN Servisi - "fstrim.timer" # SSD TRIM Otomatik Bakım Zamanlayıcısı - "snapper-cleanup.timer" # Btrfs Snapper Temizlik Zamanlayıcısı - "grub-btrfs-snapper.path" # Btrfs GRUB Yansıma Güncelleyici - "cachyos-iw-set-regdomain.path" # Kablosuz Ağ Bölge Ayarı Servisi + "bluetooth.service" + "ufw.service" + "avahi-daemon.service" + "warp-svc.service" + "docker.service" + "tailscaled.service" + "fstrim.timer" ) ;; esac From ba5857e3b32ba807e35f78fe8bc296f7ff2f9b88 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:38:13 +0300 Subject: [PATCH 11/13] refactor(install): update script paths to scripts/, restore multi-distro logic, add 1password module --- install.sh | 121 +++++++++++++++++++---------------------------------- 1 file changed, 42 insertions(+), 79 deletions(-) diff --git a/install.sh b/install.sh index 2a25bbd..2395b84 100755 --- a/install.sh +++ b/install.sh @@ -4,7 +4,7 @@ # Daha modüler ve yapılandırılabilir hale getirilmiştir. # Her bölüm bağımsız fonksiyon olarak tanımlanmıştır ve # komut satırı argümanlarıyla seçively çalıştırılabilir. -# Çeşitli Linux dağıtımlarını destekler (Arch-based ve Fedora-based) +# Çeşitli Linux dağıtımlarını destekler (Arch-based, Fedora-based ve Debian-based) # Hata durumunda script'i durdur set -e @@ -63,7 +63,7 @@ print_section() { # 1. Gerekli Temel Paketler (git ve base-devel) # ----------------------------------------------------------------- install_base_packages() { - print_section "'git' ve 'base-devel' grubu kontrol ediliyor/kuruluyor..." + print_section "'git' ve temel geliştirme paketleri kontrol ediliyor..." case "$DETECTED_OS" in arch|manjaro|endeavouros|artix|cachyos) sudo pacman -Syu --needed git base-devel --noconfirm @@ -72,12 +72,11 @@ install_base_packages() { sudo dnf install -y git @development-tools ;; ubuntu|debian|linuxmint|pop|elementary) - sudo apt update - sudo apt install -y git build-essential + sudo apt update && sudo apt install -y git build-essential ;; *) - echo "Desteklenmeyen dağıtım: $DETECTED_OS. Arch-based paket yöneticisi kullanılıyor." - sudo pacman -Syu --needed git base-devel --noconfirm + echo "Desteklenmeyen dağıtım: $DETECTED_OS. pacman deneniyor..." + sudo pacman -Syu --needed git base-devel --noconfirm 2>/dev/null || true ;; esac } @@ -86,11 +85,9 @@ install_base_packages() { # 2. Dağıtım Özel Paket Yöneticisini Kur # ----------------------------------------------------------------- install_package_manager() { - print_section "Dağıtım Özel Paket Yöneticisini Kur" - + print_section "Paket Yöneticisi Kontrolü..." case "$DETECTED_OS" in arch|manjaro|endeavouros|artix|cachyos) - # Arch-based: yay (AUR helper) if ! command -v yay &>/dev/null; then echo ":: 'yay' bulunamadı. AUR'dan kuruluyor..." git clone https://aur.archlinux.org/yay.git /tmp/yay @@ -102,21 +99,13 @@ install_package_manager() { fi ;; fedora|rhel|centos|rocky|almalinux) - # Fedora-based: dnf is already installed, but we can add copr if needed - echo ":: Fedora tabanlı sistemde dnf zaten mevcut." - # Optionally enable RPM Fusion or other repos if needed + echo ":: Fedora tabanlı sistemde dnf hazır." ;; ubuntu|debian|linuxmint|pop|elementary) - # Debian-based: apt is already installed - echo ":: Debian tabanlı sistemde apt zaten mevcut." + echo ":: Debian tabanlı sistemde apt hazır." ;; *) - echo "Bilinmeyen dağıtım: $DETECTED_OS. Yay kurulmayı deniyor." - if ! command -v yay &>/dev/null; then - git clone https://aur.archlinux.org/yay.git /tmp/yay - (cd /tmp/yay && makepkg -si --noconfirm) - rm -rf /tmp/yay - fi + echo ":: Dağıtım: $DETECTED_OS" ;; esac } @@ -126,8 +115,15 @@ install_package_manager() { # ----------------------------------------------------------------- install_all_packages() { print_section "'packages.txt' dosyasındaki tüm paketler kuruluyor..." - yay -Syu --needed - <"$DOTFILES_DIR/packages.txt" - echo ":: Paket kurulumu tamamlandı." + case "$DETECTED_OS" in + arch|manjaro|endeavouros|artix|cachyos) + yay -Syu --needed - <"$DOTFILES_DIR/packages.txt" + echo ":: Paket kurulumu tamamlandı." + ;; + *) + echo "⚠️ 'packages.txt' Arch Linux / pacman paket formatındadır. Farklı bir dağıtımda olduğunuz için paket kurulum adımı atlanıyor." + ;; + esac } # ----------------------------------------------------------------- @@ -135,7 +131,7 @@ install_all_packages() { # ----------------------------------------------------------------- install_flatpaks() { print_section "'install_flatpaks.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/install_flatpaks.sh" + run_script "$DOTFILES_DIR/scripts/install_flatpaks.sh" echo ":: Flatpak kurulum adımı tamamlandı." } @@ -144,51 +140,8 @@ install_flatpaks() { # ----------------------------------------------------------------- link_dotfiles() { print_section "'stow' ile dotfile'lar ana dizine bağlanıyor..." - - # 'stow' paketinin kurulu olduğundan emin ol - if ! command -v stow &>/dev/null; then - echo "Uyarı: 'stow' kurulu değil. 'yay -S stow' ile kuruluyor..." - yay -S --needed stow --noconfirm - fi - - # 'stow' edilecek tüm paketlerin (klasörlerin) listesi - STOW_PACKAGES=( - "btop" - "fastfetch" - "fish" - "ghostty" - "hypr" - "kitty" - "mango" - "niri" - "nvim" - "ssh" - "starship" - "sunshine" - "systemd" - "user-dirs" - "vivaldi" - "zshrc.d" - ) - - # Betiğin bulunduğu (Dotfiles) dizine git - cd "$DOTFILES_DIR" - - echo " -> Şu paketler bağlanacak: ${STOW_PACKAGES[*]}" - # -R (Re-stow): Mevcut linkleri (varsa) kaldırır ve yeniden bağlar. - # -t (Target): Hedef dizin, yani senin home dizinin ($HOME) - stow -R -t "$HOME" "${STOW_PACKAGES[@]}" - + run_script "$DOTFILES_DIR/stow_all.sh" echo ":: 'Stow' işlemi tamamlandı." - - # Fastfetch OS logosunu mevcut sisteme göre bağla - if [ -f "$DOTFILES_DIR/fastfetch/.config/fastfetch/update-logo.sh" ]; then - bash "$DOTFILES_DIR/fastfetch/.config/fastfetch/update-logo.sh" "$HOME/.config/fastfetch/logo" - fi - - # Servisleri başlat - systemctl --user enable vicinae --now - systemctl --user daemon-reload } # ----------------------------------------------------------------- @@ -196,11 +149,11 @@ link_dotfiles() { # ----------------------------------------------------------------- apply_hardware_settings() { print_section "'setup_fkeys.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/setup_fkeys.sh" sudo + run_script "$DOTFILES_DIR/scripts/setup_fkeys.sh" sudo echo ":: F tuslari Donanım ayarları tamamlandı." echo ":: 'setup_keychron.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/setup_keychron.sh" sudo + run_script "$DOTFILES_DIR/scripts/setup_keychron.sh" sudo echo ":: Keychron Klavye Donanım ayarları tamamlandı." } @@ -209,11 +162,11 @@ apply_hardware_settings() { # ----------------------------------------------------------------- apply_network_settings() { print_section "'switch_to_iwd.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/switch_to_iwd.sh" sudo + run_script "$DOTFILES_DIR/scripts/switch_to_iwd.sh" sudo echo ":: Oyunlarda Jitter azaltmak icin iwd gecisi tamamlandı." echo ":: 'vivaldi_middle_click.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/vivaldi_middle_click.sh" + run_script "$DOTFILES_DIR/scripts/vivaldi_middle_click.sh" echo ":: Vivaldi de middle click kullanarak kaydirma aktif edildi." } @@ -222,7 +175,7 @@ apply_network_settings() { # ----------------------------------------------------------------- apply_discord_settings() { print_section "'setup_discord_proxy.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/setup_discord_proxy.sh" + run_script "$DOTFILES_DIR/scripts/setup_discord_proxy.sh" echo ":: Digital Ocean Amsterdam Serverina proxy ile baglanildi." echo ":: Artik discord-secure yazarak veya discord iconuna tiklayarak girebilirsin" } @@ -232,7 +185,7 @@ apply_discord_settings() { # ----------------------------------------------------------------- configure_services() { print_section "'setup_services.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/setup_services.sh" + run_script "$DOTFILES_DIR/scripts/setup_services.sh" echo ":: Sistem ve Kullanıcı Servisleri başarıyla yapılandırıldı." } @@ -241,7 +194,7 @@ configure_services() { # ----------------------------------------------------------------- apply_ufw_rules() { print_section "'setup_ufw.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/setup_ufw.sh" sudo + run_script "$DOTFILES_DIR/scripts/setup_ufw.sh" sudo echo ":: UFW güvenlik duvarı kuralları uygulandı." } @@ -250,7 +203,7 @@ apply_ufw_rules() { # ----------------------------------------------------------------- apply_warp_settings() { print_section "'setup_warp.sh' script'i çalıştırılıyor..." - run_script "$DOTFILES_DIR/setup_warp.sh" + run_script "$DOTFILES_DIR/scripts/setup_warp.sh" echo ":: WARP Split Tunnel kuralları uygulandı." } @@ -259,7 +212,7 @@ apply_warp_settings() { # ----------------------------------------------------------------- install_fonts() { print_section "Font kurulumu ve yapılandırması..." - run_script "$DOTFILES_DIR/setup_fonts.sh" + run_script "$DOTFILES_DIR/scripts/setup_fonts.sh" echo ":: Font kurulumu tamamlandı." } @@ -268,7 +221,7 @@ install_fonts() { # ----------------------------------------------------------------- configure_npm() { print_section "npm global dizin yapılandırması..." - run_script "$DOTFILES_DIR/setup_npm.sh" + run_script "$DOTFILES_DIR/scripts/setup_npm.sh" echo ":: npm yapılandırması tamamlandı." } @@ -277,10 +230,19 @@ configure_npm() { # ----------------------------------------------------------------- apply_sshd_settings() { print_section "SSH Sunucusu (sshd) güvenlik kısıtlamaları uygulanıyor..." - run_script "$DOTFILES_DIR/setup_sshd.sh" + run_script "$DOTFILES_DIR/scripts/setup_sshd.sh" echo ":: SSH sunucusu güvenlik yapılandırması tamamlandı." } +# ----------------------------------------------------------------- +# 15. MODÜL: 1Password Özel Tarayıcı İzinleri Yapılandırması +# ----------------------------------------------------------------- +apply_1password_settings() { + print_section "1Password özel tarayıcı izinleri yapılandırılıyor..." + run_script "$DOTFILES_DIR/scripts/setup_1password.sh" sudo + echo ":: 1Password yapılandırması tamamlandı." +} + # ----------------------------------------------------------------- # Ana fonksiyon - tüm bölümleri sırayla çalıştırır # ----------------------------------------------------------------- @@ -290,7 +252,7 @@ main() { # Komut satırı argümanları kontrolü # Eğer belirli bölümler verildiyse sadece onları çalıştır, yoksa tümünü çalıştır if [ $# -eq 0 ]; then - # Varsayılan: tüm bölümleri çalıştır + # Varsayılan: tüm bölümleri çalıştır (1password hariç - isteğe bağlı) install_base_packages install_package_manager install_all_packages @@ -323,6 +285,7 @@ main() { fonts) install_fonts ;; npm) configure_npm ;; sshd|ssh) apply_sshd_settings ;; + 1password|onepassword) apply_1password_settings ;; *) echo "Bilinmeyen bölüm: $section" ;; esac done From 9a2b4f1caa7349406a4063a081d110fefd263efa Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:40:29 +0300 Subject: [PATCH 12/13] docs: update script paths to scripts/ and add 1password module to README --- README.md | 21 +++++++++++++-------- ssh/README.md | 4 ++-- vivaldi/README.md | 2 +- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 77ea9a0..dcd8fe7 100644 --- a/README.md +++ b/README.md @@ -76,11 +76,12 @@ Yeni formatlanmış bir sisteme geçerken: | `stow` / `dotfiles` | Tüm paketleri `stow` ile `~` dizinine bağlar | | `hardware` | Keychron klavye ve F tuşları modlarını uygular | | `network` | Ağ yapılandırmaları ve iwd optimizasyonları | -| `services` | `setup_services.sh` ile systemd kullanıcı servislerini başlatır | +| `services` | `scripts/setup_services.sh` ile systemd kullanıcı servislerini başlatır | | `ufw` | Güvenlik duvarı kurallarını (Sunshine, SSH vb.) uygular | | `warp` | Cloudflare WARP split tunnel yapılandırması | | `fonts` | JetBrains Mono Nerd Font vb. fontları yükler | -| `sshd` / `ssh` | SSH sunucu güvenlik kısıtlamalarını (`setup_sshd.sh`) kurar | +| `sshd` / `ssh` | SSH sunucu güvenlik kısıtlamalarını (`scripts/setup_sshd.sh`) kurar | +| `1password` | 1Password için özel tarayıcı izinlerini (`scripts/setup_1password.sh`) uygular | --- @@ -127,12 +128,16 @@ Kurulum sonrası **güvenlik nedeniyle depoda tutulmayan** kişisel anahtarları Dotfiles deposu, donanım uyumluluğu ve ağ optimizasyonu için özel yardımcı betikler barındırır: -* `setup_fkeys.sh`: Apple/Fn tuş davranışlarını F1-F12 standart düzenine çevirir. -* `setup_keychron.sh`: Keychron kablosuz/kablolu klavye modu ve Bluetooth optimizasyonları. -* `setup_ufw.sh`: Güvenlik duvarını (Sunshine, SSH vb. izinleri) tek komutla kurar. -* `setup_sshd.sh`: SSH sunucusuna (`sshd`) ağ erişim kısıtlamalarını (`/etc/ssh/sshd_config.d/`) kurar. -* `setup_services.sh`: Dağıtıma göre systemd servislerini devreye alır. -* `vivaldi_middle_click.sh`: Wayland ortamında Vivaldi orta tık sekme açma davranışını düzeltir. +* `scripts/setup_fkeys.sh`: Apple/Fn tuş davranışlarını F1-F12 standart düzenine çevirir. +* `scripts/setup_keychron.sh`: Keychron kablosuz/kablolu klavye modu ve Bluetooth optimizasyonları. +* `scripts/setup_ufw.sh`: Güvenlik duvarını (Sunshine, SSH vb. izinleri) tek komutla kurar. +* `scripts/setup_sshd.sh`: SSH sunucusuna (`sshd`) ağ erişim kısıtlamalarını (`/etc/ssh/sshd_config.d/`) kurar. +* `scripts/setup_services.sh`: Dağıtıma göre systemd servislerini devreye alır. +* `scripts/vivaldi_middle_click.sh`: Wayland ortamında Vivaldi orta tık sekme açma davranışını düzeltir. +* `scripts/setup_1password.sh`: 1Password için özel tarayıcı izinlerini (`/etc/1password/custom_allowed_browsers`) yapılandırır. +* `scripts/setup_discord_proxy.sh`: Discord proxy ve güvenli erişim ayarlarını kurar. +* `scripts/setup_warp.sh`: Cloudflare WARP split tunnel kurallarını uygular. +* `scripts/switch_to_iwd.sh`: NetworkManager için iwd Wi-Fi backend geçişi sağlar. --- diff --git a/ssh/README.md b/ssh/README.md index 675d690..45041e4 100644 --- a/ssh/README.md +++ b/ssh/README.md @@ -55,9 +55,9 @@ AllowUsers melih@192.168.1.* melih@192.168.0.* melih@100.*.*.* melih@127.0.0.1 * `127.0.0.1` (Yerel makine) ### Otomatik Kurulum: -Bu kuralı sisteme uygulamak için ana dizindeki betiği çalıştırmak yeterlidir: +Bu kuralı sisteme uygulamak için betiği çalıştırmak yeterlidir: ```bash -./setup_sshd.sh +./scripts/setup_sshd.sh # veya ./install.sh sshd ``` diff --git a/vivaldi/README.md b/vivaldi/README.md index 200b934..5471fdd 100644 --- a/vivaldi/README.md +++ b/vivaldi/README.md @@ -34,7 +34,7 @@ vivaldi/ ### 1. 🖱️ Orta Tık Otomatik Kaydırma (Middle Click Autoscroll) * `vivaldi-stable.conf` içerisindeki `--enable-blink-features=MiddleClickAutoscroll` ve `--enable-features=MiddleClickAutoscroll` bayrakları sayesinde farenin tekerlek (orta) tuşuna basıldığında sayfa fare hareket yönüne göre otomatik kaydırılır. -* İlgili ayarı sisteme uygulamak için ana dizindeki `./vivaldi_middle_click.sh` betiği de kullanılabilir. +* İlgili ayarı sisteme uygulamak için `./scripts/vivaldi_middle_click.sh` betiği de kullanılabilir. ### 2. 🎨 Favicon Arayüz Temizliği (`custom.css`) * Vivaldi temalarındaki sekme ikonlarının (favicon) etrafında oluşan istenmeyen gölge, kenarlık (border) ve arka plan kutucuklarını kaldırarak pürüzsüz ve modern bir görünüm sağlar. From 714a4d5429dfd84e8f113d64f25b51cc0a9285b7 Mon Sep 17 00:00:00 2001 From: Melih AK Date: Tue, 8 Sep 2026 14:45:14 +0300 Subject: [PATCH 13/13] fix(stow): add multi-distro stow installation support --- install.sh | 8 ++++---- stow_all.sh | 21 ++++++++++++++++++++- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/install.sh b/install.sh index 2395b84..f25536e 100755 --- a/install.sh +++ b/install.sh @@ -66,17 +66,17 @@ install_base_packages() { print_section "'git' ve temel geliştirme paketleri kontrol ediliyor..." case "$DETECTED_OS" in arch|manjaro|endeavouros|artix|cachyos) - sudo pacman -Syu --needed git base-devel --noconfirm + sudo pacman -Syu --needed git base-devel stow --noconfirm ;; fedora|rhel|centos|rocky|almalinux) - sudo dnf install -y git @development-tools + sudo dnf install -y git @development-tools stow ;; ubuntu|debian|linuxmint|pop|elementary) - sudo apt update && sudo apt install -y git build-essential + sudo apt update && sudo apt install -y git build-essential stow ;; *) echo "Desteklenmeyen dağıtım: $DETECTED_OS. pacman deneniyor..." - sudo pacman -Syu --needed git base-devel --noconfirm 2>/dev/null || true + sudo pacman -Syu --needed git base-devel stow --noconfirm 2>/dev/null || true ;; esac } diff --git a/stow_all.sh b/stow_all.sh index d6933c9..6e0b3ff 100755 --- a/stow_all.sh +++ b/stow_all.sh @@ -6,7 +6,26 @@ cd "$DOTFILES_DIR" if ! command -v stow &>/dev/null; then echo "⚠️ 'stow' bulunamadı. Kuruluyor..." - sudo pacman -S --needed --noconfirm stow + DETECTED_OS="" + if [ -f /etc/os-release ]; then + . /etc/os-release + DETECTED_OS="$ID" + fi + case "$DETECTED_OS" in + arch|manjaro|endeavouros|artix|cachyos) + sudo pacman -S --needed --noconfirm stow + ;; + fedora|rhel|centos|rocky|almalinux) + sudo dnf install -y stow + ;; + ubuntu|debian|linuxmint|pop|elementary) + sudo apt update && sudo apt install -y stow + ;; + *) + echo "⚠️ Dağıtım için otomatik stow kurulumu desteklenmiyor ($DETECTED_OS). Lütfen 'stow' paketini manuel kurun." + exit 1 + ;; + esac fi PACKAGES=(