NixOS + home-manager configs, mirrored from GitLab SaaS.
gitlab.com/andreijiroh-dev/nixops-config
nix-flake
nixos
home-manager
nixpkgs
nix-flakes
1# One Nix file to import all the base configs without cluttering the per-host
2# imports, alongside a minimal base packages and some tweaks at sysctls.
3{
4 pkgs,
5 config,
6 ...
7}:
8
9{
10 # import configs first
11 imports = [
12 # module opts
13 ./options.nix
14 # nix stuff and systemd
15 ./nix.nix
16 ./locale.nix
17 ./networking.nix
18 ./systemd.nix
19 ./agenix.nix
20 # shells and dev tools
21 ./gnupg.nix
22 ./shells/bash.nix
23 ./shells/custom-prompts.nix
24 ./vscode/main.nix
25 ./server/ssh.nix
26 ./server/tailscale.nix
27 # desktop stuff
28 ./1password.nix
29 ./appimages.nix
30 ];
31
32 # and then the base packages itself
33 config = {
34 environment.systemPackages = with pkgs; [
35 # tmux and friendos
36 byobu
37 tmux
38 htop
39 btop
40
41 # git tools
42 gitFull
43
44 # misc tools and utils
45 curl
46 wget
47 fastfetch
48 jq
49 rclone
50 ntfsprogs
51
52 # TUI-based text editors
53 nano
54 neovim
55 emacs
56
57 # shell prompt customizations
58 starship
59 oh-my-posh # as backup lol
60
61 # iykyk secretops (see also agenix.nix)
62 age
63 rage
64 ];
65
66 # home-manager stuff
67 home-manager.useGlobalPkgs = true;
68 home-manager.useUserPackages = true;
69
70 # nix-ld flake opts
71 programs.nix-ld.dev = {
72 enable = true;
73 };
74
75 # sysctl stuff
76 boot.kernel.sysctl = {
77 "net.ipv4.ip_forward" = 1;
78 "net.ipv6.conf.all.forwarding" = 1;
79 "vm.swappiness" = 60;
80 };
81 };
82}