190 lines
4.6 KiB
Bash
190 lines
4.6 KiB
Bash
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=r59.589ac8c
|
|
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=(b0e1a6bc60f99bdda99dd053ef869a9f3f899ced7a4b23db3718baaee374375ca4013ac3eab2eb3ef6d645083722f9305c484661cd1246f6ec2e3bf62dbf95a4)
|
|
|
|
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)
|
|
|
|
# keepass for password databases
|
|
depends+=(keepassxc)
|
|
|
|
# python
|
|
depends+=(python python-pip)
|
|
|
|
# music
|
|
depends+=(clementine)
|
|
|
|
# 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)
|
|
}
|