diff --git a/flake.nix b/flake.nix index 8e15a6c..83a6374 100644 --- a/flake.nix +++ b/flake.nix @@ -28,6 +28,7 @@ ./modules/nh.nix ./modules/environment.nix ./modules/waydroid.nix + ./home-manager/home.nix ]; }; }; diff --git a/hosts/gabbielaptop/configuration.nix b/hosts/gabbielaptop/configuration.nix index 4cf6693..174d9c1 100644 --- a/hosts/gabbielaptop/configuration.nix +++ b/hosts/gabbielaptop/configuration.nix @@ -18,9 +18,17 @@ nix.settings.experimental-features = [ "nix-command" "flakes" ]; - # default kernel causes issues with wpa_supplicant meaning shutdown times are > 10 mins updating to kernel 69 fixes this + # default kernel causes issues with wpa_supplicant meaning shutdown times are > 10 mins updating to kernel 69+ fixes this boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_10; + boot.kernelParams = [ + "video=DP-2:1920x1080@144" + "video=DP-3:1920x1080@144" + "video=eDP-2:2560x1200@165" + ]; + + boot.initrd.kernelModules = [ "amdgpu" ]; + networking.hostName = "gabbielaptop"; # Define your hostname. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. @@ -100,7 +108,7 @@ home-manager = { # extraSpeicalArgs = { inherit inputs; }; users = { - "blue" = import ./home.nix; + "blue" = import ../../home-manager/home.nix; }; }; diff --git a/hosts/gabbielaptop/home.nix b/hosts/gabbielaptop/home.nix deleted file mode 100644 index c863fc8..0000000 --- a/hosts/gabbielaptop/home.nix +++ /dev/null @@ -1,166 +0,0 @@ -{ config, pkgs, ... }: - -{ - # Home Manager needs a bit of information about you and the paths it should - # manage. - home.username = "blue"; - home.homeDirectory = "/home/blue"; - - # 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 = "24.05"; # Please read the comment before changing. - - # The home.packages option allows you to install Nix packages into your - # environment. - home.packages = [ - # add grimblast screenshot tool - pkgs.grimblast - - # # 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/blue/etc/profile.d/hm-session-vars.sh - # - home.sessionVariables = { - # EDITOR = "emacs"; - }; - - # Let Home Manager install and manage itself. - programs.home-manager.enable = true; - # Enable Hyprland compositor - wayland.windowManager.hyprland = { - enable = true; - package = pkgs.hyprland; - xwayland.enable = true; - # Autostart using systemd -# systemd.enable = true; - extraConfig = '' -# exec-once = waybar - - # Monitor settings - monitor = eDP-2, 2560x1600@165, 0x0, auto # main laptop monitor - monitor = DP-3, 1920x1080@60, -1280x-1080, auto # left external monitor - monitor = DP-2, 1920x1080@60, 640x-1080, auto # right external monitor - - debug:disable_logs = false - ''; - }; - # Hyprland configuration - wayland.windowManager.hyprland.settings = { - "$mod" = "SUPER"; - input = { kb_layout = "gb"; }; - bind = - [ - "$mod, F, exec, firefox" - ", Print, exec, grimblast copy area" - "$mod, 1, exec, alacritty" - ] - ++ ( - # workspaces - # binds $mod + [shift +] {1..10} to [move to] workspace {1..10} - builtins.concatLists (builtins.genList ( - x: let - ws = let - c = (x + 1) / 10; - in - builtins.toString (x + 1 - (c * 10)); - in [ - "$mod, ${ws}, workspace, ${toString (x + 1)}" - "$mod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}" - ] - ) - 10) - ); - }; - - programs.waybar = { - enable = true; - settings = { - mainBar = { - layer = "top"; - position = "top"; - height = 30; - output = [ - "eDP-2" - "DP-2" - "DP-3" - ]; - modules-left = [ "hyprland/workspaces" "hyprland/mode" "wlr/taskbar" ]; - modules-center = [ "hyprland/window" "custom/hello-from-waybar" ]; - modules-right = [ "mpd" "custom/mymodule#with-css-id" "temperature" ]; - - "custom/hello-from-waybar" = { - format = "hello {}"; - max-length = 40; - interval = "once"; - exec = pkgs.writeShellScript "hello-from-waybar" '' - echo "from within waybar" - ''; - }; - }; - }; - }; - - programs.alacritty = { - enable = true; - package = pkgs.alacritty; - settings = { - window.dimensions = { - lines = 3; - columns = 200; - }; - keyboard.bindings = [ - { - key = "K"; - mods = "Control"; - chars = "\\u000c"; - } - ]; - }; - }; -} diff --git a/modules/home-manager/zsh.nix b/modules/home-manager/zsh.nix deleted file mode 100644 index 94b558a..0000000 --- a/modules/home-manager/zsh.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - programs.zsh = { - enable = true; - autocd = true; - dotDir = ".config/zsh"; - enableAutosuggestions = true; - enableCompletion = true; -# shellAliases = { -# sl = "exa"; -# ls = "exa"; -# l = "exa -l"; -# la = "exa -la"; -# ip = "ip --color=auto"; -# }; - - plugins = with pkgs; [ - { - name = "zsh-syntax-highlighting"; - src = fetchFromGitHub { - owner = "zsh-users"; - repo = "zsh-syntax-highlighting"; - rev = "0.6.0"; - sha256 = "0zmq66dzasmr5pwribyh4kbkk23jxbpdw4rjxx0i7dx8jjp2lzl4"; - }; - file = "agkozak-zsh-prompt.plugin.zsh"; - } -}