mkessler-pkgs/PKGBUILD

196 lines
4.8 KiB
Bash
Raw Normal View History

2022-07-25 12:08:47 +02:00
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)
2023-10-14 20:18:47 +02:00
pkgver=r64.2195770
2022-07-25 12:08:47 +02:00
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
##########
2022-07-25 20:04:29 +02:00
source=(https://mkessler-arch.maximilian-kessler.de/signing_key)
2023-09-16 11:50:42 +02:00
b2sums=(acf6c058469ec7a521b568060120686a26bdf6e170b1e8fa4ec321c0f16cc6f641eaa01f33fd6c7c9c1506f66e9059ad1475852ab12b4ddc517658f1addcb235)
2022-07-25 12:08:47 +02:00
pkgver() {
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}
2022-07-25 20:31:10 +02:00
package_mkessler-signing-key() {
# Install this package after pacman to ensure that its keyring is initialized
depends=(archlinux-keyring)
2022-07-25 20:31:10 +02:00
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
}
2022-07-25 12:08:47 +02:00
package_mkessler-base() {
# Base packages
depends=(base linux linux-firmware man-db man-pages lvm2)
# boot manager
depends+=(grub efibootmgr)
2022-07-25 23:13:19 +02:00
# 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)
2022-07-25 23:13:19 +02:00
2022-09-04 19:50:14 +02:00
# AUR. easy file-renaming in git
depends+=(vimv-git)
# standard utilities
2022-07-25 23:13:19 +02:00
depends+=(ncdu wget tree sudo htop which sed make grep)
2022-07-25 12:08:47 +02:00
# network
depends+=(dhcpcd networkmanager)
2022-07-25 20:31:10 +02:00
# install signing key
depends+=(mkessler-signing-key)
install=mkessler-base.install
2022-07-25 12:08:47 +02:00
}
package_mkessler-xmonad() {
# haskell utilities
2022-07-29 19:27:56 +02:00
depends=(stack)
2022-07-25 12:08:47 +02:00
# libraries needed to build xmonad
2022-07-29 19:27:56 +02:00
depends+=(libxss libx11 pkgconf)
2022-07-25 12:08:47 +02:00
}
package_mkessler-x() {
2022-07-25 13:01:02 +02:00
depends=(xorg-server)
# xorg utilities
2022-09-04 19:50:14 +02:00
depends+=(xorg-xkill xorg-xev xorg-xrandr xorg-docs xorg-setxkbmap xorg-xinput)
# arandr for simpler screen controlling than xrandr
depends+=(arandr)
2022-07-25 12:08:47 +02:00
# greeter
depends+=(lightdm lightdm-gtk-greeter)
2022-07-25 13:01:02 +02:00
# window managers: i3 and stuff to build xmonad
2022-09-04 19:50:14 +02:00
depends+=(i3-gaps i3status i3blocks)
2022-07-25 13:01:02 +02:00
# AUR
depends+=(i3lock-fancy-git)
2022-09-04 19:50:14 +02:00
# better screenshot utility for i3lock-fancy-git
depends+=(maim)
2022-07-25 13:01:02 +02:00
depends+=(mkessler-xmonad)
2022-07-25 12:08:47 +02:00
# launching utilities, status bar
depends+=(dmenu rofi polybar)
2022-07-25 12:25:04 +02:00
# sets X11 keyboard layout
install=mkessler-x.install
# terminal emulators
depends+=(kitty alacritty)
2022-10-02 10:26:02 +02:00
# networkmanager and extensions for L2TP/IPsec VPN protocol
depends+=(networkmanager-l2tp strongswan)
2022-07-25 12:08:47 +02:00
}
package_mkessler-audio() {
2022-07-25 13:09:30 +02:00
depends=(pipewire pipewire-pulse pipewire-jack)
2022-07-25 12:08:47 +02:00
# firmware
2022-07-25 13:09:30 +02:00
depends+=(alsa-firmware sof-firmware)
2022-07-25 12:08:47 +02:00
# utilities
2022-07-25 13:09:30 +02:00
depends+=(pavucontrol alsa-utils qpwgraph)
2022-07-25 12:08:47 +02:00
}
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)
}
2022-07-25 12:08:47 +02:00
package_mkessler-software() {
depends=(thunderbird qutebrowser vlc)
# zathura and PDF plugin
depends+=(zathura zathura-pdf-mupdf zathura-djvu)
2022-08-18 15:44:09 +02:00
# vimtex needs this for correcty syncing with zathura
depends+=(xdotool)
2022-07-25 12:08:47 +02:00
# messengers
2022-07-25 18:41:43 +02:00
depends+=(signal-desktop element-desktop telegram-desktop)
2022-07-25 23:35:27 +02:00
# 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)
2022-07-25 23:35:27 +02:00
2022-07-29 19:27:56 +02:00
# keepass for password databases
depends+=(keepassxc)
2022-07-25 18:41:43 +02:00
# python
depends+=(python python-pip)
2022-09-04 19:50:14 +02:00
# music
depends+=(clementine) # AUR
2022-09-04 19:50:14 +02:00
# xournal for drawing etc
depends+=(xournalpp)
# AUR
depends+=(tor-browser caffeine)
2022-07-25 12:08:47 +02:00
}
package_mkessler-print() {
depends=(cups cups-pdf)
2022-09-04 19:50:14 +02:00
# AUR. simple scanning of documents
depends+=(simple-scan)
# activate cups socket
install=mkessler-print.install
2022-07-25 12:08:47 +02:00
}
2022-07-25 12:25:04 +02:00
package_mkessler-locale() {
depends=()
install=mkessler-locale.install
}
2022-07-25 12:08:47 +02:00
package_mkessler-desktop() {
2022-09-04 19:50:14 +02:00
depends=(mkessler-base mkessler-x mkessler-audio mkessler-software mkessler-print mkessler-locale mkessler-androidfs)
2022-07-25 12:08:47 +02:00
}
package_mkessler-devel() {
2022-07-25 23:13:19 +02:00
depends=(stack ghc gcc go)
2022-07-25 12:08:47 +02:00
# python
depends+=(python python-pip)
2022-07-25 23:03:48 +02:00
# fakeroot for running makepkg
2022-07-25 23:13:19 +02:00
depends+=(fakeroot archiso gawk texinfo pkgconf)
2022-07-25 12:08:47 +02:00
}