Skip to content

Latest commit

 

History

992 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Linux scripts

CI CodeQL codecov

This repository contains some GNU/Linux scripts I've found useful. For my Linux instructions, please see my website at agx.fi.

Repository structure

  • android: Scripts for working with Android devices. Firmware flashing, backup, app installation etc.
  • apt: Software installation for Ubuntu-based systems. Includes also Flatpak and Snap.
  • backup: Backup scripts
  • crypto: Cryptocurrency mining
  • drivers: Scripts for installing drivers
  • games: Scripts for installing and configuring games and emulators
  • git: Git configs and scripts, e.g. pull.py for pulling all repositories in ~/Git
  • i3: i3 window manager configs
  • images: Scripts for converting images
  • iperf: Scripts for measuring network performance
  • kde: KDE Plasma configs
  • librenms: LibreNMS configs
  • luks-tpm: Scripts for unlocking LUKS encrypted volumes with TPM
  • neovim: Neovim configs
  • obs-studio: OBS Studio configs
  • opentabletdriver: Graphics tablet driver configs
  • pgp: PGP configs
  • physics: Scripts for installing and configuring various software for physics research
  • proxmox: Proxmox hypervisor configs
  • samba: Scripts for configuring a Samba Active Directory domain member
  • ssh: SSH configs. ssh/config.d/ is symlinked to ~/.ssh/config.d/.
  • startup: startup scripts. agx_startup.py is run as root by agx-startup.service, and agx-user-startup.sh is run by agx-user-startup.desktop as the current user.
  • testing: Performance and reliability testing scripts
  • tests: Unit tests for the scripts in this repository
  • tmux: tmux terminal multiplexer configs
  • usbip: USB/IP configs for passing USB devices over IP
  • virtualbox: VirtualBox maintenance scripts
  • vscodium: VSCodium configs for e.g. SSH remoting
  • wacom: Custom script for configuring Wacom tablets. Requires X11 and doesn't work on Wayland. Use Kubuntu's settings GUI or the configs in opentabletdriver/ instead.
  • wireguard: WireGuard configs, e.g. autostart script
  • xournalpp: Xournal++ configs. Symlinked to Xournal++'s config directory.
  • zsh: zsh configs, e.g. zsh/.zshrc, which is symlinked to ~/.zshrc, and zsh/custom/, which contains custom zsh commands.

Configs

These can be symlinked to ~/ where needed.

  • .bashrc: Bash configuration that switches to zsh. For environments where it's not possible to change the login shell with chsh.
  • .gdbinit: GDB (GNU Debugger) config
  • .profile: Config for login shells
  • .xprofile: Config for X11 sessions

Scripts

  • kernel_remover.py: Remove old kernel versions
  • kubuntu_release_upgrade.sh: Kubuntu release upgrade script, with proper logging
  • maintenance.sh: General system maintenance script. (Calls maintennace_sudo.sh, which calls maintenance.py.)
  • modem.py: Script for configuring the integrated WWAN modem of ThinkPad laptops

Python environment

The Python dependencies are managed with uv. Run uv sync to create the virtual environment in .venv/, and uv run pytest to run the unit tests.

Licensing

FOSSA Status

Releases

Packages

Used by

Contributors

Languages