My personal linux configuration files (dotfiles). These include custom full-fledged ZSH configuration, vim config, many handy aliases and other things.
Go to file
2024-10-13 23:36:00 +02:00
firefox Add some of yokoffing's ublock filter lists 2023-06-07 20:15:12 +02:00
guides Major rewrite: switching back to Arch from NixOS 2024-10-02 14:48:26 +02:00
home Add support for init script to hyprland-monitord 2024-10-13 23:36:00 +02:00
root Make docker use btrfs 2024-10-13 23:17:13 +02:00
.gitmodules Add tmux configuration 2023-04-27 13:28:05 +02:00
install_gui.sh Major rewrite: switching back to Arch from NixOS 2024-10-02 14:48:26 +02:00
install_root.sh Add arch-audit 2024-10-04 14:04:12 +02:00
install_user.sh Major rewrite: switching back to Arch from NixOS 2024-10-02 14:48:26 +02:00
LICENSE Initial commit 2022-11-20 03:14:18 +01:00
README.md Major rewrite: switching back to Arch from NixOS 2024-10-02 14:48:26 +02:00
sync.py Don't use check=True for git diff (ends with code 1) 2023-10-10 20:56:02 +02:00

Dotfiles

Welcome to my personal dotfiles repository! Simply put, this is a complete collection of my system configuration files, mostly just here for my personal use, but of course, you're free to take anything you like (as long as you follow the license.

Images

What everyone is here for!

My WM and EWW bar https://user-images.githubusercontent.com/20902250/202879948-f5d79f70-72ff-4cae-97aa-da9a863ac688.mp4

Prompt timing showcase image

Terminal color scheme showcase image

Unknown command package handler image

Features

  • Full fledged ZSH configuration without relying on oh-my-zsh
  • Fully custom terminal prompt with a lot of neat features, such as CWD shortening, showing git status, seeing how long a command ran for, showing non-zero exit codes, ... prompt
  • A ton of neat and helpful aliases and functions (probably too many for most people, you should adjust these to your needs)
  • Sensible pre-defined environment variables, allowing for
    • Colorful man pages using LESS_TERMCAP, or if bat is installed, using it as MANPAGER directly
    • XDG user directory related variables, making programs use the proper directories, avoiding clutter in $HOME
  • Tons of handy scripts for automatic common tasks:
    • incremental-backup: Simple and minimalistic way to utilize rsync for fast and efficient backups (utilizing hard-links), for any directories, or even for the entire system.
    • btrfs-backup: Simple yet very powerful script to manage btrfs snapshots. I recommend using this in a cron job for taking automatic snapshots.
    • auto-chroot: Quick way to chroot into any accesible linux system, without typing the repetetive mount/umount commands. Allows for selecting user and shell to be used.
    • tamper-check: Script that uses checksums to verify that contents of specified system-critical files haven't changed (be aware that they will obviously change if they're updated)
    • gh-notification: Script expected to be ran as cron-job every few minutes, checking for new github notifications using github CLI (requies meiji163/gh-notify gh-cli extension) and sending them out as actual desktop notifications.
    • brightness: Script to quickly change the screen brightness
    • setbg: Simple way to pick a background to be used (both for X11 and Wayland)
    • Tons of other things! The list is just way too long, check the rest yourself! system scripts, user scripts

On top of just configurations, this repository also includes a guides/ directory with a bunch of guide posts that can help you set up arch from ground up, or set up specific things after installation.

Installation

Clone this repository anywhere you like

git https://github.com/ItsDrike/dotfiles

If you don't want to use git (running straight from newly installed OS), you can even use curl:

curl -LJO https://github.com/ItsDrike/dotfiles/tarball/main

And extract from .tar.gz archive with: tar xvf [archive name]

Attribution

The open-source community has an incredible amount of resources that people have freely provided to others and we all depend on these projects in many ways. This collection of configuration files is no exception, and while many of the scripts and configuration files are my own, many others were partially, or even fully taken from other open-sourced repositories like this.

For that reason, we'd like to thank all of these communities and projects for keeping their content open and available to everyone, but most notably we'd like to thank and reference the significant projects that allowed this repository to be as amazing as it is now: