2021-04-17 01:38:23 +03:00
|
|
|
{ config, lib, pkgs, util, inputs, ... }:
|
2020-11-21 23:54:07 +03:00
|
|
|
let
|
|
|
|
inherit (util) pkgBin;
|
|
|
|
inherit (lib) fileContents mkIf;
|
|
|
|
|
2020-12-23 19:54:51 +03:00
|
|
|
in
|
|
|
|
{
|
2020-11-21 23:54:07 +03:00
|
|
|
imports = [ ../local/locale.nix ];
|
|
|
|
|
|
|
|
boot = {
|
|
|
|
tmpOnTmpfs = true;
|
|
|
|
loader.systemd-boot.configurationLimit = 10;
|
|
|
|
};
|
|
|
|
|
|
|
|
console.font = "7x14";
|
|
|
|
|
2020-12-23 19:54:51 +03:00
|
|
|
environment =
|
|
|
|
let
|
|
|
|
coreBin = v: "${pkgs.coreutils}/bin/${v}";
|
|
|
|
nixBin = "${config.nix.package}/bin/nix";
|
|
|
|
in
|
|
|
|
{
|
|
|
|
systemPackages = with pkgs; [
|
|
|
|
bat
|
|
|
|
exa
|
|
|
|
ripgrep
|
|
|
|
curl
|
|
|
|
git
|
|
|
|
gptfdisk
|
|
|
|
iputils
|
|
|
|
lm_sensors
|
|
|
|
mkpasswd
|
|
|
|
ntfs3g
|
2021-03-02 18:54:39 +03:00
|
|
|
zoxide
|
|
|
|
bottom
|
|
|
|
tealdeer
|
2021-03-12 00:14:30 +03:00
|
|
|
amber
|
|
|
|
unzip
|
2021-04-15 16:01:22 +03:00
|
|
|
grit
|
2020-12-23 19:54:51 +03:00
|
|
|
];
|
|
|
|
|
|
|
|
shellAliases =
|
|
|
|
let ifSudo = string: mkIf config.security.sudo.enable string;
|
|
|
|
in
|
|
|
|
{
|
2021-04-15 17:13:03 +03:00
|
|
|
gtw = "${pkgBin "grit"} tree wnv";
|
|
|
|
gt = pkgBin "grit";
|
|
|
|
|
2020-12-23 19:54:51 +03:00
|
|
|
g = pkgBin "git";
|
|
|
|
|
|
|
|
grep = "${pkgs.ripgrep}/bin/rg";
|
|
|
|
cat = "${pkgBin "bat"} -pp --theme=base16";
|
|
|
|
c = "${pkgBin "bat"} -pp --theme=base16";
|
|
|
|
|
|
|
|
df = "${coreBin "df"} -h";
|
|
|
|
free = "${pkgs.procps}/bin/free -h";
|
|
|
|
|
|
|
|
ls = pkgBin "exa";
|
|
|
|
l = "${pkgBin "exa"} -lhg --git";
|
|
|
|
la = "${pkgBin "exa"} -lhg --git -a";
|
|
|
|
t = "${pkgBin "exa"} -lhg --git -T";
|
|
|
|
ta = "${pkgBin "exa"} -lhg --git -a -T";
|
|
|
|
|
|
|
|
n = nixBin;
|
|
|
|
nf = "${nixBin} flake";
|
|
|
|
nfc = "${nixBin} flake check";
|
|
|
|
nfu = "${nixBin} flake update";
|
|
|
|
nfua = "${nixBin} flake update --recreate-lock-file";
|
|
|
|
nfs = "${nixBin} flake show";
|
|
|
|
np = "${nixBin} profile";
|
|
|
|
npl = "${nixBin} profile info";
|
|
|
|
npi = "${nixBin} profile install";
|
|
|
|
npr = "${nixBin} profile remove";
|
|
|
|
nsh = "${nixBin} shell";
|
|
|
|
ndev = "${nixBin} develop";
|
|
|
|
|
|
|
|
nosce = "cd /etc/nixos";
|
|
|
|
nosr = ifSudo "sudo nixos-rebuild --fast";
|
|
|
|
nosrs = ifSudo "sudo nixos-rebuild switch";
|
|
|
|
nosrb = ifSudo "sudo nixos-rebuild boot";
|
|
|
|
nosrt = ifSudo "sudo nixos-rebuild test";
|
|
|
|
ncg = ifSudo "sudo nix-collect-garbage";
|
|
|
|
ncgdo = ifSudo "sudo nix-collect-garbage --delete-old";
|
|
|
|
|
2021-03-02 18:54:39 +03:00
|
|
|
top = "${pkgs.bottom}/bin/btm";
|
2020-12-23 19:54:51 +03:00
|
|
|
|
|
|
|
myip =
|
|
|
|
"${pkgs.dnsutils}/bin/dig +short myip.opendns.com @208.67.222.222 2>&1";
|
2021-04-17 01:38:23 +03:00
|
|
|
|
|
|
|
sys-repl =
|
|
|
|
"source /etc/set-environment && ${nixBin} repl ${./..}/repl.nix";
|
2020-12-23 19:54:51 +03:00
|
|
|
};
|
2020-11-21 23:54:07 +03:00
|
|
|
};
|
|
|
|
|
2021-04-17 01:38:23 +03:00
|
|
|
nix =
|
|
|
|
let
|
|
|
|
flakes = lib.filterAttrs (name: value: value ? outputs) inputs;
|
|
|
|
|
|
|
|
nixPath = lib.mapAttrsToList
|
|
|
|
(name: _: "${name}=${inputs.${name}}")
|
|
|
|
flakes;
|
|
|
|
|
|
|
|
registry = builtins.mapAttrs
|
|
|
|
(name: v: { flake = v; })
|
|
|
|
flakes;
|
|
|
|
in
|
|
|
|
{
|
|
|
|
package = pkgs.nixFlakes;
|
|
|
|
autoOptimiseStore = true;
|
|
|
|
optimise.automatic = true;
|
|
|
|
allowedUsers = [ "@wheel" ];
|
|
|
|
trustedUsers = [ "root" "@wheel" ];
|
|
|
|
extraOptions = ''
|
|
|
|
experimental-features = nix-command flakes ca-references
|
|
|
|
'';
|
|
|
|
nixPath = nixPath ++ [ "repl=${./..}/repl.nix" ];
|
|
|
|
inherit registry;
|
|
|
|
};
|
2020-11-21 23:54:07 +03:00
|
|
|
|
|
|
|
# security = {
|
|
|
|
# hideProcessInformation = true;
|
|
|
|
# protectKernelImage = true;
|
|
|
|
# };
|
|
|
|
|
|
|
|
programs.command-not-found.enable = false;
|
|
|
|
|
|
|
|
home-manager.useGlobalPkgs = true;
|
|
|
|
home-manager.useUserPackages = true;
|
|
|
|
|
|
|
|
users.mutableUsers = false;
|
|
|
|
}
|