CyberShadow / aconfmgr

A configuration manager for Arch Linux
1.19k stars 41 forks source link

[Bug]: Some symlinks don't work #148

Closed MenacingPerson closed 2 years ago

MenacingPerson commented 2 years ago

General description of the problem:

Certain symlinks don't get found by aconfmgr save

Steps to reproduce the problem:

  1. # systemctl disable sshd
  2. $ aconfmgr save
  3. # systemctl enable sshd
  4. $ aconfmgr save In all the saves it finds nothing for some reason.

Configuration:

IgnorePath '/.snapshots/*'
IgnorePath '/efi/*'
IgnorePath '/boot/*'
IgnorePath '/bin/*'
IgnorePath '/sbin/*'
IgnorePath '/lib/*'
IgnorePath '/lib32/*'
IgnorePath '/lib64/*'

IgnorePath '**tmp**'
IgnorePath '**cache**'
IgnorePath '/usr/bin/*'
IgnorePath '/usr/sbin/*'
IgnorePath '/usr/lib/*'
IgnorePath '/usr/lib32/*'
IgnorePath '/usr/lib64/*'
IgnorePath '/usr/share/*'
IgnorePath '/usr/include/*'
IgnorePath '/var/*'
IgnorePath '/etc/.*'

IgnorePath '/etc/brlapi.key'
IgnorePath '/etc/ssl/certs/*' # Contains a bunch of files, for whatever reason
IgnorePath '/etc/fonts/conf.d/*'
IgnorePath '/etc/NetworkManager/system-connections/*' # Contains connections that are connected to
IgnorePath '/etc/libvirt/storage/*' # Contains storage devices
IgnorePath '/etc/libvirt/qemu/*' # Autogenerated
IgnorePath '/etc/ca-certificates/extracted/*'
IgnorePath '/etc/libvirt/nwfilter/*' # Generated by package
IgnorePath '/etc/cron.d/*' # Generated by package
IgnorePath '/opt/containerd/*' # Empty dir
IgnorePath '/opt/ventoy/*'
IgnorePath '/etc/multipath/*' # Generated

IgnorePath '**ssh**'
IgnorePath '**gpg**'
IgnorePath '**gnupg**'
IgnorePath '**GnuPG**'

IgnorePath '/etc/machine-*' # Generated by systemd
IgnorePath '/etc/adjtime' # Added in install
IgnorePath '/etc/docker/key.json' # Private
IgnorePath '/etc/shells' # Generated by package
IgnorePath '/etc/fstab' # Machine-specific
IgnorePath '/etc/*group*' # User-specific
IgnorePath '/etc/*passwd*' # User-specific
IgnorePath '/etc/*shadow*' # User-specific
IgnorePath '/etc/mkinitcpio.d/*.preset' # Generated by package
IgnorePath '/etc/pacman.d/mirrorlist' # Use reflector lol
IgnorePath '/etc/xml/catalog' # Random file got indexed
IgnorePath '/etc/os-release' # Creates already-created link
IgnorePath '/etc/conf.d/lm_sensors' # Generated by package
IgnorePath '/etc/resolv.conf' # NM configures this

IgnorePath '/etc/ufw/*' # Script configures this
IgnorePath '/etc/default/ufw'
IgnorePath '/etc/openvpn/*'
IgnorePath '/etc/timeshift/timeshift.json' # Contains machine ID
# Files used for the system to boot/work

AddPackage amd-ucode
AddPackage base
AddPackage breeze-grub
AddPackage debuginfod
AddPackage dnsmasq
AddPackage edk2-ovmf
AddPackage efibootmgr
AddPackage firewalld
AddPackage fwupd
AddPackage grub
AddPackage intel-media-driver
AddPackage intel-ucode
AddPackage libva-intel-driver
AddPackage libva-mesa-driver
AddPackage linux-firmware
AddPackage linux-lts
AddPackage linux-zen
AddPackage networkmanager
AddPackage ntfs-3g
AddPackage os-prober
AddPackage power-profiles-daemon
AddPackage refind
AddPackage snapper
AddPackage vulkan-intel
AddPackage vulkan-radeon
AddPackage wireless-regdb
AddPackage zram-generator

AddPackage --foreign plymouth-git
# CLI tools

AddPackage bind
AddPackage btrfs-progs
AddPackage cmatrix
AddPackage fish
AddPackage flake8
AddPackage git
AddPackage grml-zsh-config
AddPackage htop
AddPackage intel-gpu-tools
AddPackage iucode-tool
AddPackage jdk-openjdk
AddPackage libva-utils
AddPackage lolcat
AddPackage lshw
AddPackage man-db
AddPackage man-pages
AddPackage micro
AddPackage ncdu
AddPackage neofetch
AddPackage pacman
AddPackage pacman-contrib
AddPackage python-pip
AddPackage python
AddPackage reflector
AddPackage rust
AddPackage shellcheck
AddPackage texinfo
AddPackage thermald
AddPackage unzip
AddPackage vim
AddPackage vulkan-tools
AddPackage xsel
AddPackage yadm
AddPackage zip
AddPackage zsh
AddPackage zsh-autosuggestions
AddPackage zsh-completions
AddPackage zsh-syntax-highlighting

AddPackageGroup base-devel

AddPackage --foreign aconfmgr-git
AddPackage --foreign btdu
AddPackage --foreign fastfetch-git
AddPackage --foreign inxi
AddPackage --foreign konsave
AddPackage --foreign paru-bin
AddPackage --foreign topgrade
AddPackage --foreign vi-vim-symlink
# Packages required for GUI to work

AddPackage kvantum
AddPackage mesa
AddPackage mesa-utils
AddPackage noto-fonts-emoji
AddPackage pipewire
AddPackage pipewire-alsa
AddPackage pipewire-jack
AddPackage pipewire-pulse
AddPackage plasma-meta
AddPackage plasma-wayland-session
AddPackage wireplumber
AddPackage wl-clipboard
AddPackage x11-ssh-askpass
AddPackage xdg-desktop-portal
AddPackage xdg-desktop-portal-kde

AddPackage --foreign sddm-git
AddPackage --foreign sweet-theme-full-git
# GUI apps

AddPackage chromium
AddPackage element-desktop
AddPackage firefox
AddPackage gcompris-qt
AddPackage gimp
AddPackage gnome-2048
AddPackage gparted
AddPackage kde-applications-meta
AddPackage krita
AddPackage libreoffice-fresh
AddPackage mpv
AddPackage obs-studio
AddPackage pavucontrol-qt
AddPackage qalculate-gtk
AddPackage qbittorrent
AddPackage qemu-desktop
AddPackage thunderbird
AddPackage torbrowser-launcher
AddPackage virt-manager
AddPackage vlc

AddPackage --foreign kclock
AddPackage --foreign ocs-url
AddPackage --foreign teams
AddPackage --foreign ventoy-bin
# Miscellaneous stuff

AddPackage llvm
AddPackage pkgstats
AddPackage words

