diff --git a/home-manager/firefox.nix b/home-manager/firefox.nix new file mode 100644 index 0000000..9d8fc9b --- /dev/null +++ b/home-manager/firefox.nix @@ -0,0 +1,36 @@ +{ pkgs }: { + enable = true; + profiles = { + nils = { + id = 0; + name = "nils"; + + extensions = with pkgs.nur.repos.rycee.firefox-addons; [ + ublock-origin + bitwarden + tampermonkey + ]; + + bookmarks = [ + { + name = "Nix sites"; + toolbar = true; + bookmarks = [ + { + name = "NixOS options"; + url = "https://search.nixos.org/options"; + } + { + name = "home-manager options"; + url = "https://rycee.gitlab.io/home-manager/options.html"; + } + { + name = "nixpkgs search"; + url = "https://search.nixos.org/packages"; + } + ]; + } + ]; + }; + }; +} diff --git a/home-manager/git.nix b/home-manager/git.nix new file mode 100644 index 0000000..eb382eb --- /dev/null +++ b/home-manager/git.nix @@ -0,0 +1,22 @@ +{ pkgs }: { + enable = true; + + userEmail = "48135649+Nilstrieb@users.noreply.github.com"; + userName = "Nilstrieb"; + + aliases = { + hardupdate = "!git fetch && git reset --hard \"origin/$(git rev-parse --abbrev-ref HEAD)\""; + fpush = "push --force-with-lease"; + resq = "rebase --autosquash -i"; + pfush = "!echo \"hör uf ume z'pfusche und machs richtig\""; + }; + difftastic = { + enable = true; + }; + extraConfig = { + core.autocrlf = false; + core.editor = "nvim"; + pull.ff = "only"; + init.defaultBranch = "main"; + }; +} diff --git a/home-manager/home.nix b/home-manager/home.nix index 06b586a..6c9d2b6 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -37,7 +37,6 @@ in ]; # Configure your nixpkgs instance config = { - # Disable if you don't want unfree packages allowUnfree = true; # Workaround for https://github.com/nix-community/home-manager/issues/2942 allowUnfreePredicate = (_: true); @@ -52,146 +51,34 @@ in # Add stuff for your user as you see fit: programs.neovim.enable = true; home.packages = with pkgs; [ - discord - spotify - nixpkgs-fmt - rnix-lsp - fzf - linuxKernel.packages.linux_6_1.perf - cargo-nextest - git-absorb - gcc - jetbrains.idea-ultimate - htop - ripgrep - bat - postman - rustup-toolchain-install-master - inferno - gh - obsidian - customPkgs.cargo-bisect-rustc audacity + bat + cargo-nextest + customPkgs.cargo-bisect-rustc + discord + fzf + gcc + gh + git-absorb + htop + inferno + jetbrains.idea-ultimate + linuxKernel.packages.linux_6_1.perf + nixpkgs-fmt + obsidian + postman prismlauncher + ripgrep + rnix-lsp + rustup-toolchain-install-master + spotify ]; - # Enable home-manager and git programs.home-manager.enable = true; - programs.git = { - enable = true; - userEmail = "48135649+Nilstrieb@users.noreply.github.com"; - userName = "Nilstrieb"; - - aliases = { - hardupdate = "!git fetch && git reset --hard \"origin/$(git rev-parse --abbrev-ref HEAD)\""; - fpush = "push --force-with-lease"; - resq = "rebase --autosquash -i"; - pfush = "!echo \"hör uf ume z'pfusche und machs richtig\""; - }; - difftastic = { - enable = true; - }; - extraConfig = { - core.autocrlf = false; - core.editor = "nvim"; - pull.ff = "only"; - init.defaultBranch = "main"; - }; - }; - - programs.firefox = { - enable = true; - profiles = { - nils = { - id = 0; - name = "nils"; - - extensions = with pkgs.nur.repos.rycee.firefox-addons; [ - ublock-origin - bitwarden - tampermonkey - ]; - - bookmarks = [ - { - name = "Nix sites"; - toolbar = true; - bookmarks = [ - { - name = "NixOS options"; - url = "https://search.nixos.org/options"; - } - { - name = "home-manager options"; - url = "https://rycee.gitlab.io/home-manager/options.html"; - } - { - name = "nixpkgs search"; - url = "https://search.nixos.org/packages"; - } - ]; - } - ]; - }; - }; - }; - - programs.vscode = { - enable = true; - package = pkgs.vscode; - extensions = with pkgs.vscode-extensions; [ - jnoortheen.nix-ide - usernamehw.errorlens - ms-vscode.cmake-tools - ms-vscode.cpptools - eamodio.gitlens - tamasfe.even-better-toml - ms-vscode-remote.remote-ssh - esbenp.prettier-vscode - dbaeumer.vscode-eslint - ms-python.python - redhat.vscode-yaml - mads-hartmann.bash-ide-vscode - ms-azuretools.vscode-docker - ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ - { - publisher = "dtsvet"; - name = "vscode-wasm"; - version = "1.4.1"; - sha256 = "sha256-zs7E3pxf4P8kb3J+5zLoAO2dvTeepuCuBJi5s354k0I="; - } - { - publisher = "redhat"; - name = "ansible"; - version = "2.7.98"; - sha256 = "sha256-b3Z40IeQbtYci2LA4/OlJkfqMB78cWRNTNWd89lfhy4="; - } - { - publisher = "matthewpi"; - name = "caddyfile-support"; - version = "0.3.0"; - sha256 = "sha256-1yiOnvC2w33kiPRdQYskee38Cid/GOj9becLadP1fUY="; - } - ] ++ [ - (pkgs.vscode-utils.buildVscodeExtension { - name = "riverdelta"; - version = "0.1.0"; - src = builtins.fetchGit { - url = "https://github.com/Nilstrieb/riverdelta"; - rev = "64d81b56084d9a7663517b367b4533fb8ea83a92"; - }; - vscodeExtPublisher = "Nilstrieb"; - vscodeExtName = "riverdelta"; - vscodeExtUniqueId = "Nilstrieb.riverdelta"; - buildPhase = '' - runHook preBuild; - cd ./vscode - runHook postBuild; - ''; - }) - ]; - }; + programs.git = import ./git.nix { inherit pkgs; }; + programs.firefox = import ./firefox.nix { inherit pkgs; }; + programs.vscode = import ./vscode.nix { inherit pkgs; }; programs.fish = { enable = true; diff --git a/home-manager/vscode.nix b/home-manager/vscode.nix new file mode 100644 index 0000000..776ce9f --- /dev/null +++ b/home-manager/vscode.nix @@ -0,0 +1,55 @@ +{ pkgs }: { + enable = true; + package = pkgs.vscode; + extensions = with pkgs.vscode-extensions; [ + jnoortheen.nix-ide + usernamehw.errorlens + ms-vscode.cmake-tools + ms-vscode.cpptools + eamodio.gitlens + tamasfe.even-better-toml + ms-vscode-remote.remote-ssh + esbenp.prettier-vscode + dbaeumer.vscode-eslint + ms-python.python + redhat.vscode-yaml + mads-hartmann.bash-ide-vscode + ms-azuretools.vscode-docker + ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ + { + publisher = "dtsvet"; + name = "vscode-wasm"; + version = "1.4.1"; + sha256 = "sha256-zs7E3pxf4P8kb3J+5zLoAO2dvTeepuCuBJi5s354k0I="; + } + { + publisher = "redhat"; + name = "ansible"; + version = "2.7.98"; + sha256 = "sha256-b3Z40IeQbtYci2LA4/OlJkfqMB78cWRNTNWd89lfhy4="; + } + { + publisher = "matthewpi"; + name = "caddyfile-support"; + version = "0.3.0"; + sha256 = "sha256-1yiOnvC2w33kiPRdQYskee38Cid/GOj9becLadP1fUY="; + } + ] ++ [ + (pkgs.vscode-utils.buildVscodeExtension { + name = "riverdelta"; + version = "0.1.0"; + src = builtins.fetchGit { + url = "https://github.com/Nilstrieb/riverdelta"; + rev = "64d81b56084d9a7663517b367b4533fb8ea83a92"; + }; + vscodeExtPublisher = "Nilstrieb"; + vscodeExtName = "riverdelta"; + vscodeExtUniqueId = "Nilstrieb.riverdelta"; + buildPhase = '' + runHook preBuild; + cd ./vscode + runHook postBuild; + ''; + }) + ]; +}