aboutsummaryrefslogtreecommitdiff
path: root/.config/yadm
diff options
context:
space:
mode:
Diffstat (limited to '.config/yadm')
-rwxr-xr-x.config/yadm/bootstrap23
-rwxr-xr-x.config/yadm/install-arch14
-rw-r--r--.config/yadm/packages-arch170
3 files changed, 109 insertions, 98 deletions
diff --git a/.config/yadm/bootstrap b/.config/yadm/bootstrap
index 6de9391..9a03f58 100755
--- a/.config/yadm/bootstrap
+++ b/.config/yadm/bootstrap
@@ -1,3 +1,26 @@
#!/bin/sh
+. "$HOME/.profile"
+
+# ensure required packages are installed
+"$XDG_CONFIG_HOME/yadm/install-arch"
+
+# generate templated files
+yadm alt
+
+# create remaining dynamic theme files
~/.local/share/bin/mode dark
+# remove unreachable blobs
+yadm reflog expire --expire-unreachable=now --all
+yadm gc --prune=now
+
+# download and build st (terminal) if not present
+! command -v st > /dev/null && [ ! -e ~/.local/st ] && (
+ mkdir -p ~/.local
+ cd ~/.local
+ git clone https://git.pipeframe.xyz/lonkaars/st
+ cd st
+ make -j
+)
+
+# TODO: create a second repository for system configuration in /etc
diff --git a/.config/yadm/install-arch b/.config/yadm/install-arch
index 35977c2..1246dae 100755
--- a/.config/yadm/install-arch
+++ b/.config/yadm/install-arch
@@ -1,3 +1,13 @@
#!/bin/sh
-[[ `lsb_release -si` -ne "Arch" ]] && exit
-yay --noconfirm --needed -S - < packages-arch
+# ensure we are running on arch linux
+[ ! -e /etc/os-release ] && exit
+. /etc/os-release
+[ "$ID" != 'arch' ] && exit
+
+# resolve files in this script relative to this script's location
+cd "$(dirname "$0")"
+
+# filter comments and pipe package name list to yay
+sed -e 's/#.*//g' -e 's/ //g' -e '/^$/d' packages-arch |\
+ yay --noconfirm --needed -S -
+
diff --git a/.config/yadm/packages-arch b/.config/yadm/packages-arch
index 515d569..258b805 100644
--- a/.config/yadm/packages-arch
+++ b/.config/yadm/packages-arch
@@ -1,121 +1,99 @@
-alsa-utils
-arm-none-eabi-binutils
-arm-none-eabi-gcc
-asciidoc
-autoconf
+# X11 core + window manager
+i3-wm
+xdg-user-dirs
+xf86-input-wacom
+xinit-xsession
+xorg
+
+# directly used in scripts / startup
autocutsel
-biber
-bison
-bitwarden-bin
-bitwarden-rofi
-blueman
-bluez
-bluez-hciconfig
-brave-bin
-chromium
-cmake
-cups
-cups-pdf
-dhcpcd
-discord
-djvulibre
-dmenu
-docker
-docker-compose
+dbus
dunst
-efibootmgr
-etesync-dav
-fakeroot
+fcitx5
+flashfocus
+imagemagick
+jq
+libpulse # for pactl
+maim
+mpd
+nicotine+
+picom
+pipewire
+playerctl
+polkit-gnome
+polybar
+python
+python-pip
+redshift
+rofi
+xbanish
+xbindkeys
+xclip
+xorg-xrdb
+xsettingsd
+
+# system stuff
+cups
+lightdm
+lightdm-gtk-greeter
+ntfs-3g
+ntp
+openssh
+openssl
+sshfs
+usb_modeswitch # required for android usb tethering
+
+# network stuff (TODO)
+# NetworkManager # currently only used on laptop...
+dhcpcd # i am unsure if i need this
+
+# applications
+anki
+brave-bin
+curl
feh
fzf
-gcc
-git
-graphicsmagick
-hplip
+helvum
htop
-i3-gaps
-jdk-openjdk
-jdk8-openjdk
-jmtpfs
-latex-mk
-lib32-libpulse
-libconfig
-libev
-libmpd
-libselinux
-libxdg-basedir
-lightdm
-lightdm-gtk-greeter
-m4
-make
-maven
-meson
mpc
-mpd
mpv
-mtpfs
-nano
-nautilus
ncmpcpp
neovim
-nginx
-ninja
nmap
-ntfs-3g
-openssh
-openssl
-os-prober
-p7zip
pandoc
-patch
+pass
+pass-otp
pavucontrol
-pdftk
-picom-ibhagwan-git
-pkgconf
-playerctl
-playonlinux
-polkit-gnome
-polybar
-python
-python-pip
ranger
restic
-rofi
+rofi-pass-git
scrcpy
-screenkey
scrot
slock
-sshfs
sudo
sxiv
-syncthing
-texlive-lang
-texlive-most
-tk
-tmux
-transmission-cli
-tree
unzip
-uthash
-uwsgi
-vi
-virt-manager
-w3m
wget
which
-wine
-winetricks
-xbindkeys
-xclip
-xdg-user-dirs
-xdo
-xf86-input-wacom
-xfce4-settings
-xinit-xsession
-xorg
-xsettingsd
-yadm
-zathura-git
+zathura
zathura-pdf-mupdf
zip
zsh
+
+# audio
+alsa-utils
+alsa-lib
+alsa-plugins
+alsa-utils
+libpipewire
+libpulse
+pipewire
+pipewire-alsa
+pipewire-audio
+pipewire-jack
+pipewire-pulse
+
+# bluetooth
+bluez
+bluez-utils
+