diff --git a/flake.lock b/flake.lock index 8007e67..61b5586 100644 --- a/flake.lock +++ b/flake.lock @@ -215,6 +215,22 @@ "type": "github" } }, + "flake-compat_5": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -329,6 +345,24 @@ "type": "github" } }, + "flake-utils_5": { + "inputs": { + "systems": "systems_6" + }, + "locked": { + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "git-hooks": { "inputs": { "flake-compat": "flake-compat_2", @@ -658,6 +692,22 @@ "type": "github" } }, + "nixpkgs_4": { + "locked": { + "lastModified": 1713805509, + "narHash": "sha256-YgSEan4CcrjivCNO5ZNzhg7/8ViLkZ4CB/GrGBVSudo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1e1dc66fe68972a76679644a5577828b6a7e8be4", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixstable": { "locked": { "lastModified": 1725930920, @@ -794,6 +844,7 @@ "nixvimstable": "nixvimstable", "nixvimunstable": "nixvimunstable", "nurpkgs": "nurpkgs", + "vsext": "vsext", "wsl": "wsl" } }, @@ -872,6 +923,21 @@ "type": "github" } }, + "systems_6": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "treefmt-nix": { "inputs": { "nixpkgs": [ @@ -914,10 +980,30 @@ "type": "github" } }, - "wsl": { + "vsext": { "inputs": { "flake-compat": "flake-compat_4", "flake-utils": "flake-utils_4", + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "lastModified": 1726710255, + "narHash": "sha256-F7IpHzKsV9lzFhSZ5/8jMrAPNTLDAloazYlulnTyG9o=", + "owner": "nix-community", + "repo": "nix-vscode-extensions", + "rev": "e7740781e76ff6495f6a0c8c69ddc2d3f62c41c0", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nix-vscode-extensions", + "type": "github" + } + }, + "wsl": { + "inputs": { + "flake-compat": "flake-compat_5", + "flake-utils": "flake-utils_5", "nixpkgs": [ "nixunstable" ] diff --git a/flake.nix b/flake.nix index f6ce48c..39e239e 100644 --- a/flake.nix +++ b/flake.nix @@ -31,6 +31,7 @@ nixstable.url = "github:nixos/nixpkgs/nixos-24.05"; nixunstable.url = "github:nixos/nixpkgs/nixos-unstable"; nurpkgs.url = "github:nix-community/NUR"; + vsext.url = "github:nix-community/nix-vscode-extensions"; wsl = { url = "github:nix-community/NixOS-WSL"; inputs.nixpkgs.follows = "nixunstable"; @@ -47,6 +48,7 @@ nixstable, nixunstable, nurpkgs, + vsext, wsl, self, @@ -57,6 +59,7 @@ agenix.overlays.default local_overlay nurpkgs.overlay + vsext.overlays.default ]; in { diff --git a/home/modules/vscodium.nix b/home/modules/vscodium.nix index c0c6c1b..becc7d2 100644 --- a/home/modules/vscodium.nix +++ b/home/modules/vscodium.nix @@ -1,4 +1,4 @@ -{ pkgs, config, lib, ... }: +{ pkgs, config, lib, inputs, ... }: let cfg = config.greg.vscodium; @@ -15,18 +15,23 @@ in { programs.vscode = { enable = true; package = pkgs.vscodium; - extensions = with pkgs.vscode-extensions; [ + extensions = with inputs.vsext.extensions."${pkgs.stdenv.system}".vscode-marketplace; [ arrterian.nix-env-selector asvetliakov.vscode-neovim + batisteo.vscode-django bungcip.better-toml + donjayamanne.python-environment-manager golang.go + kevinrose.vsc-python-indent jnoortheen.nix-ide mkhl.direnv ms-python.python + njpwerner.autodocstring rust-lang.rust-analyzer vscjava.vscode-java-test vscjava.vscode-java-dependency vscjava.vscode-java-debug + wholroyd.jinja ]; userSettings = { "direnv.restart.automatic" = true;