diff --git a/flake.lock b/flake.lock index 244ab87..2b9136a 100644 --- a/flake.lock +++ b/flake.lock @@ -61,16 +61,15 @@ "home-manager": { "inputs": { "nixpkgs": [ - "ppetru-home", "nixpkgs" ] }, "locked": { - "lastModified": 1720042825, - "narHash": "sha256-A0vrUB6x82/jvf17qPCpxaM+ulJnD8YZwH9Ci0BsAzE=", + "lastModified": 1725703823, + "narHash": "sha256-tDgM4d8mLK0Hd6YMB2w1BqMto1XBXADOzPEaLl10VI4=", "owner": "nix-community", "repo": "home-manager", - "rev": "e1391fb22e18a36f57e6999c7a9f966dc80ac073", + "rev": "208df2e558b73b6a1f0faec98493cb59a25f62ba", "type": "github" }, "original": { @@ -127,35 +126,14 @@ "type": "github" } }, - "ppetru-home": { - "inputs": { - "home-manager": "home-manager", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1726077552, - "narHash": "sha256-I2u/iI8e/pRVtfAs6juLOrPa+zWZjtUzFv3OxemNHfE=", - "ref": "refs/heads/master", - "rev": "0242d6da9aba2ccb530870b944d1837d4cac6b54", - "revCount": 6, - "type": "git", - "url": "file:/home/ppetru/ppetru-home" - }, - "original": { - "type": "git", - "url": "file:/home/ppetru/ppetru-home" - } - }, "root": { "inputs": { "deploy-rs": "deploy-rs", "disko": "disko", + "home-manager": "home-manager", "impermanence": "impermanence", "nixpkgs": "nixpkgs", - "nixpkgs-unstable": "nixpkgs-unstable", - "ppetru-home": "ppetru-home" + "nixpkgs-unstable": "nixpkgs-unstable" } }, "systems": { diff --git a/flake.nix b/flake.nix index 243ba8d..2a50719 100644 --- a/flake.nix +++ b/flake.nix @@ -9,13 +9,13 @@ nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; disko.url = "github:nix-community/disko"; disko.inputs.nixpkgs.follows = "nixpkgs"; - ppetru-home = { - url = "git+file:/home/ppetru/ppetru-home"; + home-manager = { + url = "github:nix-community/home-manager/release-24.05"; inputs.nixpkgs.follows = "nixpkgs"; }; }; - outputs = { self, nixpkgs, nixpkgs-unstable, deploy-rs, disko, ppetru-home, ... }@inputs: + outputs = { self, nixpkgs, nixpkgs-unstable, deploy-rs, disko, ... }@inputs: let inherit (self); @@ -31,6 +31,13 @@ nixpkgs.config.allowUnfree = true; }) disko.nixosModules.disko + inputs.home-manager.nixosModules.home-manager { + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + users.ppetru = import ./home; + }; + } ] ++ modules; specialArgs = { inherit inputs self; }; }; @@ -94,10 +101,6 @@ user = "root"; path = (deployPkgsFor "x86_64-linux").deploy-rs.lib.activate.nixos self.nixosConfigurations.nix-dev; }; - ppetru = { - user = "ppetru"; - path = (deployPkgsFor "x86_64-linux").deploy-rs.lib.activate.home-manager ppetru-home.homeConfigurations.ppetru; - }; }; }; alo-cloud-1 = { @@ -116,10 +119,6 @@ user = "root"; path = (deployPkgsFor "x86_64-linux").deploy-rs.lib.activate.nixos self.nixosConfigurations.zippy; }; - ppetru = { - user = "ppetru"; - path = (deployPkgsFor "x86_64-linux").deploy-rs.lib.activate.home-manager ppetru-home.homeConfigurations.ppetru; - }; }; }; chilly = { @@ -129,10 +128,6 @@ user = "root"; path = (deployPkgsFor "x86_64-linux").deploy-rs.lib.activate.nixos self.nixosConfigurations.chilly; }; - ppetru = { - user = "ppetru"; - path = (deployPkgsFor "x86_64-linux").deploy-rs.lib.activate.home-manager ppetru-home.homeConfigurations.ppetru; - }; }; }; }; diff --git a/home/default.nix b/home/default.nix new file mode 100644 index 0000000..ec6cb79 --- /dev/null +++ b/home/default.nix @@ -0,0 +1,20 @@ +{ pkgs, ... }: +let + packages = import ./packages.nix { inherit pkgs; }; +in { + home = { + inherit packages; + stateVersion = "24.05"; # TODO: unify this with the references in flake.nix:inputs + + sessionVariables = { + MOSH_SERVER_NETWORK_TMOUT = 604800; + NOMAD_ADDR = "http://nomad.service.consul:4646"; + }; + + shellAliases = { + reload-home-manager-config = "home-manager switch --flake ${builtins.toString ./.}"; + }; + }; + + programs = import ./programs.nix; +} diff --git a/home/packages.nix b/home/packages.nix new file mode 100644 index 0000000..0985ba6 --- /dev/null +++ b/home/packages.nix @@ -0,0 +1,12 @@ +{ pkgs }: + +let + nixTools = with pkgs; [ + git + home-manager + mosh + tmux + vim + zsh + ]; +in nixTools diff --git a/home/programs.nix b/home/programs.nix new file mode 100644 index 0000000..460019e --- /dev/null +++ b/home/programs.nix @@ -0,0 +1,64 @@ +{ + git = { + enable = true; + userEmail = "petru@paler.net"; + userName = "Petru Paler"; + }; + + home-manager = { + enable = true; + }; + + less.enable = true; + + neovim = { + enable = true; + defaultEditor = true; + viAlias = true; + }; + + tmux = { + enable = true; + prefix = "C-t"; + terminal = "screen-256color"; + historyLimit = 20000; + keyMode = "vi"; + extraConfig = '' + set -g status-left "" + set -g status-right "" + ''; + }; + + zsh = { + enable = true; + history = { + save = 1000000; + size = 1000000; + }; + prezto = { + enable = true; + pmodules = [ + "gnu-utility" + "environment" + "terminal" + "editor" + "history" + "directory" + "spectrum" + "utility" + "completion" + "syntax-highlighting" + "prompt" + ]; + gnuUtility.prefix = "g"; + prompt.theme = "pure"; + utility.safeOps = false; + syntaxHighlighting.highlighters = [ + "main" + "brackets" + "pattern" + "root" + ]; + }; + }; +}