things
This commit is contained in:
parent
e77d8b492d
commit
7f7d9af446
7 changed files with 75 additions and 16 deletions
|
@ -7,25 +7,30 @@
|
|||
cfg = config.xun.develop;
|
||||
in {
|
||||
options.xun.develop = let
|
||||
enableOption = name: default: lib.mkEnableOption name // {inherit default;};
|
||||
enableOption = default:
|
||||
lib.mkOption {
|
||||
inherit default;
|
||||
type = lib.types.bool;
|
||||
};
|
||||
in {
|
||||
enable = enableOption "develop" false;
|
||||
git.enable = enableOption "git" true;
|
||||
nix.enable = enableOption "nix" true;
|
||||
tools.enable = enableOption "tools" true;
|
||||
docs.enable = enableOption "man caches" false;
|
||||
devenv.enable = enableOption "devenv" true;
|
||||
enable = enableOption false;
|
||||
git.enable = enableOption true;
|
||||
nix.enable = enableOption true;
|
||||
tools.enable = enableOption true;
|
||||
docs.enable = enableOption false;
|
||||
devenv.enable = enableOption true;
|
||||
lang = {
|
||||
c.enable = enableOption "clangd" false;
|
||||
csharp.enable = enableOption "csharp" false;
|
||||
zig.enable = enableOption "zig" false;
|
||||
c.enable = enableOption false;
|
||||
csharp.enable = enableOption false;
|
||||
shell.enable = enableOption false;
|
||||
zig.enable = enableOption false;
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable (
|
||||
lib.mkMerge [
|
||||
(lib.mkIf cfg.nix.enable {
|
||||
home.packages = with pkgs; [nil nixd alejandra];
|
||||
home.packages = with pkgs; [nil nixd alejandra nixfmt-rfc-style];
|
||||
})
|
||||
(lib.mkIf cfg.tools.enable {
|
||||
home.packages = with pkgs; [tokei];
|
||||
|
@ -68,6 +73,12 @@ in {
|
|||
home.packages = with pkgs; [
|
||||
csharpier
|
||||
omnisharp-roslyn
|
||||
roslyn-ls
|
||||
];
|
||||
})
|
||||
(lib.mkIf cfg.lang.shell.enable {
|
||||
home.packages = with pkgs; [
|
||||
shellcheck
|
||||
];
|
||||
})
|
||||
(lib.mkIf cfg.lang.zig.enable {
|
||||
|
|
|
@ -1,7 +1,11 @@
|
|||
{pkgs, ...}: {
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
package = pkgs.emacs29-pgtk; # uses xwayland, use pgtk for native wayland or pkgs.emacs if using daemon
|
||||
extraPackages = e: [e.vterm];
|
||||
package = pkgs.emacs29-pgtk;
|
||||
extraPackages = e: [
|
||||
e.vterm
|
||||
pkgs.texlive.combined.scheme-medium
|
||||
pkgs.sqlite
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
imports = [
|
||||
self.homeManagerModules.xun
|
||||
inputs.small-nvim.homeManagerModules.small-nvim
|
||||
../../editors/emacs.nix
|
||||
# ../../terminal/shell/zsh.nix
|
||||
# ../../terminal/programs
|
||||
# ../../terminal/programs/lazygit.nix
|
||||
|
@ -22,7 +23,12 @@
|
|||
};
|
||||
wakatime.enable = false;
|
||||
};
|
||||
develop.enable = true;
|
||||
develop = {
|
||||
enable = true;
|
||||
lang = {
|
||||
csharp.enable = true;
|
||||
};
|
||||
};
|
||||
desktop = {
|
||||
xdg.enable = true;
|
||||
};
|
||||
|
|
|
@ -166,6 +166,7 @@ in {
|
|||
flake.nixosConfigurations = let
|
||||
l = inputs.nixpkgs.lib;
|
||||
in
|
||||
## TODO: make use of nixpkgs.pkgs for per-system pkgs without colmena
|
||||
builtins.mapAttrs (_: v:
|
||||
l.nixosSystem {
|
||||
inherit specialArgs;
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
imports = [
|
||||
./wsl.nix
|
||||
./hardware.nix
|
||||
./fonts.nix
|
||||
];
|
||||
|
||||
networking.hostName = "kidney";
|
||||
|
|
33
hosts/kidney/fonts.nix
Normal file
33
hosts/kidney/fonts.nix
Normal file
|
@ -0,0 +1,33 @@
|
|||
{pkgs, ...}: {
|
||||
fonts = {
|
||||
packages = with pkgs; [
|
||||
font-awesome
|
||||
iosevka
|
||||
emacs-all-the-icons-fonts
|
||||
(stdenv.mkDerivation {
|
||||
# font piracy? i would never
|
||||
pname = "Cartograph-CF";
|
||||
version = "0.1";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "xiyaowong";
|
||||
repo = "Cartograph-CF";
|
||||
rev = "619de85c103dbd5c150e1d5df039357f8ac2ed52";
|
||||
hash = "sha256-NVqHxLQZnHb0lMjODkaDwSoglGPkUVJHL1xTmASoER4=";
|
||||
};
|
||||
dontBuild = true;
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/fonts
|
||||
cp -r $src $out/share/fonts
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
})
|
||||
];
|
||||
enableDefaultPackages = false;
|
||||
fontconfig.defaultFonts = {
|
||||
monospace = ["Iosevka"];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -3,6 +3,9 @@
|
|||
inputs.nixos-wsl.nixosModules.default
|
||||
];
|
||||
|
||||
wsl.enable = true;
|
||||
wsl.defaultUser = "xun";
|
||||
wsl = {
|
||||
enable = true;
|
||||
defaultUser = "xun";
|
||||
startMenuLaunchers = true;
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue