Files
nixos-config/hosts/desktop/config.nix
2025-01-06 16:26:44 -05:00

78 lines
1.8 KiB
Nix
Executable File

{ pkgs, username, ... }:
let rsh = pkgs.rustPlatform.buildRustPackage {
pname = "rsh";
version = "0.0.1";
buildType = "debug";
src = ../../overlay/pkgs/rsh/rsh;
cargoHash = "sha256-8Lb7AohSah2A7pcoT2JPDgza0LfIyD897yj4QHNklDw=";
cargoLock = {
lockFile = ../../overlay/pkgs/rsh/rsh/Cargo.lock;
};
buildInputs = [ ];
meta = {
description = "Modern shell scripting";
homepage = "https://github.com/pagedMov/rsh";
license = pkgs.lib.licenses.gpl3;
maintainers = with pkgs.lib.maintainers; [ pagedMov ];
};
passthru = {
shellPath = "/bin/rsh";
};
};
in
{
imports = [ ./hardware.nix ];
# My module options
movOpts = {
sysEnv = {
issue.enable = true;
sddmConfig.enable = false;
stylixConfig.enable = true;
nixSettings.enable = true;
#consoleSettings.enable = true;
};
hardwareCfg = {
networkModule.enable = true;
bootLoader.enable = true;
};
softwareCfg = {
gamingPkgs.enable = true;
steamConfig.enable = true;
sysPkgs.enable = true;
sysProgs.enable = true;
sysServices.enable = true;
virtConfig.enable = true;
};
};
environment = {
variables = { PATH = "${pkgs.clang-tools}/bin:$PATH"; };
shells = [ rsh pkgs.zsh pkgs.bash ];
};
users = {
groups.persist = { };
users = {
root.initialPassword = "1234";
${username} = {
isNormalUser = true;
initialPassword = "1234";
shell = pkgs.zsh;
extraGroups = [ "input" "wheel" "persist" "libvirtd" ];
};
};
};
security.sudo.extraConfig = ''
${username} ALL=(ALL) NOPASSWD: /etc/profiles/per-user/${username}/bin/rebuild
'';
nix.settings.allowed-users = [ "${username}" ];
time.timeZone = "America/New_York";
}