Nix Flakes configuration for MacOS, NixOS and WSL
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat(loki): switch to dwl

+51 -14
+5 -3
flake.nix
··· 26 26 hardware.url = "github:NixOS/nixos-hardware/master"; 27 27 }; 28 28 29 - outputs = { self, nixpkgs, darwin, ... }@inputs: 29 + outputs = { self, nixpkgs, darwin, ... }@inputs: 30 + let inherit (self) outputs; in 30 31 { 31 - overlays = import ./overlays { inherit inputs; }; 32 + overlays = import ./overlays { inherit inputs outputs; }; 32 33 33 34 nixosConfigurations = { 34 35 loki = nixpkgs.lib.nixosSystem { ··· 38 39 inputs.home-manager.nixosModules.home-manager 39 40 ./hosts/x86_64-linux/loki 40 41 { 41 - nixpkgs.overlays = [ self.outputs.overlays.unstable-packages ]; 42 + nixpkgs.overlays = [ self.outputs.overlays.unstable-packages self.outputs.overlays.dwl ]; 42 43 } 44 + ./modules/nixos/desktop/dwl 43 45 ]; 44 46 }; 45 47
+13 -10
hosts/x86_64-linux/loki/default.nix
··· 2 2 { 3 3 imports = [ ./hardware.nix ]; 4 4 5 + security.polkit.enable = true; 6 + programs.xwayland.enable = true; 7 + 5 8 # Desktop Environment 6 - services.xserver = { 7 - enable = true; 8 - desktopManager = { 9 - xterm.enable = false; 10 - xfce.enable = true; 11 - # budgie.enable = true; 12 - # lightdm.enable = true; 13 - }; 14 - }; 15 - services.displayManager.defaultSession = "xfce"; 9 + # services.xserver = { 10 + # enable = true; 11 + # desktopManager = { 12 + # xterm.enable = false; 13 + # xfce.enable = true; 14 + # # budgie.enable = true; 15 + # # lightdm.enable = true; 16 + # }; 17 + # }; 18 + # services.displayManager.defaultSession = "xfce"; 16 19 17 20 programs.firefox.enable = true; 18 21
modules/.gitkeep

This is a binary file and will not be displayed.

+10
modules/nixos/desktop/dwl/default.nix
··· 1 + { inputs, pkgs, ... }: 2 + { 3 + environment.systemPackages = with pkgs; [ 4 + dwl 5 + wmenu 6 + ]; 7 + 8 + programs.waybar.enable = true; 9 + programs.foot.enable = true; 10 + }
+3 -1
overlays/default.nix
··· 1 - { inputs, ... }: 1 + { inputs, outputs, ... }: 2 2 { 3 3 # The unstable nixpkgs set (declared in the flake inputs) will 4 4 # be accessible through `pkgs.unstable` ··· 8 8 config.allowUnfree = true; 9 9 }; 10 10 }; 11 + 12 + dwl = import ./dwl { inherit inputs outputs; }; 11 13 }
+20
overlays/dwl/default.nix
··· 1 + { inputs, outputs, ... }: 2 + final: prev: { 3 + dwl = prev.dwl.overrideAttrs (finalAttrs: previousAttrs: { 4 + patches = [ 5 + # Add custom patches here and fetch them from https://www.codeberg.org/dwl/dwl-patches 6 + # (inputs.nixpkgs.legacyPackages.x86_64-linux.fetchpatch { 7 + # url = "https://codeberg.org/dwl/dwl-patches/raw/branch/main/patches/ipc/ipc.patch"; 8 + # hash = "sha256-JOncRH9DxJtN5ZzMUexB2PpGaJUxwdHbDtZUYxYQh5A="; 9 + # }) 10 + (inputs.nixpkgs.legacyPackages.x86_64-linux.fetchpatch { 11 + url = "https://codeberg.org/dwl/dwl-patches/raw/branch/main/patches/alwayscenter/alwayscenter.patch"; 12 + hash = "sha256-JaM/YAXioRi16TRKLvDvHAsn4HQ9jpaBAhvHyp/r/+I="; 13 + }) 14 + (inputs.nixpkgs.legacyPackages.x86_64-linux.fetchpatch { 15 + url = "https://codeberg.org/dwl/dwl-patches/raw/branch/main/patches/gaps/gaps.patch"; 16 + hash = "sha256-6knXrYblzaqjy5ZG8YG2VKwHeaHB+rij+8ZxXe5LqTE="; 17 + }) 18 + ]; 19 + }); 20 + }