mirror of
https://github.com/starr-dusT/dotfiles.git
synced 2025-05-19 02:46:06 -07:00
update
This commit is contained in:
parent
a24355f618
commit
dad57ba054
@ -1,60 +0,0 @@
|
|||||||
# Fail if not in Windows Subsystem for Linux
|
|
||||||
function DetectWSL() {
|
|
||||||
grep -i -q microsoft /proc/version &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if not in a container / virtual machine / WSL
|
|
||||||
function DetectVM() {
|
|
||||||
# https://www.freedesktop.org/software/systemd/man/systemd-detect-virt.html
|
|
||||||
systemd-detect-virt --quiet &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if not in VirtualBox
|
|
||||||
function DetectVirtualBox() {
|
|
||||||
systemd-detect-virt | grep -i -q oracle
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if not on an AMD processor
|
|
||||||
function DetectAMD() {
|
|
||||||
grep -i -q AMD /proc/cpuinfo &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if not on an Intel processor
|
|
||||||
function DetectIntel() {
|
|
||||||
grep -i -q Intel /proc/cpuinfo &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if no NVME drives are found
|
|
||||||
function DetectNVME() {
|
|
||||||
find /dev -maxdepth 1 -name '*nvme*' | grep -i -q nvme &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if no AMD GPU is found
|
|
||||||
function DetectAMDGPU() {
|
|
||||||
lspci -v | grep -i 'amd/ati' | grep -i -q 'vga' &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if no Intel GPU is found
|
|
||||||
function DetectIntelGPU() {
|
|
||||||
lspci -v | grep -i 'intel' | grep -i -q 'vga' &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if no Nvidia GPU is found
|
|
||||||
function DetectNvidia() {
|
|
||||||
lspci -v | grep -i -q nvidia &>/dev/null
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fail if no encrypted devices are listed in /etc/fstab
|
|
||||||
function DetectCrypt() {
|
|
||||||
grep -q '/dev/mapper/' /etc/fstab
|
|
||||||
return $?
|
|
||||||
}
|
|
@ -1,33 +0,0 @@
|
|||||||
# Boot binaries
|
|
||||||
IgnorePath '/boot/*'
|
|
||||||
# Certificate databases
|
|
||||||
IgnorePath '/etc/ca-certificates/extracted/*'
|
|
||||||
IgnorePath '/etc/ssl/certs/*'
|
|
||||||
IgnorePath '/etc/pacman.d/gnupg/*'
|
|
||||||
# Cache and generated files
|
|
||||||
IgnorePath '/etc/*.cache'
|
|
||||||
IgnorePath '/etc/*.gen'
|
|
||||||
# Password files
|
|
||||||
IgnorePath '/etc/*shadow*'
|
|
||||||
IgnorePath '/usr/share/*'
|
|
||||||
# Configuration database
|
|
||||||
IgnorePath '/etc/dconf'
|
|
||||||
# Mount files
|
|
||||||
IgnorePath '*/.updated'
|
|
||||||
IgnorePath '*/lost+found/*'
|
|
||||||
# Opt packages (check that they don't include config)
|
|
||||||
IgnorePath '/opt/*'
|
|
||||||
# Binary libraries
|
|
||||||
IgnorePath '/usr/lib/*'
|
|
||||||
# Local binaries
|
|
||||||
IgnorePath '/usr/local/include/*'
|
|
||||||
IgnorePath '/usr/local/lib/*'
|
|
||||||
IgnorePath '/usr/local/share/applications/mimeinfo.cache'
|
|
||||||
# Var databases, logs, swap and temp files
|
|
||||||
IgnorePath '/var/db/sudo'
|
|
||||||
IgnorePath '/var/lib/*'
|
|
||||||
IgnorePath '/var/log/*'
|
|
||||||
IgnorePath '/var/swap*'
|
|
||||||
IgnorePath '/var/tmp/*'
|
|
||||||
# BTRFS snapshots
|
|
||||||
IgnorePath '/.snapshots/*'
|
|
@ -1,97 +0,0 @@
|
|||||||
# Minimal system
|
|
||||||
AddPackage archlinux-keyring # Arch Linux PGP keyring
|
|
||||||
AddPackage base # Minimal package set to define a basic Arch Linux installation
|
|
||||||
CreateFile /etc/ld.so.preload >/dev/null
|
|
||||||
CopyFile /etc/locale.conf
|
|
||||||
CopyFile /etc/locale.gen
|
|
||||||
CreateLink /etc/localtime /usr/share/zoneinfo/America/Los_Angeles
|
|
||||||
|
|
||||||
# Package management
|
|
||||||
AddPackageGroup base-devel # Required for building AUR packages
|
|
||||||
AddPackage --foreign aconfmgr-git # A configuration manager for Arch Linux
|
|
||||||
AddPackage pacman-contrib # Contributed scripts and tools for pacman systems
|
|
||||||
AddPackage --foreign paru # Feature packed AUR helper
|
|
||||||
AddPackage pkgfile # a pacman .files metadata explorer
|
|
||||||
AddPackage reflector # A Python 3 module and script to retrieve and filter the latest Pacman mirror list.
|
|
||||||
CopyFile /etc/makepkg.conf
|
|
||||||
CopyFile /etc/pacman.conf
|
|
||||||
CopyFile /etc/group
|
|
||||||
CopyFile /etc/group-
|
|
||||||
CopyFile /etc/passwd
|
|
||||||
CopyFile /etc/passwd-
|
|
||||||
CopyFile /etc/sudoers
|
|
||||||
|
|
||||||
# Default kernel
|
|
||||||
AddPackage linux # The Linux kernel and modules
|
|
||||||
AddPackage linux-headers # Headers and scripts for building modules for the Linux kernel
|
|
||||||
|
|
||||||
# Zen kernel
|
|
||||||
AddPackage linux-zen # The Linux kernel and modules
|
|
||||||
AddPackage linux-zen-headers # Headers and scripts for building modules for the Linux kernel
|
|
||||||
|
|
||||||
# Backup kernel
|
|
||||||
AddPackage linux-lts # The LTS Linux kernel and modules
|
|
||||||
AddPackage linux-lts-headers # Headers and scripts for building modules for the LTS Linux kernel
|
|
||||||
|
|
||||||
# Boot
|
|
||||||
AddPackage --foreign systemd-boot-pacman-hook # Pacman hook to upgrade systemd-boot after systemd upgrade.
|
|
||||||
|
|
||||||
# Firmware
|
|
||||||
AddPackage linux-firmware # Firmware files for Linux
|
|
||||||
|
|
||||||
# EFI filesystem support
|
|
||||||
AddPackage exfat-utils # Utilities for exFAT file system
|
|
||||||
|
|
||||||
# Main filesystem support
|
|
||||||
AddPackage e2fsprogs # Ext2/3/4 filesystem utilities
|
|
||||||
|
|
||||||
if ! DetectVM; then
|
|
||||||
|
|
||||||
# Processor support
|
|
||||||
DetectAMD && AddPackage amd-ucode # Microcode update image for AMD CPUs
|
|
||||||
DetectIntel && AddPackage intel-ucode # Microcode update files for Intel CPUs
|
|
||||||
|
|
||||||
# Hardware support
|
|
||||||
AddPackage fwupd # Simple daemon to allow session software to update firmware
|
|
||||||
DetectNVME && AddPackage nvme-cli # NVM-Express user space tooling for Linux
|
|
||||||
|
|
||||||
# Extra file system support... just in case
|
|
||||||
AddPackage afpfs-ng # A client for the Apple Filing Protocol (AFP)
|
|
||||||
AddPackage btrfs-progs # Btrfs filesystem utilities
|
|
||||||
AddPackage dosfstools # DOS filesystem utilities
|
|
||||||
AddPackage f2fs-tools # Tools for Flash-Friendly File System (F2FS)
|
|
||||||
AddPackage jfsutils # JFS filesystem utilities
|
|
||||||
AddPackage kbfs # The Keybase filesystem
|
|
||||||
AddPackage mtools # A collection of utilities to access MS-DOS disks
|
|
||||||
AddPackage mtpfs # A FUSE filesystem that supports reading and writing from any MTP device
|
|
||||||
AddPackage nilfs-utils # A log-structured file system supporting continuous snapshotting (userspace utils)
|
|
||||||
AddPackage ntfs-3g # NTFS filesystem driver and utilities
|
|
||||||
AddPackage reiserfsprogs # Reiserfs utilities
|
|
||||||
AddPackage squashfs-tools # Tools for squashfs, a highly compressed read-only filesystem for Linux.
|
|
||||||
AddPackage sysfsutils # System Utilities Based on Sysfs
|
|
||||||
AddPackage truecrypt # Free open-source cross-platform disk encryption software
|
|
||||||
AddPackage xfsprogs # XFS filesystem utilities
|
|
||||||
|
|
||||||
# Sensors
|
|
||||||
AddPackage lm_sensors # Collection of user space tools for general SMBus access and hardware monitoring
|
|
||||||
CreateLink /etc/systemd/system/multi-user.target.wants/lm_sensors.service /usr/lib/systemd/system/lm_sensors.service
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Reduce timeouts to sane values
|
|
||||||
cat >>"$(GetPackageOriginalFile systemd /etc/systemd/system.conf)" <<-EOF
|
|
||||||
RuntimeWatchdogSec=10min
|
|
||||||
ShutdownWatchdogSec=10min
|
|
||||||
DefaultTimeoutStartSec=30s
|
|
||||||
DefaultTimeoutStopSec=30s
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# Arch linux enables these GPG agent systemd user sockets by default
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/dirmngr.socket /usr/lib/systemd/user/dirmngr.socket
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/gpg-agent-browser.socket /usr/lib/systemd/user/gpg-agent-browser.socket
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/gpg-agent-extra.socket /usr/lib/systemd/user/gpg-agent-extra.socket
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/gpg-agent.socket /usr/lib/systemd/user/gpg-agent.socket
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/gpg-agent-ssh.socket /usr/lib/systemd/user/gpg-agent-ssh.socket
|
|
||||||
|
|
||||||
# Network Time Protocol
|
|
||||||
CreateLink /etc/systemd/system/dbus-org.freedesktop.timesync1.service /usr/lib/systemd/system/systemd-timesyncd.service
|
|
||||||
CreateLink /etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service /usr/lib/systemd/system/systemd-timesyncd.service
|
|
@ -1,34 +0,0 @@
|
|||||||
# Firewall
|
|
||||||
CreateLink /etc/systemd/system/multi-user.target.wants/iptables.service /usr/lib/systemd/system/iptables.service
|
|
||||||
|
|
||||||
# NetworkManager
|
|
||||||
AddPackage networkmanager # Network connection manager and user applications
|
|
||||||
CreateLink /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service /usr/lib/systemd/system/NetworkManager.service
|
|
||||||
CreateLink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service /usr/lib/systemd/system/NetworkManager-dispatcher.service
|
|
||||||
CreateLink /etc/systemd/system/multi-user.target.wants/NetworkManager.service /usr/lib/systemd/system/NetworkManager.service
|
|
||||||
|
|
||||||
# Tools
|
|
||||||
AddPackage iproute2 # IP Routing Utilities
|
|
||||||
AddPackage zerotier-one # Creates virtual Ethernet networks of almost unlimited size.
|
|
||||||
AddPackage wireguard-tools # next generation secure network tunnel - tools for configuration
|
|
||||||
|
|
||||||
# Hosts file
|
|
||||||
cat >>"$(GetPackageOriginalFile filesystem /etc/hosts)" <<-EOF
|
|
||||||
127.0.0.1 localhost $HOSTNAME
|
|
||||||
::1 localhost $HOSTNAME
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# SSH
|
|
||||||
AddPackage sshfs # FUSE client based on the SSH File Transfer Protocol
|
|
||||||
CreateLink /etc/systemd/system/multi-user.target.wants/sshd.service /usr/lib/systemd/system/sshd.service
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/gcr-ssh-agent.socket /usr/lib/systemd/user/gcr-ssh-agent.socket
|
|
||||||
|
|
||||||
## SSH server configuration hardening
|
|
||||||
sshd_conf="$(GetPackageOriginalFile openssh /etc/ssh/sshd_config)"
|
|
||||||
sed -i 's/^#LoginGraceTime.*$/LoginGraceTime 30s/g' "$sshd_conf"
|
|
||||||
sed -i 's/^#PermitRootLogin.*$/PermitRootLogin no/g' "$sshd_conf"
|
|
||||||
sed -i 's/^MaxAuthTries.*$/MaxAuthTries 3/g' "$sshd_conf"
|
|
||||||
sed -i 's/^MaxSessions.*$/MaxSessions 5/g' "$sshd_conf"
|
|
||||||
sed -i 's/^#PasswordAuthentication.*$/PasswordAuthentication no/g' "$sshd_conf"
|
|
||||||
sed -i 's/^KbdInteractiveAuthentication.*$/KbdInteractiveAuthentication no/g' "$sshd_conf"
|
|
||||||
sed -i 's/^AllowAgentForwarding.*$/AllowAgentForwarding no/g' "$sshd_conf"
|
|
@ -1,9 +0,0 @@
|
|||||||
# Nvidia Drivers
|
|
||||||
AddPackage lib32-nvidia-utils # NVIDIA drivers utilities 32 bit
|
|
||||||
AddPackage nvidia-dkms # NVIDIA drivers - module sources
|
|
||||||
AddPackage nvidia-settings # Tool for configuring the NVIDIA graphics driver
|
|
||||||
AddPackage nvidia-utils # NVIDIA drivers utilities
|
|
||||||
|
|
||||||
# Android Phone
|
|
||||||
AddPackage android-file-transfer # Android MTP client with minimalistic UI
|
|
||||||
AddPackage kdeconnect # Adds communication between KDE and your smartphone
|
|
@ -1,23 +0,0 @@
|
|||||||
if ! DetectVM; then
|
|
||||||
AddPackage libvirt # API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)
|
|
||||||
AddPackage dmidecode # OPTIONAL DEPENDENCY (libvirt)
|
|
||||||
AddPackage dnsmasq # OPTIONAL DEPENDENCY (libvirt)
|
|
||||||
AddPackage --foreign ebtables # OPTIONAL DEPENDENCY (libvirt)
|
|
||||||
AddPackage gettext # OPTIONAL DEPENDENCY (libvirt)
|
|
||||||
AddPackage lvm2 # OPTIONAL DEPENDENCY (libvirt)
|
|
||||||
AddPackage openbsd-netcat # OPTIONAL DEPENDENCY (libvirt)
|
|
||||||
AddPackage qemu # OPTIONAL DEPENDENCY (libvirt)
|
|
||||||
|
|
||||||
AddPackage edk2-ovmf # Firmware for Virtual Machines (x86_64, i686)
|
|
||||||
AddPackage qemu-arch-extra # QEMU for foreign architectures
|
|
||||||
AddPackage swtpm # Libtpms-based TPM emulator with socket, character device, and Linux CUSE interface
|
|
||||||
AddPackage virt-manager # Desktop user interface for managing virtual machines
|
|
||||||
AddPackage virt-viewer # A lightweight interface for interacting with the graphical display of virtualized guest OS.
|
|
||||||
AddPackage --foreign virtio-win # virtio drivers for Windows (2000, XP, Vista, 7, 8, 10) guests and floppy images for Windows XP
|
|
||||||
|
|
||||||
CreateLink /etc/systemd/system/multi-user.target.wants/libvirtd.service /usr/lib/systemd/system/libvirtd.service
|
|
||||||
CreateLink /etc/systemd/system/sockets.target.wants/libvirtd-ro.socket /usr/lib/systemd/system/libvirtd-ro.socket
|
|
||||||
CreateLink /etc/systemd/system/sockets.target.wants/libvirtd.socket /usr/lib/systemd/system/libvirtd.socket
|
|
||||||
CreateLink /etc/systemd/system/sockets.target.wants/virtlockd.socket /usr/lib/systemd/system/virtlockd.socket
|
|
||||||
CreateLink /etc/systemd/system/sockets.target.wants/virtlogd.socket /usr/lib/systemd/system/virtlogd.socket
|
|
||||||
fi
|
|
@ -1,51 +0,0 @@
|
|||||||
# Terminal Emulators
|
|
||||||
AddPackage alacritty # A cross-platform, GPU-accelerated terminal emulator
|
|
||||||
AddPackage screen # Full-screen window manager that multiplexes a physical terminal
|
|
||||||
AddPackage zsh # A very advanced and programmable command interpreter (shell) for UNIX
|
|
||||||
|
|
||||||
# System Monitor
|
|
||||||
AddPackage bashtop # Linux resource monitor
|
|
||||||
|
|
||||||
# Build Tools
|
|
||||||
AddPackage autoconf # A GNU tool for automatically configuring source code
|
|
||||||
AddPackage automake # A GNU tool for automatically creating Makefiles
|
|
||||||
AddPackage binutils # A set of programs to assemble and manipulate binary and object files
|
|
||||||
AddPackage pkgconf # Package compiler and linker metadata toolkit
|
|
||||||
|
|
||||||
# Desktop Tools
|
|
||||||
AddPackage imwheel # Mouse wheel configuration tool for XFree86/Xorg
|
|
||||||
|
|
||||||
# Gaming
|
|
||||||
AddPackage gamemode # A daemon/lib combo that allows games to request a set of optimisations be temporarily applied to the host OS
|
|
||||||
|
|
||||||
# Dev Tools
|
|
||||||
AddPackage git # the fast distributed version control system
|
|
||||||
#AddPackage --foreign platformio # A cross-platform code builder and library manager
|
|
||||||
|
|
||||||
# Archives
|
|
||||||
AddPackage arj # Free and portable clone of the ARJ archiver
|
|
||||||
AddPackage cabextract # A program to extract Microsoft cabinet (.CAB) files
|
|
||||||
AddPackage cpio # A tool to copy files into or out of a cpio or tar archive
|
|
||||||
AddPackage lhasa # Free LZH/LHA archive tool
|
|
||||||
AddPackage lrzip # Multi-threaded compression with rzip/lzma, lzo, and zpaq
|
|
||||||
AddPackage pax # Portable Archive Interchange - the POSIX standard archive tool for cpio and tar formats
|
|
||||||
AddPackage p7zip # Command-line file archiver with high compression ratio
|
|
||||||
AddPackage rpmextract # Script to convert or extract RPM archives (contains rpm2cpio)
|
|
||||||
AddPackage sharutils # Makes so-called shell archives out of many files
|
|
||||||
AddPackage unace # An extraction tool for the proprietary ace archive format
|
|
||||||
AddPackage unrar # The RAR uncompression program
|
|
||||||
AddPackage unzip # For extracting and viewing files in .zip archives
|
|
||||||
AddPackage zip # Compressor/archiver for creating and modifying zipfiles
|
|
||||||
|
|
||||||
# $EDITOR
|
|
||||||
AddPackage neovim # Fork of Vim aiming to improve user experience, plugins, and GUIs
|
|
||||||
#AddPackage --foreign emacs-native-comp-git-enhanced # GNU Emacs. Development master branch.
|
|
||||||
|
|
||||||
# File Management
|
|
||||||
AddPackage rsync # A fast and versatile file copying tool for remote and local files
|
|
||||||
AddPackage smbclient # Tools to access a server's filespace and printers via SMB
|
|
||||||
AddPackage trash-cli # Command line trashcan (recycle bin) interface
|
|
||||||
AddPackage vifm # A file manager with curses interface, which provides Vi[m]-like environment
|
|
||||||
|
|
||||||
# Dotfile Management
|
|
||||||
AddPackage stow # Manage installation of multiple softwares in the same directory tree
|
|
@ -1,12 +0,0 @@
|
|||||||
if ! DetectVM; then # No audio needed in VMs
|
|
||||||
AddPackage alsa-utils # Advanced Linux Sound Architecture - Utilities
|
|
||||||
AddPackage pipewire # Low-latency audio/video router and processor
|
|
||||||
AddPackage pipewire-alsa # Low-latency audio/video router and processor - ALSA configuration
|
|
||||||
AddPackage pipewire-pulse # Low-latency audio/video router and processor - PulseAudio replacement
|
|
||||||
AddPackage wireplumber # Session / policy manager implementation for PipeWire
|
|
||||||
|
|
||||||
CreateLink /etc/systemd/user/pipewire.service.wants/wireplumber.service /usr/lib/systemd/user/wireplumber.service
|
|
||||||
CreateLink /etc/systemd/user/pipewire-session-manager.service /usr/lib/systemd/user/wireplumber.service
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/pipewire.socket /usr/lib/systemd/user/pipewire.socket
|
|
||||||
CreateLink /etc/systemd/user/sockets.target.wants/pipewire-pulse.socket /usr/lib/systemd/user/pipewire-pulse.socket
|
|
||||||
fi
|
|
@ -1,17 +0,0 @@
|
|||||||
AddPackage xorg-server # Xorg X server
|
|
||||||
AddPackage xorg-server-xephyr # A nested X server that runs as an X application
|
|
||||||
AddPackage xorg-xev # Print contents of X events
|
|
||||||
AddPackage xorg-xinit # X.Org initialisation program
|
|
||||||
AddPackage xorg-xsetroot # Classic X utility to set your root window background to a given pattern or color
|
|
||||||
AddPackage xorg-xwayland # run X clients under wayland
|
|
||||||
AddPackage picom # X compositor that may fix tearing issues
|
|
||||||
AddPackage rofi # A window switcher, application launcher and dmenu replacement
|
|
||||||
AddPackage lxappearance # Feature-rich GTK+ theme switcher of the LXDE Desktop
|
|
||||||
AddPackage lxsession # Lightweight X11 session manager
|
|
||||||
AddPackage flameshot # Powerful yet simple to use screenshot software
|
|
||||||
AddPackage feh # Fast and light imlib2-based image viewer
|
|
||||||
AddPackage dunst # Customizable and lightweight notification-daemon
|
|
||||||
AddPackage xarchiver # GTK+ frontend to various command line archivers
|
|
||||||
AddPackage --foreign xmobar-git # Minimalistic Text Based Status Bar
|
|
||||||
AddPackage --foreign xmonad-contrib-git # Add-ons for xmonad
|
|
||||||
AddPackage --foreign xmonad-git # Lightweight X11 tiled window manager written in Haskell
|
|
@ -1 +0,0 @@
|
|||||||
AddPackage --foreign nerd-fonts-complete # Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts.
|
|
@ -1,4 +0,0 @@
|
|||||||
# Files
|
|
||||||
AddPackage syncthing # Open Source Continuous Replication / Cluster Synchronization Thing
|
|
||||||
CreateLink /etc/systemd/system/multi-user.target.wants/syncthing@tstarr.service /usr/lib/systemd/system/syncthing@.service
|
|
||||||
AddPackage udiskie # Removable disk automounter using udisks
|
|
@ -1,13 +0,0 @@
|
|||||||
AddPackage discord # All-in-one voice and text chat for gamers that's free and secure.
|
|
||||||
AddPackage firefox # Standalone web browser from mozilla.org
|
|
||||||
AddPackage gparted # A Partition Magic clone, frontend to GNU Parted
|
|
||||||
AddPackage keepassxc # Cross-platform community-driven port of Keepass password manager
|
|
||||||
AddPackage lutris # Open Gaming Platform
|
|
||||||
AddPackage mpv # a free, open source, and cross-platform media player
|
|
||||||
AddPackage nitrogen # Background browser and setter for X windows
|
|
||||||
AddPackage openscad # The programmers solid 3D CAD modeller
|
|
||||||
AddPackage pcmanfm # Extremely fast and lightweight file manager
|
|
||||||
AddPackage steam # Valve's digital software delivery system
|
|
||||||
AddPackage wine-staging # A compatibility layer for running Windows programs - Staging branch
|
|
||||||
#AddPackage --foreign brave-bin # Web browser that blocks ads and trackers by default (binary release)
|
|
||||||
#AddPackage --foreign superslicer-prerelease-bin # G-code generator for 3D printers (Creality, RepRap, Makerbot, Ultimaker etc.) (binary AppImage)
|
|
@ -1,2 +0,0 @@
|
|||||||
root:x:0:root
|
|
||||||
sudo:x:1000:tstarr
|
|
@ -1,2 +0,0 @@
|
|||||||
root:x:0:root
|
|
||||||
sudo:x:1000:
|
|
@ -1 +0,0 @@
|
|||||||
LANG=en_US.UTF-8
|
|
@ -1 +0,0 @@
|
|||||||
en_US.UTF-8 UTF-8
|
|
@ -1,158 +0,0 @@
|
|||||||
#!/hint/bash
|
|
||||||
#
|
|
||||||
# /etc/makepkg.conf
|
|
||||||
#
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# SOURCE ACQUISITION
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
#-- The download utilities that makepkg should use to acquire sources
|
|
||||||
# Format: 'protocol::agent'
|
|
||||||
DLAGENTS=('file::/usr/bin/curl -qgC - -o %o %u'
|
|
||||||
'ftp::/usr/bin/curl -qgfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
|
|
||||||
'http::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
|
|
||||||
'https::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
|
|
||||||
'rsync::/usr/bin/rsync --no-motd -z %u %o'
|
|
||||||
'scp::/usr/bin/scp -C %u %o')
|
|
||||||
|
|
||||||
# Other common tools:
|
|
||||||
# /usr/bin/snarf
|
|
||||||
# /usr/bin/lftpget -c
|
|
||||||
# /usr/bin/wget
|
|
||||||
|
|
||||||
#-- The package required by makepkg to download VCS sources
|
|
||||||
# Format: 'protocol::package'
|
|
||||||
VCSCLIENTS=('bzr::bzr'
|
|
||||||
'fossil::fossil'
|
|
||||||
'git::git'
|
|
||||||
'hg::mercurial'
|
|
||||||
'svn::subversion')
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# ARCHITECTURE, COMPILE FLAGS
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
CARCH="x86_64"
|
|
||||||
CHOST="x86_64-pc-linux-gnu"
|
|
||||||
|
|
||||||
#-- Compiler and Linker Flags
|
|
||||||
#CPPFLAGS=""
|
|
||||||
CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \
|
|
||||||
-Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
|
|
||||||
-fstack-clash-protection -fcf-protection"
|
|
||||||
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
|
|
||||||
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
|
|
||||||
#RUSTFLAGS="-C opt-level=2"
|
|
||||||
#-- Make Flags: change this for DistCC/SMP systems
|
|
||||||
MAKEFLAGS="-j8"
|
|
||||||
#-- Debugging flags
|
|
||||||
DEBUG_CFLAGS="-g -fvar-tracking-assignments"
|
|
||||||
DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"
|
|
||||||
#DEBUG_RUSTFLAGS="-C debuginfo=2"
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# BUILD ENVIRONMENT
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
# Makepkg defaults: BUILDENV=(!distcc !color !ccache check !sign)
|
|
||||||
# A negated environment option will do the opposite of the comments below.
|
|
||||||
#
|
|
||||||
#-- distcc: Use the Distributed C/C++/ObjC compiler
|
|
||||||
#-- color: Colorize output messages
|
|
||||||
#-- ccache: Use ccache to cache compilation
|
|
||||||
#-- check: Run the check() function if present in the PKGBUILD
|
|
||||||
#-- sign: Generate PGP signature file
|
|
||||||
#
|
|
||||||
BUILDENV=(!distcc color !ccache check !sign)
|
|
||||||
#
|
|
||||||
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
|
|
||||||
#-- specify a space-delimited list of hosts running in the DistCC cluster.
|
|
||||||
#DISTCC_HOSTS=""
|
|
||||||
#
|
|
||||||
#-- Specify a directory for package building.
|
|
||||||
#BUILDDIR=/tmp/makepkg
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# GLOBAL PACKAGE OPTIONS
|
|
||||||
# These are default values for the options=() settings
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
# Makepkg defaults: OPTIONS=(!strip docs libtool staticlibs emptydirs !zipman !purge !debug !lto)
|
|
||||||
# A negated option will do the opposite of the comments below.
|
|
||||||
#
|
|
||||||
#-- strip: Strip symbols from binaries/libraries
|
|
||||||
#-- docs: Save doc directories specified by DOC_DIRS
|
|
||||||
#-- libtool: Leave libtool (.la) files in packages
|
|
||||||
#-- staticlibs: Leave static library (.a) files in packages
|
|
||||||
#-- emptydirs: Leave empty directories in packages
|
|
||||||
#-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip
|
|
||||||
#-- purge: Remove files specified by PURGE_TARGETS
|
|
||||||
#-- debug: Add debugging flags as specified in DEBUG_* variables
|
|
||||||
#-- lto: Add compile flags for building with link time optimization
|
|
||||||
#
|
|
||||||
OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug !lto)
|
|
||||||
|
|
||||||
#-- File integrity checks to use. Valid: md5, sha1, sha224, sha256, sha384, sha512, b2
|
|
||||||
INTEGRITY_CHECK=(sha256)
|
|
||||||
#-- Options to be used when stripping binaries. See `man strip' for details.
|
|
||||||
STRIP_BINARIES="--strip-all"
|
|
||||||
#-- Options to be used when stripping shared libraries. See `man strip' for details.
|
|
||||||
STRIP_SHARED="--strip-unneeded"
|
|
||||||
#-- Options to be used when stripping static libraries. See `man strip' for details.
|
|
||||||
STRIP_STATIC="--strip-debug"
|
|
||||||
#-- Manual (man and info) directories to compress (if zipman is specified)
|
|
||||||
MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
|
|
||||||
#-- Doc directories to remove (if !docs is specified)
|
|
||||||
DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
|
|
||||||
#-- Files to be removed from all packages (if purge is specified)
|
|
||||||
PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
|
|
||||||
#-- Directory to store source code in for debug packages
|
|
||||||
DBGSRCDIR="/usr/src/debug"
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# PACKAGE OUTPUT
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
# Default: put built package and cached source in build directory
|
|
||||||
#
|
|
||||||
#-- Destination: specify a fixed directory where all packages will be placed
|
|
||||||
#PKGDEST=/home/packages
|
|
||||||
#-- Source cache: specify a fixed directory where source files will be cached
|
|
||||||
#SRCDEST=/home/sources
|
|
||||||
#-- Source packages: specify a fixed directory where all src packages will be placed
|
|
||||||
#SRCPKGDEST=/home/srcpackages
|
|
||||||
#-- Log files: specify a fixed directory where all log files will be placed
|
|
||||||
#LOGDEST=/home/makepkglogs
|
|
||||||
#-- Packager: name/email of the person or organization building packages
|
|
||||||
#PACKAGER="John Doe <john@doe.com>"
|
|
||||||
#-- Specify a key to use for package signing
|
|
||||||
#GPGKEY=""
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# COMPRESSION DEFAULTS
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
COMPRESSGZ=(gzip -c -f -n)
|
|
||||||
COMPRESSBZ2=(bzip2 -c -f)
|
|
||||||
COMPRESSXZ=(xz -c -z -)
|
|
||||||
COMPRESSZST=(zstd -c -z -q -)
|
|
||||||
COMPRESSLRZ=(lrzip -q)
|
|
||||||
COMPRESSLZO=(lzop -q)
|
|
||||||
COMPRESSZ=(compress -c -f)
|
|
||||||
COMPRESSLZ4=(lz4 -q)
|
|
||||||
COMPRESSLZ=(lzip -c -f)
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# EXTENSION DEFAULTS
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
PKGEXT='.pkg.tar.zst'
|
|
||||||
SRCEXT='.src.tar.gz'
|
|
||||||
|
|
||||||
#########################################################################
|
|
||||||
# OTHER
|
|
||||||
#########################################################################
|
|
||||||
#
|
|
||||||
#-- Command used to run pacman as root, instead of trying sudo and su
|
|
||||||
#PACMAN_AUTH=()
|
|
@ -1,100 +0,0 @@
|
|||||||
#
|
|
||||||
# /etc/pacman.conf
|
|
||||||
#
|
|
||||||
# See the pacman.conf(5) manpage for option and repository directives
|
|
||||||
|
|
||||||
#
|
|
||||||
# GENERAL OPTIONS
|
|
||||||
#
|
|
||||||
[options]
|
|
||||||
# The following paths are commented out with their default values listed.
|
|
||||||
# If you wish to use different paths, uncomment and update the paths.
|
|
||||||
#RootDir = /
|
|
||||||
#DBPath = /var/lib/pacman/
|
|
||||||
#CacheDir = /var/cache/pacman/pkg/
|
|
||||||
#LogFile = /var/log/pacman.log
|
|
||||||
#GPGDir = /etc/pacman.d/gnupg/
|
|
||||||
#HookDir = /etc/pacman.d/hooks/
|
|
||||||
HoldPkg = pacman glibc
|
|
||||||
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
|
|
||||||
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
|
||||||
#CleanMethod = KeepInstalled
|
|
||||||
Architecture = auto
|
|
||||||
|
|
||||||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
|
|
||||||
#IgnorePkg =
|
|
||||||
#IgnoreGroup =
|
|
||||||
|
|
||||||
#NoUpgrade =
|
|
||||||
#NoExtract =
|
|
||||||
|
|
||||||
# Misc options
|
|
||||||
#UseSyslog
|
|
||||||
#Color
|
|
||||||
#NoProgressBar
|
|
||||||
CheckSpace
|
|
||||||
#VerbosePkgLists
|
|
||||||
#ParallelDownloads = 5
|
|
||||||
|
|
||||||
# By default, pacman accepts packages signed by keys that its local keyring
|
|
||||||
# trusts (see pacman-key and its man page), as well as unsigned packages.
|
|
||||||
SigLevel = Required DatabaseOptional
|
|
||||||
LocalFileSigLevel = Optional
|
|
||||||
#RemoteFileSigLevel = Required
|
|
||||||
|
|
||||||
# NOTE: You must run `pacman-key --init` before first using pacman; the local
|
|
||||||
# keyring can then be populated with the keys of all official Arch Linux
|
|
||||||
# packagers with `pacman-key --populate archlinux`.
|
|
||||||
|
|
||||||
#
|
|
||||||
# REPOSITORIES
|
|
||||||
# - can be defined here or included from another file
|
|
||||||
# - pacman will search repositories in the order defined here
|
|
||||||
# - local/custom mirrors can be added here or in separate files
|
|
||||||
# - repositories listed first will take precedence when packages
|
|
||||||
# have identical names, regardless of version number
|
|
||||||
# - URLs will have $repo replaced by the name of the current repo
|
|
||||||
# - URLs will have $arch replaced by the name of the architecture
|
|
||||||
#
|
|
||||||
# Repository entries are of the format:
|
|
||||||
# [repo-name]
|
|
||||||
# Server = ServerName
|
|
||||||
# Include = IncludePath
|
|
||||||
#
|
|
||||||
# The header [repo-name] is crucial - it must be present and
|
|
||||||
# uncommented to enable the repo.
|
|
||||||
#
|
|
||||||
|
|
||||||
# The testing repositories are disabled by default. To enable, uncomment the
|
|
||||||
# repo name header and Include lines. You can add preferred servers immediately
|
|
||||||
# after the header, and they will be used before the default mirrors.
|
|
||||||
|
|
||||||
#[testing]
|
|
||||||
#Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
[core]
|
|
||||||
Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
[extra]
|
|
||||||
Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
#[community-testing]
|
|
||||||
#Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
[community]
|
|
||||||
Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
# If you want to run 32 bit applications on your x86_64 system,
|
|
||||||
# enable the multilib repositories as required here.
|
|
||||||
|
|
||||||
#[multilib-testing]
|
|
||||||
#Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
[multilib]
|
|
||||||
Include = /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
# An example of a custom package repository. See the pacman manpage for
|
|
||||||
# tips on creating your own repositories.
|
|
||||||
#[custom]
|
|
||||||
#SigLevel = Optional TrustAll
|
|
||||||
#Server = file:///home/custompkgs
|
|
@ -1,2 +0,0 @@
|
|||||||
root:x:0:0::/root:/bin/bash
|
|
||||||
tstarr:x:1000:1001::/home/tstarr:/bin/bash
|
|
@ -1 +0,0 @@
|
|||||||
root:x:0:0::/root:/bin/bash
|
|
@ -1,2 +0,0 @@
|
|||||||
nameserver 8.8.8.8
|
|
||||||
nameserver 8.8.4.4
|
|
@ -1,96 +0,0 @@
|
|||||||
## sudoers file.
|
|
||||||
##
|
|
||||||
## This file MUST be edited with the 'visudo' command as root.
|
|
||||||
## Failure to use 'visudo' may result in syntax or file permission errors
|
|
||||||
## that prevent sudo from running.
|
|
||||||
##
|
|
||||||
## See the sudoers man page for the details on how to write a sudoers file.
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
|
||||||
## Host alias specification
|
|
||||||
##
|
|
||||||
## Groups of machines. These may include host names (optionally with wildcards),
|
|
||||||
## IP addresses, network numbers or netgroups.
|
|
||||||
# Host_Alias WEBSERVERS = www1, www2, www3
|
|
||||||
|
|
||||||
##
|
|
||||||
## User alias specification
|
|
||||||
##
|
|
||||||
## Groups of users. These may consist of user names, uids, Unix groups,
|
|
||||||
## or netgroups.
|
|
||||||
# User_Alias ADMINS = millert, dowdy, mikef
|
|
||||||
|
|
||||||
##
|
|
||||||
## Cmnd alias specification
|
|
||||||
##
|
|
||||||
## Groups of commands. Often used to group related commands together.
|
|
||||||
# Cmnd_Alias PROCESSES = /usr/bin/nice, /bin/kill, /usr/bin/renice, \
|
|
||||||
# /usr/bin/pkill, /usr/bin/top
|
|
||||||
# Cmnd_Alias REBOOT = /sbin/halt, /sbin/reboot, /sbin/poweroff
|
|
||||||
|
|
||||||
##
|
|
||||||
## Defaults specification
|
|
||||||
##
|
|
||||||
## You may wish to keep some of the following environment variables
|
|
||||||
## when running commands via sudo.
|
|
||||||
##
|
|
||||||
## Locale settings
|
|
||||||
# Defaults env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET"
|
|
||||||
##
|
|
||||||
## Run X applications through sudo; HOME is used to find the
|
|
||||||
## .Xauthority file. Note that other programs use HOME to find
|
|
||||||
## configuration files and this may lead to privilege escalation!
|
|
||||||
# Defaults env_keep += "HOME"
|
|
||||||
##
|
|
||||||
## X11 resource path settings
|
|
||||||
# Defaults env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"
|
|
||||||
##
|
|
||||||
## Desktop path settings
|
|
||||||
# Defaults env_keep += "QTDIR KDEDIR"
|
|
||||||
##
|
|
||||||
## Allow sudo-run commands to inherit the callers' ConsoleKit session
|
|
||||||
# Defaults env_keep += "XDG_SESSION_COOKIE"
|
|
||||||
##
|
|
||||||
## Uncomment to enable special input methods. Care should be taken as
|
|
||||||
## this may allow users to subvert the command being run via sudo.
|
|
||||||
# Defaults env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
|
|
||||||
##
|
|
||||||
## Uncomment to use a hard-coded PATH instead of the user's to find commands
|
|
||||||
# Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
|
|
||||||
##
|
|
||||||
## Uncomment to send mail if the user does not enter the correct password.
|
|
||||||
# Defaults mail_badpass
|
|
||||||
##
|
|
||||||
## Uncomment to enable logging of a command's output, except for
|
|
||||||
## sudoreplay and reboot. Use sudoreplay to play back logged sessions.
|
|
||||||
# Defaults log_output
|
|
||||||
# Defaults!/usr/bin/sudoreplay !log_output
|
|
||||||
# Defaults!/usr/local/bin/sudoreplay !log_output
|
|
||||||
# Defaults!REBOOT !log_output
|
|
||||||
|
|
||||||
##
|
|
||||||
## Runas alias specification
|
|
||||||
##
|
|
||||||
|
|
||||||
##
|
|
||||||
## User privilege specification
|
|
||||||
##
|
|
||||||
root ALL=(ALL) ALL
|
|
||||||
|
|
||||||
## Uncomment to allow members of group wheel to execute any command
|
|
||||||
# %wheel ALL=(ALL) ALL
|
|
||||||
|
|
||||||
## Same thing without a password
|
|
||||||
# %wheel ALL=(ALL) NOPASSWD: ALL
|
|
||||||
|
|
||||||
## Uncomment to allow members of group sudo to execute any command
|
|
||||||
%sudo ALL=(ALL) ALL
|
|
||||||
|
|
||||||
## Uncomment to allow any user to run sudo if they know the password
|
|
||||||
## of the user they are running the command as (root by default).
|
|
||||||
# Defaults targetpw # Ask for the password of the target user
|
|
||||||
# ALL ALL=(ALL) ALL # WARNING: only use this together with 'Defaults targetpw'
|
|
||||||
|
|
||||||
## Read drop-in files from /etc/sudoers.d
|
|
||||||
@includedir /etc/sudoers.d
|
|
@ -8,19 +8,20 @@ hc() {
|
|||||||
|
|
||||||
hc emit_hook reload
|
hc emit_hook reload
|
||||||
|
|
||||||
xsetroot -solid '#5A8E3A'
|
xsetroot -solid '#FFFFFF'
|
||||||
|
|
||||||
# remove all existing keybindings
|
# remove all existing keybindings
|
||||||
hc keyunbind --all
|
hc keyunbind --all
|
||||||
|
|
||||||
# keybindings
|
# keybindings
|
||||||
# if you have a super key you will be much happier with Mod set to Mod4
|
# if you have a super key you will be much happier with Mod set to Mod4
|
||||||
Mod=Mod1 # Use alt as the main modifier
|
#Mod=Mod1 # Use alt as the main modifier
|
||||||
#Mod=Mod4 # Use the super key as the main modifier
|
Mod=Mod4 # Use the super key as the main modifier
|
||||||
|
|
||||||
hc keybind $Mod-Shift-q quit
|
hc keybind $Mod-Shift-q quit
|
||||||
hc keybind $Mod-Shift-r reload
|
hc keybind $Mod-Shift-r reload
|
||||||
hc keybind $Mod-Shift-c close
|
hc keybind $Mod-Shift-c close
|
||||||
|
TERMINAL="alacritty"
|
||||||
hc keybind $Mod-Return spawn "${TERMINAL:-xterm}" # use your $TERMINAL with xterm as fallback
|
hc keybind $Mod-Return spawn "${TERMINAL:-xterm}" # use your $TERMINAL with xterm as fallback
|
||||||
|
|
||||||
# basic movement in tiling and floating mode
|
# basic movement in tiling and floating mode
|
||||||
@ -109,6 +110,8 @@ hc keybind $Mod-Shift-Tab cycle_all -1
|
|||||||
hc keybind $Mod-c cycle
|
hc keybind $Mod-c cycle
|
||||||
hc keybind $Mod-i jumpto urgent
|
hc keybind $Mod-i jumpto urgent
|
||||||
|
|
||||||
|
# rofi
|
||||||
|
|
||||||
# theme
|
# theme
|
||||||
hc attr theme.tiling.reset 1
|
hc attr theme.tiling.reset 1
|
||||||
hc attr theme.floating.reset 1
|
hc attr theme.floating.reset 1
|
||||||
@ -165,7 +168,6 @@ hc rule floatplacement=smart
|
|||||||
hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' floating=on
|
hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' floating=on
|
||||||
hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on
|
hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on
|
||||||
hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off
|
hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off
|
||||||
|
|
||||||
hc set tree_style '╾│ ├└╼─┐'
|
hc set tree_style '╾│ ├└╼─┐'
|
||||||
|
|
||||||
# unlock, just to be sure
|
# unlock, just to be sure
|
||||||
@ -174,7 +176,7 @@ hc unlock
|
|||||||
# do multi monitor setup here, e.g.:
|
# do multi monitor setup here, e.g.:
|
||||||
# hc set_monitors 1280x1024+0+0 1280x1024+1280+0
|
# hc set_monitors 1280x1024+0+0 1280x1024+1280+0
|
||||||
# or simply:
|
# or simply:
|
||||||
# hc detect_monitors
|
hc detect_monitors
|
||||||
|
|
||||||
# find the panel
|
# find the panel
|
||||||
panel=~/.config/herbstluftwm/panel.sh
|
panel=~/.config/herbstluftwm/panel.sh
|
||||||
|
3
.config/pacdef_grps/generic/base
Normal file
3
.config/pacdef_grps/generic/base
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
reflector
|
||||||
|
ntfs-3g
|
||||||
|
lm_sensors
|
28
.config/pacdef_grps/generic/cliapps
Normal file
28
.config/pacdef_grps/generic/cliapps
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
alacritty # A cross-platform, GPU-accelerated terminal emulator
|
||||||
|
screen # Full-screen window manager that multiplexes a physical terminal
|
||||||
|
zsh # A very advanced and programmable command interpreter (shell) for UNIX
|
||||||
|
bashtop # Linux resource monitor
|
||||||
|
imwheel # Mouse wheel configuration tool for XFree86/Xorg
|
||||||
|
gamemode # A daemon/lib combo that allows games to request a set of optimisations be temporarily applied to the host OS
|
||||||
|
git # the fast distributed version control system
|
||||||
|
platformio # A cross-platform code builder and library manager
|
||||||
|
arj # Free and portable clone of the ARJ archiver
|
||||||
|
cabextract # A program to extract Microsoft cabinet (.CAB) files
|
||||||
|
cpio # A tool to copy files into or out of a cpio or tar archive
|
||||||
|
lhasa # Free LZH/LHA archive tool
|
||||||
|
lrzip # Multi-threaded compression with rzip/lzma, lzo, and zpaq
|
||||||
|
pax # Portable Archive Interchange - the POSIX standard archive tool for cpio and tar formats
|
||||||
|
p7zip # Command-line file archiver with high compression ratio
|
||||||
|
rpmextract # Script to convert or extract RPM archives (contains rpm2cpio)
|
||||||
|
sharutils # Makes so-called shell archives out of many files
|
||||||
|
unace # An extraction tool for the proprietary ace archive format
|
||||||
|
unrar # The RAR uncompression program
|
||||||
|
unzip # For extracting and viewing files in .zip archives
|
||||||
|
zip # Compressor/archiver for creating and modifying zipfiles
|
||||||
|
neovim # Fork of Vim aiming to improve user experience, plugins, and GUIs
|
||||||
|
emacs # GNU Emacs.
|
||||||
|
rsync # A fast and versatile file copying tool for remote and local files
|
||||||
|
smbclient # Tools to access a server's filespace and printers via SMB
|
||||||
|
trash-cli # Command line trashcan (recycle bin) interface
|
||||||
|
vifm # A file manager with curses interface, which provides Vi[m]-like environment
|
||||||
|
stow # Manage installation of multiple softwares in the same directory tree
|
11
.config/pacdef_grps/generic/desktop
Normal file
11
.config/pacdef_grps/generic/desktop
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
picom # X compositor that may fix tearing issues
|
||||||
|
rofi # A window switcher, application launcher and dmenu replacement
|
||||||
|
lxappearance # Feature-rich GTK+ theme switcher of the LXDE Desktop
|
||||||
|
lxsession # Lightweight X11 session manager
|
||||||
|
flameshot # Powerful yet simple to use screenshot software
|
||||||
|
feh # Fast and light imlib2-based image viewer
|
||||||
|
dunst # Customizable and lightweight notification-daemon
|
||||||
|
xarchiver # GTK+ frontend to various command line archivers
|
||||||
|
xmobar-git # Minimalistic Text Based Status Bar
|
||||||
|
xmonad-contrib-git # Add-ons for xmonad
|
||||||
|
xmonad-git # Lightweight X11 tiled window manager written in Haskell
|
2
.config/pacdef_grps/generic/devices
Normal file
2
.config/pacdef_grps/generic/devices
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
android-file-transfer # Android MTP client with minimalistic UI
|
||||||
|
kdeconnect # Adds communication between KDE and your smartphone
|
1
.config/pacdef_grps/generic/fonts
Normal file
1
.config/pacdef_grps/generic/fonts
Normal file
@ -0,0 +1 @@
|
|||||||
|
nerd-fonts-complete # Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts.
|
13
.config/pacdef_grps/generic/guiapps
Normal file
13
.config/pacdef_grps/generic/guiapps
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
discord # All-in-one voice and text chat for gamers that's free and secure
|
||||||
|
firefox # Standalone web browser from mozilla.org
|
||||||
|
gparted # A Partition Magic clone, frontend to GNU Parted
|
||||||
|
keepassxc # Cross-platform community-driven port of Keepass password manager
|
||||||
|
lutris # Open Gaming Platform
|
||||||
|
mpv # a free, open source, and cross-platform media player
|
||||||
|
nitrogen # Background browser and setter for X windows
|
||||||
|
openscad # The programmers solid 3D CAD modeller
|
||||||
|
pcmanfm # Extremely fast and lightweight file manager
|
||||||
|
steam # Valve's digital software delivery system
|
||||||
|
wine-staging # A compatibility layer for running Windows programs - Staging branch
|
||||||
|
brave-bin # Web browser that blocks ads and trackers by default (binary release)
|
||||||
|
superslicer-prerelease-bin # G-code generator for 3D printers (Creality, RepRap, Makerbot, Ultimaker etc.) (binary AppImage)
|
3
.config/pacdef_grps/generic/network
Normal file
3
.config/pacdef_grps/generic/network
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
wireguard-tools
|
||||||
|
iproute2
|
||||||
|
openssh
|
2
.config/pacdef_grps/generic/services
Normal file
2
.config/pacdef_grps/generic/services
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
syncthing # Open Source Continuous Replication / Cluster Synchronization Thing
|
||||||
|
udiskie # Removable disk automounter using udisks
|
6
.config/pacdef_grps/generic/xorg
Normal file
6
.config/pacdef_grps/generic/xorg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
xorg-server
|
||||||
|
xorg-server-xephyr
|
||||||
|
xorg-xev
|
||||||
|
xorg-xinit
|
||||||
|
xorg-xsetroot
|
||||||
|
xorg-xwayland
|
3
.config/pacdef_grps/hosts/kestrel/kestrel_devices
Normal file
3
.config/pacdef_grps/hosts/kestrel/kestrel_devices
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
nvidia-dkms
|
||||||
|
nvidia-settings
|
||||||
|
nvidia-utils
|
49
.config/pacdef_grps/hosts/kestrel/kestrel_initial
Normal file
49
.config/pacdef_grps/hosts/kestrel/kestrel_initial
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
amd-ucode
|
||||||
|
autoconf
|
||||||
|
automake
|
||||||
|
base
|
||||||
|
binutils
|
||||||
|
bison
|
||||||
|
btrfs-progs
|
||||||
|
efibootmgr
|
||||||
|
fakeroot
|
||||||
|
file
|
||||||
|
findutils
|
||||||
|
flex
|
||||||
|
gawk
|
||||||
|
gcc
|
||||||
|
gettext
|
||||||
|
git
|
||||||
|
grep
|
||||||
|
groff
|
||||||
|
grub
|
||||||
|
gst-plugin-pipewire
|
||||||
|
gzip
|
||||||
|
libpulse
|
||||||
|
libtool
|
||||||
|
linux
|
||||||
|
linux-firmware
|
||||||
|
linux-zen
|
||||||
|
m4
|
||||||
|
make
|
||||||
|
pacdef
|
||||||
|
pacman
|
||||||
|
patch
|
||||||
|
pipewire
|
||||||
|
pipewire-alsa
|
||||||
|
pipewire-jack
|
||||||
|
pipewire-media-session
|
||||||
|
pipewire-pulse
|
||||||
|
pkgconf
|
||||||
|
sed
|
||||||
|
stow
|
||||||
|
sudo
|
||||||
|
texinfo
|
||||||
|
vifm
|
||||||
|
vim
|
||||||
|
which
|
||||||
|
yay-bin
|
||||||
|
zram-generator
|
||||||
|
neovim
|
||||||
|
linux-headers
|
||||||
|
linux-zen-headers
|
@ -18,10 +18,11 @@ for i, group in enumerate(groups):
|
|||||||
])
|
])
|
||||||
|
|
||||||
groups.append(
|
groups.append(
|
||||||
Group("Comm", spawn="discord", persist=True)
|
#Group("Comm", spawn="discord", persist=True)
|
||||||
|
ScratchPad("Comm", [DropDown("d", "discord", match=Match(wm_class="discord"), x=0.1, y=0.1, width=0.8, height=0.8)])
|
||||||
)
|
)
|
||||||
|
|
||||||
keys.extend([
|
keys.extend([
|
||||||
Key([mod], "d", lazy.group["Comm"].toscreen())
|
Key([mod], "d", lazy.group["Comm"].dropdown_toggle("d"))
|
||||||
])
|
])
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@ layouts = [
|
|||||||
layout.Matrix(columns=2, **layout_conf),
|
layout.Matrix(columns=2, **layout_conf),
|
||||||
layout.Zoomy(**layout_conf),
|
layout.Zoomy(**layout_conf),
|
||||||
layout.Bsp(**layout_conf),
|
layout.Bsp(**layout_conf),
|
||||||
|
layout.Columns(**layout_conf),
|
||||||
]
|
]
|
||||||
|
|
||||||
# Define floating rules
|
# Define floating rules
|
||||||
|
@ -3188,6 +3188,14 @@ Define SPC lead bindings for Roam.
|
|||||||
(interactive)
|
(interactive)
|
||||||
(exwm-floating-move 1 0))
|
(exwm-floating-move 1 0))
|
||||||
|
|
||||||
|
(defun ts/shrink-window ()
|
||||||
|
(interactive)
|
||||||
|
(shrink-window-horizontally 10))
|
||||||
|
|
||||||
|
(defun ts/enlarge-window ()
|
||||||
|
(interactive)
|
||||||
|
(enlarge-window-horizontally 10))
|
||||||
|
|
||||||
;; Set up global key bindings. These always work, no matter the input state!
|
;; Set up global key bindings. These always work, no matter the input state!
|
||||||
;; Keep in mind that changing this list after EXWM initializes has no effect.
|
;; Keep in mind that changing this list after EXWM initializes has no effect.
|
||||||
(setq exwm-input-global-keys
|
(setq exwm-input-global-keys
|
||||||
@ -3201,8 +3209,8 @@ Define SPC lead bindings for Roam.
|
|||||||
([?\s-k] . windmove-up)
|
([?\s-k] . windmove-up)
|
||||||
([?\s-j] . windmove-down)
|
([?\s-j] . windmove-down)
|
||||||
|
|
||||||
([?\s-H] . shrink-window-horizontally)
|
([?\s-H] . ts/shrink-window)
|
||||||
([?\s-L] . enlarge-window-horizontally)
|
([?\s-L] . ts/enlarge-window)
|
||||||
([?\s-K] . enlarge-window)
|
([?\s-K] . enlarge-window)
|
||||||
([?\s-J] . shrink-window)
|
([?\s-J] . shrink-window)
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
@ -1,3 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
status=$(cat /sys/class/power_supply/hidpp_battery_*/uevent | grep POWER_SUPPLY_VOLTAGE)
|
status=$(cat /sys/class/power_supply/hidpp_battery_*/uevent | grep POWER_SUPPLY_VOLTAGE)
|
||||||
voltage=$(echo $status | cut -c26-29)
|
voltage=$(echo $status | cut -c26-29)
|
||||||
if [ "$voltage" -ge 3700 ]; then
|
if [ "$voltage" -ge 3700 ]; then
|
1
.config/xmobar/tst
Executable file
1
.config/xmobar/tst
Executable file
@ -0,0 +1 @@
|
|||||||
|
echo "wtf"
|
@ -10,11 +10,11 @@ Config { font = "xft:Mononoki Nerd Font:pixelsize=12:antialias=true:hinting=true
|
|||||||
, Run Com "/home/tstarr/.config/xmobar/wireguard" [] "wireguard" 10
|
, Run Com "/home/tstarr/.config/xmobar/wireguard" [] "wireguard" 10
|
||||||
, Run Com "/home/tstarr/.config/xmobar/volume" [] "volume" 10
|
, Run Com "/home/tstarr/.config/xmobar/volume" [] "volume" 10
|
||||||
, Run Com "/home/tstarr/.config/xmobar/gamemode" [] "gamemode" 10
|
, Run Com "/home/tstarr/.config/xmobar/gamemode" [] "gamemode" 10
|
||||||
, Run Com "/home/tstarr/.config/xmobar/mouse_battery" [] "mouse_battery" 30
|
, Run Com "/home/tstarr/.config/xmobar/mouse" [] "mouse" 10
|
||||||
, Run Date " %a %d/%m/%y %H:%M:%S" "date" 10
|
, Run Date " %a %d/%m/%y %H:%M:%S" "date" 10
|
||||||
, Run StdinReader
|
, Run StdinReader
|
||||||
]
|
]
|
||||||
, sepChar = "%"
|
, sepChar = "%"
|
||||||
, alignSep = "}{"
|
, alignSep = "}{"
|
||||||
, template = " <fc=#fb4934>%StdinReader%</fc>}%date%{%enp3s0% | %mouse_battery% | %volume% | 閭%cpu% | %memory% |%gamemode% %wireguard%"
|
, template = " <fc=#fb4934>%StdinReader%</fc>}%date%{%enp3s0% | %mouse% | %volume% | 閭%cpu% | %memory% |%gamemode% %wireguard%"
|
||||||
}
|
}
|
||||||
|
BIN
.xmonad/build-x86_64-linux/Main.hi
Normal file
BIN
.xmonad/build-x86_64-linux/Main.hi
Normal file
Binary file not shown.
BIN
.xmonad/build-x86_64-linux/Main.o
Normal file
BIN
.xmonad/build-x86_64-linux/Main.o
Normal file
Binary file not shown.
BIN
.xmonad/build-x86_64-linux/XMonad/Util/CurrentIndex.hi
Normal file
BIN
.xmonad/build-x86_64-linux/XMonad/Util/CurrentIndex.hi
Normal file
Binary file not shown.
BIN
.xmonad/build-x86_64-linux/XMonad/Util/CurrentIndex.o
Normal file
BIN
.xmonad/build-x86_64-linux/XMonad/Util/CurrentIndex.o
Normal file
Binary file not shown.
16
.xmonad/lib/XMonad/Util/CurrentIndex.hs
Normal file
16
.xmonad/lib/XMonad/Util/CurrentIndex.hs
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
|
||||||
|
module XMonad.Util.CurrentIndex (currentIndex) where
|
||||||
|
|
||||||
|
import XMonad.StackSet
|
||||||
|
import qualified XMonad.StackSet as W
|
||||||
|
import Data.List (elemIndex)
|
||||||
|
import XMonad
|
||||||
|
import XMonad.Util.Stack
|
||||||
|
|
||||||
|
--currentIndex :: StackSet i l Window s sd -> Int
|
||||||
|
--currentIndex w =
|
||||||
|
|
||||||
|
--allWindowsInCurrentWorkspace :: W.StackSet i l a sid sd -> [a]
|
||||||
|
--allWindowsInCurrentWorkspace ws =
|
||||||
|
-- W.integrate' . W.stack . W.workspace . W.current $ ws
|
||||||
|
|
1
.xmonad/prompt-history
Normal file
1
.xmonad/prompt-history
Normal file
@ -0,0 +1 @@
|
|||||||
|
fromList [("Bring window: ",["Nitrogen [1]","Nitrogen [1]","Nitrogen","Nitrogen","Alacritty","Issues with North's Approach; Why was aizy Never Kicked? - Reflections with MSL (2nd App) 1/2 - CSGO - YouTube - Brave","Alacritty [1]","Alacritty [1]","keepassxc [NSP]","Alacritty [1]","brave","XMonad.Actions.RotateSome - Brave [2]","tylers-bayoooup - Discord [NSP]","tylers-bayoooup - Discord [NSP]","Alacritty [1]","Alacritty [1]","Issues with North's Approach; Why was aizy Never Kicked? - Reflections with MSL (2nd App) 1/2 - CSGO - YouTube - Brave [1]","Issues with North's Approach; Why was aizy Never Kicked? - Reflections with MSL (2nd App) 1/2 - CSGO - YouTube - Brave [2]","Alacritty [3]","Alacritty [2]","Alacritty [2]","Alacritty [4]","Alacritty [4]","Steam [3]","NYC logic: rent hits all time high as businesses & people leave - YouTube - Brave [2]","Alacritty [2]","Alacritty [2]","NYC logic: rent hits all time high as businesses & people leave - YouTube - Brave [2]","Alacritty [2]","emacs@kestrel [1]","emacs@kestrel [1]","Is Tiling in Pop!OS Any Good? - YouTube - Brave [2]","Is Tiling in Pop!OS Any Good? - YouTube - Brave [2]","Is","Is Tiling in Pop!OS Any Good? - YouTube - Brave [2]","Is","Is Tiling in Pop!OS Any Good? - YouTube - Brave [2]","ts","ty","Steam"]),("Go to window: ",["Wine System Tray [4]","How to Switch To Linux (Best Practices) - YouTube - Brave [1]","Nitrogen [2]","Nitrogen [2]","Nitrogen [2]","Alacritty [1]","XMonad.Actions.GroupNavigation - Brave [1]","XMonad.Actions.WindowGo - Brave [2]","tylers-bayoooup - Discord [NSP]","Elon Musk: SpaceX, Mars, Tesla Autopilot, Self-Driving, Robotics, and AI | Lex Fridman Podcast #252 - YouTube - Brave","Nitrogen","Nitrogen","Issues with North's Approach; Why was aizy Never Kicked? - Reflections with MSL (2nd App) 1/2 - CSGO - YouTube - Brave","Alacritty","Alacritty","XMonad.Prompt.Window - Brave"])]
|
BIN
.xmonad/xmonad-x86_64-linux
Executable file
BIN
.xmonad/xmonad-x86_64-linux
Executable file
Binary file not shown.
1
.xmonad/xmonad.errors
Normal file
1
.xmonad/xmonad.errors
Normal file
@ -0,0 +1 @@
|
|||||||
|
$ ghc --make xmonad.hs -i -ilib -fforce-recomp -main-is main -dynamic -v0 -outputdir /home/tstarr/.xmonad/build-x86_64-linux -o /home/tstarr/.xmonad/xmonad-x86_64-linux
|
@ -5,6 +5,9 @@ import System.IO
|
|||||||
import qualified XMonad.StackSet as W
|
import qualified XMonad.StackSet as W
|
||||||
import System.Directory (getHomeDirectory)
|
import System.Directory (getHomeDirectory)
|
||||||
import Data.Semigroup
|
import Data.Semigroup
|
||||||
|
import Text.Read
|
||||||
|
import Data.List (elemIndex)
|
||||||
|
|
||||||
-- Hooks
|
-- Hooks
|
||||||
import XMonad.Hooks.EwmhDesktops
|
import XMonad.Hooks.EwmhDesktops
|
||||||
import XMonad.Hooks.ManageDocks
|
import XMonad.Hooks.ManageDocks
|
||||||
@ -21,6 +24,8 @@ import XMonad.Layout.WindowNavigation
|
|||||||
import XMonad.Layout.SimpleFloat
|
import XMonad.Layout.SimpleFloat
|
||||||
import XMonad.Layout.HintedTile
|
import XMonad.Layout.HintedTile
|
||||||
import XMonad.Layout.Grid
|
import XMonad.Layout.Grid
|
||||||
|
import XMonad.Layout.TwoPane
|
||||||
|
import XMonad.Layout.TwoPanePersistent
|
||||||
|
|
||||||
--Utilities
|
--Utilities
|
||||||
import XMonad.Util.Run (spawnPipe)
|
import XMonad.Util.Run (spawnPipe)
|
||||||
@ -28,12 +33,20 @@ import XMonad.Util.SpawnOnce
|
|||||||
import XMonad.Util.EZConfig (additionalKeysP, removeKeys)
|
import XMonad.Util.EZConfig (additionalKeysP, removeKeys)
|
||||||
import XMonad.Util.NamedScratchpad
|
import XMonad.Util.NamedScratchpad
|
||||||
import XMonad.Util.ClickableWorkspaces (clickablePP)
|
import XMonad.Util.ClickableWorkspaces (clickablePP)
|
||||||
|
import XMonad.Util.Loggers
|
||||||
|
|
||||||
-- Actions
|
-- Actions
|
||||||
import XMonad.Actions.DynamicProjects (Project (..), dynamicProjects, switchProjectPrompt, shiftToProjectPrompt, switchProject, shiftToProject)
|
import XMonad.Actions.DynamicProjects (Project (..), dynamicProjects, switchProjectPrompt, shiftToProjectPrompt, switchProject, shiftToProject)
|
||||||
import XMonad.Actions.UpdatePointer
|
import XMonad.Actions.UpdatePointer
|
||||||
|
import XMonad.Actions.RotSlaves
|
||||||
|
import XMonad.Actions.RotateSome
|
||||||
|
import XMonad.Actions.GroupNavigation
|
||||||
import XMonad.Actions.Navigation2D
|
import XMonad.Actions.Navigation2D
|
||||||
|
|
||||||
-- Prompt
|
-- Prompt
|
||||||
import XMonad.Prompt
|
import XMonad.Prompt
|
||||||
|
import XMonad.Prompt.Window
|
||||||
|
--import XMonad.Util.CurrentIndex
|
||||||
|
|
||||||
-- Terminal to use
|
-- Terminal to use
|
||||||
myTerminal :: String
|
myTerminal :: String
|
||||||
@ -51,6 +64,7 @@ muteVolumeCmd = "pactl set-sink-mute @DEFAULT_SINK@ toggle"
|
|||||||
-- Count windows
|
-- Count windows
|
||||||
windowCount :: X (Maybe String)
|
windowCount :: X (Maybe String)
|
||||||
windowCount = gets $ Just . show . length . W.integrate' . W.stack . W.workspace . W.current . windowset
|
windowCount = gets $ Just . show . length . W.integrate' . W.stack . W.workspace . W.current . windowset
|
||||||
|
|
||||||
-- Define workspaces
|
-- Define workspaces
|
||||||
myWorkspaces = ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
|
myWorkspaces = ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
|
||||||
-- Width of window border
|
-- Width of window border
|
||||||
@ -58,14 +72,6 @@ myBorderWidth = 2
|
|||||||
-- Border colors
|
-- Border colors
|
||||||
myNormalBorderColor = "#ebdbb2"
|
myNormalBorderColor = "#ebdbb2"
|
||||||
myFocusedBorderColor = "#d3869b"
|
myFocusedBorderColor = "#d3869b"
|
||||||
-- Configuration for myNav2D
|
|
||||||
myNav2DConf = def
|
|
||||||
{ defaultTiledNavigation = centerNavigation
|
|
||||||
, floatNavigation = centerNavigation
|
|
||||||
, screenNavigation = lineNavigation
|
|
||||||
, layoutNavigation = [("Spacing Full", centerNavigation)]
|
|
||||||
, unmappedWindowRect = [("Spacing Full", singleWindowRect)]
|
|
||||||
}
|
|
||||||
|
|
||||||
myStartupHook = do
|
myStartupHook = do
|
||||||
spawnOnce "nitrogen --restore &"
|
spawnOnce "nitrogen --restore &"
|
||||||
@ -90,7 +96,7 @@ projects =
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
myLayout = windowNavigation $ spacing 2 $ smartBorders (tiled Tall ||| tiled Wide ||| Full ||| simpleFloat ||| Grid)
|
myLayout = windowNavigation $ spacing 2 $ smartBorders (TwoPanePersistent Nothing (3/100) (1/2) ||| tiled Tall ||| tiled Wide ||| Full ||| simpleFloat ||| Grid)
|
||||||
where
|
where
|
||||||
-- default tiling algorithm partitions the screen into two panes
|
-- default tiling algorithm partitions the screen into two panes
|
||||||
--tiled = Tall nmaster delta ratio
|
--tiled = Tall nmaster delta ratio
|
||||||
@ -170,7 +176,7 @@ myEventHook :: Event -> X All
|
|||||||
myEventHook = dynamicPropertyChange "WM_NAME" (title =? "scratch-emacs" --> floating)
|
myEventHook = dynamicPropertyChange "WM_NAME" (title =? "scratch-emacs" --> floating)
|
||||||
where floating = customFloating $ W.RationalRect (1/6) 0.05 (2/3) 0.9
|
where floating = customFloating $ W.RationalRect (1/6) 0.05 (2/3) 0.9
|
||||||
-- Log hook
|
-- Log hook
|
||||||
myLogHook = updatePointer (0.5, 0.5) (0, 0)
|
myLogHook = historyHook <+> updatePointer (0.5, 0.5) (0, 0)
|
||||||
|
|
||||||
myKeys :: String -> [([Char], X ())]
|
myKeys :: String -> [([Char], X ())]
|
||||||
myKeys home =
|
myKeys home =
|
||||||
@ -179,7 +185,7 @@ myKeys home =
|
|||||||
-- Window/Focus Manipulation
|
-- Window/Focus Manipulation
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
-- Rotate through the available layout algorithms
|
-- Rotate through the available layout algorithms
|
||||||
("M-<Tab>", sendMessage NextLayout)
|
("M-<Space>", sendMessage NextLayout)
|
||||||
-- Shrink the master area
|
-- Shrink the master area
|
||||||
, ("M-C-h", sendMessage Shrink)
|
, ("M-C-h", sendMessage Shrink)
|
||||||
-- Expand the master area
|
-- Expand the master area
|
||||||
@ -188,6 +194,32 @@ myKeys home =
|
|||||||
, ("M-t", withFocused $ windows . W.sink)
|
, ("M-t", withFocused $ windows . W.sink)
|
||||||
-- close focused window
|
-- close focused window
|
||||||
, ("M-q", kill)
|
, ("M-q", kill)
|
||||||
|
---- Move focus to the next window.
|
||||||
|
--, ("M-j", windows W.focusDown)
|
||||||
|
---- Move focus to the previous window.
|
||||||
|
--, ("M-k", windows W.focusUp)
|
||||||
|
---- Swap the focused window with the next window.
|
||||||
|
--, ("M-S-j", windows W.swapDown)
|
||||||
|
---- Swap the focused window with the previous window.
|
||||||
|
--, ("M-S-k", windows W.swapUp)
|
||||||
|
|
||||||
|
-- Swap the focused window with the next window.
|
||||||
|
, ("M-C-j", rotSlavesDown)
|
||||||
|
-- Swap the focused window with the previous window.
|
||||||
|
, ("M-C-k", rotSlavesUp)
|
||||||
|
|
||||||
|
-- Move focus to the master window.
|
||||||
|
, ("M-m", windows W.focusMaster)
|
||||||
|
-- Swap the focused window and the master window.
|
||||||
|
, ("M-S-m", windows W.swapMaster)
|
||||||
|
|
||||||
|
-- Increment number of windows in master
|
||||||
|
, ("M-.", sendMessage (IncMasterN 1))
|
||||||
|
-- Decrement number of windows in master
|
||||||
|
, ("M-,", sendMessage (IncMasterN (-1)))
|
||||||
|
|
||||||
|
-- Swap the focused window and the master window.
|
||||||
|
, ("M-b", nextMatch History (return True))
|
||||||
|
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
-- Basic Utils
|
-- Basic Utils
|
||||||
@ -198,7 +230,8 @@ myKeys home =
|
|||||||
-- Spawn rofi drun
|
-- Spawn rofi drun
|
||||||
, ("M-w" , spawn "rofi -show drun -theme gruvbox-dark-soft -show-icons")
|
, ("M-w" , spawn "rofi -show drun -theme gruvbox-dark-soft -show-icons")
|
||||||
, ("M-S-w" , spawn "rofi -show run -theme gruvbox-dark-soft")
|
, ("M-S-w" , spawn "rofi -show run -theme gruvbox-dark-soft")
|
||||||
|
-- Grab and Goto Windows
|
||||||
|
, ("M-g", windowPrompt def {autoComplete = Just 20000} Goto allWindows)
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
-- Scratchpads
|
-- Scratchpads
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
@ -208,7 +241,7 @@ myKeys home =
|
|||||||
-- Spawn discord scratchpad
|
-- Spawn discord scratchpad
|
||||||
, ("M-d", namedScratchpadAction myScratchPads "discord")
|
, ("M-d", namedScratchpadAction myScratchPads "discord")
|
||||||
-- Spawn keepass scratchpad
|
-- Spawn keepass scratchpad
|
||||||
, ("M-m", namedScratchpadAction myScratchPads "keepassxc")
|
, ("M-p", namedScratchpadAction myScratchPads "keepassxc")
|
||||||
-- Spawn calendar scratchpad
|
-- Spawn calendar scratchpad
|
||||||
, ("M-c", namedScratchpadAction myScratchPads "gsimplecal")
|
, ("M-c", namedScratchpadAction myScratchPads "gsimplecal")
|
||||||
-- Spawn emacs scratchpad
|
-- Spawn emacs scratchpad
|
||||||
@ -217,18 +250,18 @@ myKeys home =
|
|||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
-- Dynamic Projects
|
-- Dynamic Projects
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
--, ("M-p s", switchProjectPrompt projectsTheme)
|
--, ("M-s s", switchProjectPrompt projectsTheme)
|
||||||
--, ("M-p S", shiftToProjectPrompt projectsTheme)
|
--, ("M-s S", shiftToProjectPrompt projectsTheme)
|
||||||
, ("M-p d", switchProject (projects !! 0))
|
, ("M-s d", switchProject (projects !! 0))
|
||||||
, ("M-p S-d", shiftToProject (projects !! 0))
|
, ("M-s S-d", shiftToProject (projects !! 0))
|
||||||
, ("M-p g", switchProject (projects !! 1))
|
, ("M-s g", switchProject (projects !! 1))
|
||||||
, ("M-p S-g", shiftToProject (projects !! 1))
|
, ("M-s S-g", shiftToProject (projects !! 1))
|
||||||
|
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
-- Open Applications
|
-- Open Applications
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
-- Spawn firefox
|
-- Spawn firefox
|
||||||
, ("M-o b" , spawn "brave")
|
, ("M-o b" , spawn "qutebrowser")
|
||||||
-- Spawn lutris
|
-- Spawn lutris
|
||||||
, ("M-o l" , spawn "lutris")
|
, ("M-o l" , spawn "lutris")
|
||||||
-- Spawn steam
|
-- Spawn steam
|
||||||
@ -267,6 +300,14 @@ rmKeys keys =
|
|||||||
(myModMask .|. shiftMask, xK_q)
|
(myModMask .|. shiftMask, xK_q)
|
||||||
]
|
]
|
||||||
|
|
||||||
|
myNav2DConf = def
|
||||||
|
{ defaultTiledNavigation = sideNavigation
|
||||||
|
, floatNavigation = sideNavigation
|
||||||
|
, screenNavigation = sideNavigation
|
||||||
|
, layoutNavigation = [("Spacing Full", centerNavigation)]
|
||||||
|
, unmappedWindowRect = [("Spacing Full", singleWindowRect)]
|
||||||
|
}
|
||||||
|
|
||||||
main = do
|
main = do
|
||||||
home <- getHomeDirectory
|
home <- getHomeDirectory
|
||||||
xmproc0 <- spawnPipe "xmobar -x 0 ~/.config/xmobar/xmobarrc"
|
xmproc0 <- spawnPipe "xmobar -x 0 ~/.config/xmobar/xmobarrc"
|
||||||
@ -277,14 +318,14 @@ main = do
|
|||||||
$ ewmhFullscreen
|
$ ewmhFullscreen
|
||||||
$ withNavigation2DConfig myNav2DConf
|
$ withNavigation2DConfig myNav2DConf
|
||||||
$ navigation2DP def
|
$ navigation2DP def
|
||||||
("k", "h", "j", "l")
|
("", "u", "", "i")
|
||||||
[("M-", windowGo),
|
[("M-", screenGo),
|
||||||
("M-S-", windowSwap)]
|
("M-S-", screenSwap)]
|
||||||
False
|
False
|
||||||
$ additionalNav2DKeysP ("", "u", "", "i")
|
$ additionalNav2DKeysP ("k", "h", "j", "l")
|
||||||
[("M-", screenGo),
|
[("M-", windowGo),
|
||||||
("M-S-", screenSwap)]
|
("M-S-", windowSwap)]
|
||||||
False
|
False
|
||||||
$ def
|
$ def
|
||||||
{
|
{
|
||||||
-- Simple items
|
-- Simple items
|
||||||
|
11
bootstrap.sh
11
bootstrap.sh
@ -1,11 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Get and stow dotfiles
|
|
||||||
sudo pacman -S stow
|
|
||||||
stow .
|
|
||||||
|
|
||||||
# Get aconfmgr and apply
|
|
||||||
mkdir -p ~/.git
|
|
||||||
git clone https://github.com/CyberShadow/aconfmgr.git ~/.git/aconfmgr
|
|
||||||
cd ~/.git/aconfmgr
|
|
||||||
./aconfmgr apply
|
|
Loading…
x
Reference in New Issue
Block a user