2023-08-17 19:42:16 +04:00
|
|
|
{
|
2023-08-18 12:46:05 +04:00
|
|
|
lib,
|
|
|
|
pkgs,
|
|
|
|
config,
|
|
|
|
modulesPath,
|
|
|
|
inputs,
|
|
|
|
outputs,
|
|
|
|
...
|
|
|
|
}: {
|
2023-08-17 19:42:16 +04:00
|
|
|
imports = [
|
2023-08-18 12:46:05 +04:00
|
|
|
inputs.home-manager.nixosModules.default
|
|
|
|
"${modulesPath}/profiles/minimal.nix"
|
|
|
|
outputs.nixosModules.shell
|
|
|
|
outputs.nixosModules.hardware
|
|
|
|
outputs.nixosModules.dev
|
|
|
|
outputs.nixosModules.media
|
2023-08-17 19:42:16 +04:00
|
|
|
];
|
|
|
|
|
|
|
|
wsl = {
|
|
|
|
enable = true;
|
2023-08-17 20:31:59 +04:00
|
|
|
wslConf.automount.root = "/mnt";
|
2023-08-17 19:42:16 +04:00
|
|
|
defaultUser = "sako";
|
|
|
|
startMenuLaunchers = true;
|
|
|
|
|
|
|
|
# Native systemd for wsl
|
|
|
|
nativeSystemd = true;
|
|
|
|
|
|
|
|
# Enable native Docker support
|
|
|
|
# docker-native.enable = true;
|
|
|
|
|
|
|
|
# Enable integration with Docker Desktop (needs to be installed)
|
|
|
|
# docker-desktop.enable = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
users.users.sako.isNormalUser = true;
|
|
|
|
|
|
|
|
networking.hostName = "sakowsl";
|
|
|
|
|
|
|
|
# Enable nix flakes
|
|
|
|
nix.package = pkgs.nixFlakes;
|
|
|
|
nix.extraOptions = ''
|
|
|
|
experimental-features = nix-command flakes
|
|
|
|
'';
|
2023-08-18 12:46:05 +04:00
|
|
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
2023-08-17 20:31:59 +04:00
|
|
|
|
|
|
|
# Home manager setup
|
|
|
|
home-manager.useUserPackages = true;
|
2023-08-18 12:46:05 +04:00
|
|
|
home-manager.users.sako = {pkgs, ...}: {
|
|
|
|
home.stateVersion = "22.05";
|
|
|
|
home.packages = [];
|
|
|
|
home.username = "sako";
|
|
|
|
home.homeDirectory = "/home/sako";
|
2023-08-18 12:47:35 +04:00
|
|
|
xdg.configFile.git = {
|
|
|
|
source = ../../config/git;
|
|
|
|
};
|
2023-08-18 12:46:05 +04:00
|
|
|
};
|
2023-08-17 20:31:59 +04:00
|
|
|
|
|
|
|
# bare minimum
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
vim # backup
|
|
|
|
wget #double u get
|
|
|
|
killall # die processes
|
|
|
|
unzip # zip file
|
|
|
|
gh # github
|
|
|
|
htop # htop
|
|
|
|
tree # trees
|
|
|
|
];
|
|
|
|
# you phisiclally cannot live without this
|
|
|
|
# litearlly! ! ! ! ! !
|
|
|
|
programs.gnupg.agent = {
|
|
|
|
enable = true;
|
2023-08-19 10:57:39 +04:00
|
|
|
pinentryFlavor = "gnome3";
|
2023-08-17 20:31:59 +04:00
|
|
|
# enableSSHSupport = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
environment.noXlibs = lib.mkForce false;
|
|
|
|
|
|
|
|
programs.git = {
|
|
|
|
enable = true;
|
|
|
|
package = pkgs.gitFull;
|
|
|
|
};
|
|
|
|
|
|
|
|
modules = {
|
|
|
|
dev = {
|
2023-08-18 12:46:05 +04:00
|
|
|
editors = {
|
|
|
|
nvim.enable = true;
|
|
|
|
};
|
|
|
|
cc.enable = true;
|
|
|
|
nil.enable = true;
|
|
|
|
python.enable = true;
|
|
|
|
rust.enable = true;
|
|
|
|
javascript.enable = true;
|
|
|
|
};
|
2023-08-17 20:31:59 +04:00
|
|
|
shell = {
|
|
|
|
zsh.enable = true;
|
2023-08-18 12:33:14 +04:00
|
|
|
tmux.enable = true;
|
|
|
|
ranger.enable = true;
|
|
|
|
nix = {
|
|
|
|
optimize.enable = true;
|
|
|
|
search.enable = true;
|
|
|
|
};
|
2023-08-17 20:31:59 +04:00
|
|
|
};
|
|
|
|
};
|
2023-08-17 19:42:16 +04:00
|
|
|
|
|
|
|
system.stateVersion = "22.05";
|
|
|
|
}
|