summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--darwinConfigurations/mairon/default.nix3
-rw-r--r--flake.lock496
-rw-r--r--flake.nix37
-rw-r--r--modules/common/alacritty.nix (renamed from modules/nixfiles/alacritty.nix)0
-rw-r--r--modules/common/aria2.nix (renamed from modules/nixfiles/aria2.nix)0
-rw-r--r--modules/common/bat.nix (renamed from modules/nixfiles/bat.nix)0
-rw-r--r--modules/common/beets.nix (renamed from modules/nixfiles/beets.nix)0
-rw-r--r--modules/common/chromium.nix (renamed from modules/nixfiles/chromium.nix)0
-rw-r--r--modules/common/common/default.nix (renamed from modules/nixfiles/common/default.nix)0
-rw-r--r--modules/common/common/documentation.nix (renamed from modules/nixfiles/common/documentation.nix)0
-rw-r--r--modules/common/common/home-manager.nix (renamed from modules/nixfiles/common/home-manager.nix)0
-rw-r--r--modules/common/common/locale.nix (renamed from modules/nixfiles/common/locale.nix)0
-rw-r--r--modules/common/common/networking.nix (renamed from modules/nixfiles/common/networking.nix)0
-rw-r--r--modules/common/common/nix/default.nix (renamed from modules/nixfiles/common/nix/default.nix)6
-rw-r--r--modules/common/common/nix/patches/alejandra-no-ads.patch (renamed from modules/nixfiles/common/nix/patches/alejandra-no-ads.patch)0
-rw-r--r--modules/common/common/shell/default.nix (renamed from modules/nixfiles/common/shell/default.nix)13
-rw-r--r--modules/common/common/shell/functions.bash (renamed from modules/nixfiles/common/shell/functions.bash)0
-rw-r--r--modules/common/common/users.nix (renamed from modules/nixfiles/common/users.nix)0
-rw-r--r--modules/common/curl.nix (renamed from modules/nixfiles/curl.nix)0
-rw-r--r--modules/common/default.nix (renamed from modules/nixfiles/default.nix)2
-rw-r--r--modules/common/direnv.nix (renamed from modules/nixfiles/direnv.nix)0
-rw-r--r--modules/common/emacs/default.nix163
-rw-r--r--modules/common/emacs/doom/config.el (renamed from modules/nixfiles/emacs/doom/config.el)14
-rw-r--r--modules/common/emacs/doom/init.el (renamed from modules/nixfiles/emacs/doom/init.el)24
-rw-r--r--modules/common/emacs/doom/packages.el (renamed from modules/nixfiles/emacs/doom/packages.el)2
-rw-r--r--modules/common/fonts.nix (renamed from modules/nixfiles/fonts.nix)0
-rw-r--r--modules/common/git.nix (renamed from modules/nixfiles/git.nix)0
-rw-r--r--modules/common/gnupg.nix (renamed from modules/nixfiles/gnupg.nix)0
-rw-r--r--modules/common/htop.nix (renamed from modules/nixfiles/htop.nix)0
-rw-r--r--modules/common/mpv.nix (renamed from modules/nixfiles/mpv.nix)0
-rw-r--r--modules/common/nmap.nix (renamed from modules/nixfiles/nmap.nix)0
-rw-r--r--modules/common/openconnect.nix (renamed from modules/nixfiles/openconnect.nix)0
-rw-r--r--modules/common/openssh.nix (renamed from modules/nixfiles/openssh.nix)0
-rw-r--r--modules/common/password-store.nix (renamed from modules/nixfiles/password-store.nix)0
-rw-r--r--modules/common/profiles/default.nix (renamed from modules/nixfiles/profiles/default.nix)0
-rw-r--r--modules/common/profiles/dev/containers.nix (renamed from modules/nixfiles/profiles/dev/containers.nix)2
-rw-r--r--modules/common/profiles/dev/default.nix (renamed from modules/nixfiles/profiles/dev/default.nix)0
-rw-r--r--modules/common/profiles/dev/editorconfig.ini (renamed from modules/nixfiles/profiles/dev/editorconfig.ini)0
-rw-r--r--modules/common/profiles/dev/gdbinit (renamed from modules/nixfiles/profiles/dev/gdbinit)0
-rw-r--r--modules/common/profiles/dev/ghci.conf (renamed from modules/nixfiles/profiles/dev/ghci.conf)0
-rw-r--r--modules/common/profiles/dev/pystartup.py (renamed from modules/nixfiles/profiles/dev/pystartup.py)0
-rw-r--r--modules/common/profiles/dev/sql.nix (renamed from modules/nixfiles/profiles/dev/sql.nix)0
-rw-r--r--modules/common/profiles/headful.nix (renamed from modules/nixfiles/profiles/headful.nix)1
-rw-r--r--modules/common/profiles/headless.nix (renamed from modules/nixfiles/profiles/headless.nix)0
-rw-r--r--modules/common/qutebrowser.nix (renamed from modules/nixfiles/qutebrowser.nix)0
-rw-r--r--modules/common/subversion.nix (renamed from modules/nixfiles/subversion.nix)0
-rw-r--r--modules/common/tmux.nix (renamed from modules/nixfiles/tmux.nix)0
-rw-r--r--modules/common/vim/default.nix (renamed from modules/nixfiles/vim/default.nix)39
-rw-r--r--modules/common/vim/rc.vim (renamed from modules/nixfiles/vim/rc.vim)5
-rw-r--r--modules/common/vscode.nix (renamed from modules/nixfiles/vscode.nix)0
-rw-r--r--modules/common/wget.nix (renamed from modules/nixfiles/wget.nix)0
-rw-r--r--modules/common/zathura.nix (renamed from modules/nixfiles/zathura.nix)5
-rw-r--r--modules/nixfiles/emacs/default.nix137
-rw-r--r--modules/nixos/default.nix2
-rw-r--r--modules/nixos/emacs.nix2
-rw-r--r--modules/nixos/firefox/default.nix (renamed from modules/nixfiles/firefox/default.nix)0
-rw-r--r--modules/nixos/firefox/userChrome.css (renamed from modules/nixfiles/firefox/userChrome.css)0
-rw-r--r--modules/nixos/firefox/userContent.css (renamed from modules/nixfiles/firefox/userContent.css)0
-rw-r--r--modules/nixos/git/default.nix57
-rw-r--r--modules/nixos/mpd.nix (renamed from modules/nixfiles/mpd.nix)0
-rw-r--r--modules/nixos/openssh.nix18
-rw-r--r--modules/nixos/profiles/headful.nix1
62 files changed, 329 insertions, 700 deletions
diff --git a/darwinConfigurations/mairon/default.nix b/darwinConfigurations/mairon/default.nix
index 31ab461..f414447 100644
--- a/darwinConfigurations/mairon/default.nix
+++ b/darwinConfigurations/mairon/default.nix
@@ -10,9 +10,10 @@ with lib; {
# TODO Make this per-directory/per-remote.
hm = {
- packages = with pkgs; [
+ home.packages = with pkgs; [
ansible
ansible-lint
+ logcli
];
programs.git = {
diff --git a/flake.lock b/flake.lock
index fb9d97f..72ae9ea 100644
--- a/flake.lock
+++ b/flake.lock
@@ -122,16 +122,50 @@
"107.0": {
"flake": false,
"locked": {
- "lastModified": 1668912908,
- "narHash": "sha256-LeSJvxkTU4491rmkznbIm3l/ZiC+876OsLfej2Aj4Ro=",
+ "lastModified": 1668990997,
+ "narHash": "sha256-TZKoArzALuCNWNBq3un091eR3uRLAi59z/AZ64Xg3BQ=",
"owner": "arkenfox",
"repo": "user.js",
- "rev": "e8ea7f3f23b9a7f257b61ad7553b4b64b3965ddc",
+ "rev": "cc0f05388f6c721c358e89372caac604f84fd0d9",
"type": "github"
},
"original": {
"owner": "arkenfox",
- "ref": "refs/pull/1579/head",
+ "ref": "107.0",
+ "repo": "user.js",
+ "type": "github"
+ }
+ },
+ "108.0": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1673196505,
+ "narHash": "sha256-YsQbH6bqp2I52meYf0X0DQpwLlDdu5pK9XHMT/9RqOg=",
+ "owner": "arkenfox",
+ "repo": "user.js",
+ "rev": "62a68f08147123b0c2c288ffdecc3f03e4ab1ae8",
+ "type": "github"
+ },
+ "original": {
+ "owner": "arkenfox",
+ "ref": "108.0",
+ "repo": "user.js",
+ "type": "github"
+ }
+ },
+ "109.0": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1675728165,
+ "narHash": "sha256-ebSx6DaXoGKcCoK6UcDnWvdAW6J2X6pJRPD1Pw7UNOw=",
+ "owner": "arkenfox",
+ "repo": "user.js",
+ "rev": "73884850632ffe284f76881786f7d5903b917f58",
+ "type": "github"
+ },
+ "original": {
+ "owner": "arkenfox",
+ "ref": "109.0",
"repo": "user.js",
"type": "github"
}
@@ -263,11 +297,11 @@
]
},
"locked": {
- "lastModified": 1676153903,
- "narHash": "sha256-uetRyjgMiZCs6srmZ10M764Vn7F53M9mVuqnzHmyBqU=",
+ "lastModified": 1676599101,
+ "narHash": "sha256-CKS6UsOGhoNxGDBt9wyFiWHvtng/+BMAJ4G8ahhe1DE=",
"owner": "ryantm",
"repo": "agenix",
- "rev": "ea17cc71b4e1bc5b2601f210a1c85db9453ad723",
+ "rev": "de657061b13cf329c57a1a9730a5049a971b40b3",
"type": "github"
},
"original": {
@@ -287,6 +321,8 @@
"105.0": "105.0",
"106.0": "106.0",
"107.0": "107.0",
+ "108.0": "108.0",
+ "109.0": "109.0",
"93.0": "93.0",
"94.0": "94.0",
"95.0": "95.0",
@@ -300,16 +336,16 @@
]
},
"locked": {
- "lastModified": 1675676290,
- "narHash": "sha256-ho4MyqHPrUBQqBTZl0X0aTliloKQNk1iUbwGgkvUw4g=",
+ "lastModified": 1676708317,
+ "narHash": "sha256-QqJqtLcDPFGhOg1v9EJzs2H7G/g3IKtewnhRgNpKy5U=",
"owner": "dwarfmaster",
"repo": "arkenfox-nixos",
- "rev": "5985ba832c841af5805c89d64f78bfae2a0f331f",
+ "rev": "fd696871bf40bb7c4c8b3994124d66a459850780",
"type": "github"
},
"original": {
"owner": "dwarfmaster",
- "ref": "5985ba832c841af5805c89d64f78bfae2a0f331f",
+ "ref": "main",
"repo": "arkenfox-nixos",
"type": "github"
}
@@ -414,39 +450,6 @@
"type": "github"
}
},
- "doom-emacs": {
- "flake": false,
- "locked": {
- "lastModified": 1662497747,
- "narHash": "sha256-4n7E1fqda7cn5/F2jTkOnKw1juG6XMS/FI9gqODL3aU=",
- "owner": "doomemacs",
- "repo": "doomemacs",
- "rev": "3853dff5e11655e858d0bfae64b70cb12ef685ac",
- "type": "github"
- },
- "original": {
- "owner": "doomemacs",
- "repo": "doomemacs",
- "rev": "3853dff5e11655e858d0bfae64b70cb12ef685ac",
- "type": "github"
- }
- },
- "doom-snippets": {
- "flake": false,
- "locked": {
- "lastModified": 1662645711,
- "narHash": "sha256-XKpPCtECGZQ5bFPPDUX3oAltXOJNwAI/OktxiLnADRE=",
- "owner": "doomemacs",
- "repo": "snippets",
- "rev": "03a62fe7edf7e87fdbd925713fbd3bf292d14b00",
- "type": "github"
- },
- "original": {
- "owner": "doomemacs",
- "repo": "snippets",
- "type": "github"
- }
- },
"emacs-overlay": {
"inputs": {
"flake-utils": [
@@ -457,11 +460,11 @@
]
},
"locked": {
- "lastModified": 1676398447,
- "narHash": "sha256-8pAf1ZkyDiFJPrfN7GM9f8kGWJx/AEkJu55GFvR5cbQ=",
+ "lastModified": 1676659814,
+ "narHash": "sha256-D58bW6z0NjqoRCQN8eTERkeN9hs6HBQufxaCPkmyPfs=",
"owner": "nix-community",
"repo": "emacs-overlay",
- "rev": "8d9eaa57b64e7fe74f29f4b7c6823a541bbf5556",
+ "rev": "ab0f3828a6305fe7fd8c4909e67c1c2107292486",
"type": "github"
},
"original": {
@@ -471,102 +474,6 @@
"type": "github"
}
},
- "emacs-so-long": {
- "flake": false,
- "locked": {
- "lastModified": 1575031854,
- "narHash": "sha256-xIa5zO0ZaToDrec1OFjBK6l39AbA4l/CE4LInVu2hi0=",
- "owner": "hlissner",
- "repo": "emacs-so-long",
- "rev": "ed666b0716f60e8988c455804de24b55919e71ca",
- "type": "github"
- },
- "original": {
- "owner": "hlissner",
- "repo": "emacs-so-long",
- "type": "github"
- }
- },
- "evil-escape": {
- "flake": false,
- "locked": {
- "lastModified": 1588439096,
- "narHash": "sha256-aB2Ge5o/93B18tPf4fN1c+O46CNh/nOqwLJbox4c8Gw=",
- "owner": "hlissner",
- "repo": "evil-escape",
- "rev": "819f1ee1cf3f69a1ae920e6004f2c0baeebbe077",
- "type": "github"
- },
- "original": {
- "owner": "hlissner",
- "repo": "evil-escape",
- "type": "github"
- }
- },
- "evil-markdown": {
- "flake": false,
- "locked": {
- "lastModified": 1626852210,
- "narHash": "sha256-HBBuZ1VWIn6kwK5CtGIvHM1+9eiNiKPH0GUsyvpUVN8=",
- "owner": "Somelauw",
- "repo": "evil-markdown",
- "rev": "8e6cc68af83914b2fa9fd3a3b8472573dbcef477",
- "type": "github"
- },
- "original": {
- "owner": "Somelauw",
- "repo": "evil-markdown",
- "type": "github"
- }
- },
- "evil-org-mode": {
- "flake": false,
- "locked": {
- "lastModified": 1607203864,
- "narHash": "sha256-JxwqVYDN6OIJEH15MVI6XOZAPtUWUhJQWHyzcrUvrFg=",
- "owner": "hlissner",
- "repo": "evil-org-mode",
- "rev": "a9706da260c45b98601bcd72b1d2c0a24a017700",
- "type": "github"
- },
- "original": {
- "owner": "hlissner",
- "repo": "evil-org-mode",
- "type": "github"
- }
- },
- "evil-quick-diff": {
- "flake": false,
- "locked": {
- "lastModified": 1575189609,
- "narHash": "sha256-oGzl1ayW9rIuq0haoiFS7RZsS8NFMdEA7K1BSozgnJU=",
- "owner": "rgrinberg",
- "repo": "evil-quick-diff",
- "rev": "69c883720b30a892c63bc89f49d4f0e8b8028908",
- "type": "github"
- },
- "original": {
- "owner": "rgrinberg",
- "repo": "evil-quick-diff",
- "type": "github"
- }
- },
- "explain-pause-mode": {
- "flake": false,
- "locked": {
- "lastModified": 1595842060,
- "narHash": "sha256-++znrjiDSx+cy4okFBBXUBkRFdtnE2x+trkmqjB3Njs=",
- "owner": "lastquestion",
- "repo": "explain-pause-mode",
- "rev": "2356c8c3639cbeeb9751744dbe737267849b4b51",
- "type": "github"
- },
- "original": {
- "owner": "lastquestion",
- "repo": "explain-pause-mode",
- "type": "github"
- }
- },
"flake-compat": {
"flake": false,
"locked": {
@@ -617,23 +524,6 @@
"type": "github"
}
},
- "format-all": {
- "flake": false,
- "locked": {
- "lastModified": 1581716637,
- "narHash": "sha256-ul7LCe60W8TIvUmUtZtZRo8489TK9iTPDsLHmzxY57M=",
- "owner": "lassik",
- "repo": "emacs-format-all-the-code",
- "rev": "47d862d40a088ca089c92cd393c6dca4628f87d3",
- "type": "github"
- },
- "original": {
- "owner": "lassik",
- "repo": "emacs-format-all-the-code",
- "rev": "47d862d40a088ca089c92cd393c6dca4628f87d3",
- "type": "github"
- }
- },
"gitignore": {
"inputs": {
"nixpkgs": [
@@ -665,11 +555,11 @@
]
},
"locked": {
- "lastModified": 1675935446,
- "narHash": "sha256-WajulTn7QdwC7QuXRBavrANuIXE5z+08EdxdRw1qsNs=",
+ "lastModified": 1676367705,
+ "narHash": "sha256-un5UbRat9TwruyImtwUGcKF823rCEp4fQxnsaLFL7CM=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "2dce7f1a55e785a22d61668516df62899278c9e4",
+ "rev": "da72e6fc6b7dc0c3f94edbd310aae7cd95c678b5",
"type": "github"
},
"original": {
@@ -727,57 +617,6 @@
"type": "github"
}
},
- "nix-doom-emacs": {
- "inputs": {
- "doom-emacs": "doom-emacs",
- "doom-snippets": "doom-snippets",
- "emacs-overlay": [
- "emacs-overlay"
- ],
- "emacs-so-long": "emacs-so-long",
- "evil-escape": "evil-escape",
- "evil-markdown": "evil-markdown",
- "evil-org-mode": "evil-org-mode",
- "evil-quick-diff": "evil-quick-diff",
- "explain-pause-mode": "explain-pause-mode",
- "flake-compat": [
- "flake-compat"
- ],
- "flake-utils": [
- "flake-utils"
- ],
- "format-all": "format-all",
- "nix-straight": "nix-straight",
- "nixpkgs": [
- "nixpkgs"
- ],
- "nose": "nose",
- "ob-racket": "ob-racket",
- "org": "org",
- "org-contrib": "org-contrib",
- "org-yt": "org-yt",
- "php-extras": "php-extras",
- "revealjs": "revealjs",
- "rotate-text": "rotate-text",
- "sln-mode": "sln-mode",
- "ts-fold": "ts-fold",
- "ws-butler": "ws-butler"
- },
- "locked": {
- "lastModified": 1675387812,
- "narHash": "sha256-fGjWMg97w1mP0cDIR9Y8qCa77sEtiIdYzqiRB+P2YcM=",
- "owner": "nix-community",
- "repo": "nix-doom-emacs",
- "rev": "8de922e4e23158790970a266234a853305b1928d",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "ref": "master",
- "repo": "nix-doom-emacs",
- "type": "github"
- }
- },
"nix-minecraft": {
"inputs": {
"flake-utils": [
@@ -788,11 +627,11 @@
]
},
"locked": {
- "lastModified": 1676339309,
- "narHash": "sha256-haiQG9mO6CWcY0+oecOtNiZkbFN5FslJhJKX43E9A4s=",
+ "lastModified": 1676598621,
+ "narHash": "sha256-635t9QFKNayo9QXamGBkvh3MbNPjkoRYrIYKz/mg720=",
"owner": "Infinidoge",
"repo": "nix-minecraft",
- "rev": "1787321cb4e13160086bb92280c83987d4e49234",
+ "rev": "60301861c5ea5d33ab6d4d06fd4d013ddb245b0e",
"type": "github"
},
"original": {
@@ -802,22 +641,6 @@
"type": "github"
}
},
- "nix-straight": {
- "flake": false,
- "locked": {
- "lastModified": 1666982610,
- "narHash": "sha256-xjgIrmUsekVTE+MpZb5DMU8DQf9DJ/ZiR0o30L9/XCc=",
- "owner": "nix-community",
- "repo": "nix-straight.el",
- "rev": "ad10364d64f472c904115fd38d194efe1c3f1226",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nix-straight.el",
- "type": "github"
- }
- },
"nixos-hardware": {
"locked": {
"lastModified": 1675933606,
@@ -836,11 +659,11 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1676209454,
- "narHash": "sha256-alj9mBkV9U6tTPDK026671D2pesLSYZZc9j5dBZJ9f0=",
+ "lastModified": 1676549890,
+ "narHash": "sha256-sq/WcOEAl7gWrrfGkWdnyYazRyTf+enEim/o6LOQzI8=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "8c619a1f3cedd16ea172146e30645e703d21bfc1",
+ "rev": "8c66bd1b68f4708c90dcc97c6f7052a5a7b33257",
"type": "github"
},
"original": {
@@ -852,11 +675,11 @@
},
"nixpkgs-master": {
"locked": {
- "lastModified": 1676398261,
- "narHash": "sha256-ILP8TnCgfmb1Aal/9f2YgeoEzsJwE85lsLsChu1cbcU=",
+ "lastModified": 1676662455,
+ "narHash": "sha256-paR22nF+MrW/iPqtf3EvSsQLkzNh+hftvclG9qif8gA=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "3bee4ab8db244db328b41ae5f4fbce19b658f1be",
+ "rev": "505feabc489e0ddb074f444ac0b1fc792c8da4a8",
"type": "github"
},
"original": {
@@ -868,11 +691,11 @@
},
"nixpkgs-stable": {
"locked": {
- "lastModified": 1676396097,
- "narHash": "sha256-uBimVNocWHZ/fTxTZu5IMHjiDVOPqlnKqgeZRZNbB4c=",
+ "lastModified": 1676656495,
+ "narHash": "sha256-ON7OvLv+U+hXPVfaQG4Ku1d1PWO+ffU7C8SvR8ByxYk=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "75e0a511d0e6edaff6e3f5de0815102d3c640d08",
+ "rev": "8a3f39ad8c03aa91f7de41ea5d854d0a985e0e9b",
"type": "github"
},
"original": {
@@ -916,29 +739,13 @@
"type": "github"
}
},
- "nose": {
- "flake": false,
- "locked": {
- "lastModified": 1400604510,
- "narHash": "sha256-daEi8Kta1oGaDEmUUDDQMahTTPOpvNpDKk22rlr7cB0=",
- "owner": "emacsattic",
- "repo": "nose",
- "rev": "f8528297519eba911696c4e68fa88892de9a7b72",
- "type": "github"
- },
- "original": {
- "owner": "emacsattic",
- "repo": "nose",
- "type": "github"
- }
- },
"nur": {
"locked": {
- "lastModified": 1676385929,
- "narHash": "sha256-qaIM1TBKKQ+FTTuUpr2AfUP8NQ6q8QwL1BEaYHG9Gls=",
+ "lastModified": 1676658325,
+ "narHash": "sha256-s+SFI821NUXxuQqnVeBmHq1tEH5Mg1pYmrlDnxJ8PAo=",
"owner": "nix-community",
"repo": "NUR",
- "rev": "32f2fc312516b3b2b47708105c8fc87cea1df5d2",
+ "rev": "10c6c5d9b3df8177472b5243ed8d9760f5316174",
"type": "github"
},
"original": {
@@ -948,86 +755,6 @@
"type": "github"
}
},
- "ob-racket": {
- "flake": false,
- "locked": {
- "lastModified": 1584656173,
- "narHash": "sha256-rBUYDDCXb+3D4xTPQo9UocbTPZ32kWV1Uya/1DmZknU=",
- "owner": "xchrishawk",
- "repo": "ob-racket",
- "rev": "83457ec9e1e96a29fd2086ed19432b9d75787673",
- "type": "github"
- },
- "original": {
- "owner": "xchrishawk",
- "repo": "ob-racket",
- "type": "github"
- }
- },
- "org": {
- "flake": false,
- "locked": {
- "lastModified": 1673519709,
- "narHash": "sha256-XtGk32Lw2iGDgH5Q4Rjhig0Iq5hpIM0EKQoptJ+nT3k=",
- "owner": "emacs-straight",
- "repo": "org-mode",
- "rev": "ecb62e2e317b1a4b5b8a6c0f111ed7ef18413040",
- "type": "github"
- },
- "original": {
- "owner": "emacs-straight",
- "repo": "org-mode",
- "type": "github"
- }
- },
- "org-contrib": {
- "flake": false,
- "locked": {
- "lastModified": 1664301003,
- "narHash": "sha256-8CAq/EB52RMQHNLZM0uc/1N5gKTfxGhf7WFt9sMKoD8=",
- "owner": "emacsmirror",
- "repo": "org-contrib",
- "rev": "aa104c0bbc3113f6d3d167b20bd8d6bf6a285f0f",
- "type": "github"
- },
- "original": {
- "owner": "emacsmirror",
- "repo": "org-contrib",
- "type": "github"
- }
- },
- "org-yt": {
- "flake": false,
- "locked": {
- "lastModified": 1527381913,
- "narHash": "sha256-dzQ6B7ryzatHCTLyEnRSbWO0VUiX/FHYnpHTs74aVUs=",
- "owner": "TobiasZawada",
- "repo": "org-yt",
- "rev": "40cc1ac76d741055cbefa13860d9f070a7ade001",
- "type": "github"
- },
- "original": {
- "owner": "TobiasZawada",
- "repo": "org-yt",
- "type": "github"
- }
- },
- "php-extras": {
- "flake": false,
- "locked": {
- "lastModified": 1573312690,
- "narHash": "sha256-r4WyVbzvT0ra4Z6JywNBOw5RxOEYd6Qe2IpebHXkj1U=",
- "owner": "arnested",
- "repo": "php-extras",
- "rev": "d410c5af663c30c01d461ac476d1cbfbacb49367",
- "type": "github"
- },
- "original": {
- "owner": "arnested",
- "repo": "php-extras",
- "type": "github"
- }
- },
"pollymc": {
"inputs": {
"flake-compat": [
@@ -1070,11 +797,11 @@
]
},
"locked": {
- "lastModified": 1676279938,
- "narHash": "sha256-RDyvVdituVQQZtGA7DNaJruJLDz/pfkREpUcI4ZQvsk=",
+ "lastModified": 1676513100,
+ "narHash": "sha256-MK39nQV86L2ag4TmcK5/+r1ULpzRLPbbfvWbPvIoYJE=",
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
- "rev": "1583077009b6ef4236d1899c0f43cf1ce1db8085",
+ "rev": "5f0cba88ac4d6dd8cad5c6f6f1540b3d6a21a798",
"type": "github"
},
"original": {
@@ -1084,22 +811,6 @@
"type": "github"
}
},
- "revealjs": {
- "flake": false,
- "locked": {
- "lastModified": 1674652670,
- "narHash": "sha256-ViqeZlOjQTlY0KM7YcOOjdgkxRLPMZrRKXTqtyc1I00=",
- "owner": "hakimel",
- "repo": "reveal.js",
- "rev": "b1a9842b2f4544a2fda546383db38cc7a81f6b74",
- "type": "github"
- },
- "original": {
- "owner": "hakimel",
- "repo": "reveal.js",
- "type": "github"
- }
- },
"root": {
"inputs": {
"agenix": "agenix",
@@ -1113,7 +824,6 @@
"flake-utils": "flake-utils",
"home-manager": "home-manager",
"impermanence": "impermanence",
- "nix-doom-emacs": "nix-doom-emacs",
"nix-minecraft": "nix-minecraft",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
@@ -1128,22 +838,6 @@
"xmonad-ng": "xmonad-ng"
}
},
- "rotate-text": {
- "flake": false,
- "locked": {
- "lastModified": 1322962747,
- "narHash": "sha256-SOeOgSlcEIsKhUiYDJv0p+mLUb420s9E2BmvZQvZ0wk=",
- "owner": "debug-ito",
- "repo": "rotate-text.el",
- "rev": "48f193697db996855aee1ad2bc99b38c6646fe76",
- "type": "github"
- },
- "original": {
- "owner": "debug-ito",
- "repo": "rotate-text.el",
- "type": "github"
- }
- },
"simple-nixos-mailserver": {
"inputs": {
"blobs": "blobs",
@@ -1175,54 +869,6 @@
"type": "gitlab"
}
},
- "sln-mode": {
- "flake": false,
- "locked": {
- "lastModified": 1423727528,
- "narHash": "sha256-XqkqPyEJuTtFslOz1fpTf/Klbd/zA7IGpzpmum/MGao=",
- "owner": "sensorflo",
- "repo": "sln-mode",
- "rev": "0f91d1b957c7d2a7bab9278ec57b54d57f1dbd9c",
- "type": "github"
- },
- "original": {
- "owner": "sensorflo",
- "repo": "sln-mode",
- "type": "github"
- }
- },
- "ts-fold": {
- "flake": false,
- "locked": {
- "lastModified": 1673328482,
- "narHash": "sha256-6yQ35uJDAK531QNQZgloQaOQayRa8azOlOMbO8lXsHE=",
- "owner": "jcs-elpa",
- "repo": "ts-fold",
- "rev": "75d6f9ed317b042b5bc7cb21503596d1c7a1b8c0",
- "type": "github"
- },
- "original": {
- "owner": "jcs-elpa",
- "repo": "ts-fold",
- "type": "github"
- }
- },
- "ws-butler": {
- "flake": false,
- "locked": {
- "lastModified": 1634511126,
- "narHash": "sha256-c0y0ZPtxxICPk+eaNbbQf6t+FRCliNY54CCz9QHQ8ZI=",
- "owner": "hlissner",
- "repo": "ws-butler",
- "rev": "572a10c11b6cb88293de48acbb59a059d36f9ba5",
- "type": "github"
- },
- "original": {
- "owner": "hlissner",
- "repo": "ws-butler",
- "type": "github"
- }
- },
"xmonad-ng": {
"inputs": {
"flake-utils": [
diff --git a/flake.nix b/flake.nix
index 5cdf643..a4a9c4c 100644
--- a/flake.nix
+++ b/flake.nix
@@ -92,25 +92,28 @@
type = "github";
owner = "dwarfmaster";
repo = "arkenfox-nixos";
- # FIXME https://github.com/dwarfmaster/arkenfox-nixos/issues/20
- ref = "5985ba832c841af5805c89d64f78bfae2a0f331f";
+ ref = "main";
inputs.nixpkgs.follows = "nixpkgs";
};
- nix-doom-emacs = {
- # type = "path";
- # path = "/home/azahi/src/nix-doom-emacs";
- type = "github";
- owner = "nix-community";
- repo = "nix-doom-emacs";
- ref = "master";
- inputs = {
- flake-compat.follows = "flake-compat";
- emacs-overlay.follows = "emacs-overlay";
- flake-utils.follows = "flake-utils";
- nixpkgs.follows = "nixpkgs";
- };
- };
+ # Waiting for patches[1]. Currently, the new profile feature breaks
+ # everything and I don't want to spend 12 hours debugging this shit.
+ #
+ # [1]: https://github.com/nix-community/nix-doom-emacs/pull/316
+ # nix-doom-emacs = {
+ # # type = "path";
+ # # path = "/home/azahi/src/nix-doom-emacs";
+ # type = "github";
+ # owner = "nix-community";
+ # repo = "nix-doom-emacs";
+ # ref = "master";
+ # inputs = {
+ # flake-compat.follows = "flake-compat";
+ # emacs-overlay.follows = "emacs-overlay";
+ # flake-utils.follows = "flake-utils";
+ # nixpkgs.follows = "nixpkgs";
+ # };
+ # };
nix-minecraft = {
type = "github";
@@ -305,7 +308,7 @@
// {
inherit lib;
- modules.nixfiles = import ./modules/nixfiles;
+ modules.nixfiles = import ./modules/common;
nixosModules.nixfiles = import ./modules/nixos;
nixosConfigurations =
diff --git a/modules/nixfiles/alacritty.nix b/modules/common/alacritty.nix
index 142f6c5..142f6c5 100644
--- a/modules/nixfiles/alacritty.nix
+++ b/modules/common/alacritty.nix
diff --git a/modules/nixfiles/aria2.nix b/modules/common/aria2.nix
index f33acb9..f33acb9 100644
--- a/modules/nixfiles/aria2.nix
+++ b/modules/common/aria2.nix
diff --git a/modules/nixfiles/bat.nix b/modules/common/bat.nix
index 2b31d16..2b31d16 100644
--- a/modules/nixfiles/bat.nix
+++ b/modules/common/bat.nix
diff --git a/modules/nixfiles/beets.nix b/modules/common/beets.nix
index 83cbff1..83cbff1 100644
--- a/modules/nixfiles/beets.nix
+++ b/modules/common/beets.nix
diff --git a/modules/nixfiles/chromium.nix b/modules/common/chromium.nix
index 4f0ae12..4f0ae12 100644
--- a/modules/nixfiles/chromium.nix
+++ b/modules/common/chromium.nix
diff --git a/modules/nixfiles/common/default.nix b/modules/common/common/default.nix
index 2bfe7e8..2bfe7e8 100644
--- a/modules/nixfiles/common/default.nix
+++ b/modules/common/common/default.nix
diff --git a/modules/nixfiles/common/documentation.nix b/modules/common/common/documentation.nix
index 55f6138..55f6138 100644
--- a/modules/nixfiles/common/documentation.nix
+++ b/modules/common/common/documentation.nix
diff --git a/modules/nixfiles/common/home-manager.nix b/modules/common/common/home-manager.nix
index b28260a..b28260a 100644
--- a/modules/nixfiles/common/home-manager.nix
+++ b/modules/common/common/home-manager.nix
diff --git a/modules/nixfiles/common/locale.nix b/modules/common/common/locale.nix
index bcb577a..bcb577a 100644
--- a/modules/nixfiles/common/locale.nix
+++ b/modules/common/common/locale.nix
diff --git a/modules/nixfiles/common/networking.nix b/modules/common/common/networking.nix
index e5d27d8..e5d27d8 100644
--- a/modules/nixfiles/common/networking.nix
+++ b/modules/common/common/networking.nix
diff --git a/modules/nixfiles/common/nix/default.nix b/modules/common/common/nix/default.nix
index 5ce54f9..0898457 100644
--- a/modules/nixfiles/common/nix/default.nix
+++ b/modules/common/common/nix/default.nix
@@ -96,7 +96,13 @@ with lib; {
patches = [./patches/alejandra-no-ads.patch];
});
+ logcli = super.grafana-loki.overrideAttrs (_: _: {
+ subPackages = ["cmd/logcli"];
+ });
+
inherit (pkgsPR "215704" "sha256-o2F/ZAugljJKlVIAHMTBK6+Lj6BiBwteA5OuaWPKXm0=") dendrite;
+
+ inherit (pkgsPR "216465" "sha256-ik3e+KM27hGkKWTOOUWj1YtiqHTJvl04dx0/X08P1A0=") amdvlk;
}
// (with super; let
np = nodePackages;
diff --git a/modules/nixfiles/common/nix/patches/alejandra-no-ads.patch b/modules/common/common/nix/patches/alejandra-no-ads.patch
index 6eaac66..6eaac66 100644
--- a/modules/nixfiles/common/nix/patches/alejandra-no-ads.patch
+++ b/modules/common/common/nix/patches/alejandra-no-ads.patch
diff --git a/modules/nixfiles/common/shell/default.nix b/modules/common/common/shell/default.nix
index 6ed8ff0..1eebfa2 100644
--- a/modules/nixfiles/common/shell/default.nix
+++ b/modules/common/common/shell/default.nix
@@ -30,6 +30,19 @@ with lib; {
initExtra = ''
set -o notify
+ if [ "$TERM" != "dumb" ] || [ -n "$INSIDE_EMACS" ]; then
+ PROMPT_COLOR="1;31m"
+ ((UID)) && PROMPT_COLOR="1;32m"
+ if [ -n "$INSIDE_EMACS" ] || [ "$TERM" = "eterm" ] || [ "$TERM" = "eterm-color" ]; then
+ PS1="\n\[\033[$PROMPT_COLOR\][\u@\h:\w]\\$\[\033[0m\] "
+ else
+ PS1="\n\[\033[$PROMPT_COLOR\][\[\e]0;\u@\h: \w\a\]\u@\h:\w]\\$\[\033[0m\] "
+ fi
+ if test "$TERM" = "xterm"; then
+ PS1="\[\033]2;\h:\u:\w\007\]$PS1"
+ fi
+ fi
+
${readFile ./functions.bash}
GRC_ALIASES=true
diff --git a/modules/nixfiles/common/shell/functions.bash b/modules/common/common/shell/functions.bash
index c18104f..c18104f 100644
--- a/modules/nixfiles/common/shell/functions.bash
+++ b/modules/common/common/shell/functions.bash
diff --git a/modules/nixfiles/common/users.nix b/modules/common/common/users.nix
index aee0e38..aee0e38 100644
--- a/modules/nixfiles/common/users.nix
+++ b/modules/common/common/users.nix
diff --git a/modules/nixfiles/curl.nix b/modules/common/curl.nix
index e7bee31..e7bee31 100644
--- a/modules/nixfiles/curl.nix
+++ b/modules/common/curl.nix
diff --git a/modules/nixfiles/default.nix b/modules/common/default.nix
index d4e5e26..e6040cd 100644
--- a/modules/nixfiles/default.nix
+++ b/modules/common/default.nix
@@ -9,12 +9,10 @@ _: {
./curl.nix
./direnv.nix
./emacs
- ./firefox
./fonts.nix
./git.nix
./gnupg.nix
./htop.nix
- ./mpd.nix
./mpv.nix
./nmap.nix
./openssh.nix
diff --git a/modules/nixfiles/direnv.nix b/modules/common/direnv.nix
index b235cee..b235cee 100644
--- a/modules/nixfiles/direnv.nix
+++ b/modules/common/direnv.nix
diff --git a/modules/common/emacs/default.nix b/modules/common/emacs/default.nix
new file mode 100644
index 0000000..7395c51
--- /dev/null
+++ b/modules/common/emacs/default.nix
@@ -0,0 +1,163 @@
+{
+ config,
+ inputs,
+ lib,
+ pkgs,
+ pkgsStable,
+ this,
+ ...
+}:
+with lib; let
+ cfg = config.nixfiles.modules.emacs;
+in {
+ options.nixfiles.modules.emacs.enable = mkEnableOption "GNU Emacs";
+
+ config = mkIf cfg.enable {
+ nixfiles.modules = {
+ fonts.enable = true;
+ git.client.enable = true;
+ gnupg.enable = true;
+ };
+
+ hm = {
+ xdg.configFile = {
+ "doom/init.el".source = ./doom/init.el;
+ "doom/packages.el".source = ./doom/packages.el;
+ "doom/config.el" = {
+ text = concatStringsSep "\n" [
+ (let
+ # NOTE gopls will require the "go" executable which must be provided
+ # by the project's flake/shell.
+ extraBins = with pkgs;
+ [
+ enchant # :checkers (spell +enchant)
+ (python3.withPackages (p:
+ with p; [
+ black # :lang python :editor format
+ isort # :lang python
+ pyflakes # :lang python
+ python-lsp-server # :lang (python +lsp)
+ ]))
+ asmfmt # :editor format
+ bash-language-server # :lang (sh +lsp)
+ clang-tools # :lang (cc +lsp) :editor format
+ cmake-format # :lang cc :editor format
+ cmigemo # :lang japanese
+ css-language-server # :lang (web +lsp)
+ dhall-language-server # :lang (dhall +lsp)
+ dockerfile-language-server # :tools (docker +lsp)
+ editorconfig # :tools editorconfig
+ fd # doom!
+ gnuplot # :lang (org +gnuplot)
+ gnutls # doom!
+ go-language-server # :lang (go +lsp)
+ gomodifytags # :lang go
+ gore # :lang go
+ gotests # :lang go
+ gotools # :lang go
+ graphviz # :lang (org +roam2) :lang plantuml
+ html-language-server # :lang (web +lsp)
+ html-tidy # :lang web
+ jre # :lang plantuml
+ json-language-server # :lang (json +lsp)
+ nix-language-server # :lang (nix +lsp)
+ nixfmt # :lang nix :editor format
+ nodePackages.js-beautify # :lang web
+ nodePackages.prettier # :editor format
+ nodePackages.stylelint # :lang web
+ nodejs # :tools debugger
+ pandoc # :lang org markdown latex
+ pinentry-emacs # doom!
+ pre-commit # :tools magit
+ ripgrep # doom!
+ rust-analyzer # :lang (rust +lsp)
+ rustfmt # :lang rust
+ shellcheck # :lang sh
+ shfmt # :lang sh :editor format
+ sqlite # :lang (org +roam2) :tools lookup
+ texlab # lang (tex +lsp)
+ texlive.combined.scheme-full # :lang org tex
+ unzip # :tools debugger
+ wordnet # :tools (lookup +dictionary +offline)
+ yaml-language-server # :lang (yaml +lsp)
+ zls # :lang (zig +lsp)
+ zstd # :emacs undo
+ ]
+ ++ (
+ #
+ # GDB doesn't support[1] Apple Silicon on MacOS.
+ #
+ # [1]: https://inbox.sourceware.org/gdb/6b48224b-9e2e-518d-793b-df4fc5514884@arm.com/
+ if (this.system != "aarch64-darwin")
+ then [gdb] # :tools debugger
+ else [lldb] # :tools debugger
+ )
+ ++ optionals (!pkgs.stdenv.isDarwin)
+ [
+ # NOTE Haskell is pretty much broken every couple of days on
+ # MacOS and I usually don't write anything in Haskell while
+ # I'm on my work laptop, so... ShellCheck seems to be working,
+ # though.
+ haskellPackages.ormolu # :lang haskell :editor format
+ haskellPackages.haskell-language-server # :lang (haskell +lsp)
+ haskellPackages.cabal-fmt # :lang haskell :editor format
+ haskellPackages.cabal-install # :lang haskell
+ haskellPackages.hoogle # :lang haskell
+ ];
+ in ''
+ ;; This will integrate packages which are required by various
+ ;; modules without polluting the user's profile.
+ (setq exec-path (append exec-path '(${
+ concatMapStringsSep " " (x: ''"${x}/bin"'') extraBins
+ })))
+ (setenv "PATH" (concat (getenv "PATH") ":${
+ concatMapStringsSep ":" (x: "${x}/bin") extraBins
+ }"))
+
+ ;; Font must be set to N+2 because otherwise it looks too small.
+ (setq doom-font (font-spec :family "${config.fontScheme.monospaceFont.family}"
+ :size ${toString (config.fontScheme.monospaceFont.size + 2)})
+ doom-unicode-font doom-font)
+
+ (setq user-full-name "${my.fullname}"
+ user-mail-address "${my.email}")
+
+ ;; :app irc
+ (setq circe-default-nick "${my.username}"
+ circe-default-realname "${my.email}"
+ circe-default-user circe-default-nick)
+
+ ;; :lang plantuml
+ (setq org-plantuml-jar-path "${pkgs.plantuml}/lib/plantuml.jar")
+
+ ;; :input japanese
+ (setq migemo-dictionary "${pkgs.cmigemo}/share/migemo/utf-8/migemo-dict")
+
+ ;; :input japanese
+ (setq skk-large-jisyo "${pkgs.skk-dicts}/share/skk/SKK-JISYO.L")
+ '')
+ (builtins.readFile ./doom/config.el)
+ ];
+ onChange = with config.hm.programs; ''
+ if [[ -x "''${XDG_CONFIG_HOME:~/.config}/emacs/bin/doom" ]]; then
+ oldpath="$PATH"
+ export PATH="''${PATH:-/bin}:${emacs.package}/bin:${git.package}/bin"
+
+ "''${XDG_CONFIG_HOME:~/.config}/emacs/bin/doom" sync
+
+ export PATH="$oldpath"
+ unset oldpath
+ fi
+ '';
+ };
+ };
+
+ programs.emacs = {
+ enable = true;
+ package = pkgs.emacs28; # Pin to avoid surprises.
+ # For some reason latest libvterm is not picked up by Emacs.
+ extraPackages = _: with pkgsStable.emacsPackages; [vterm];
+ };
+ };
+ };
+}
diff --git a/modules/nixfiles/emacs/doom/config.el b/modules/common/emacs/doom/config.el
index 9fa9984..9284e0b 100644
--- a/modules/nixfiles/emacs/doom/config.el
+++ b/modules/common/emacs/doom/config.el
@@ -1,5 +1,3 @@
-;;; config.el -*- lexical-binding: t; -*-
-
;;
;;; Misc
;;
@@ -80,7 +78,7 @@
;;; Haskell
;;
-(setq lsp-haskell-formatting-provider "brittany")
+(setq lsp-haskell-formatting-provider "ormolu")
;;
;;; Nix
@@ -95,9 +93,17 @@
;;
;;; YAML
-
;;
+(add-hook! 'yaml-mode-hook
+ (defun +disable-flycheck-for-yaml-helm-templates ()
+ (when (and buffer-file-name
+ (string-match-p "/templates/" buffer-file-name)
+ (or (string-suffix-p ".yaml" buffer-file-name)
+ (string-suffix-p ".yml" buffer-file-name)))
+ (remove-hook! 'yaml-mode-local-vars-hook #'lsp!)
+ (pushnew! flycheck-disabled-checkers 'yaml-jsyaml 'yaml-ruby 'yaml-yamllint))))
+
(setq-hook! 'yaml-mode-hook +format-with-lsp nil)
;;
diff --git a/modules/nixfiles/emacs/doom/init.el b/modules/common/emacs/doom/init.el
index 1016f40..cdab069 100644
--- a/modules/nixfiles/emacs/doom/init.el
+++ b/modules/common/emacs/doom/init.el
@@ -1,5 +1,3 @@
-;;; init.el -*- lexical-binding: t; -*-
-
(doom! :input
;; japanese
@@ -12,6 +10,7 @@
doom
;; doom-dashboard
;; doom-quit
+ ;; emoji
hl-todo
indent-guides
;; ligatures
@@ -20,12 +19,10 @@
ophints
(popup +defaults)
;; tabs
- ;; (treemacs +lsp)
;; unicode
(vc-gutter +diff-hl +pretty)
window-select
workspaces
- zen
:editor
(evil +everywhere)
@@ -36,7 +33,7 @@
;; multiple-cursors
parinfer
;; rotate-text
- ;; snippets
+ snippets
word-wrap
:emacs
@@ -52,10 +49,10 @@
:checkers
syntax
- (spell +aspell
+ (spell +enchant
+everywhere
+flyspell)
- ;; grammar
+ grammar
:tools
ansible
@@ -64,6 +61,7 @@
(docker +lsp)
editorconfig
(eval +overlay)
+ gist
(lookup +dictionary +offline)
(lsp +peek)
(magit +forge)
@@ -72,7 +70,7 @@
;; pdf
terraform
tree-sitter
- ;; upload
+ upload
:os
(:if IS-MAC macos)
@@ -87,10 +85,10 @@
(emacs-lisp +lsp +tree-sitter)
(go +lsp +tree-sitter)
;; graphql
- (haskell +lsp +tree-sitter)
+ (:if IS-LINUX (haskell +lsp +tree-sitter))
(java +lsp +tree-sitter)
(javascript +lsp +tree-sitter)
- json
+ (json +lsp +tree-sitter)
(kotlin +lsp +tree-sitter)
(latex +lsp +tree-sittter)
(markdown +lsp +tree-sitter)
@@ -98,13 +96,13 @@
(org +pandoc +roam2)
plantuml
(python +lsp +tree-sitter)
- (racket +lsp +tree-sitter)
+ (:if IS-LINUX (racket +lsp +tree-sitter))
;; rst
(rust +lsp +tree-sitter)
- (scheme +lsp +tree-sitter +racket)
+ (:if IS-LINUX (scheme +lsp +tree-sitter +racket))
(sh +lsp +tree-sitter)
web
- yaml
+ (yaml +lsp +tree-sitter)
(zig +lsp +tree-sitter)
:email
diff --git a/modules/nixfiles/emacs/doom/packages.el b/modules/common/emacs/doom/packages.el
index d3e6354..298a203 100644
--- a/modules/nixfiles/emacs/doom/packages.el
+++ b/modules/common/emacs/doom/packages.el
@@ -1,5 +1,3 @@
-;;; packages.el -*- lexical-binding: t; -*-
-
(disable-packages! writegood-mode)
(unpin! org-roam)
diff --git a/modules/nixfiles/fonts.nix b/modules/common/fonts.nix
index 483de0d..483de0d 100644
--- a/modules/nixfiles/fonts.nix
+++ b/modules/common/fonts.nix
diff --git a/modules/nixfiles/git.nix b/modules/common/git.nix
index 2c1dd1f..2c1dd1f 100644
--- a/modules/nixfiles/git.nix
+++ b/modules/common/git.nix
diff --git a/modules/nixfiles/gnupg.nix b/modules/common/gnupg.nix
index c0f10f9..c0f10f9 100644
--- a/modules/nixfiles/gnupg.nix
+++ b/modules/common/gnupg.nix
diff --git a/modules/nixfiles/htop.nix b/modules/common/htop.nix
index bf3f1e4..bf3f1e4 100644
--- a/modules/nixfiles/htop.nix
+++ b/modules/common/htop.nix
diff --git a/modules/nixfiles/mpv.nix b/modules/common/mpv.nix
index afab1dd..afab1dd 100644
--- a/modules/nixfiles/mpv.nix
+++ b/modules/common/mpv.nix
diff --git a/modules/nixfiles/nmap.nix b/modules/common/nmap.nix
index 73f948c..73f948c 100644
--- a/modules/nixfiles/nmap.nix
+++ b/modules/common/nmap.nix
diff --git a/modules/nixfiles/openconnect.nix b/modules/common/openconnect.nix
index 780f93f..780f93f 100644
--- a/modules/nixfiles/openconnect.nix
+++ b/modules/common/openconnect.nix
diff --git a/modules/nixfiles/openssh.nix b/modules/common/openssh.nix
index 4b80809..4b80809 100644
--- a/modules/nixfiles/openssh.nix
+++ b/modules/common/openssh.nix
diff --git a/modules/nixfiles/password-store.nix b/modules/common/password-store.nix
index 1de8a55..1de8a55 100644
--- a/modules/nixfiles/password-store.nix
+++ b/modules/common/password-store.nix
diff --git a/modules/nixfiles/profiles/default.nix b/modules/common/profiles/default.nix
index 06ddaf4..06ddaf4 100644
--- a/modules/nixfiles/profiles/default.nix
+++ b/modules/common/profiles/default.nix
diff --git a/modules/nixfiles/profiles/dev/containers.nix b/modules/common/profiles/dev/containers.nix
index 9119140..cc24ab3 100644
--- a/modules/nixfiles/profiles/dev/containers.nix
+++ b/modules/common/profiles/dev/containers.nix
@@ -33,7 +33,6 @@ in {
clusterctl
cmctl
datree
- fluxcd
helm
istioctl
kubeconform
@@ -52,7 +51,6 @@ in {
skopeo
stern
telepresence
- terraform
werf
];
};
diff --git a/modules/nixfiles/profiles/dev/default.nix b/modules/common/profiles/dev/default.nix
index b05aeac..b05aeac 100644
--- a/modules/nixfiles/profiles/dev/default.nix
+++ b/modules/common/profiles/dev/default.nix
diff --git a/modules/nixfiles/profiles/dev/editorconfig.ini b/modules/common/profiles/dev/editorconfig.ini
index 17b0317..17b0317 100644
--- a/modules/nixfiles/profiles/dev/editorconfig.ini
+++ b/modules/common/profiles/dev/editorconfig.ini
diff --git a/modules/nixfiles/profiles/dev/gdbinit b/modules/common/profiles/dev/gdbinit
index e266236..e266236 100644
--- a/modules/nixfiles/profiles/dev/gdbinit
+++ b/modules/common/profiles/dev/gdbinit
diff --git a/modules/nixfiles/profiles/dev/ghci.conf b/modules/common/profiles/dev/ghci.conf
index d672167..d672167 100644
--- a/modules/nixfiles/profiles/dev/ghci.conf
+++ b/modules/common/profiles/dev/ghci.conf
diff --git a/modules/nixfiles/profiles/dev/pystartup.py b/modules/common/profiles/dev/pystartup.py
index adde66c..adde66c 100644
--- a/modules/nixfiles/profiles/dev/pystartup.py
+++ b/modules/common/profiles/dev/pystartup.py
diff --git a/modules/nixfiles/profiles/dev/sql.nix b/modules/common/profiles/dev/sql.nix
index 7a2a09c..7a2a09c 100644
--- a/modules/nixfiles/profiles/dev/sql.nix
+++ b/modules/common/profiles/dev/sql.nix
diff --git a/modules/nixfiles/profiles/headful.nix b/modules/common/profiles/headful.nix
index 1c1f43b..eec14c5 100644
--- a/modules/nixfiles/profiles/headful.nix
+++ b/modules/common/profiles/headful.nix
@@ -95,6 +95,7 @@ in {
};
environment.systemPackages = with pkgs; [
+ (aspellWithDicts (p: with p; [en ru]))
arping
dnsutils
inetutils
diff --git a/modules/nixfiles/profiles/headless.nix b/modules/common/profiles/headless.nix
index cc7c326..cc7c326 100644
--- a/modules/nixfiles/profiles/headless.nix
+++ b/modules/common/profiles/headless.nix
diff --git a/modules/nixfiles/qutebrowser.nix b/modules/common/qutebrowser.nix
index 68a41a5..68a41a5 100644
--- a/modules/nixfiles/qutebrowser.nix
+++ b/modules/common/qutebrowser.nix
diff --git a/modules/nixfiles/subversion.nix b/modules/common/subversion.nix
index 077f449..077f449 100644
--- a/modules/nixfiles/subversion.nix
+++ b/modules/common/subversion.nix
diff --git a/modules/nixfiles/tmux.nix b/modules/common/tmux.nix
index e978f72..e978f72 100644
--- a/modules/nixfiles/tmux.nix
+++ b/modules/common/tmux.nix
diff --git a/modules/nixfiles/vim/default.nix b/modules/common/vim/default.nix
index db46d34..0328e10 100644
--- a/modules/nixfiles/vim/default.nix
+++ b/modules/common/vim/default.nix
@@ -2,6 +2,7 @@
config,
lib,
pkgs,
+ this,
...
}:
with lib; let
@@ -11,29 +12,21 @@ in {
config = mkIf cfg.enable {
programs.vim.package = with pkgs;
- ((vim_configurable.override {features = "normal";}
- // mapListToAttrs false [
- "cscopeSupport"
- "darwinSupport"
- "guiSupport"
- "luaSupport"
- "multibyteSupport"
- "netbeansSupport"
- "nlsSupport"
- "perlSupport"
- "pythonSupport"
- "rubySupport"
- "tclSupport"
- "ximSupport"
- ])
- .overrideAttrs (_: super: {
- configureFlags =
- super.configureFlags
- ++ [
- "--enable-gpm=no"
- "--enable-gui=no"
- ];
- }))
+ (vim_configurable.override {
+ features = "normal";
+ cscopeSupport = false;
+ darwinSupport = pkgs.stdenv.isDarwin;
+ guiSupport = false;
+ luaSupport = false;
+ multibyteSupport = false;
+ netbeansSupport = false;
+ nlsSupport = false;
+ perlSupport = false;
+ pythonSupport = false;
+ rubySupport = false;
+ tclSupport = false;
+ ximSupport = false;
+ })
.customize {
name = "vim";
vimrcConfig = {
diff --git a/modules/nixfiles/vim/rc.vim b/modules/common/vim/rc.vim
index 1657c6d..945643a 100644
--- a/modules/nixfiles/vim/rc.vim
+++ b/modules/common/vim/rc.vim
@@ -9,6 +9,7 @@ let g:netrw_dirhistmax = 0
set autoread
set backspace=indent,eol,start
+set clipboard=unnamedplus
set diffopt+=iwhite
set hidden
set history=256
@@ -98,10 +99,6 @@ set tabstop=4
autocmd BufEnter *.* :set colorcolumn=
-if has('unnamedplus')
- set clipboard^=unnamedplus
-endif
-
if &t_Co == 8 && $TERM !~# '^Eterm'
set t_Co=16
endif
diff --git a/modules/nixfiles/vscode.nix b/modules/common/vscode.nix
index 6671973..6671973 100644
--- a/modules/nixfiles/vscode.nix
+++ b/modules/common/vscode.nix
diff --git a/modules/nixfiles/wget.nix b/modules/common/wget.nix
index 9a16fcc..9a16fcc 100644
--- a/modules/nixfiles/wget.nix
+++ b/modules/common/wget.nix
diff --git a/modules/nixfiles/zathura.nix b/modules/common/zathura.nix
index 1a0b39a..f78a9e9 100644
--- a/modules/nixfiles/zathura.nix
+++ b/modules/common/zathura.nix
@@ -112,10 +112,7 @@ in {
scroll-wrap = true;
scroll-page-aware = false;
- selection-clipboard =
- if config.nixfiles.modules.kde.enable
- then "clipboard"
- else "primary";
+ selection-clipboard = "clipboard";
selection-notification = false;
};
};
diff --git a/modules/nixfiles/emacs/default.nix b/modules/nixfiles/emacs/default.nix
deleted file mode 100644
index 975c809..0000000
--- a/modules/nixfiles/emacs/default.nix
+++ /dev/null
@@ -1,137 +0,0 @@
-{
- config,
- inputs,
- lib,
- pkgs,
- this,
- ...
-}:
-with lib; let
- cfg = config.nixfiles.modules.emacs;
-in {
- options.nixfiles.modules.emacs.enable = mkEnableOption "GNU Emacs";
-
- config = mkIf cfg.enable {
- nixfiles.modules = {
- fonts.enable = true;
- git.client.enable = true;
- gnupg.enable = true;
- };
-
- hm = {
- imports = [inputs.nix-doom-emacs.hmModule];
-
- programs.doom-emacs = {
- enable = true;
- doomPrivateDir = ./doom;
- emacsPackage = pkgs.emacs28; # The package is pinned to avoid surprises.
- extraPackages = with pkgs; [
- mu # :email mu4e
- ];
- extraConfig = let
- # NOTE gopls will require the "go" executable which must be provided
- # by the project's flake/shell.
- extraBins = with pkgs;
- [
- (aspellWithDicts (p: with p; [en ru])) # :checkers (spell +aspell)
- (python3.withPackages (p:
- with p; [
- # :lang python :ui (treemacs +lsp)
- black # :lang python :editor format
- isort # :lang python
- pyflakes # :lang python
- python-lsp-server # :lang (python +lsp)
- ]))
- asmfmt # :editor format
- bash-language-server # :lang (sh +lsp)
- clang-tools # :lang (cc +lsp) :editor format
- cmake-format # :lang cc :editor format
- cmigemo # :lang japanese
- css-language-server # :lang (web +lsp)
- dhall-language-server # :lang (dhall +lsp)
- dockerfile-language-server # :tools (docker +lsp)
- editorconfig # :tools editorconfig
- fd # doom!
- gnuplot # :lang (org +gnuplot)
- gnutls # doom!
- go-language-server # :lang (go +lsp)
- gomodifytags # :lang go
- gore # :lang go
- gotests # :lang go
- graphviz # :lang (org +roam2) :lang plantuml
- haskellPackages.haskell-language-server # :lang (haskell +lsp)
- haskellPackages.ormolu # :lang haskell :editor format
- haskellPackages.cabal-fmt # :lang haskell :editor format
- haskellPackages.cabal-install # :lang haskell
- haskellPackages.hoogle # :lang haskell
- html-language-server # :lang (web +lsp)
- html-tidy # :lang web
- jre # :lang plantuml
- json-language-server # :lang (json +lsp)
- nix-language-server # :lang (nix +lsp)
- nixfmt # :lang nix :editor format
- nodePackages.js-beautify # :lang web
- nodePackages.prettier # :editor format
- nodePackages.stylelint # :lang web
- nodejs # :tools debugger
- pandoc # :lang org markdown latex
- pinentry-emacs # doom!
- pre-commit # :tools magit
- ripgrep # doom!
- rust-analyzer # :lang (rust +lsp)
- rustfmt # :lang rust
- shellcheck # :lang sh
- shfmt # :lang sh :editor format
- sqlite # :lang (org +roam2) :tools lookup
- texlab # lang (tex +lsp)
- texlive.combined.scheme-full # :lang org tex
- unzip # :tools debugger
- wordnet # :tools (lookup +dictionary +offline)
- yaml-language-server # :lang (yaml +lsp)
- zls # :lang (zig +lsp)
- zstd # :emacs undo
- ]
- ++ (
- # :tools debugger
- if (this.system != "aarch64-darwin")
- then [gdb]
- else [lldb]
- );
- in ''
- ;; This will integrate packages which are required by various modules
- ;; without polluting the user's profile.
- (setq exec-path (append exec-path '(${
- concatMapStringsSep " " (x: ''"${x}/bin"'') extraBins
- })))
- (setenv "PATH" (concat (getenv "PATH") ":${
- concatMapStringsSep ":" (x: "${x}/bin") extraBins
- }"))
-
- (setq custom-file (file-name-concat doom-emacs-dir "custom.el"))
-
- ;; Font must be set to n+2 because otherwise it looks too small.
- (setq doom-font (font-spec :family "${config.fontScheme.monospaceFont.family}"
- :size ${toString (config.fontScheme.monospaceFont.size + 2)})
- doom-unicode-font doom-font)
-
- (setq user-full-name "${my.fullname}"
- user-mail-address "${my.email}")
-
- ;; :app irc
- (setq circe-default-nick "${my.username}"
- circe-default-realname "${my.email}"
- circe-default-user circe-default-nick)
-
- ;; :lang plantuml
- (setq org-plantuml-jar-path "${pkgs.plantuml}/lib/plantuml.jar")
-
- ;; :input japanese
- (setq migemo-dictionary "${pkgs.cmigemo}/share/migemo/utf-8/migemo-dict")
-
- ;; :input japanese
- (setq skk-large-jisyo "${pkgs.skk-dicts}/share/skk/SKK-JISYO.L")
- '';
- };
- };
- };
-}
diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix
index 188a999..850d93e 100644
--- a/modules/nixos/default.nix
+++ b/modules/nixos/default.nix
@@ -12,6 +12,7 @@ _: {
./endlessh-go.nix
./endlessh.nix
./fail2ban.nix
+ ./firefox
./fonts.nix
./games
./git
@@ -27,6 +28,7 @@ _: {
./lxc.nix
./matrix
./monitoring
+ ./mpd.nix
./nextcloud.nix
./nginx.nix
./node-exporter.nix
diff --git a/modules/nixos/emacs.nix b/modules/nixos/emacs.nix
index 2db8120..e348398 100644
--- a/modules/nixos/emacs.nix
+++ b/modules/nixos/emacs.nix
@@ -17,7 +17,7 @@ in {
nixfiles.modules.x11.enable = true;
hm = {
- programs.doom-emacs.extraConfig = mkAfter ''
+ programs.emacs.extraConfig = mkAfter ''
(appendq! auth-sources '("${config.secrets.authinfo.path}"))
'';
diff --git a/modules/nixfiles/firefox/default.nix b/modules/nixos/firefox/default.nix
index 7038773..7038773 100644
--- a/modules/nixfiles/firefox/default.nix
+++ b/modules/nixos/firefox/default.nix
diff --git a/modules/nixfiles/firefox/userChrome.css b/modules/nixos/firefox/userChrome.css
index 58e450e..58e450e 100644
--- a/modules/nixfiles/firefox/userChrome.css
+++ b/modules/nixos/firefox/userChrome.css
diff --git a/modules/nixfiles/firefox/userContent.css b/modules/nixos/firefox/userContent.css
index 2de8cde..2de8cde 100644
--- a/modules/nixfiles/firefox/userContent.css
+++ b/modules/nixos/firefox/userContent.css
diff --git a/modules/nixos/git/default.nix b/modules/nixos/git/default.nix
index 86891ae..1bf63c7 100644
--- a/modules/nixos/git/default.nix
+++ b/modules/nixos/git/default.nix
@@ -20,7 +20,7 @@ in {
package = mkOption {
description = "Package.";
type = types.package;
- default = pkgs.cgit-pink;
+ default = pkgs.cgit;
};
};
@@ -58,6 +58,8 @@ in {
root-desc=Homo sum, humani a me nihil alienum puto.
footer=
+ clone-url=https://${cfg.server.domain}/$CGIT_REPO_URL
+
logo=/cgit-custom-logo.gif
favicon=/cgit-custom-favicon.gif
css=/cgit-custom-style.css
@@ -68,7 +70,6 @@ in {
enable-git-config=1
enable-gitweb-owner=1
- enable-index-owner=0
remove-suffix=1
readme=:README
@@ -106,63 +107,11 @@ in {
pkgs.writeText "custom.css" ''
@import url("cgit.css");
- form {
- display: none;
- }
-
div#cgit {
- max-width: 157ch;
- margin: auto;
font-family: "${config.fontScheme.monospaceFont.family}", monospace;
-moz-tab-size: 4;
tab-size: 4;
}
-
- div#cgit table#header td.sub {
- border-top: none;
- }
-
- div#cgit table#header td.sub.right {
- padding-right: 1em;
- }
-
- div#cgit table.tabs {
- border-bottom: none;
- }
-
- div#cgit div.content {
- border-bottom: none;
- }
-
- div#cgit table.list th a {
- color: inherit;
- }
-
- div#cgit table.list tr:nth-child(even) {
- background: inherit;
- }
-
- div#cgit table.list tr:hover {
- background: inherit;
- }
-
- div#cgit table.list tr.nohover-highlight:hover:nth-child(even) {
- background: inherit;
- }
-
- div#cgit table.blob td.linenumbers a:target {
- color: goldenrod;
- text-decoration: underline;
- outline: none;
- }
-
- div#cgit div#summary {
- max-width: 80ch;
- }
-
- div#cgit a.permalink {
- color: inherit;
- }
'';
in ''
alias ${css};
diff --git a/modules/nixfiles/mpd.nix b/modules/nixos/mpd.nix
index 4b49213..4b49213 100644
--- a/modules/nixfiles/mpd.nix
+++ b/modules/nixos/mpd.nix
diff --git a/modules/nixos/openssh.nix b/modules/nixos/openssh.nix
index c7a144e..6f4614c 100644
--- a/modules/nixos/openssh.nix
+++ b/modules/nixos/openssh.nix
@@ -18,16 +18,14 @@ in {
};
config = mkIf cfg.server.enable {
- # FIXME This is mounted after the activation script is launched.
- ark = {
- files = [
- "/etc/ssh/ssh_host_ed25519_key"
- "/etc/ssh/ssh_host_ed25519_key.pub"
- "/etc/ssh/ssh_host_rsa_key"
- "/etc/ssh/ssh_host_rsa_key.pub"
- ];
- # directories = ["/etc/ssh/authorized_keys.d"];
- };
+ # authorized_keys is not added here because it only contains my SSH keys and
+ # all non-declarative ones are located in the home directory.
+ ark.files = [
+ "/etc/ssh/ssh_host_ed25519_key"
+ "/etc/ssh/ssh_host_ed25519_key.pub"
+ "/etc/ssh/ssh_host_rsa_key"
+ "/etc/ssh/ssh_host_rsa_key.pub"
+ ];
programs.mosh.enable = true;
diff --git a/modules/nixos/profiles/headful.nix b/modules/nixos/profiles/headful.nix
index ca604cb..ede921a 100644
--- a/modules/nixos/profiles/headful.nix
+++ b/modules/nixos/profiles/headful.nix
@@ -13,7 +13,6 @@ in {
chromium.enable = true;
firefox.enable = true;
sound.enable = true;
- x11.enable = true;
dwm.enable = mkDefault false;
kde.enable = mkDefault true;