diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..c9c4de9 --- /dev/null +++ b/flake.lock @@ -0,0 +1,48 @@ +{ + "nodes": { + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1730837930, + "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "2f607e07f3ac7e53541120536708e824acccfaa8", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1730785428, + "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "home-manager": "home-manager", + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..d138954 --- /dev/null +++ b/flake.nix @@ -0,0 +1,23 @@ +{ + description = "Home Manager configuration of yt"; + + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; + home-manager = { + url = "github:nix-community/home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + + outputs = { nixpkgs, home-manager, ... }: + let + system = "x86_64-linux"; + pkgs = nixpkgs.legacyPackages.${system}; + in { + homeConfigurations."yt" = home-manager.lib.homeManagerConfiguration { + inherit pkgs; + + modules = [ ./home.nix ]; + }; + }; +} diff --git a/home.nix b/home.nix new file mode 100644 index 0000000..0ab8e51 --- /dev/null +++ b/home.nix @@ -0,0 +1,27 @@ +{ config, pkgs, ... }: + +{ + home.username = "yt"; + home.homeDirectory = "/home/yt"; + home.stateVersion = "24.05"; + + home.packages = [ + pkgs.neovim + pkgs.fzf + pkgs.eza + pkgs.gnupg + pkgs.go + pkgs.pass + pkgs.zsh + pkgs.anki-bin + ]; + + home.file = { + }; + + home.sessionVariables = { + EDITOR = "nvim"; + }; + + programs.home-manager.enable = true; +} diff --git a/zshrc b/zshrc index b1af505..a907611 100644 --- a/zshrc +++ b/zshrc @@ -1,3 +1,5 @@ +source "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh" + # Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. # Initialization code that may require console input (password prompts, [y/n] # confirmations, etc.) must go above this block; everything else may go below.