pkgbase=mkessler pkgname=(mkessler-base mkessler-xmonad mkessler-x mkessler-audio mkessler-androidfs mkessler-software mkessler-print mkessler-locale mkessler-desktop mkessler-devel mkessler-signing-key) pkgver=r64.2195770 pkgrel=1 pkgdesc="Base system configuration for mkessler systems" arch=('any') license=('MIT') groups=(mkessler) url="https://gitlab.com/kesslermaximilian/arch-pkgs" ########### # Note that some of these packages have dependencies that are only available # in the AUR. Such packages are marked with an 'AUR' comment. # In order for this to work, you either need to use an AUR helper that is able # to resolve such dependencies, or have these AUR packages pre-built and # available in a custom repository, so that pacman is able to find them. # Also, note that there is no guarantee made on any functionality of these # packages and that dependencies might change at any time ########## source=(https://mkessler-arch.maximilian-kessler.de/signing_key) b2sums=(acf6c058469ec7a521b568060120686a26bdf6e170b1e8fa4ec321c0f16cc6f641eaa01f33fd6c7c9c1506f66e9059ad1475852ab12b4ddc517658f1addcb235) pkgver() { printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" } package_mkessler-signing-key() { # Install this package after pacman to ensure that its keyring is initialized depends=(archlinux-keyring) install=mkessler-signing-key.install install -d "$pkgdir"/opt mkdir -p "$pkgdir"/opt/mkessler/signing-key cp ${srcdir}/signing_key "$pkgdir"/opt/mkessler/signing-key/signing_key } package_mkessler-base() { # Base packages depends=(base linux linux-firmware man-db man-pages lvm2) # boot manager depends+=(grub efibootmgr) # standard programs # note that vim-plug is from the AUR, # the package has to be present on a custom repo depends+=(zsh gvim vim-plug openssh gzip tar rsync) # AUR. easy file-renaming in git depends+=(vimv-git) # standard utilities depends+=(ncdu wget tree sudo htop which sed make grep) # network depends+=(dhcpcd networkmanager) # install signing key depends+=(mkessler-signing-key) install=mkessler-base.install } package_mkessler-xmonad() { # haskell utilities depends=(stack) # libraries needed to build xmonad depends+=(libxss libx11 pkgconf) } package_mkessler-x() { depends=(xorg-server) # xorg utilities depends+=(xorg-xkill xorg-xev xorg-xrandr xorg-docs xorg-setxkbmap xorg-xinput) # arandr for simpler screen controlling than xrandr depends+=(arandr) # greeter depends+=(lightdm lightdm-gtk-greeter) # window managers: i3 and stuff to build xmonad depends+=(i3-gaps i3status i3blocks) # AUR depends+=(i3lock-fancy-git) # better screenshot utility for i3lock-fancy-git depends+=(maim) depends+=(mkessler-xmonad) # launching utilities, status bar depends+=(dmenu rofi polybar) # sets X11 keyboard layout install=mkessler-x.install # terminal emulators depends+=(kitty alacritty) # networkmanager and extensions for L2TP/IPsec VPN protocol depends+=(networkmanager-l2tp strongswan) } package_mkessler-audio() { depends=(pipewire pipewire-pulse pipewire-jack) # firmware depends+=(alsa-firmware sof-firmware) # utilities depends+=(pavucontrol alsa-utils qpwgraph) } package_mkessler-androidfs() { # see https://linuxhint.com/connect-android-arch-linux/ depends=(mtpfs) # AUR depends+=(jmtpfs) # integration into file browser (tested with nautilus) depends+=(gvfs-mtp) } package_mkessler-software() { depends=(thunderbird qutebrowser vlc) # zathura and PDF plugin depends+=(zathura zathura-pdf-mupdf zathura-djvu) # vimtex needs this for correcty syncing with zathura depends+=(xdotool) # messengers depends+=(signal-desktop element-desktop telegram-desktop) # texlive installer depends+=(texlive-installer) # biber (for bibliographies) needs this, since it still uses deprecated and now-removed # libcrypt.so.1 # See https://bbs.archlinux.org/viewtopic.php?id=274160 and https://github.com/plk/biber/issues/402 depends+=(libxcrypt-compat) # keepass for password databases depends+=(keepassxc) # python depends+=(python python-pip) # music depends+=(clementine) # AUR # xournal for drawing etc depends+=(xournalpp) # AUR depends+=(tor-browser caffeine) } package_mkessler-print() { depends=(cups cups-pdf) # AUR. simple scanning of documents depends+=(simple-scan) # activate cups socket install=mkessler-print.install } package_mkessler-locale() { depends=() install=mkessler-locale.install } package_mkessler-desktop() { depends=(mkessler-base mkessler-x mkessler-audio mkessler-software mkessler-print mkessler-locale mkessler-androidfs) } package_mkessler-devel() { depends=(stack ghc gcc go) # python depends+=(python python-pip) # fakeroot for running makepkg depends+=(fakeroot archiso gawk texinfo pkgconf) }