add bun and node

This commit is contained in:
Chris Kruining 2024-09-02 20:49:14 +02:00
parent b347093a53
commit 1d98c35cb5
7 changed files with 100 additions and 55 deletions

62
flake.lock generated
View file

@ -151,6 +151,27 @@
"type": "github" "type": "github"
} }
}, },
"fenix": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1725258763,
"narHash": "sha256-7s5RfYlTljWnKGkK4hOMJCJ0sNQoLYjMxezX3Vijy/0=",
"owner": "nix-community",
"repo": "fenix",
"rev": "0774f58cf1025bbb713971deecc7f07c856be6ed",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"firefox": { "firefox": {
"inputs": { "inputs": {
"cachix": "cachix", "cachix": "cachix",
@ -563,22 +584,6 @@
} }
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": {
"lastModified": 1718428119,
"narHash": "sha256-WdWDpNaq6u1IPtxtYHHWpl5BmabtpmLnMAx0RdJ/vo8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e6cea36f83499eb4e9cd184c8a8e823296b50ad5",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1723415338, "lastModified": 1723415338,
"narHash": "sha256-K/BVeDLkpswRSBh3APxc2gBNVFEMXGpnkuQz666FiTM=", "narHash": "sha256-K/BVeDLkpswRSBh3APxc2gBNVFEMXGpnkuQz666FiTM=",
@ -669,31 +674,30 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"fenix": "fenix",
"firefox": "firefox", "firefox": "firefox",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"nixvim": "nixvim", "nixvim": "nixvim",
"plasma-manager": "plasma-manager", "plasma-manager": "plasma-manager",
"rust": "rust",
"stylix": "stylix" "stylix": "stylix"
} }
}, },
"rust": { "rust-analyzer-src": {
"inputs": { "flake": false,
"nixpkgs": "nixpkgs_3"
},
"locked": { "locked": {
"lastModified": 1724638882, "lastModified": 1725191098,
"narHash": "sha256-ap2jIQi/FuUHR6HCht6ASWhoz8EiB99XmI8Esot38VE=", "narHash": "sha256-YH0kH5CSOnAuPUB1BUzUqvnKiv5SgDhfMNjrkki9Ahk=",
"owner": "oxalica", "owner": "rust-lang",
"repo": "rust-overlay", "repo": "rust-analyzer",
"rev": "19b70f147b9c67a759e35824b241f1ed92e46694", "rev": "779d9eee2ea403da447278a7007c9627c8878856",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "oxalica", "owner": "rust-lang",
"repo": "rust-overlay", "ref": "nightly",
"repo": "rust-analyzer",
"type": "github" "type": "github"
} }
}, },
@ -710,7 +714,7 @@
"flake-utils": "flake-utils_3", "flake-utils": "flake-utils_3",
"gnome-shell": "gnome-shell", "gnome-shell": "gnome-shell",
"home-manager": "home-manager_3", "home-manager": "home-manager_3",
"nixpkgs": "nixpkgs_4", "nixpkgs": "nixpkgs_3",
"systems": "systems_3" "systems": "systems_3"
}, },
"locked": { "locked": {

View file

@ -25,7 +25,10 @@
stylix.url = "github:danth/stylix"; stylix.url = "github:danth/stylix";
rust.url = "github:oxalica/rust-overlay"; fenix = {
url = "github:nix-community/fenix";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, ... }: outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, ... }:

View file

@ -40,6 +40,7 @@
zed.enable = true; zed.enable = true;
nvim.enable = true; nvim.enable = true;
nano.enable = true; nano.enable = true;
kate.enable = true;
}; };
browsers = { browsers = {

View file

@ -14,7 +14,7 @@ in {
inherit (lib.types) nullOr enum; inherit (lib.types) nullOr enum;
in { in {
default = mkOption { default = mkOption {
type = nullOr (enum [ "nano" "nvim" ]); type = nullOr (enum [ "nano" "nvim" "zed" "kate" ]);
default = "nano"; default = "nano";
description = "Default editor for text manipulation"; description = "Default editor for text manipulation";
example = "nvim"; example = "nvim";

View file

@ -0,0 +1,36 @@
{ config, options, lib, pkgs, ... }:
let
inherit (lib.meta) getExe;
inherit (lib.modules) mkIf;
cfg = config.modules.desktop.editors.kate;
in
{
options.modules.desktop.editors.kate = let
inherit (lib.options) mkEnableOption;
in { enable = mkEnableOption "kate"; };
config = mkIf cfg.enable {
# programs.kate = {
# enable = true;
#
# editor = {
# brackets.highlightMatching = true;
#
# indent = {
# keepExtraSpaces = false;
# replaceWithSpaces = true;
# showLines = true;
# undoByShiftTab = true;
#
# width = 4;
# tabWidth = 4;
# };
# };
#
# lsp = {
# typescript = {};
# };
# };
};
}

View file

@ -12,15 +12,16 @@ in
config = mkMerge [ config = mkMerge [
(mkIf config.modules.develop.js.enable { (mkIf config.modules.develop.js.enable {
user.packages = attrValues { user.packages = with pkgs; [
}; bun
nodejs
nodePackages_latest.typescript-language-server
];
}) })
(mkIf config.modules.develop.xdg.enable { (mkIf config.modules.develop.xdg.enable {
home = { home = {
# sessionVariables.CARGO_HOME = "$XDG_DATA_HOME/cargo";
# sessionPath = ["$CARGO_HOME/bin"];
}; };
}) })
]; ];

View file

@ -12,25 +12,25 @@ in
}; };
config = mkMerge [ config = mkMerge [
(mkIf config.modules.develop.rust.enable { # (mkIf config.modules.develop.rust.enable {
nixpkgs.overlays = [inputs.rust.overlays.default]; # # nixpkgs.overlays = [inputs.rust.overlays.default];
#
user.packages = attrValues { # user.packages = attrValues {
rust-package = pkgs.rust-bin.stable.latest.default; # # rust-package = pkgs.rust-bin.stable.latest.default;
inherit (pkgs) rust-analyzer rust-script; # # inherit (pkgs) rust-analyzer rust-script;
}; # };
#
environment.shellAliases = { # environment.shellAliases = {
rs = "rustc"; # rs = "rustc";
ca = "cargo"; # ca = "cargo";
}; # };
}) # })
#
(mkIf config.modules.develop.xdg.enable { # (mkIf config.modules.develop.xdg.enable {
home = { # home = {
sessionVariables.CARGO_HOME = "$XDG_DATA_HOME/cargo"; # sessionVariables.CARGO_HOME = "$XDG_DATA_HOME/cargo";
sessionPath = ["$CARGO_HOME/bin"]; # sessionPath = ["$CARGO_HOME/bin"];
}; # };
}) # })
]; ];
} }