d7e2c0a924
Will this ever change? No like likely, but I do think that this is the correct way to do this.
36 lines
702 B
Nix
36 lines
702 B
Nix
{ config, lib, pkgs, user, ... }:
|
|
let
|
|
this = config.my.lang.golang;
|
|
graphical = config.my.graphical;
|
|
in
|
|
with lib; {
|
|
options = {
|
|
my.lang.golang.enable = mkOption {
|
|
default = graphical.enable;
|
|
type = with types; bool;
|
|
};
|
|
};
|
|
|
|
config = mkIf this.enable {
|
|
home-manager.users."${user.name}" = {
|
|
programs.go = {
|
|
enable = true;
|
|
goPath = ".local/go";
|
|
goBin = ".local/bin.go";
|
|
};
|
|
|
|
home.packages = with pkgs; [
|
|
air
|
|
gocode
|
|
golangci-lint
|
|
gomodifytags
|
|
gomodifytags
|
|
gopls
|
|
gore
|
|
gotests
|
|
];
|
|
};
|
|
environment.systemPackages = with pkgs; [ gcc gccgo go libcap ];
|
|
};
|
|
}
|