my nixos system configuration
Find a file
Anthony Rodriguez a3c356c3c6
treewide: switch to hyprland
I've decided to switch to Hyprland again, after having issues with Niri,
especially with XWayland apps. It also has better and more widespread integration with other pieces of software that I use/plan to use.

commit 5a42498391
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 16:59:37 2024 +0100

    modules/theme: update fuzzel selection colors

commit f3386f5b0a
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 16:53:57 2024 +0100

    system/services/greetd: enable gnome keyring

commit c1caf6d844
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 16:51:24 2024 +0100

    modules/themes: switch to phinger-cursors, update border colors

commit aa7a00d330
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 14:54:43 2024 +0100

    hosts/solaire: switch to hyprland

commit 7c7a332a3e
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 14:54:34 2024 +0100

    modules/theme: set default theme to catppuccin (again)

commit 471c6b5503
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 14:54:24 2024 +0100

    flake: add hyprwm-contrib for grimslurp

commit 04914eab73
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 14:54:09 2024 +0100

    system/services/greetd: switch to hyprland as compositor (thanks jacekpoz)

commit d185864012
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 14:52:56 2024 +0100

    home/services/swaync: remove unused variables

commit 75ff00b2e2
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 14:52:43 2024 +0100

    home/programs/waybar: add hyprland workspaces

commit b36b3abf53
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 14:52:31 2024 +0100

    home/programs/hypr: add basic hyprland configuration

commit cdda6bf2bc
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 12:03:53 2024 +0100

    system/programs: add hyprland module

commit ef36f7be36
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 12:03:43 2024 +0100

    flake: add hyprland and cachix

commit cdbcd8d1bd
Author: Anthony Rodriguez <anthony@nezia.dev>
Date:   Fri Dec 13 12:03:37 2024 +0100

    system/nix: add wheel to trusted users
2024-12-13 19:02:53 +01:00
home treewide: switch to hyprland 2024-12-13 19:02:53 +01:00
hosts treewide: switch to hyprland 2024-12-13 19:02:53 +01:00
lib treewide: implement notifications with swaync 2024-11-26 15:47:10 +01:00
modules treewide: switch to hyprland 2024-12-13 19:02:53 +01:00
nodes nodes: use ipv4 for anastacia 2024-12-03 09:22:53 +01:00
pkgs treewide: use ankama-launcher from nixpkgs 2024-12-09 20:29:36 +01:00
secrets treewide: fix deploy issues 2024-11-15 19:49:20 +01:00
system treewide: switch to hyprland 2024-12-13 19:02:53 +01:00
wallpapers add different wallpapers for desktop and laptop 2024-08-27 18:23:43 +02:00
.envrc repo: add .envrc 2024-10-21 19:08:05 +02:00
.gitignore repo: add .envrc 2024-10-21 19:08:05 +02:00
flake.lock treewide: switch to hyprland 2024-12-13 19:02:53 +01:00
flake.nix treewide: switch to hyprland 2024-12-13 19:02:53 +01:00
LICENSE LICENSE: update to GPL-3.0 2024-11-21 18:21:46 +01:00
README.md readme: add credits 2024-11-08 17:38:28 +01:00
treefmt.nix flake: move away from flake-parts (remove unnecessary abstractions) 2024-10-22 11:56:48 +02:00

❄️ flocon

My NixOS configurations, using flakes.

</> Software I use

Additionally using a lot of other software you can find in the configuration files.

🛠️ Structure

Name Description
home Home manager configuration
hosts Host-specific
lib Helper functions
modules NixOS modules
pkgs Custom packages
system NixOS configuration

My configuration is structured based on the following principles:

  1. Hosts should be the main entry points and outputs.
  2. Abstractions should be avoided as much as possible.

The bulk of the configuration can be found either in home or system, which declares most of my programs, with some extra Nix code in lib and custom modules, mostly for convenience and to provide a way to globally set styles and themes for now.

My hosts can then pick and choose the programs and configurations that they need from the other directories. If the need arises for a more modular setup for a specific piece of software (ie. having different flavors of Firefox per host), I will write a custom module for it. This helps to avoid unnecessarily abstracting my configuration, as I don't find it necessary for the most part, and I would also like it to remain as simple as possible.

👥 Credits

People / repositories I have copied / learned from:

Some bits have also been borrowed from within the configuration, and credit has been given where its due.