From d99b53b2f230c99afccced43275d035ab4ea0c9a Mon Sep 17 00:00:00 2001 From: Paul-Henri Froidmont Date: Tue, 20 Jul 2021 00:19:01 +0200 Subject: [PATCH] Adapt laptop's config to the new structure --- flake.nix | 37 +++++-- hardware/clevo-nl51ru.nix | 64 ++++++++++++ hosts/froidmpa-laptop/configuration.nix | 98 ------------------- .../hardware-configuration.nix | 34 ------- 4 files changed, 95 insertions(+), 138 deletions(-) create mode 100644 hardware/clevo-nl51ru.nix delete mode 100644 hosts/froidmpa-laptop/configuration.nix delete mode 100644 hosts/froidmpa-laptop/hardware-configuration.nix diff --git a/flake.nix b/flake.nix index c3b4a02..c047479 100644 --- a/flake.nix +++ b/flake.nix @@ -31,14 +31,39 @@ modules = [ home-manager.nixosModules.home-manager - { - imports = [ - ./hosts/froidmpa-laptop/configuration.nix - ]; + ./hardware/clevo-nl51ru.nix + ./profiles/base.nix + ./users + ({ + networking.hostName = "froidmpa-laptop"; - system.configurationRevision = nixpkgs.lib.mkIf (self ? rev) self.rev; nix.registry.nixpkgs.flake = nixpkgs; - } + + home-manager.users.froidmpa = { pkgs, config, ... }: { + services.network-manager-applet.enable = true; + services.blueman-applet.enable = true; + services.grobi = { + enable = true; + executeAfter = [ "${pkgs.systemd}/bin/systemctl --user restart stalonetray" "${pkgs.feh}/bin/feh --bg-fill ~/.wallpaper.png" ]; + rules = [ + { + name = "Work HDMI"; + outputs_connected = [ "HDMI-1" ]; + configure_single = "HDMI-1"; + primary = true; + atomic = true; + } + { + name = "Fallback"; + configure_single = "eDP-1"; + } + ]; + }; + }; + + system.stateVersion = "21.05"; + }) + ]; }; diff --git a/hardware/clevo-nl51ru.nix b/hardware/clevo-nl51ru.nix new file mode 100644 index 0000000..f53e06e --- /dev/null +++ b/hardware/clevo-nl51ru.nix @@ -0,0 +1,64 @@ +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot = { + initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" "sdhci_pci" ]; + initrd.kernelModules = [ "dm-snapshot" ]; + kernelModules = [ "kvm-amd" ]; + # Required, otherwise the kernel freezes on boot + kernelParams = [ "nomodeset" ]; + extraModulePackages = [ ]; + loader.systemd-boot.enable = true; + loader.efi.canTouchEfiVariables = true; + initrd.luks.devices."crypted".device = "/dev/disk/by-uuid/1e900b2e-daea-4558-b18f-3d3a5843de61"; + }; + + fileSystems."/" = + { + device = "/dev/disk/by-uuid/a8abad9b-5615-4887-8431-3d80b78d073e"; + fsType = "ext4"; + }; + + + fileSystems."/boot" = + { + device = "/dev/disk/by-uuid/077C-758A"; + fsType = "vfat"; + }; + + swapDevices = + [{ device = "/dev/disk/by-uuid/bb8fa9ef-9b8f-413d-913a-6c891649a954"; }]; + + hardware = { + bluetooth = { + enable = true; + # Enable A2DP Sink + settings = { + General = { + Enable = "Source,Sink,Media,Socket"; + }; + }; + }; + pulseaudio = { + enable = true; + + # Use full build to have Bluetooth support + package = pkgs.pulseaudioFull; + }; + }; + + networking.networkmanager.enable = true; + + # Enable touchpad support. + services.xserver.libinput.enable = true; + + services.blueman.enable = true; + + services.logind.lidSwitch = "ignore"; + +} diff --git a/hosts/froidmpa-laptop/configuration.nix b/hosts/froidmpa-laptop/configuration.nix deleted file mode 100644 index e49fe0e..0000000 --- a/hosts/froidmpa-laptop/configuration.nix +++ /dev/null @@ -1,98 +0,0 @@ -{ config, lib, pkgs, ... }: -{ - imports = [ - ./hardware-configuration.nix - ../../configs/system.nix - ../../configs/network.nix - ../../configs/virtualisation.nix - ../../configs/games.nix - ]; - - # Required, otherwise the kernel freezes on boot - boot.kernelParams = [ "nomodeset" ]; - - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - - networking = { - hostName = "froidmpa-laptop"; - networkmanager.enable = true; - }; - - networking.interfaces.enp2s0.useDHCP = true; - networking.interfaces.wlo1.useDHCP = true; - - console = { - font = "Lat2-Terminus16"; - keyMap = "fr"; - }; - - i18n = { - defaultLocale = "en_US.UTF-8"; - }; - - time.timeZone = "Europe/Amsterdam"; - - environment.systemPackages = with pkgs; [ - ]; - - hardware.bluetooth = { - enable = true; - # Enable A2DP Sink - settings = { - General = { - Enable = "Source,Sink,Media,Socket"; - }; - }; - }; - hardware.pulseaudio = { - enable = true; - - # Use full build to have Bluetooth support - package = pkgs.pulseaudioFull; - }; - services.blueman.enable = true; - - home-manager.users.froidmpa = { pkgs, config, ... }: { - imports = [ - ../../configs/home/full.nix - ]; - programs.git = { - enable = true; - userName = "Paul-Henri Froidmont"; - userEmail = "git.contact-57n2p@froidmont.org"; - }; - services.network-manager-applet.enable = true; - services.blueman-applet.enable = true; - services.grobi = { - enable = true; - executeAfter = [ "${pkgs.systemd}/bin/systemctl --user restart stalonetray" "${pkgs.feh}/bin/feh --bg-fill ~/.wallpaper.png" ]; - rules = [ - { - name = "Work HDMI"; - outputs_connected = [ "HDMI-1" ]; - configure_single = "HDMI-1"; - primary = true; - atomic = true; - } - { - name = "Work USBC"; - outputs_connected = [ "DP-1" ]; - configure_single = "DP-1"; - primary = true; - atomic = true; - } - { - name = "Fallback"; - configure_single = "eDP-1"; - } - ]; - }; - }; - # Enable touchpad support. - services.xserver.libinput.enable = true; - - services.logind.lidSwitch = "ignore"; - - system.stateVersion = "21.05"; # Did you read the comment? -} diff --git a/hosts/froidmpa-laptop/hardware-configuration.nix b/hosts/froidmpa-laptop/hardware-configuration.nix deleted file mode 100644 index 80ab5e0..0000000 --- a/hosts/froidmpa-laptop/hardware-configuration.nix +++ /dev/null @@ -1,34 +0,0 @@ -# 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 + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" "sdhci_pci" ]; - boot.initrd.kernelModules = [ "dm-snapshot" ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { - device = "/dev/disk/by-uuid/a8abad9b-5615-4887-8431-3d80b78d073e"; - fsType = "ext4"; - }; - - boot.initrd.luks.devices."crypted".device = "/dev/disk/by-uuid/1e900b2e-daea-4558-b18f-3d3a5843de61"; - - fileSystems."/boot" = - { - device = "/dev/disk/by-uuid/077C-758A"; - fsType = "vfat"; - }; - - swapDevices = - [{ device = "/dev/disk/by-uuid/bb8fa9ef-9b8f-413d-913a-6c891649a954"; }]; - -}