1
0
forked from extern/nix-config
My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
Go to file
Donovan Glover d61e7b8a31
meta: Remove gui container
Although this was cool, it created some inconveniences that I'd rather
not have to deal with. For example, opening a document required manually
copying the file to the container mount first.

Instead of containerizing a subset of GUI applications, it's likely much
easier and more effective to spin up a virtual machine of the current
system. That way all GUI applications benefit from virtualization and
not simply containerization, which caused issues when certain programs
detected that they were already open from the wayland socket.

A final benefit of this change is that which container an application is
running in is no longer ambiguous. Although it was possible to use
custom GTK themes depending on which container an application belonged
to, containers for system-installed applications tend to bring a large
amount of overhead. Only using containers for applications that deal
with untrusted inputs and have a large attack surface seems better in
this case.
2023-08-01 10:41:32 -04:00
.github/workflows ci(tests): Remove nixos-rebuild 2023-07-18 12:33:56 -04:00
assets meta: Replace go-thumbnailer with nixpkgs version 2023-06-20 09:55:34 -04:00
containers meta: Remove gui container 2023-08-01 10:41:32 -04:00
hardware meta: Import hardware 2023-06-22 10:16:38 -04:00
home hyprland: Use super+s to swap monitor workspaces 2023-07-26 18:54:30 -04:00
modules fish(abbreviations): Add git switch 2023-07-26 12:55:55 -04:00
overlays chore: Remove old overlay import 2023-07-15 12:38:38 -04:00
patches meta: Remove kitty overlay 2023-07-11 14:24:19 -04:00
specializations meta: Move DE-specific config to specializations 2023-07-10 21:12:48 -04:00
tests tests: Remove unused requires 2023-07-16 18:17:02 -04:00
.gitignore Update .gitignore 2023-05-10 22:19:36 -04:00
default.nix meta: Disable specializations by default 2023-06-22 17:31:10 -04:00
flake.lock chore: Update flake inputs 2023-07-26 18:54:46 -04:00
flake.nix meta: Use personal branches for inputs 2023-07-15 11:44:01 -04:00
LICENSE Update LICENSE 2023-04-30 19:37:54 -04:00
README.md docs: Add specializations to readme 2023-06-22 17:16:34 -04:00
setup.nix containers: Add fcitx support 2023-07-10 21:56:25 -04:00
treefmt.toml treefmt: Exclude hardware directory 2023-06-22 08:00:13 -04:00

nix-config

My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.

Features

  • Clean, readable code that can be easily modified to add/remove things as needed.
  • Fully reproducible and declarative environment thanks to NixOS.
  • Reasonably secure containers isolated from your personal files and network.
  • Nix Flakes + Home Manager + Btrfs on LUKS.
  • Simple yet effective Neovim setup with nvim-lspconfig.
  • Modern Wayland support with Hyprland and the master-stack layout.
  • Full Japanese support with fonts, input method, and wine covered.
  • Specializations for easy switching between Hyprland, GNOME, and Plasma.
  • A universal color scheme inherited by all applications.

Usage

git clone https://github.com/donovanglover/nix-config && cd nix-config
nixos-rebuild build-vm --flake .#nixos
./result/bin/run-nixos-vm

The code base is designed to be small so it's easy to adjust things as needed. Have fun!