my nixos system configuration
Find a file
2023-09-27 10:12:34 +02:00
dot_config remove typo 2023-09-26 09:01:23 +02:00
dot_emacs.d@47b716d5a6 add emacs.d as submodule 2023-09-20 23:30:50 +02:00
dot_scripts switching to chezmoi 2023-09-20 18:17:36 +02:00
private_dot_gnupg add gpg config for wsl2 integration 2023-09-20 19:05:19 +02:00
private_dot_ssh add ssh config 2023-09-27 10:12:34 +02:00
screenshots add screenshots back 2023-09-20 18:25:50 +02:00
.chezmoiignore update condition to work 2023-09-26 08:30:08 +02:00
.gitmodules add emacs.d as submodule 2023-09-20 23:30:50 +02:00
dot_bash_profile switching to chezmoi 2023-09-20 18:17:36 +02:00
dot_bashrc switching to chezmoi 2023-09-20 18:17:36 +02:00
dot_gitconfig add gitconfig 2023-09-20 18:33:18 +02:00
dot_gtkrc-2.0 switching to chezmoi 2023-09-20 18:17:36 +02:00
dot_profile add bun to profile path 2023-09-26 11:19:41 +02:00
install.sh add install.sh script for dev containers 2023-09-27 09:07:37 +02:00
packages add papirus icons and replace pipewire with pulseaudio 2023-07-03 11:51:50 +02:00
README.md update README 2023-09-20 23:31:18 +02:00

My dotfiles

These are my personal dotfiles for configuring my workstation. I use chezmoi to manage them, as it just makes managing it all way more convenient, and allows me to setup everything in one command. them to the right place.

This configuration uses git submodules in order to integrate my Emacs config in a separate repository, so make sure to initialize them before trying to install it (installation instructions below).

Installing

You could install it on any Linux distribution that you want, but I recommend Arch Linux as there is a file containing a list of required packages installable via pacman or your favorite AUR helper.

You do require chezmoi installed on your system (you can find the installation instructions here)

  • Clone the config in your home directory chezmoi init git@github.com:nezia1/dotfiles.git
  • Get into your new chezmoi directory with chezmoi cd
  • Initialize submodules with git submodule update --init
  • If you're using Arch Linux, install the packages with sudo pacman < packages or using your favorite AUR helper
  • fisher update to install fish plugins

Theme

I use catppuccin as my theme (the mocha variant). I love the soothing pastel colors. The GTK theme and the Qt5 theme are also configured to be used with supported applications.

Shell setup

I use fish as my interactive shell, but I still keep bash as my non-interactive shell for compatibility purposes, as some pieces of software that I use require the user to have a POSIX compliant shell. This is why I have a bash module, where I setup everything that I want to have non-interactively and interactively and if running interactively, have it start a fish session.

It also keeps variables set in .profile, since we're starting fish from bash.

Software used

Hyprland is configured to use a random wallpaper from the $HOME/.dotfiles directory, so you need to have your wallpapers in it.

Services and timers

The user-services module contains different systemd daemons and timers that you might or might not need depending on your specific use-case:

  • sync: a systemd timer that synchronizes my org directory using rclone to a remote called drive (runs every 5 minutes)