diff --git a/flake.nix b/flake.nix index 6c02a6b..8f48cb0 100755 --- a/flake.nix +++ b/flake.nix @@ -43,20 +43,12 @@ outputs = {nixpkgs, nixpkgs-unstable, agenix, home-manager, home-manager-unstabl nixosConfigurations = { Archie = nixpkgs-unstable.lib.nixosSystem { system = "x86_64-linux"; - pkgs = import nixpkgs-unstable { - system = "x86_64-linux"; - config = { allowUnfree = true; }; # TODO: Find why this doesn't work - overlays = - let - discordOverlay = self: super: { - discord = super.discord.override { - withOpenASAR = true; - withVencord = true; - }; - }; - in - [ discordOverlay ]; - }; + /* + I used to set up nixpkgs in the flake, but doing that made + defining overlays in modules impossible (or at least I could + not figure out how) + Also has nice side effect of making it easier to add new systems :3 + */ modules = [ # Needed for nix-index { nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; } @@ -72,10 +64,6 @@ outputs = {nixpkgs, nixpkgs-unstable, agenix, home-manager, home-manager-unstabl Everest = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; - pkgs = import nixpkgs { - system = "x86_64-linux"; - config = { allowUnfree = false; }; # TODO: Find why this doesn't work - }; modules = [ # Needed for nix-index { nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; } diff --git a/roles/common/programs/default.nix b/roles/common/programs/default.nix index d28c74d..6262b48 100755 --- a/roles/common/programs/default.nix +++ b/roles/common/programs/default.nix @@ -4,6 +4,7 @@ imports = [ ./htop.nix ./nix.nix + ./micro.nix ./nix-index.nix ./command-not-found.nix ]; @@ -11,7 +12,6 @@ environment.systemPackages = with pkgs; [ speedtest-cli bat - micro nvd ncdu tree diff --git a/roles/common/programs/micro.nix b/roles/common/programs/micro.nix new file mode 100644 index 0000000..a80a708 --- /dev/null +++ b/roles/common/programs/micro.nix @@ -0,0 +1,17 @@ +{ config, pkgs, ... }: + +{ + home-manager = { + users.toast = { config, pkgs, ... }: + { + programs.micro = { + enable = true; + settings = { + clipboard = "terminal"; + indentchar = "|"; + softwrap = true; + }; + }; + }; + }; +} diff --git a/roles/desktop/default.nix b/roles/desktop/default.nix index ac8b5dc..6aa4825 100755 --- a/roles/desktop/default.nix +++ b/roles/desktop/default.nix @@ -4,6 +4,7 @@ imports = [ ./discord.nix ./firefox.nix + ./micro.nix ./keepassxc.nix ]; } diff --git a/roles/desktop/discord.nix b/roles/desktop/discord.nix index bdabdc4..5f47f87 100644 --- a/roles/desktop/discord.nix +++ b/roles/desktop/discord.nix @@ -1,9 +1,5 @@ { config, pkgs, ... }: -{ - # TODO: Find out why this does not do anything. If I put this - # on flake.nix it does work, so it's not completely wrong. - /* nixpkgs.overlays = let discordOverlay = self: super: { discord = super.discord.override { @@ -12,7 +8,8 @@ }; }; in - [ discordOverlay ]; */ +{ + nixpkgs.overlays = [ discordOverlay ]; users.users.toast.packages = with pkgs; [ discord ]; diff --git a/roles/desktop/micro.nix b/roles/desktop/micro.nix new file mode 100644 index 0000000..a09e819 --- /dev/null +++ b/roles/desktop/micro.nix @@ -0,0 +1,21 @@ +{ config, pkgs, lib, ... }: + +{ + home-manager = { + users.toast = { config, pkgs, ... }: + { + programs.micro = { + enable = true; + settings = { + # Use xclip/wl-clipboard for copying and pasting + clipboard = lib.mkForce "external"; + }; + }; + /* + On a kde wayland session micro uses xsel or xclip instead of wl-clipboard + which doesn't work, so I only install wl-clipboard here to make micro use it + */ + home.packages = with pkgs; [ wl-clipboard ]; + }; + }; +} diff --git a/roles/gaming/mangohud.nix b/roles/gaming/mangohud.nix index ff6f5df..47b37be 100644 --- a/roles/gaming/mangohud.nix +++ b/roles/gaming/mangohud.nix @@ -13,6 +13,7 @@ enableSessionWide = true; settings = { preset = 4; + no_display = true; }; }; };