summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Stachurski <j.stachurski@student.utwente.nl>2025-03-29 23:09:38 +0100
committerJakub Stachurski <j.stachurski@student.utwente.nl>2025-03-29 23:09:38 +0100
commit2e37bf1533ace5b2d4d50196300133d9e72d2952 (patch)
tree0c06f4f03599933bb3d0e31620203287ca67c7c0
parent2418424adabca0a1616cca4920221cd67149b65a (diff)
flakes update feat. xfce
-rw-r--r--home-manager/electron_overlay.nix25
-rw-r--r--home-manager/flake.lock117
-rw-r--r--home-manager/flake.nix59
-rw-r--r--home-manager/fmod/default.nix29
-rw-r--r--home-manager/home.nix218
-rw-r--r--home-manager/home/default.nix17
-rw-r--r--home-manager/home/session_vars.nix15
-rw-r--r--home-manager/home/theming.nix (renamed from home-manager/theming.nix)1
-rw-r--r--home-manager/kitty.nix0
-rw-r--r--home-manager/modules/apps/default.nix54
-rw-r--r--home-manager/modules/apps/desktop/default.nix3
-rw-r--r--home-manager/modules/apps/desktop/hyprland.nix (renamed from home-manager/hyprland.nix)11
-rw-r--r--home-manager/modules/apps/nvim/default.nix4
-rw-r--r--home-manager/modules/apps/zsh.nix24
-rw-r--r--home-manager/modules/default.nix8
-rw-r--r--home-manager/modules/services/default.nix3
-rw-r--r--home-manager/modules/services/syncthing.nix (renamed from home-manager/syncthing.nix)0
-rw-r--r--home-manager/neovim.nix94
-rw-r--r--home-manager/xdg.nix9
-rw-r--r--nixos/common/default.nix67
-rw-r--r--nixos/common/services.nix (renamed from nixos/services.nix)3
-rw-r--r--nixos/configuration.nix314
-rw-r--r--nixos/desktop/apps.nix8
-rw-r--r--nixos/desktop/default.nix54
-rw-r--r--nixos/desktop/hyprland.nix44
-rw-r--r--nixos/desktop/xfce.nix26
-rw-r--r--nixos/flake.lock49
-rw-r--r--nixos/flake.nix36
-rw-r--r--nixos/home-manager.nix4
-rw-r--r--nixos/hosts/crank-vm/default.nix20
-rw-r--r--nixos/hosts/crank-vm/hardware-configuration.nix65
-rw-r--r--nixos/hosts/icetea-dispenser/GrubBG.png (renamed from nixos/GrubBG.png)bin4109858 -> 4109858 bytes
-rw-r--r--nixos/hosts/icetea-dispenser/default.nix40
-rw-r--r--nixos/hosts/icetea-dispenser/hardware-configuration.nix (renamed from nixos/hardware-configuration.nix)0
l---------result1
35 files changed, 724 insertions, 698 deletions
diff --git a/home-manager/electron_overlay.nix b/home-manager/electron_overlay.nix
deleted file mode 100644
index d91eba0..0000000
--- a/home-manager/electron_overlay.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-self:
-let
- enableWayland = drv: bin: drv.overrideAttrs (
- old: {
- nativeBuildInputs = (old.nativeBuildInputs or []) ++ [ self.makeWrapper ];
- postFixup = (old.postFixup or "") + ''
- wrapProgram $out/bin/${bin} \
- --add-flags "--enable-features=UseOzonePlatform" \
- --add-flags "--ozone-platform=wayland"
- '';
- }
- );
-in
-super:
- {
- # slack = enableWayland super.slack "slack";
- discord = enableWayland super.discord "discord";
- vencord = enableWayland super.vesktop "vesktop";
- # vscode = enableWayland super.vscode "code";
- # google-chrome-beta = (
- # super.google-chrome-beta.override {
- # commandLineArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
- # }
- # );
- }
diff --git a/home-manager/flake.lock b/home-manager/flake.lock
new file mode 100644
index 0000000..0f1ec4d
--- /dev/null
+++ b/home-manager/flake.lock
@@ -0,0 +1,117 @@
+{
+ "nodes": {
+ "flake-utils": {
+ "inputs": {
+ "systems": "systems"
+ },
+ "locked": {
+ "lastModified": 1731533236,
+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "home-manager": {
+ "inputs": {
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1742655702,
+ "narHash": "sha256-jbqlw4sPArFtNtA1s3kLg7/A4fzP4GLk9bGbtUJg0JQ=",
+ "owner": "nix-community",
+ "repo": "home-manager",
+ "rev": "0948aeedc296f964140d9429223c7e4a0702a1ff",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "ref": "release-24.11",
+ "repo": "home-manager",
+ "type": "github"
+ }
+ },
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 1742751704,
+ "narHash": "sha256-rBfc+H1dDBUQ2mgVITMGBPI1PGuCznf9rcWX/XIULyE=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "f0946fa5f1fb876a9dc2e1850d9d3a4e3f914092",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-24.11",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixpkgs-stable": {
+ "locked": {
+ "lastModified": 1742751704,
+ "narHash": "sha256-rBfc+H1dDBUQ2mgVITMGBPI1PGuCznf9rcWX/XIULyE=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "f0946fa5f1fb876a9dc2e1850d9d3a4e3f914092",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-24.11",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixpkgs-unstable": {
+ "locked": {
+ "lastModified": 1742889210,
+ "narHash": "sha256-hw63HnwnqU3ZQfsMclLhMvOezpM7RSB0dMAtD5/sOiw=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "698214a32beb4f4c8e3942372c694f40848b360d",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "root": {
+ "inputs": {
+ "flake-utils": "flake-utils",
+ "home-manager": "home-manager",
+ "nixpkgs": "nixpkgs",
+ "nixpkgs-stable": "nixpkgs-stable",
+ "nixpkgs-unstable": "nixpkgs-unstable"
+ }
+ },
+ "systems": {
+ "locked": {
+ "lastModified": 1681028828,
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+ "owner": "nix-systems",
+ "repo": "default",
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-systems",
+ "repo": "default",
+ "type": "github"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/home-manager/flake.nix b/home-manager/flake.nix
new file mode 100644
index 0000000..f68b20f
--- /dev/null
+++ b/home-manager/flake.nix
@@ -0,0 +1,59 @@
+{
+ description = "Home-manager configuration";
+
+ nixConfig = {
+ experimental-feature = ["nix-command" "flakes"];
+ };
+ inputs = {
+ nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
+ nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.11";
+ nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
+ flake-utils.url = "github:numtide/flake-utils";
+ home-manager = {
+ url = "github:nix-community/home-manager/release-24.11";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
+ };
+
+
+
+ outputs = {self, nixpkgs, nixpkgs-stable, nixpkgs-unstable, flake-utils, home-manager, ... }@inputs:
+ let
+ inherit (self) outputs;
+
+ pkgsForSystem = system: nixpkgsSource: import nixpkgsSource {
+ inherit system;
+ };
+ HomeConfiguration = args:
+ let
+ nixpkgs = args.nixpkgs or nixpkgs-stable;
+ in
+ home-manager.lib.homeManagerConfiguration {
+ modules = [
+ (import ./home )
+ (import ./modules )
+ ];
+ extraSpecialArgs = {
+ inherit (args) nixpkgs;
+ } // args.extraSpecialArgs;
+ pkgs = pkgsForSystem (args.system or "x86_64-linux") nixpkgs;
+ };
+
+
+ in flake-utils.lib.eachSystem [
+ "x86_64-linux"
+ ] (system: {
+ legacyPackages = pkgsForSystem system nixpkgs;
+ }) // {
+ # overlays = import ./overlays {inherit inputs;};
+ homeConfigurations = {
+ "wilkuu" = HomeConfiguration {
+ extraSpecialArgs = {
+ };
+
+ };
+ };
+ inherit home-manager;
+ inherit (home-manager) packages;
+ };
+}
diff --git a/home-manager/fmod/default.nix b/home-manager/fmod/default.nix
deleted file mode 100644
index 1c9e942..0000000
--- a/home-manager/fmod/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{stdenv, fetchurl }:
-
-stdenv.mkDerivation {
- name = "fmod-42204";
- src = if (stdenv.system == "i686-linux") then
- fetchurl {
- url = "http://www.fmod.org/index.php/release/version/fmodapi42204linux.tar.gz";
- sha256 = "64eedc5b37c597eb925de446106d75cab0b5a79697d5ec048d34702812c08563";
- } else if (stdenv.system == "x86_64-linux") then
- fetchurl {
- url = "http://www.fmod.org/index.php/release/version/fmodapi42204linux64.tar.gz";
- sha256 = "3f2eec8265838a1005febe07c4971660e85010e4622911890642dc438746edf3";
- } else throw "unsupported platform ${stdenv.system} (only i686-linux and x86_64 linux supported yet)";
-
- preInstall = ''
- sed -e /ldconfig/d -i Makefile
- sed -e s@/usr/local@$out@ -i Makefile
- sed -e s@/include/fmodex@/include@ -i Makefile
- mkdir -p $out/lib
- mkdir -p $out/include
- '';
-
- meta = {
- homepage = "http://www.fmod.org/";
- description = "Programming library and toolkit for the creation and playback of interactive audio";
- license = "unfree";
- };
-}
-
diff --git a/home-manager/home.nix b/home-manager/home.nix
deleted file mode 100644
index 243c6d1..0000000
--- a/home-manager/home.nix
+++ /dev/null
@@ -1,218 +0,0 @@
-{ config, pkgs, ... }:
-
-{
- imports = [ ./hyprland.nix ./syncthing.nix ./theming.nix ./neovim.nix ./xdg.nix];
- nixpkgs.config.allowUnfree = true;
- nixpkgs.overlays = [
- (import ./electron_overlay.nix)
- # (import (builtins.fetchTarball {
- # url = "https://github.com/nix-community/neovim-nightly-overlay/archive/master.tar.gz";
- # }))
- ];
- # Home Manager needs a bit of information about you and the paths it should
- # manage.
- home.username = "wilkuu";
- home.homeDirectory = "/home/wilkuu";
-
- # This value determines the Home Manager release that your configuration is
- # compatible with. This helps avoid breakage when a new Home Manager release
- # introduces backwards incompatible changes.
- #
- # You should not change this value, even if you update Home Manager. If you do
- # want to update the value, then make sure to first check the Home Manager
- # release notes.
- home.stateVersion = "23.11"; # Please read the comment before changing.
-
- # The home.packages option allows you to install Nix packages into your
- # environment.
- home.packages = with pkgs; [
- # Environment
- hyprpolkitagent
- hyprsunset
- xdg-desktop-portal-kde
- xdg-desktop-portal-hyprland
- minecraftia
- inconsolata-nerdfont
- # Utils
- networkmanagerapplet
- blueman
- htop
- pwvucontrol
- wl-clipboard
- xdg-user-dirs
- hyprshot
- mako
- speedcrunch
- unzip
- ripgrep
- glib
- gwenview
-
- # Connectivity
- firefox
- floorp
- thunderbird
- element-desktop
-
- # File management
- pcmanfm
- xarchiver
- filelight
- ranger
- libsForQt5.kdeconnect-kde
- sshfs
-
- #Productivity
- libreoffice-qt6-fresh
- zathura
- obsidian
-
- # Artistic
- krita
- kdenlive
-
- # Web
- hugo
-
- # Scripting
- python3
-
- # php
- php83Packages.composer
- php
-
- # java
- openjdk17-bootstrap
- gradle
-
- # Shell
- zsh
- alacritty
-
- # Entertainment
- spotify
- prismlauncher
- ani-cli
- vlc
- openttd
- fluent-reader
-
- # Finance
- gnucash
- # SRS
- anki-bin
- mpv
-
- # Electronics
-
- gst_all_1.gstreamer
- # Common plugins like "filesrc" to combine within e.g. gst-launch
- gst_all_1.gst-plugins-base
- # Specialized plugins separated by quality
- gst_all_1.gst-plugins-good
- gst_all_1.gst-plugins-bad
- gst_all_1.gst-plugins-ugly
- # Plugins to reuse ffmpeg to play almost every video format
- gst_all_1.gst-libav
- # Support the Video Audio (Hardware) Acceleration API
- gst_all_1.gst-vaapi
-
- #Theme
- qt6Packages.qt6ct
- kdePackages.qtstyleplugin-kvantum
- (catppuccin-kvantum.override {
- accent = "pink";
- variant = "mocha";
- })
-
-
- # # Adds the 'hello' command to your environment. It prints a friendly
- # # "Hello, world!" when run.
- # pkgs.hello
-
- # # It is sometimes useful to fine-tune packages, for example, by applying
- # # overrides. You can do that directly here, just don't forget the
- # # parentheses. Maybe you want to install Nerd Fonts with a limited number of
- # # fonts?
- # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
-
- # # You can also create simple shell scripts directly inside your
- # # configuration. For example, this adds a command 'my-hello' to your
- # # environment:
- # (pkgs.writeShellScriptBin "my-hello" ''
- # echo "Hello, ${config.home.username}!"
- # '')
-
- ];
-
- # Home Manager is pretty good at managing dotfiles. The primary way to manage
- # plain files is through 'home.file'.
- home.file = {
- # # Building this configuration will create a copy of 'dotfiles/screenrc' in
- # # the Nix store. Activating the configuration will then make '~/.screenrc' a
- # # symlink to the Nix store copy.
- # ".screenrc".source = dotfiles/screenrc;
-
- # # You can also set the file content immediately.
- # ".gradle/gradle.properties".text = ''
- # org.gradle.console=verbose
- # org.gradle.daemon.idletimeout=3600000
- # '';
- };
-
- # Home Manager can also manage your environment variables through
- # 'home.sessionVariables'. These will be explicitly sourced when using a
- # shell provided by Home Manager. If you don't want to manage your shell
- # through Home Manager then you have to manually source 'hm-session-vars.sh'
- # located at either
- #
- # ~/.nix-profile/etc/profile.d/hm-session-vars.sh
- #
- # or
- #
- # ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh
- #
- # or
- #
- # /etc/profiles/per-user/wilkuu/etc/profile.d/hm-session-vars.sh
- #
- home.sessionVariables = {
- EDITOR = "nvim";
- XDG_SESSION_TYPE = "wayland";
- GDK_BACKEND = "wayland";
- GTK_USE_PORTAL = "1";
- QT_QPA_PLATFORM = "wayland";
- QT_STYLE_OVERRIDE = "kvantum";
- QT_QPA_PLATFORM_THEME = "kvantum";
- QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
- QT_AUTO_SCREEN_SCALE_FACTOR = "1";
- MOZ_ENABLE_WAYLAND = "1";
- };
-
-
- programs.zsh = {
- enable = true;
- enableCompletion = true;
- oh-my-zsh = {
- enable = true;
- theme = "clean";
- };
- plugins = [
- {
- name = "zsh-nix-shell";
- file = "nix-shell.plugin.zsh";
- src = pkgs.fetchFromGitHub {
- owner = "chisui";
- repo = "zsh-nix-shell";
- rev = "v0.8.0";
- sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
- };
- }
- ];
- };
-
-
- # Let Home Manager install and manage itself.
- programs.home-manager.enable = true;
-
-}
diff --git a/home-manager/home/default.nix b/home-manager/home/default.nix
new file mode 100644
index 0000000..ed3c564
--- /dev/null
+++ b/home-manager/home/default.nix
@@ -0,0 +1,17 @@
+{pkgs, ...}: {
+ imports = [
+ #./hyprland.nix
+ #./syncthing.nix
+ ./theming.nix
+ #./neovim.nix
+ #./xdg.nix
+ ];
+
+ nixpkgs.config.allowUnfree = true;
+
+
+ home.username = "wilkuu";
+ home.homeDirectory = "/home/wilkuu";
+ home.stateVersion = "24.11";
+ programs.home-manager.enable = true;
+}
diff --git a/home-manager/home/session_vars.nix b/home-manager/home/session_vars.nix
new file mode 100644
index 0000000..3ba8a7d
--- /dev/null
+++ b/home-manager/home/session_vars.nix
@@ -0,0 +1,15 @@
+ {config, ...}:
+ {
+ home.sessionVariables = {
+ EDITOR = "nvim";
+ #XDG_SESSION_TYPE = "wayland";
+ #GDK_BACKEND = "wayland";
+ GTK_USE_PORTAL = "1";
+ #QT_QPA_PLATFORM = "wayland";
+ QT_STYLE_OVERRIDE = "kvantum";
+ QT_QPA_PLATFORM_THEME = "kvantum";
+ #QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
+ #QT_AUTO_SCREEN_SCALE_FACTOR = "1";
+ #MOZ_ENABLE_WAYLAND = "1";
+ };
+}
diff --git a/home-manager/theming.nix b/home-manager/home/theming.nix
index db2c9db..45a09a6 100644
--- a/home-manager/theming.nix
+++ b/home-manager/home/theming.nix
@@ -40,3 +40,4 @@ in
};
}
+
diff --git a/home-manager/kitty.nix b/home-manager/kitty.nix
deleted file mode 100644
index e69de29..0000000
--- a/home-manager/kitty.nix
+++ /dev/null
diff --git a/home-manager/modules/apps/default.nix b/home-manager/modules/apps/default.nix
new file mode 100644
index 0000000..afb7ea3
--- /dev/null
+++ b/home-manager/modules/apps/default.nix
@@ -0,0 +1,54 @@
+{lib, pkgs, ...}:
+with lib;
+{
+ imports = [
+ ./nvim
+ ./desktop
+ ./zsh.nix
+ ];
+
+ # Stuff that is to be sorted to its appropriate files
+ # If no appropriate category is found or thought of, put it in misc.nix
+ home.packages = with pkgs; [
+ speedcrunch
+ htop
+ btop
+ nmap
+ dig
+ ripgrep
+ unzip
+ unrar
+ xdg-user-dirs
+ thunderbird
+ element-desktop
+ filelight
+ libreoffice
+ evince
+ obsidian
+ krita
+ hugo
+ qalculate-qt
+
+ spotify
+ prismlauncher
+ ani-cli
+ vlc
+ mpv
+ openttd
+ anki-bin
+
+ #Theme
+ qt6Packages.qt6ct
+ kdePackages.qtstyleplugin-kvantum
+ (catppuccin-kvantum.override {
+ accent = "pink";
+ variant = "mocha";
+ })
+
+
+ # Do i need this?
+ php
+ php83Packages.composer
+
+ ];
+}
diff --git a/home-manager/modules/apps/desktop/default.nix b/home-manager/modules/apps/desktop/default.nix
new file mode 100644
index 0000000..4bc7478
--- /dev/null
+++ b/home-manager/modules/apps/desktop/default.nix
@@ -0,0 +1,3 @@
+{lib, ...}: with lib; {
+ imports = [ ./hyprland.nix ];
+}
diff --git a/home-manager/hyprland.nix b/home-manager/modules/apps/desktop/hyprland.nix
index 3b1e4fa..5142f40 100644
--- a/home-manager/hyprland.nix
+++ b/home-manager/modules/apps/desktop/hyprland.nix
@@ -1,4 +1,4 @@
-{config, pkgs, ...}:
+{cfg, lib, ...}:
{
# Hyprland
wayland.windowManager.hyprland = {
@@ -15,7 +15,11 @@
"blueman-applet &"
"hyprctl setcursor Catppuccin-Mocha-Dark-Cursors 24"
"kdeconnect-indicator &"
- ] ++ ["uwsm finalize QT_QPA_PLATFORM QT_PLUGIN_PATH"];
+ ] ++ [
+ "systemctl --user start hypridle.service"
+ "systemctl --user start hyprpaper.service"
+ "uwsm finalize QT_QPA_PLATFORM QT_PLUGIN_PATH"
+ ];
general = {
gaps_in = 3;
gaps_out = 8;
@@ -233,4 +237,5 @@
}
];
};
-}
+
+}
diff --git a/home-manager/modules/apps/nvim/default.nix b/home-manager/modules/apps/nvim/default.nix
new file mode 100644
index 0000000..0505f78
--- /dev/null
+++ b/home-manager/modules/apps/nvim/default.nix
@@ -0,0 +1,4 @@
+{pkgs, ...}:
+{
+ # TODO
+}
diff --git a/home-manager/modules/apps/zsh.nix b/home-manager/modules/apps/zsh.nix
new file mode 100644
index 0000000..7a940e6
--- /dev/null
+++ b/home-manager/modules/apps/zsh.nix
@@ -0,0 +1,24 @@
+{config ,pkgs, ...}: {
+ programs.zsh = {
+ enable = true;
+ enableCompletion = true;
+ oh-my-zsh = {
+ enable = true;
+ theme = "clean";
+ };
+ plugins = [
+ {
+ name = "zsh-nix-shell";
+ file = "nix-shell.plugin.zsh";
+ src = pkgs.fetchFromGitHub {
+ owner = "chisui";
+ repo = "zsh-nix-shell";
+ rev = "v0.8.0";
+ sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
+ };
+ }
+ ];
+ };
+
+
+}
diff --git a/home-manager/modules/default.nix b/home-manager/modules/default.nix
new file mode 100644
index 0000000..040dee8
--- /dev/null
+++ b/home-manager/modules/default.nix
@@ -0,0 +1,8 @@
+{lib, ...}:
+with lib;
+{
+ imports = [
+ ./apps
+ #./service
+ ];
+}
diff --git a/home-manager/modules/services/default.nix b/home-manager/modules/services/default.nix
new file mode 100644
index 0000000..a0f8310
--- /dev/null
+++ b/home-manager/modules/services/default.nix
@@ -0,0 +1,3 @@
+{lib, ...}: {
+ imports = [ ./syncthing.nix];
+}
diff --git a/home-manager/syncthing.nix b/home-manager/modules/services/syncthing.nix
index f917d86..f917d86 100644
--- a/home-manager/syncthing.nix
+++ b/home-manager/modules/services/syncthing.nix
diff --git a/home-manager/neovim.nix b/home-manager/neovim.nix
deleted file mode 100644
index 7b1554e..0000000
--- a/home-manager/neovim.nix
+++ /dev/null
@@ -1,94 +0,0 @@
-{ pkgs, config, ...}:
-let
- unstable = import <nixos-unstable> {};
- treesitterWithGrammars = (unstable.vimPlugins.nvim-treesitter.withPlugins (p : [
- p.bash
- p.comment
- p.css
- p.dockerfile
- p.gitattributes
- p.gitignore
- p.go
- p.gomod
- p.gowork
- p.rust
- p.javascript
- p.typescript
- p.json5
- p.json
- p.lua
- p.markdown
- p.nix
- p.python
- p.java
- p.rust
- p.toml
- p.vue
- p.yaml
- p.php
- p.latex
- ]));
- treesitter-parsers = pkgs.symlinkJoin {
- name = "treesitter-parsers";
- paths = treesitterWithGrammars.dependencies;
- };
-
-in
-{
- programs.neovim = {
- enable = true;
- # package = unstable.neovim;
- defaultEditor = true;
- viAlias = true;
- vimAlias = true;
- # vimdiffAlias = true;
- # # withPython3 = false;
- # # withNodeJs = false;
- # # withRuby = false;
- #
- coc.enable = false;
- #
- plugins = [
- treesitterWithGrammars
- ];
- };
-
- home.file."./.config/nvim/lua/wilkuu/init.lua".text = ''
- require("wilkuu.set")
- require("wilkuu.remap")
- '';
- #vim.opt.runtimepath:append("${treesitter-parsers}")
-
- home.file."./.config/nvim/lua/wilkuu/nix.lua".text = ''
- return {
- vue_ts_plugin = "/home/wilkuu/.npm/@vue/typescript-plugin",
- }
- '';
-
-
- # home.file."./.local/share/nvim/nix/nvim-treesitter/" = {
- # source = treesitterWithGrammars;
- # recursive = true;
- # };
-
- home.sessionPath = [
- "/home/wilkuu/.npm/bin/"
- ];
-
- home.packages = with pkgs; [
- lua
- lua-language-server
- gopls
- go
- typescript
- nodejs_22
- rustup
- nixd
- nixfmt-rfc-style
- pyright
- nodePackages.intelephense
- texlive.combined.scheme-full
- texlab
- ];
-
-}
diff --git a/home-manager/xdg.nix b/home-manager/xdg.nix
deleted file mode 100644
index 6b55023..0000000
--- a/home-manager/xdg.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ config, pkgs, ... }:
-{
- xdg.mimeApps.defaultApplications = {
- "application/zip" = [ "xarchiver.desktop" ];
- "application/x-krita" = [ "krita.desktop" ];
- "image/*" = [ "gwenview.desktop" "krita.desktop"];
- "inode/directory" = [ "pcmanfm.desktop" "filelight.desktop" "kitty.desktop"];
- };
-}
diff --git a/nixos/common/default.nix b/nixos/common/default.nix
new file mode 100644
index 0000000..a186c1b
--- /dev/null
+++ b/nixos/common/default.nix
@@ -0,0 +1,67 @@
+
+# Edit this configuration file to define what should be installed on
+# your system. Help is available in the configuration.nix(5) man page, on
+# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
+
+{ config, lib, pkgs, ... }:
+
+{
+ imports =
+ [ # Include the results of the hardware scan.
+ ./services.nix
+ ];
+
+
+
+ nix.settings.experimental-features = ["nix-command" "flakes"];
+ time.timeZone = "Europe/Amsterdam"; # Set timezone
+
+ # Configure network proxy if necessary
+ # networking.proxy.default = "http://user:password@proxy:port/";
+ # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
+
+ # Select internationalisation properties.
+ i18n.defaultLocale = "en_US.UTF-8";
+ console = {
+ font = "Lat2-Terminus16";
+ keyMap = "us";
+ # useXkbConfig = true; # use xkb.options in tty.
+ };
+
+ # Enable the X11 windowing system.
+ # services.xserver.enable = true;
+
+ # Define a user account. Don't forget to set a password with ‘passwd’.
+ users.users.wilkuu = {
+ isNormalUser = true;
+ extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
+ packages = with pkgs; [
+ tree
+ ];
+ };
+
+ # Configure keymap in X11
+ # services.xserver.xkb.layout = "us";
+ # services.xserver.xkb.options = "eurosign:e,caps:escape";
+
+
+ # programs.firefox.enable = true;
+
+ # List packages installed in system profile. To search, run:
+ environment.variables.EDITOR = "vim";
+ # $ nix search wget
+ environment.systemPackages = with pkgs; [
+ vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
+ wget
+ git
+ ];
+
+
+
+ # This option defines the first version of NixOS you have installed on this particular machine,
+ # DO NOT CHANGE UNLESS USING NIXOS-INSTALL
+
+ system.stateVersion = "24.11"; # Did you read the comment?
+
+}
+
diff --git a/nixos/services.nix b/nixos/common/services.nix
index c7fac0e..528363b 100644
--- a/nixos/services.nix
+++ b/nixos/common/services.nix
@@ -1,3 +1,2 @@
{config, lib, pkgs, ...}:
-{
-}
+{}
diff --git a/nixos/configuration.nix b/nixos/configuration.nix
deleted file mode 100644
index b4bd651..0000000
--- a/nixos/configuration.nix
+++ /dev/null
@@ -1,314 +0,0 @@
-# Edit this configuration file to define what should be installed on
-# your system. Help is available in the configuration.nix(5) man page, on
-# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
-
-{ config, lib, pkgs, ... }:
-{
- imports =
- [ # Include the results of the hardware scan.
- ./hardware-configuration.nix
- <home-manager/nixos>
- ./home-manager.nix
- ./services.nix
- ];
-
- nix.settings.experimental-features = [ "nix-command" "flakes" ];
-
- # Use the systemd-boot EFI boot loader.
- # boot.loader.systemd-boot.enable = true;
- boot.loader.grub = {
- useOSProber = true;
- device = "nodev";
-
-
- efiSupport = true;
- default = "saved";
- memtest86.enable = true;
- splashImage = ./GrubBG.png;
- };
- boot.loader.efi.canTouchEfiVariables = true;
- boot.crashDump.enable = false;
- boot.plymouth = {
- enable = true;
- theme = "bgrt";
- };
-
- boot.kernelParams = [
- "quiet"
- "splash"
- "loglevel=3"
- "rd.systemd.show_status=false"
- "rd.udev.log_level=3"
- "udev.logpriority=3"
- ];
- boot.consoleLogLevel = 0;
-
- networking.hostName = "icetea-dispenser"; # Define your hostname.
- # Pick only one of the below networking options.
- # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
- networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
-
- # Set your time zone.
- time.timeZone = "Europe/Amsterdam";
-
- # Configure network proxy if necessary
- # networking.proxy.default = "http://user:password@proxy:port/";
- # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
-
- # Select internationalisation properties.
- # i18n.defaultLocale = "en_US.UTF-8";
- # console = {
- # font = "Lat2-Terminus16";
- # keyMap = "us";
- # useXkbConfig = true; # use xkb.options in tty.
- # };
-
- # Enable the X11 windowing system.
- programs.nix-ld.enable = true;
-
- services.printing.enable = true;
- documentation.dev.enable = true;
- services.displayManager.sddm ={
- #package = pkgs.kdePackages.sddm;
- enable = true;
- wayland.enable = true;
- theme="catppuccin-mocha";
- };
- services.xserver.exportConfiguration = true; # This makes it easy to search for a valid keymap
- # Enable KDE6 env in case Hyprland gets borked.
- # services.desktopManager.plasma6.enable = true;
- programs.hyprland.enable = true;
- programs.hyprland.withUWSM = true;
- programs.uwsm = {
- enable = true;
- waylandCompositors ={
- hyprland = {
- prettyName = "Hyprland";
- comment = "Hyprland compositor managed by UWSM";
- binPath = "/run/current-system/sw/bin/Hyprland";
- };
- };
- };
-
- nixpkgs.config.allowUnfree = true;
-
- # Configure keymap in X11
- # services.xserver.xkb.layout = "us";
- # services.xserver.xkb.options = "eurosign:e,caps:escape";
-
- # Enable CUPS to print documents.
- # services.printing.enable = true;
-
- # Enable sound.
- # hardware.pulseaudio.enable = true;
- # OR
- services.pipewire = {
- enable = true;
- pulse.enable = true;
- };
-
- # Enable touchpad support (enabled default in most desktopManager).
- # services.libinput.enable = true;
-
- # Define a user account. Don't forget to set a password with ‘passwd’.
- programs.zsh.enable = true;
- users.defaultUserShell = pkgs.zsh;
- users.users.wilkuu = {
- isNormalUser = true;
- extraGroups = [ "wheel" "networkmanager" "input" "docker" "adbusers" "libvirtd" ]; # Enable ‘sudo’ for the user.
- packages = with pkgs; [
- firefox
- nano
- ];
- };
-
- xdg.portal = {
- enable = true;
- config = {
- common = {
- default = [
- "hyprland"
- "gtk"
- ];
- };
- };
- };
-
- # List packages installed in system profile. To search, run:
- # $ nix search wget
- environment.systemPackages = with pkgs; [
- zsh
- busybox
- usbutils
- libsForQt5.qtstyleplugins
- xdg-desktop-portal-hyprland
- xdg-desktop-portal-gtk
- qt6.qtwayland
- #qt5.qtwayland
- kdePackages.sddm-kcm
- sddm
- # neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
- nano
- wget
- git
- tree
- alacritty
- kitty
- docker
- home-manager
- wofi
- waybar
- waybar-mpris
- vesktop
- wineWowPackages.waylandFull
- thunderbolt
- catppuccin-sddm
- kdePackages.kwallet
- kdePackages.kwalletmanager
-
- virt-viewer
- spice
- spice-gtk
- spice-protocol
- win-virtio
- win-spice
- gnome.adwaita-icon-theme
- ];
-
- environment.variables = {
- QT_STYLE_OVERRIDE = "kvantum";
- QT_QPA_PLATFORM="wayland";
- QT_QPA_PLATFORM_PATH="${pkgs.qt6.qtbase}/lib/qt-${pkgs.qt6.qtbase.version}/plugins/platform";
- };
-
- programs.adb.enable = true;
-
- # Some programs need SUID wrappers, can be configured further or are
- # started in user sessions.
- # programs.mtr.enable = true;
- # programs.gnupg.agent = {
- # enable = true;
- # enableSSHSupport = true;
- # };
-
- # List services that you want to enable:
-
- # Enable the OpenSSH daemon.
- # services.openssh.enable = true;
-
- # Open ports in the firewall.
- # networking.firewall.allowedTCPPorts = [ ... ];
- # networking.firewall.allowedUDPPorts = [ ... ];
- # Or disable the firewall altogether.
- networking.firewall.enable = false;
-
- # Copy the NixOS configuration file and link it from the resulting system
- # (/run/current-system/configuration.nix). This is useful in case you
- # accidentally delete configuration.nix.
- # system.copySystemConfiguration = true;
-
- # This option defines the first version of NixOS you have installed on this particular machine,
- # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
- #
- # Most users should NEVER change this value after the initial install, for any reason,
- # even if you've upgraded your system to a new NixOS release.
- #
- # This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
- # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
- # to actually do that.
- #
- # This value being lower than the current NixOS release does NOT mean your system is
- # out of date, out of support, or vulnerable.
- #
- # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
- # and migrated your data accordingly.
- #
- # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
- system.stateVersion = "24.05"; # Did you read the comment?
-
- # steam goes here
- programs.steam = {
- enable = true;
- protontricks.enable = true;
- };
-
- # Fonts
-fonts.packages = with pkgs; [
- noto-fonts
- noto-fonts-cjk-sans
- font-awesome
- noto-fonts-emoji
- # (nerdfonts.override {fonts = [ "Hermit" ];})
- nerdfonts
-];
-
- # Input, note the waylandFrontend line
- i18n.inputMethod = {
- type = "fcitx5";
- enable = true;
- fcitx5.waylandFrontend = true;
- fcitx5.addons = with pkgs; [
- kdePackages.fcitx5-qt
- fcitx5-mozc
- ];
- };
-
- # Bluetooth
- hardware.bluetooth.enable = true;
- hardware.bluetooth.settings = {
- General = {Enable = "Source,Sink,Media,Socket";};
- };
-
- hardware.bluetooth.powerOnBoot = true;
- services.blueman.enable = true;
-
- services.avahi = {
- enable = true;
- nssmdns = true;
- publish = {
- enable = true;
- };
- };
-
-
- systemd.user.services.mpris-proxy = {
- description = "Mpris proxy";
- after = [ "network.target" "sound.target" ];
- wantedBy = [ "default.target" ];
- serviceConfig.ExecStart = "${pkgs.bluez}/bin/mpris-proxy";
- };
-
-
- #services.fprintd.enable = true;
- #security.pam.services.login.fprintAuth = true;
- security.pam.services = {
- kdm.enableKwallet = true;
- lightdm.enableKwallet = true;
- sddm.enableKwallet = true;
- slim.enableKwallet = true;
- };
-
- programs.weylus = {
- enable=true;
- openFirewall=true;
- users=["wilkuu"];
- };
-
- ## VM's
- programs.dconf.enable = true;
- programs.virt-manager.enable = true;
- virtualisation = {
- docker.enable = true;
- libvirtd = {
- enable = true;
- qemu = {
- swtpm.enable = true;
- vhostUserPackages = with pkgs; [ virtiofsd ];
- ovmf.enable = true;
- ovmf.packages = [ pkgs.OVMFFull.fd ];
- };
- };
- spiceUSBRedirection.enable = true;
- };
- services.spice-vdagentd.enable = true;
-}
diff --git a/nixos/desktop/apps.nix b/nixos/desktop/apps.nix
new file mode 100644
index 0000000..5fdd823
--- /dev/null
+++ b/nixos/desktop/apps.nix
@@ -0,0 +1,8 @@
+{pkgs, ...} :
+{
+ environment.systemPackages = with pkgs; [
+ floorp
+ neovim
+ kitty
+ ];
+}
diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix
new file mode 100644
index 0000000..a634618
--- /dev/null
+++ b/nixos/desktop/default.nix
@@ -0,0 +1,54 @@
+
+{pkgs, ...}:
+{
+ imports = [
+ ./apps.nix
+ ./xfce.nix
+ ./hyprland.nix
+ ];
+
+ programs = {
+ dconf.enable = true;
+ thunar = {
+ enable = true;
+ plugins = with pkgs.xfce; [
+ thunar-archive-plugin
+ thunar-media-tags-plugin
+ thunar-volman
+ ];
+ };
+ };
+ # Enable CUPS to print documents.
+ services.printing.enable = true;
+
+
+ # Enable touchpad support (enabled default in most desktopManager).
+ services.libinput.enable = true;
+
+ services = {
+ blueman.enable = true;
+ # Enable sound
+ pipewire = {
+ enable = true;
+ pulse.enable = true;
+ };
+
+ displayManager.sddm = {
+ enable=true;
+ wayland.enable = true;
+ #theme = "catppuccin-mocha";
+ };
+ xserver = {
+ enable = true;
+ excludePackages = with pkgs; [
+ xterm
+ ];
+ };
+ };
+
+ fonts.packages = with pkgs; [
+ noto-fonts
+ font-awesome
+ (nerdfonts.override {fonts = [ "Hermit" ]; })
+ ];
+}
diff --git a/nixos/desktop/hyprland.nix b/nixos/desktop/hyprland.nix
new file mode 100644
index 0000000..687f2eb
--- /dev/null
+++ b/nixos/desktop/hyprland.nix
@@ -0,0 +1,44 @@
+{pkgs, ...}: {
+ environment.systemPackages = with pkgs; [
+ hyprland
+ hyprgui
+ hyprshot
+ hyprkeys
+ hypridle
+ hyprpaper
+ hyprpicker
+ hyprnotify
+ hyprcursor
+ waybar
+ waybar-mpris
+ ];
+
+
+ services.xserver.exportConfiguration = true; # This makes it easy to search for a valid keymap
+ # Enable KDE6 env in case Hyprland gets borked.
+ # services.desktopManager.plasma6.enable = true;
+ programs.hyprland.enable = true;
+ programs.hyprland.withUWSM = true;
+ programs.uwsm = {
+ enable = true;
+ waylandCompositors ={
+ hyprland = {
+ prettyName = "Hyprland";
+ comment = "Hyprland compositor managed by UWSM";
+ binPath = "/run/current-system/sw/bin/Hyprland";
+ };
+ };
+ };
+
+ xdg.portal = {
+ enable = true;
+ config = {
+ common = {
+ default = [
+ "hyprland"
+ "gtk"
+ ];
+ };
+ };
+ };
+}
diff --git a/nixos/desktop/xfce.nix b/nixos/desktop/xfce.nix
new file mode 100644
index 0000000..563b205
--- /dev/null
+++ b/nixos/desktop/xfce.nix
@@ -0,0 +1,26 @@
+{pkgs, ...}:
+{
+ environment.systemPackages = with pkgs; [
+ # XFCE stuff
+ xfce.catfish
+ xfce.xfce4-appfinder
+ xfce.xfce4-clipman-plugin
+ xfce.xfce4-cpugraph-plugin
+ xfce.xfce4-dict
+ xfce.xfce4-fsguard-plugin
+ xfce.xfce4-genmon-plugin
+ xfce.xfce4-netload-plugin
+ xfce.xfce4-panel
+ xfce.xfce4-pulseaudio-plugin
+ xfce.xfce4-systemload-plugin
+ xfce.xfce4-weather-plugin
+ xfce.xfce4-whiskermenu-plugin
+ xfce.xfce4-xkb-plugin
+ xfce.xfdashboard
+
+ # GNOME stuff
+ file-roller
+ gnome-disk-utility
+ ];
+ services.xserver.desktopManager.xfce.enable = true;
+}
diff --git a/nixos/flake.lock b/nixos/flake.lock
new file mode 100644
index 0000000..fa96756
--- /dev/null
+++ b/nixos/flake.lock
@@ -0,0 +1,49 @@
+{
+ "nodes": {
+ "home-manager": {
+ "inputs": {
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1739757849,
+ "narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
+ "owner": "nix-community",
+ "repo": "home-manager",
+ "rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "ref": "release-24.11",
+ "repo": "home-manager",
+ "type": "github"
+ }
+ },
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 1740463929,
+ "narHash": "sha256-4Xhu/3aUdCKeLfdteEHMegx5ooKQvwPHNkOgNCXQrvc=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "5d7db4668d7a0c6cc5fc8cf6ef33b008b2b1ed8b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-24.11",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "root": {
+ "inputs": {
+ "home-manager": "home-manager",
+ "nixpkgs": "nixpkgs"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/nixos/flake.nix b/nixos/flake.nix
new file mode 100644
index 0000000..f5e1620
--- /dev/null
+++ b/nixos/flake.nix
@@ -0,0 +1,36 @@
+{
+ description = "NixOS configuration";
+
+ inputs = {
+ nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
+ home-manager = {
+ url = "github:nix-community/home-manager/release-24.11";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
+ };
+
+ outputs = { self, nixpkgs, home-manager, ... }: {
+ nixosConfigurations.crank-vm = nixpkgs.lib.nixosSystem {
+ system = "x86_64-linux";
+ modules = [
+ ./hosts/crank-vm
+ ./desktop
+ home-manager.nixosModules.home-manager {
+ home-manager.useGlobalPkgs = true;
+ home-manager.useUserPackages = true;
+ }
+ ];
+ };
+ nixosConfigurations.icetea-dispenser = nixpkgs.lib.nixosSystem {
+ system = "x86_64-linux";
+ modules = [
+ ./hosts/icetea-dispenser
+ ./desktop
+ home-manager.nixosModules.home-manager {
+ home-manager.useGlobalPkgs = true;
+ home-manager.useUserPackages = true;
+ }
+ ];
+ };
+ };
+}
diff --git a/nixos/home-manager.nix b/nixos/home-manager.nix
deleted file mode 100644
index 6e76671..0000000
--- a/nixos/home-manager.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{config, pkgs, ...}:
-{
- users.users.wilkuu.isNormalUser = true;
-}
diff --git a/nixos/hosts/crank-vm/default.nix b/nixos/hosts/crank-vm/default.nix
new file mode 100644
index 0000000..1415674
--- /dev/null
+++ b/nixos/hosts/crank-vm/default.nix
@@ -0,0 +1,20 @@
+{ config, inputs, pkgs, ...}:
+{
+ imports = [
+ ./hardware-configuration.nix
+ ../../common
+ ];
+
+ networking.hostName = "crank-vm"; # Define your hostname.
+ # Use the systemd-boot EFI boot loader.
+ # boot.loader.systemd-boot.enable = true;
+ boot.loader.efi.canTouchEfiVariables = true;
+ boot.loader.grub = {
+ device = "nodev";
+ useOSProber = true;
+ efiSupport = true;
+ default = "saved";
+ memtest86.enable = true;
+ };
+ networking.firewall.enable = false;
+}
diff --git a/nixos/hosts/crank-vm/hardware-configuration.nix b/nixos/hosts/crank-vm/hardware-configuration.nix
new file mode 100644
index 0000000..e73cd34
--- /dev/null
+++ b/nixos/hosts/crank-vm/hardware-configuration.nix
@@ -0,0 +1,65 @@
+# Do not modify this file! It was generated by ‘nixos-generate-config’
+# and may be overwritten by future invocations. Please make changes
+# to /etc/nixos/configuration.nix instead.
+{ config, lib, pkgs, modulesPath, ... }:
+
+{
+ imports =
+ [ (modulesPath + "/profiles/qemu-guest.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ "kvm-intel" ];
+ boot.extraModulePackages = [ ];
+
+ fileSystems."/" =
+ { device = "/dev/disk/by-uuid/4b8e866a-bbf0-4312-a134-e6369276ed60";
+ fsType = "btrfs";
+ options = [ "subvol=root" ];
+ };
+
+ boot.initrd.luks.devices."system".device = "/dev/disk/by-uuid/70bdaa2d-b736-417b-899e-50f6c61c0036";
+
+ fileSystems."/home" =
+ { device = "/dev/disk/by-uuid/4b8e866a-bbf0-4312-a134-e6369276ed60";
+ fsType = "btrfs";
+ options = [ "subvol=home" ];
+ };
+
+ fileSystems."/nix" =
+ { device = "/dev/disk/by-uuid/4b8e866a-bbf0-4312-a134-e6369276ed60";
+ fsType = "btrfs";
+ options = [ "subvol=nix" ];
+ };
+
+ fileSystems."/snapshots" =
+ { device = "/dev/disk/by-uuid/4b8e866a-bbf0-4312-a134-e6369276ed60";
+ fsType = "btrfs";
+ options = [ "subvol=snapshots" ];
+ };
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/D0B7-5718";
+ fsType = "vfat";
+ options = [ "fmask=0022" "dmask=0022" ];
+ };
+
+ swapDevices = [ ];
+
+ # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
+ # (the default) this is the recommended approach. When using systemd-networkd it's
+ # still possible to use this option, but it's recommended to use it in conjunction
+ # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
+ networking.useDHCP = lib.mkDefault true;
+ # networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
+
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
+
+ services = {
+ qemuGuest.enable = true;
+ spice-vdagentd.enable = true;
+ };
+}
+
+
diff --git a/nixos/GrubBG.png b/nixos/hosts/icetea-dispenser/GrubBG.png
index 0f5028f..0f5028f 100644
--- a/nixos/GrubBG.png
+++ b/nixos/hosts/icetea-dispenser/GrubBG.png
Binary files differ
diff --git a/nixos/hosts/icetea-dispenser/default.nix b/nixos/hosts/icetea-dispenser/default.nix
new file mode 100644
index 0000000..802cd5b
--- /dev/null
+++ b/nixos/hosts/icetea-dispenser/default.nix
@@ -0,0 +1,40 @@
+ {pkgs, config, ...}:
+ {
+ imports = [
+ ./hardware-configuration.nix
+ ../../common
+ ];
+ boot.loader.grub = {
+ useOSProber = true;
+ device = "nodev";
+
+
+ efiSupport = true;
+ default = "saved";
+ memtest86.enable = true;
+ # splashImage = ./GrubBG.png;
+ };
+ boot.loader.efi.canTouchEfiVariables = true;
+ boot.crashDump.enable = false;
+ boot.plymouth = {
+ enable = true;
+ theme = "bgrt";
+ };
+
+ boot.kernelParams = [
+ "quiet"
+ "splash"
+ "loglevel=3"
+ "rd.systemd.show_status=false"
+ "rd.udev.log_level=3"
+ "udev.logpriority=3"
+ ];
+ boot.consoleLogLevel = 0;
+
+ networking.hostName = "icetea-dispenser"; # Define your hostname.
+ networking.firewall.enable = false;
+
+ programs.nix-ld.enable = true;
+ services.printing.enable = true;
+ nixpkgs.config.allowUnfree = true;
+}
diff --git a/nixos/hardware-configuration.nix b/nixos/hosts/icetea-dispenser/hardware-configuration.nix
index f321cd0..f321cd0 100644
--- a/nixos/hardware-configuration.nix
+++ b/nixos/hosts/icetea-dispenser/hardware-configuration.nix
diff --git a/result b/result
new file mode 120000
index 0000000..48f8b48
--- /dev/null
+++ b/result
@@ -0,0 +1 @@
+/nix/store/1jmg2rxq9px2hbk2kicq7kjpq8yzy00f-home-manager-generation \ No newline at end of file