n1ete / dotkob

Configuration for Arch Linux, sway, kitty, kakoune, zsh and more + scripted installation guide

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

~/.dotfiles

screenshot

Some of the worthy tools that I use, develop or help maintain:

  • sway (window manager) + waybar (status bar)
  • kitty (fast GPU-accelerated terminal)
  • kakoune (modular text editor with multiple cursors)
  • zsh + powerlevel10k and various other plugins
  • yubikey-touch-detector - a tool that can detect when your YubiKey is waiting for a touch.
  • browserpass - browser extension for pass and gopass.
  • wire-desktop - end-to-end encrypted chat app.
  • wluma - automatic brightness adjustment based on screen contents.
  • wl-clipboard-manager - clipboard manager for Wayland.
  • ttf-joypixels - latest JoyPixels font that provides colorful emojis for almost all apps on Linux (formerly EmojiOne).
  • aurutils - the most reasonable AUR helper out there.
  • nnn - extremely fast file manager.
  • grub-btrfs + snap-pac-grub - take btrfs snapshots during system update and add them to GRUB.

Fun things you can find in this repo:

☑ A common color scheme for kakoune, terminal and sway itself.

It is called Gruvbox dark.

☑ Unobtrusive and minimalistic design of sway, waybar and terminal.

Display only actionable items, use color to highlight importance, slightly dim inactive windows.

☑ True Color support everywhere.

Including kitty, kakoune; terminal can even display picture previews.

☑ Almost instant terminal startup.

And yet it is empowered with antigen, prezto, powerlevel10k and other plugins.

☑ More secure gpg and ssh configuration.

Stronger algorithms, more sensible defaults.

☑ gpg-agent configured to act as ssh-agent.

Extremely nicely integrated with YubiKey, with forwarding to selected remote hosts.

☑ sway automatically renames workspaces to show currently opened apps.

Using iconic font to fit a lot of info even on laptop screens.

☑ Automatically change terminal's background color based on the ssh host.

Terminal turns red when you are on production, yellow on staging, etc.

☑ Automatically adjust brightness level based on screen contents and amount of ambient light around.

Useful for working at night, e.g. by dimming screen when switching from a dark terminal to a bright browser.

☑ Automatically backup the list of installed packages (pacman and AUR).

These files are used to bootstrap the new system, all apps are installed in one command.

☑ Setup script that configures user and system dotfiles, systemd services and other little things.

This script is safe to re-run at any time.

☑ Arch Linux installation script.

Fully automated script that installs Arch Linux from scratch and configures it exactly as I like.

☑ btrfs snapshots for easy system recovery.

Snapshots are automatically taken before and after each pacman transaction and added to GRUB.

Usage:

$ git clone https://github.com/maximbaz/dotfiles.git ~/.dotfiles
$ ~/.dotfiles/setup-system.sh
$ ~/.dotfiles/setup-user.sh

System recovery

In case system doesn't boot:

  1. Boot in a recent snapshot that works

  2. Make it the default snapshot

    # cd /mnt/btrfs-root/
    # mv root root-bak
    # btrfs subvolume snapshot snapshots/NN/snapshot root
    
  3. Reboot

About

Configuration for Arch Linux, sway, kitty, kakoune, zsh and more + scripted installation guide

License:MIT License


Languages

Language:Shell 75.5%Language:Python 17.0%Language:Lua 4.9%Language:CSS 0.9%Language:Dockerfile 0.7%Language:JavaScript 0.5%Language:Makefile 0.5%Language:HTML 0.0%