profiles/common/base.nix (view raw)
1{ pkgs, unstable-pkgs, ... }:
2{
3 nix = {
4 package = unstable-pkgs.lix;
5
6 settings.experimental-features = [
7 "nix-command"
8 "flakes"
9 ];
10 gc = {
11 automatic = true;
12 dates = "monthly";
13 };
14
15 registry.nixpkgs-unstable = {
16 from = {
17 id = "nixpkgs-unstable";
18 type = "indirect";
19 };
20 to = {
21 type = "github";
22 owner = "NixOS";
23 repo = "nixpkgs";
24 ref = "nixpkgs-unstable";
25 };
26 };
27 };
28
29 boot.loader.systemd-boot.enable = true;
30 boot.loader.efi.canTouchEfiVariables = true;
31 boot.kernelPackages = pkgs.linuxPackages_latest;
32
33 nixpkgs.config.allowUnfree = true;
34 programs.nix-ld.enable = true;
35
36 security.sudo.wheelNeedsPassword = false;
37 services.openssh.enable = true;
38 services.tailscale.enable = true;
39
40 programs.zsh.enable = true;
41 programs.git.enable = true;
42
43 programs.vim = {
44 enable = true;
45 defaultEditor = true;
46 };
47
48 environment.shells = [ pkgs.zsh ];
49 environment.variables = {
50 EDITOR = "vim";
51 VISUAL = "vim";
52 SYSTEMD_EDITOR = "vim";
53 };
54
55 environment.systemPackages =
56 with pkgs;
57 [
58 gcc
59 binutils
60 pkg-config
61 glibc
62 gnumake
63 cmake
64 sqlite-interactive
65
66 vim
67 wget
68 htop
69 tmux
70 ]
71 ++ [
72 unstable-pkgs.jujutsu
73 ];
74}