AddPackage --foreign nerd-fonts-source-code-pro
AddPackage --foreign pacman-static
CopyFile /etc/default/grub
CopyFile /etc/conf.d/snapper
CopyFile /etc/hostname
CopyFile /etc/locale.conf
CopyFile /etc/locale.gen
CreateLink /etc/localtime ../usr/share/zoneinfo/Asia/Kolkata
CopyFile /etc/mkinitcpio.conf
CopyFile /etc/pacman.conf
CopyFile /etc/plymouth/plymouthd.conf
CreateFile /etc/sddm.conf > /dev/null
CopyFile /etc/sddm.conf.d/kde_settings.conf
CopyFile /etc/security/faillock.conf
CopyFile /etc/snapper/configs/root 640
CopyFile /etc/sudoers
CreateLink /etc/systemd/system/bluetooth.target.wants/bluetooth.service /usr/lib/systemd/system/bluetooth.service
CreateLink /etc/systemd/system/dbus-org.bluez.service /usr/lib/systemd/system/bluetooth.service
CreateLink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service /usr/lib/systemd/system/firewalld.service
CreateLink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service /usr/lib/systemd/system/NetworkManager-dispatcher.service
CreateLink /etc/systemd/system/dbus-org.freedesktop.thermald.service /usr/lib/systemd/system/thermald.service
CreateLink /etc/systemd/system/dbus-org.freedesktop.timesync1.service /usr/lib/systemd/system/systemd-timesyncd.service
CreateLink /etc/systemd/system/display-manager.service /usr/lib/systemd/system/sddm-plymouth.service
CreateLink /etc/systemd/system/getty.target.wants/getty@tty1.service /usr/lib/systemd/system/getty@.service
CreateLink /etc/systemd/system/graphical.target.wants/power-profiles-daemon.service /usr/lib/systemd/system/power-profiles-daemon.service
CreateLink /etc/systemd/system/multi-user.target.wants/NetworkManager.service /usr/lib/systemd/system/NetworkManager.service
CreateLink /etc/systemd/system/multi-user.target.wants/cronie.service /usr/lib/systemd/system/cronie.service
CreateLink /etc/systemd/system/multi-user.target.wants/firewalld.service /usr/lib/systemd/system/firewalld.service
CreateLink /etc/systemd/system/multi-user.target.wants/lm_sensors.service /usr/lib/systemd/system/lm_sensors.service
CreateLink /etc/systemd/system/multi-user.target.wants/remote-fs.target /usr/lib/systemd/system/remote-fs.target
CreateLink /etc/systemd/system/multi-user.target.wants/thermald.service /usr/lib/systemd/system/thermald.service
CreateLink /etc/systemd/system/multi-user.target.wants/virtnetworkd.service /usr/lib/systemd/system/virtnetworkd.service
CreateLink /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service /usr/lib/systemd/system/NetworkManager-wait-online.service
CreateLink /etc/systemd/system/sockets.target.wants/libvirtd.socket /usr/lib/systemd/system/libvirtd.socket
CreateLink /etc/systemd/system/sockets.target.wants/virtnetworkd-admin.socket /usr/lib/systemd/system/virtnetworkd-admin.socket
CreateLink /etc/systemd/system/sockets.target.wants/virtnetworkd-ro.socket /usr/lib/systemd/system/virtnetworkd-ro.socket
CreateLink /etc/systemd/system/sockets.target.wants/virtnetworkd.socket /usr/lib/systemd/system/virtnetworkd.socket
CreateLink /etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service /usr/lib/systemd/system/systemd-timesyncd.service
CreateLink /etc/systemd/system/timers.target.wants/fwupd-refresh.timer /usr/lib/systemd/system/fwupd-refresh.timer
CreateLink /etc/systemd/user/default.target.wants/xdg-user-dirs-update.service /usr/lib/systemd/user/xdg-user-dirs-update.service
CreateLink /etc/systemd/user/pipewire-session-manager.service /usr/lib/systemd/user/wireplumber.service
CreateLink /etc/systemd/user/pipewire.service.wants/wireplumber.service /usr/lib/systemd/user/wireplumber.service
CreateLink /etc/systemd/user/sockets.target.wants/dirmngr.socket /usr/lib/systemd/user/dirmngr.socket
CreateLink /etc/systemd/user/sockets.target.wants/p11-kit-server.socket /usr/lib/systemd/user/p11-kit-server.socket
CreateLink /etc/systemd/user/sockets.target.wants/pipewire-pulse.socket /usr/lib/systemd/user/pipewire-pulse.socket
CreateLink /etc/systemd/user/sockets.target.wants/pipewire.socket /usr/lib/systemd/user/pipewire.socket
CopyFile /etc/systemd/zram-generator.conf
SetFileProperty /etc/libvirt/secrets mode 755

Expected result:

It would find sshd symlink successfully

Actual result:

It didn't find anything changed in the system

Log:

No response

Additional context:

No response

CyberShadow commented 2 years ago

Sir, you have IgnorePath '**ssh**' in your configuration.

MenacingPerson commented 2 years ago

Oh damn. I need to fix my ignores