Add packages for base system, Sway environment

These cover most of the basic functionality required for a basic Sway
environment, but need to be expanded with home configuration (i.e.
dotfiles). More to come.
This commit is contained in:
Alex Palaistras 2023-02-18 11:51:06 +00:00
commit 9a89e16b2f
10 changed files with 175 additions and 0 deletions

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
*.pkg.tar.zst
*.tar.gz
/**/pkg/
/**/src/

65
deuill-base/PKGBUILD Normal file
View File

@ -0,0 +1,65 @@
# Maintainer: Alex Palaistras <[email protected]>
pkgname=deuill-base
pkgver=1.0.0
pkgrel=1
pkgdesc="Base system configuration for deuill systems"
arch=("any")
url="https://git.deuill.org/deuill/archlinux-packages"
license=("MIT")
depends=(
# System daemons.
iwd
bluez
mpd
pipewire
pipewire-alsa
pipewire-pulse
wireplumber
openssh
pcsclite
# System utilities and dependencies.
fish
man-db
kmscon
bluez-utils
ttc-iosevka
ripgrep
pam-u2f
gcr
# User utilities and dependencies.
git
btop
emacs
pass
pass-otp
pulsemixer
ncmpcpp
)
install="$pkgname.install"
source=(
"systemd-networkd.ether"
"sudo.wheel"
"kmscon.conf"
"pam-u2f.include"
)
sha1sums=(
"cab8c8ba7cd4270cb19d8191c0a2755b7beddb3b"
"c005d5b81e05db26b931ecd55f4487868764b61a"
"6450c7e7f33985ae65321826feed602b6af99ec3"
"6c4c38e53d1c168d6becb24679a83e95cb070dee"
)
package() {
# Set up networking.
install -Dm 0644 systemd-networkd.ether "$pkgdir/etc/systemd/network/20-ether.network"
# Set up default configuration for sudo.
install -dm 0750 "$pkgdir/etc/sudoers.d"
install -Dm 0644 sudo.wheel "$pkgdir/etc/sudoers.d/wheel"
# Set up default configuration for kmscon.
install -Dm 0644 kmscon.conf "$pkgdir/etc/kmscon/kmscon.conf"
# Set up default configuration for pam-u2f.
install -Dm 0644 pam-u2f.include "$pkgdir/etc/pam.d/u2f"
install -dm 0750 "$pkgdir/etc/u2f"
}

View File

@ -0,0 +1,21 @@
post_install() {
echo "Enabling basic networking with systemd-networkd..."
systemctl enable --now systemd-resolved
systemctl enable --now systemd-networkd
echo "Enabling PCSC socket for GPG cards..."
systemctl enable --now pcscd.socket
echo "Enabling KMSCON on all virtual terminals..."
ln -sf "/usr/lib/systemd/system/[email protected]" "/etc/systemd/system/[email protected]"
echo "Enabling systemd stub resolv.conf..."
ln -sf "/run/systemd/resolve/stub-resolv.conf" "/etc/resolv.conf"
post_upgrade
}
post_upgrade() {
echo "Reloading network configuration..."
networkctl reload
}
post_remove() {
rm -f "/etc/systemd/system/[email protected]"
}

10
deuill-base/kmscon.conf Normal file
View File

@ -0,0 +1,10 @@
# General settings.
hwaccel
# Appearance.
font-name=Iosevka
font-size=22
# Input.
xkb-repeat-delay=400
xkb-repeat-rate=20

View File

@ -0,0 +1,3 @@
# Include this file in any of your PAM services to enable U2F key authentication:
# echo "auth include u2f" >> /etc/pam.d/sudo
auth required pam_u2f.so authfile=/etc/u2f/keys nouserok cue

2
deuill-base/sudo.wheel Normal file
View File

@ -0,0 +1,2 @@
# Allow members of group wheel to execute any command.
%wheel ALL=(ALL:ALL) ALL

View File

@ -0,0 +1,6 @@
[Match]
Name=enp*
Type=ether
[Network]
DHCP=yes

View File

@ -0,0 +1,20 @@
# Maintainer: Alex Palaistras <[email protected]>
pkgname=deuill-sway-extras
pkgver=1.0.0
pkgrel=1
pkgdesc="Extra functionality in Sway for deuill systems"
arch=("any")
url="https://git.deuill.org/deuill/archlinux-packages"
license=("MIT")
depends=(
# Utilities.
alacritty
imv
thunar
tumbler
zathura
zathura-pdf-poppler
# Support packages.
materia-gtk-theme
)

39
deuill-sway/PKGBUILD Normal file
View File

@ -0,0 +1,39 @@
# Maintainer: Alex Palaistras <[email protected]>
pkgname=deuill-sway
pkgver=1.0.0
pkgrel=1
pkgdesc="Basic Sway-based desktop for deuill systems"
arch=("any")
url="https://git.deuill.org/deuill/archlinux-packages"
license=("MIT")
depends=(
# Core dependencies.
sway
swaybg
swaylock
swayidle
xorg-xwayland
# Secondary dependencies.
python-i3ipc
xdg-desktop-portal-gtk
xdg-desktop-portal-wlr
# Common fonts.
ttf-ibm-plex
ttf-liberation
noto-fonts
noto-fonts-emoji
# Additional utilities and daemons.
brightnessctl
dunst
gammastep
rofi
rofi-calc
waybar
wl-clipboard
xdg-utils
xdg-user-dirs
)
install="$pkgname.install"

View File

@ -0,0 +1,5 @@
post_install() {
echo "Enabling seatd..."
systemctl enable --now seatd
echo "Remember to add your user to the 'seat' group before using Sway!"
}