Systemd.enable = true

This commit is contained in:
2026-02-22 20:42:04 +01:00
parent 26c6d43923
commit 7aed5259ef
3 changed files with 234 additions and 240 deletions
+234 -236
View File
@@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2026-02-22 zo 20:27 -->
<!-- 2026-02-22 zo 20:41 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>&lrm;</title>
@@ -200,119 +200,119 @@
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
<li><a href="#org3353d21">1. Introduction</a></li>
<li><a href="#orgaa977f9">2. Pre-requisites to edit this setup</a></li>
<li><a href="#orgd310268">3. machine1 — template machine</a></li>
<li><a href="#orgd65ee41">4. <code>flake.lock</code> for pinning input versions.</a></li>
<li><a href="#org7c86559">5. <code>assets/*</code> for non-Nix-managed artifacts such as images and wallpapers.</a>
<li><a href="#org239c23f">1. Introduction</a></li>
<li><a href="#orgad27718">2. Pre-requisites to edit this setup</a></li>
<li><a href="#org59290ed">3. machine1 — template machine</a></li>
<li><a href="#orgadebecf">4. <code>flake.lock</code> for pinning input versions.</a></li>
<li><a href="#org9d1e91b">5. <code>assets/*</code> for non-Nix-managed artifacts such as images and wallpapers.</a>
<ul>
<li><a href="#org5b4bc3d">5.1. Emacs + Org + Tangle</a></li>
<li><a href="#org75cb25d">5.1. Emacs + Org + Tangle</a></li>
</ul>
</li>
<li><a href="#org8822422">6. [Emacs](https://www.gnu.org/software/emacs/][Emacs) is used as the editor and execution environment for this literate configuration.</a></li>
<li><a href="#org090f5f2">7. [Org](https://orgmode.org/][Org) mode provides the document structure and the source block execution model used here.</a></li>
<li><a href="#org12dea48">8. Tangling exports source blocks from this Org document into the corresponding configuration files.</a>
<li><a href="#orgc305029">6. [Emacs](https://www.gnu.org/software/emacs/][Emacs) is used as the editor and execution environment for this literate configuration.</a></li>
<li><a href="#org293cd08">7. [Org](https://orgmode.org/][Org) mode provides the document structure and the source block execution model used here.</a></li>
<li><a href="#org94167ec">8. Tangling exports source blocks from this Org document into the corresponding configuration files.</a>
<ul>
<li><a href="#orgd89607a">8.1. Nix &amp; NixOS</a></li>
<li><a href="#org67b43ee">8.1. Nix &amp; NixOS</a></li>
</ul>
</li>
<li><a href="#org35fff2f">9. [Nix](https://nix.dev/][Nix) is used to define packages, environments, and configuration as pure expressions.</a></li>
<li><a href="#orge40bb0f">10. [NixOS](https://nixos.org/][NixOS) evaluates Nix expressions into a complete system configuration that can be applied by rebuild operations.</a>
<li><a href="#orgb4c24b8">9. [Nix](https://nix.dev/][Nix) is used to define packages, environments, and configuration as pure expressions.</a></li>
<li><a href="#org845cb39">10. [NixOS](https://nixos.org/][NixOS) evaluates Nix expressions into a complete system configuration that can be applied by rebuild operations.</a>
<ul>
<li><a href="#org2fcaa25">10.1. Repository layout and folder conventions</a></li>
<li><a href="#org8c804a0">10.2. Shared domain folders</a></li>
<li><a href="#orga9f7f85">10.3. Full tree (including unchanged parts)</a></li>
<li><a href="#orgbe46d62">10.4. Notes</a></li>
<li><a href="#org418c6b7">10.1. Repository layout and folder conventions</a></li>
<li><a href="#orgd6d165e">10.2. Shared domain folders</a></li>
<li><a href="#org396857c">10.3. Full tree (including unchanged parts)</a></li>
<li><a href="#orge155937">10.4. Notes</a></li>
</ul>
</li>
<li><a href="#org29ed169">11. TLDR App List</a></li>
<li><a href="#org950a563">12. Configuration Variables</a></li>
<li><a href="#org436e736">13. Flake Inputs</a></li>
<li><a href="#org2fbc9ca">14. Flake Output</a>
<li><a href="#org3eb4272">11. TLDR App List</a></li>
<li><a href="#orga01dbe4">12. Configuration Variables</a></li>
<li><a href="#orgcbdf746">13. Flake Inputs</a></li>
<li><a href="#org8791fde">14. Flake Output</a>
<ul>
<li><a href="#org0995880">14.1. Envrc + Direnv</a></li>
<li><a href="#orgaa22c33">14.1. Envrc + Direnv</a></li>
</ul>
</li>
<li><a href="#orge5858cf">15. Machines</a>
<li><a href="#org0ff59fd">15. Machines</a>
<ul>
<li>
<ul>
<li><a href="#orgb969023">15.0.1. Other Utils</a></li>
<li><a href="#org544c015">15.0.1. Other Utils</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org1344348">16. Hardware</a></li>
<li><a href="#org4851cfd">17. Configuration</a>
<li><a href="#org7af430b">16. Hardware</a></li>
<li><a href="#orge3d6d36">17. Configuration</a>
<ul>
<li><a href="#org74ed1f3">17.1. Apps section</a></li>
<li><a href="#org293c5e6">17.2. install<sub>packages.nix</sub></a></li>
<li><a href="#org4dc8b9b">17.3. install<sub>flatpaks.nix</sub></a></li>
<li><a href="#org501760a">17.4. Nix Settings</a></li>
<li><a href="#org250392f">17.5. Boot</a></li>
<li><a href="#orgfbdbc8e">17.6. Login</a></li>
<li><a href="#org7433e13">17.7. Tuigreet</a></li>
<li><a href="#org7996acb">17.8. LightDM</a></li>
<li><a href="#org5920982">17.9. Terminal (default system)</a></li>
<li><a href="#org2456a84">17.10. Files</a></li>
<li><a href="#org395f112">17.11. Locale</a></li>
<li><a href="#org64456ec">17.12. Networking</a></li>
<li><a href="#orgf8899f5">17.13. Hyprland</a></li>
<li><a href="#orgccc1809">17.14. Services</a></li>
<li><a href="#org976592d">17.15. Audio</a></li>
<li><a href="#org0379935">17.16. Miscellaneous Packages and Programs</a></li>
<li><a href="#orgc750df3">17.17. Fonts</a></li>
<li><a href="#org91c8501">17.18. User Config</a></li>
<li><a href="#org68b882a">17.1. Apps section</a></li>
<li><a href="#orga97e84f">17.2. install<sub>packages.nix</sub></a></li>
<li><a href="#orgc5e0451">17.3. install<sub>flatpaks.nix</sub></a></li>
<li><a href="#org6418de9">17.4. Nix Settings</a></li>
<li><a href="#orgf581648">17.5. Boot</a></li>
<li><a href="#org083895e">17.6. Login</a></li>
<li><a href="#org402a187">17.7. Tuigreet</a></li>
<li><a href="#orgd6665ce">17.8. LightDM</a></li>
<li><a href="#org2e96d81">17.9. Terminal (default system)</a></li>
<li><a href="#org4a28e73">17.10. Files</a></li>
<li><a href="#orgb2776ac">17.11. Locale</a></li>
<li><a href="#org55dd6fe">17.12. Networking</a></li>
<li><a href="#org170e896">17.13. Hyprland</a></li>
<li><a href="#org39d3e95">17.14. Services</a></li>
<li><a href="#org43a7e51">17.15. Audio</a></li>
<li><a href="#org58a807c">17.16. Miscellaneous Packages and Programs</a></li>
<li><a href="#orgf257fee">17.17. Fonts</a></li>
<li><a href="#orgf558316">17.18. User Config</a></li>
</ul>
</li>
<li><a href="#org900ae9b">18. Home</a>
<li><a href="#org0cdb5b9">18. Home</a>
<ul>
<li><a href="#org5d7afd6">18.1. default.nix</a></li>
<li><a href="#org04ba816">18.2. Wallpaper</a></li>
<li><a href="#org4cda649">18.3. Waybar</a></li>
<li><a href="#orgfa609f5">18.4. Lock Screen</a></li>
<li><a href="#orga3b4a0c">18.5. Idle Screen</a></li>
<li><a href="#org893b26e">18.6. Hyprshell</a></li>
<li><a href="#org0264d18">18.7. Hyprland</a></li>
<li><a href="#org3581d95">18.8. Walker</a></li>
<li><a href="#orgf1944a5">18.9. Theme</a></li>
<li><a href="#orgc197a85">18.10. Default-apps</a></li>
<li><a href="#orga74db61">18.11. Hyperexpo</a></li>
<li><a href="#orge5bd1d0">18.12. Alacritty</a></li>
<li><a href="#orgaf2a62e">18.13. Dev Tools</a></li>
<li><a href="#org249f230">18.14. Kitty</a></li>
<li><a href="#org38b6ebc">18.15. Shells</a></li>
<li><a href="#org05a49f2">18.16. Zsh</a></li>
<li><a href="#org763ec70">18.17. Starship</a></li>
<li><a href="#org4217850">18.18. Other Settings</a>
<li><a href="#org7cc6b85">18.1. default.nix</a></li>
<li><a href="#org5b84c7b">18.2. Wallpaper</a></li>
<li><a href="#orga136f62">18.3. Waybar</a></li>
<li><a href="#orgb70c900">18.4. Lock Screen</a></li>
<li><a href="#org0339253">18.5. Idle Screen</a></li>
<li><a href="#org41f266f">18.6. Hyprshell</a></li>
<li><a href="#org2e441e1">18.7. Hyprland</a></li>
<li><a href="#org5e3668b">18.8. Walker</a></li>
<li><a href="#orge912d1a">18.9. Theme</a></li>
<li><a href="#org4b09e5b">18.10. Default-apps</a></li>
<li><a href="#orgdf2f044">18.11. Hyperexpo</a></li>
<li><a href="#org2d445a3">18.12. Alacritty</a></li>
<li><a href="#orgd19a6d3">18.13. Dev Tools</a></li>
<li><a href="#orgab96430">18.14. Kitty</a></li>
<li><a href="#org11db41a">18.15. Shells</a></li>
<li><a href="#org38acaeb">18.16. Zsh</a></li>
<li><a href="#org2df293f">18.17. Starship</a></li>
<li><a href="#orgf89c3dc">18.18. Other Settings</a>
<ul>
<li><a href="#org1490c09">18.18.1. Home User</a></li>
<li><a href="#org5930ebd">18.18.1. Home User</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org931cd39">19. Emacs</a>
<li><a href="#orgefefa13">19. Emacs</a>
<ul>
<li><a href="#orga1673ca">19.1. Early Initialization</a></li>
<li><a href="#org78897d2">19.2. Initialization</a></li>
<li><a href="#orgfc9f13b">19.1. Early Initialization</a></li>
<li><a href="#org1bd19cb">19.2. Initialization</a></li>
</ul>
</li>
<li><a href="#org5a49e80">20. Machines</a>
<li><a href="#orgc0e69e0">20. Machines</a>
<ul>
<li><a href="#orgc44e182">20.1. Traveldroid</a>
<li><a href="#org785e401">20.1. Traveldroid</a>
<ul>
<li><a href="#org4995f13">20.1.1. System Level</a></li>
<li><a href="#orga0f7563">20.1.2. Hardware</a></li>
<li><a href="#orge929591">20.1.3. Home</a></li>
<li><a href="#org52c5fd5">20.1.1. System Level</a></li>
<li><a href="#orgd6465eb">20.1.2. Hardware</a></li>
<li><a href="#org2b83bbe">20.1.3. Home</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#orgee42b93">21. README Utils</a>
<li><a href="#orgd4cd546">21. README Utils</a>
<ul>
<li>
<ul>
<li><a href="#org3295e35">21.0.1. Headers</a></li>
<li><a href="#org4c54c6f">21.0.1. Headers</a></li>
</ul>
</li>
</ul>
@@ -348,8 +348,8 @@ gf#+OPTIONS: toc:nil broken-links:t
</a>
</div>
</div>
<div id="outline-container-org3353d21" class="outline-2">
<h2 id="org3353d21"><span class="section-number-2">1.</span> Introduction</h2>
<div id="outline-container-org239c23f" class="outline-2">
<h2 id="org239c23f"><span class="section-number-2">1.</span> Introduction</h2>
<div class="outline-text-2" id="text-1">
<div align="center"><img src="./.github/images/need to create screenshot.png" width="100%" alt="Screenshot" /></div>
@@ -375,8 +375,8 @@ Before proceeding with installation, it is strongly recommended to read this doc
</p>
</div>
</div>
<div id="outline-container-orgaa977f9" class="outline-2">
<h2 id="orgaa977f9"><span class="section-number-2">2.</span> Pre-requisites to edit this setup</h2>
<div id="outline-container-orgad27718" class="outline-2">
<h2 id="orgad27718"><span class="section-number-2">2.</span> Pre-requisites to edit this setup</h2>
<div class="outline-text-2" id="text-2">
<ul class="org-ul">
<li>a NIXOS system installed (can be bare-bones)</li>
@@ -405,8 +405,8 @@ nmcli device status
</div>
</div>
</div>
<div id="outline-container-orgd310268" class="outline-2">
<h2 id="orgd310268"><span class="section-number-2">3.</span> machine1 — template machine</h2>
<div id="outline-container-org59290ed" class="outline-2">
<h2 id="org59290ed"><span class="section-number-2">3.</span> machine1 — template machine</h2>
<div class="outline-text-2" id="text-3">
<p>
To generate the Nix files:
@@ -463,46 +463,46 @@ Other files in this repo include:
</p>
</div>
</div>
<div id="outline-container-orgd65ee41" class="outline-2">
<h2 id="orgd65ee41"><span class="section-number-2">4.</span> <code>flake.lock</code> for pinning input versions.</h2>
<div id="outline-container-orgadebecf" class="outline-2">
<h2 id="orgadebecf"><span class="section-number-2">4.</span> <code>flake.lock</code> for pinning input versions.</h2>
</div>
<div id="outline-container-org7c86559" class="outline-2">
<h2 id="org7c86559"><span class="section-number-2">5.</span> <code>assets/*</code> for non-Nix-managed artifacts such as images and wallpapers.</h2>
<div id="outline-container-org9d1e91b" class="outline-2">
<h2 id="org9d1e91b"><span class="section-number-2">5.</span> <code>assets/*</code> for non-Nix-managed artifacts such as images and wallpapers.</h2>
<div class="outline-text-2" id="text-5">
<p>
Generated outputs should not be edited directly. A CI workflow can tangle and commit generated outputs when they differ.
</p>
</div>
<div id="outline-container-org5b4bc3d" class="outline-3">
<h3 id="org5b4bc3d"><span class="section-number-3">5.1.</span> Emacs + Org + Tangle</h3>
<div id="outline-container-org75cb25d" class="outline-3">
<h3 id="org75cb25d"><span class="section-number-3">5.1.</span> Emacs + Org + Tangle</h3>
</div>
</div>
<div id="outline-container-org8822422" class="outline-2">
<h2 id="org8822422"><span class="section-number-2">6.</span> [<a href="https://www.gnu.org/software/emacs/">Emacs](https://www.gnu.org/software/emacs/][Emacs)</a> is used as the editor and execution environment for this literate configuration.</h2>
<div id="outline-container-orgc305029" class="outline-2">
<h2 id="orgc305029"><span class="section-number-2">6.</span> [<a href="https://www.gnu.org/software/emacs/">Emacs](https://www.gnu.org/software/emacs/][Emacs)</a> is used as the editor and execution environment for this literate configuration.</h2>
</div>
<div id="outline-container-org090f5f2" class="outline-2">
<h2 id="org090f5f2"><span class="section-number-2">7.</span> [<a href="https://orgmode.org/">Org](https://orgmode.org/][Org) mode</a> provides the document structure and the source block execution model used here.</h2>
<div id="outline-container-org293cd08" class="outline-2">
<h2 id="org293cd08"><span class="section-number-2">7.</span> [<a href="https://orgmode.org/">Org](https://orgmode.org/][Org) mode</a> provides the document structure and the source block execution model used here.</h2>
</div>
<div id="outline-container-org12dea48" class="outline-2">
<h2 id="org12dea48"><span class="section-number-2">8.</span> Tangling exports source blocks from this Org document into the corresponding configuration files.</h2>
<div id="outline-container-org94167ec" class="outline-2">
<h2 id="org94167ec"><span class="section-number-2">8.</span> Tangling exports source blocks from this Org document into the corresponding configuration files.</h2>
<div class="outline-text-2" id="text-8">
<ul class="org-ul">
<li>References of the form <code>&lt;&lt;code-id&gt;&gt;</code> are noweb placeholders that are expanded from other blocks during tangling.</li>
</ul>
</div>
<div id="outline-container-orgd89607a" class="outline-3">
<h3 id="orgd89607a"><span class="section-number-3">8.1.</span> Nix &amp; NixOS</h3>
<div id="outline-container-org67b43ee" class="outline-3">
<h3 id="org67b43ee"><span class="section-number-3">8.1.</span> Nix &amp; NixOS</h3>
</div>
</div>
<div id="outline-container-org35fff2f" class="outline-2">
<h2 id="org35fff2f"><span class="section-number-2">9.</span> [<a href="https://nix.dev/">Nix](https://nix.dev/][Nix)</a> is used to define packages, environments, and configuration as pure expressions.</h2>
<div id="outline-container-orgb4c24b8" class="outline-2">
<h2 id="orgb4c24b8"><span class="section-number-2">9.</span> [<a href="https://nix.dev/">Nix](https://nix.dev/][Nix)</a> is used to define packages, environments, and configuration as pure expressions.</h2>
</div>
<div id="outline-container-orge40bb0f" class="outline-2">
<h2 id="orge40bb0f"><span class="section-number-2">10.</span> [<a href="https://nixos.org/">NixOS](https://nixos.org/][NixOS)</a> evaluates Nix expressions into a complete system configuration that can be applied by rebuild operations.</h2>
<div id="outline-container-org845cb39" class="outline-2">
<h2 id="org845cb39"><span class="section-number-2">10.</span> [<a href="https://nixos.org/">NixOS](https://nixos.org/][NixOS)</a> evaluates Nix expressions into a complete system configuration that can be applied by rebuild operations.</h2>
<div class="outline-text-2" id="text-10">
</div>
<div id="outline-container-org2fcaa25" class="outline-3">
<h3 id="org2fcaa25"><span class="section-number-3">10.1.</span> Repository layout and folder conventions</h3>
<div id="outline-container-org418c6b7" class="outline-3">
<h3 id="org418c6b7"><span class="section-number-3">10.1.</span> Repository layout and folder conventions</h3>
<div class="outline-text-3" id="text-10-1">
<p>
This repository contains system modules, user modules, and configuration fragments. The following directories are treated as separate layers:
@@ -513,8 +513,8 @@ To keep navigation consistent, the same internal substructure is used in all thr
</p>
</div>
</div>
<div id="outline-container-org8c804a0" class="outline-3">
<h3 id="org8c804a0"><span class="section-number-3">10.2.</span> Shared domain folders</h3>
<div id="outline-container-orgd6d165e" class="outline-3">
<h3 id="orgd6d165e"><span class="section-number-3">10.2.</span> Shared domain folders</h3>
<div class="outline-text-3" id="text-10-2">
<ul>
<li><code>core/</code> base settings and common infrastructure</li>
@@ -526,8 +526,8 @@ To keep navigation consistent, the same internal substructure is used in all thr
</ul>
</div>
</div>
<div id="outline-container-orga9f7f85" class="outline-3">
<h3 id="orga9f7f85"><span class="section-number-3">10.3.</span> Full tree (including unchanged parts)</h3>
<div id="outline-container-org396857c" class="outline-3">
<h3 id="org396857c"><span class="section-number-3">10.3.</span> Full tree (including unchanged parts)</h3>
<div class="outline-text-3" id="text-10-3">
<p>
The tree below shows the full repository layout, with the standardized internal structure applied only inside
@@ -643,8 +643,8 @@ The tree below shows the full repository layout, with the standardized internal
</code></pre>
</div>
</div>
<div id="outline-container-orgbe46d62" class="outline-3">
<h3 id="orgbe46d62"><span class="section-number-3">10.4.</span> Notes</h3>
<div id="outline-container-orge155937" class="outline-3">
<h3 id="orge155937"><span class="section-number-3">10.4.</span> Notes</h3>
<div class="outline-text-3" id="text-10-4">
<ul>
<li>Only the internal layout of <code>configuration/</code>, <code>home/</code>, and <code>assets/conf/</code> is standardized; all other paths remain as currently organized.</li>
@@ -675,8 +675,8 @@ This prevents unwanted and surprise updates when rebuilding without changing the
</div>
</div>
</div>
<div id="outline-container-org29ed169" class="outline-2">
<h2 id="org29ed169"><span class="section-number-2">11.</span> TLDR App List</h2>
<div id="outline-container-org3eb4272" class="outline-2">
<h2 id="org3eb4272"><span class="section-number-2">11.</span> TLDR App List</h2>
<div class="outline-text-2" id="text-11">
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
@@ -755,8 +755,8 @@ This prevents unwanted and surprise updates when rebuilding without changing the
</table>
</div>
</div>
<div id="outline-container-org950a563" class="outline-2">
<h2 id="org950a563"><span class="section-number-2">12.</span> Configuration Variables</h2>
<div id="outline-container-orga01dbe4" class="outline-2">
<h2 id="orga01dbe4"><span class="section-number-2">12.</span> Configuration Variables</h2>
<div class="outline-text-2" id="text-12">
<p>
I have a bunch of constant strings that I would rather put in a file. Thats what <code>user.nix</code> is.
@@ -773,8 +773,8 @@ The values are imported at the beginning and are available to almost all the fun
</div>
</div>
</div>
<div id="outline-container-org436e736" class="outline-2">
<h2 id="org436e736"><span class="section-number-2">13.</span> Flake Inputs</h2>
<div id="outline-container-orgcbdf746" class="outline-2">
<h2 id="orgcbdf746"><span class="section-number-2">13.</span> Flake Inputs</h2>
<div class="outline-text-2" id="text-13">
<p>
The inputs for my system's configuration are very simple
@@ -811,8 +811,8 @@ Sometimes pinned to a specific commit because unstable broke something and the f
</div>
</div>
</div>
<div id="outline-container-org2fbc9ca" class="outline-2">
<h2 id="org2fbc9ca"><span class="section-number-2">14.</span> Flake Output</h2>
<div id="outline-container-org8791fde" class="outline-2">
<h2 id="org8791fde"><span class="section-number-2">14.</span> Flake Output</h2>
<div class="outline-text-2" id="text-14">
<p>
Now that the inputs are ready, the outputs define what the system will actually look like. I also define the machines that this configuration specifies early on. Finally, I iterate over the <code>machines</code> list and pull files from <code>/.machines/${name}</code> subdirectory. This allows me to have configuration that has machine specific configuration limited to those files while also keeping a modular reusable base.
@@ -820,7 +820,7 @@ We also add a devshell that makes editing this repository easier in emacs.
</p>
<div class="org-src-container">
<pre class="src src-nix" id="orgac7e297">outputs = inputs@{
<pre class="src src-nix" id="org0890da2">outputs = inputs@{
nixpkgs,
home-manager,
emacs-overlay,
@@ -881,7 +881,7 @@ Overlays are a special nix way to override existing packages within a repository
</p>
<div class="org-src-container">
<pre class="src src-nix" id="orgb959680">({ ... }: {
<pre class="src src-nix" id="orgcc50dce">({ ... }: {
nixpkgs.overlays = [ emacs-overlay.overlays.default ];
})
</pre>
@@ -891,7 +891,7 @@ Overlays are a special nix way to override existing packages within a repository
Then the machine specific configuration, in this case, just "traveldroid".
</p>
<div class="org-src-container">
<pre class="src src-nix" id="orgc4903d3">./machines/${machine}/configuration.nix
<pre class="src src-nix" id="org6135a67">./machines/${machine}/configuration.nix
</pre>
</div></li>
@@ -901,7 +901,7 @@ This can be initialized and managed on its own but I'd rather use the <code>nixo
</p>
<div class="org-src-container">
<pre class="src src-nix" id="orge039643">home-manager.nixosModules.home-manager
<pre class="src src-nix" id="org36db179">home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
@@ -944,8 +944,8 @@ Finally I pull in the machine specific home configuration. Along with the overri
</div></li>
</ol>
</div>
<div id="outline-container-org0995880" class="outline-3">
<h3 id="org0995880"><span class="section-number-3">14.1.</span> Envrc + Direnv</h3>
<div id="outline-container-orgaa22c33" class="outline-3">
<h3 id="orgaa22c33"><span class="section-number-3">14.1.</span> Envrc + Direnv</h3>
<div class="outline-text-3" id="text-14-1">
<p>
Editing this file will be much nicer if we have the dev environment configured.
@@ -966,14 +966,14 @@ fi
</div>
</div>
</div>
<div id="outline-container-orge5858cf" class="outline-2">
<h2 id="orge5858cf"><span class="section-number-2">15.</span> Machines</h2>
<div id="outline-container-org0ff59fd" class="outline-2">
<h2 id="org0ff59fd"><span class="section-number-2">15.</span> Machines</h2>
<div class="outline-text-2" id="text-15">
<p>
The individual machines subdirectory is configured as follows :-
</p>
<div class="org-src-container">
<pre class="src src-ditaa" id="org79564a3">+--machine
<pre class="src src-ditaa" id="orgd8d7ccc">+--machine
| +--configuration.nix
| +--home.nix
| +--hardware-configuration.nix
@@ -994,12 +994,12 @@ This imported object (or function result) is just trivially merged into a common
We can take a look at that the common hardware options I have for all my machines.
</p>
</div>
<div id="outline-container-orgb969023" class="outline-4">
<h4 id="orgb969023"><span class="section-number-4">15.0.1.</span> Other Utils</h4>
<div id="outline-container-org544c015" class="outline-4">
<h4 id="org544c015"><span class="section-number-4">15.0.1.</span> Other Utils</h4>
<div class="outline-text-4" id="text-15-0-1">
</div>
<ol class="org-ol">
<li><a id="org7cc43c7"></a>Updates<br />
<li><a id="orgaf5a8bc"></a>Updates<br />
<div class="outline-text-5" id="text-15-0-1-1">
<p>
To update the computer, I just need to update the <code>flake.lock</code> file to have references to the latest repository. This is done with :-
@@ -1013,8 +1013,8 @@ To update the computer, I just need to update the <code>flake.lock</code> file t
</ol>
</div>
</div>
<div id="outline-container-org1344348" class="outline-2">
<h2 id="org1344348"><span class="section-number-2">16.</span> Hardware</h2>
<div id="outline-container-org7af430b" class="outline-2">
<h2 id="org7af430b"><span class="section-number-2">16.</span> Hardware</h2>
<div class="outline-text-2" id="text-16">
<p>
I'll let the code comments explain the file here.
@@ -1048,8 +1048,8 @@ I'll let the code comments explain the file here.
</div>
</div>
</div>
<div id="outline-container-org4851cfd" class="outline-2">
<h2 id="org4851cfd"><span class="section-number-2">17.</span> Configuration</h2>
<div id="outline-container-orge3d6d36" class="outline-2">
<h2 id="orge3d6d36"><span class="section-number-2">17.</span> Configuration</h2>
<div class="outline-text-2" id="text-17">
<p>
This section describes the main system configuration for the computers that I have. Nix will look for a <code>default.nix</code> file if you give it a path to a folder to import. And <code>default.nix</code> looks as follows :-
@@ -1092,16 +1092,16 @@ This section describes the main system configuration for the computers that I ha
</pre>
</div>
</div>
<div id="outline-container-org74ed1f3" class="outline-3">
<h3 id="org74ed1f3"><span class="section-number-3">17.1.</span> Apps section</h3>
<div id="outline-container-org68b882a" class="outline-3">
<h3 id="org68b882a"><span class="section-number-3">17.1.</span> Apps section</h3>
<div class="outline-text-3" id="text-17-1">
<p>
This section describes a way of installing packages, either through nixpkgs orr flatpak. What apps to instal is decided in the files ./assets/conf/apps/packages.conf and flatpaks.conf
</p>
</div>
</div>
<div id="outline-container-org293c5e6" class="outline-3">
<h3 id="org293c5e6"><span class="section-number-3">17.2.</span> install<sub>packages.nix</sub></h3>
<div id="outline-container-orga97e84f" class="outline-3">
<h3 id="orga97e84f"><span class="section-number-3">17.2.</span> install<sub>packages.nix</sub></h3>
<div class="outline-text-3" id="text-17-2">
<div class="org-src-container">
<pre class="src src-nix">{ config, lib, pkgs, flakeRoot, ... }:
@@ -1156,8 +1156,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org4dc8b9b" class="outline-3">
<h3 id="org4dc8b9b"><span class="section-number-3">17.3.</span> install<sub>flatpaks.nix</sub></h3>
<div id="outline-container-orgc5e0451" class="outline-3">
<h3 id="orgc5e0451"><span class="section-number-3">17.3.</span> install<sub>flatpaks.nix</sub></h3>
<div class="outline-text-3" id="text-17-3">
<div class="org-src-container">
<pre class="src src-nix">{ config, pkgs, lib, flakeRoot, ... }:
@@ -1268,8 +1268,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org501760a" class="outline-3">
<h3 id="org501760a"><span class="section-number-3">17.4.</span> Nix Settings</h3>
<div id="outline-container-org6418de9" class="outline-3">
<h3 id="org6418de9"><span class="section-number-3">17.4.</span> Nix Settings</h3>
<div class="outline-text-3" id="text-17-4">
<p>
These are global nix settings that configure the settings for the actual tool.
@@ -1318,8 +1318,8 @@ These are global nix settings that configure the settings for the actual tool.
</div>
</div>
</div>
<div id="outline-container-org250392f" class="outline-3">
<h3 id="org250392f"><span class="section-number-3">17.5.</span> Boot</h3>
<div id="outline-container-orgf581648" class="outline-3">
<h3 id="orgf581648"><span class="section-number-3">17.5.</span> Boot</h3>
<div class="outline-text-3" id="text-17-5">
<p>
This file has most of the settings the control how the computer boots up.
@@ -1357,16 +1357,16 @@ This file has most of the settings the control how the computer boots up.
</div>
</div>
</div>
<div id="outline-container-orgfbdbc8e" class="outline-3">
<h3 id="orgfbdbc8e"><span class="section-number-3">17.6.</span> Login</h3>
<div id="outline-container-org083895e" class="outline-3">
<h3 id="org083895e"><span class="section-number-3">17.6.</span> Login</h3>
<div class="outline-text-3" id="text-17-6">
<p>
Here we control what the login screen would look like. In configuration/default.nix you can choose whether to use tuigreet (very minimalistic) or LightDM (nicer, themeable)
</p>
</div>
</div>
<div id="outline-container-org7433e13" class="outline-3">
<h3 id="org7433e13"><span class="section-number-3">17.7.</span> Tuigreet</h3>
<div id="outline-container-org402a187" class="outline-3">
<h3 id="org402a187"><span class="section-number-3">17.7.</span> Tuigreet</h3>
<div class="outline-text-3" id="text-17-7">
<p>
Doesn't match the rest of the aesthetic of the system (with hyprland), but I like its simplicity.
@@ -1391,8 +1391,8 @@ Doesn't match the rest of the aesthetic of the system (with hyprland), but I lik
</div>
</div>
</div>
<div id="outline-container-org7996acb" class="outline-3">
<h3 id="org7996acb"><span class="section-number-3">17.8.</span> LightDM</h3>
<div id="outline-container-orgd6665ce" class="outline-3">
<h3 id="orgd6665ce"><span class="section-number-3">17.8.</span> LightDM</h3>
<div class="outline-text-3" id="text-17-8">
<div class="org-src-container">
<pre class="src src-nix">{ config, pkgs, lib, ... }:
@@ -1539,8 +1539,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org5920982" class="outline-3">
<h3 id="org5920982"><span class="section-number-3">17.9.</span> Terminal (default system)</h3>
<div id="outline-container-org2e96d81" class="outline-3">
<h3 id="org2e96d81"><span class="section-number-3">17.9.</span> Terminal (default system)</h3>
<div class="outline-text-3" id="text-17-9">
<p>
This is the initial system level configuration for the terminal that I use on this machine. Its just <a href="https://ohmyz.sh/">zsh</a>.
@@ -1559,8 +1559,8 @@ This is the initial system level configuration for the terminal that I use on th
</div>
</div>
</div>
<div id="outline-container-org2456a84" class="outline-3">
<h3 id="org2456a84"><span class="section-number-3">17.10.</span> Files</h3>
<div id="outline-container-org4a28e73" class="outline-3">
<h3 id="org4a28e73"><span class="section-number-3">17.10.</span> Files</h3>
<div class="outline-text-3" id="text-17-10">
<p>
I use Thunar as the file explorer. Also setup a few plugins for <a href="https://docs.xfce.org/xfce/thunar/start">Thunar</a> in this config.
@@ -1601,8 +1601,8 @@ Along with that, a few other utilities like zip and enabling services to automou
</div>
</div>
</div>
<div id="outline-container-org395f112" class="outline-3">
<h3 id="org395f112"><span class="section-number-3">17.11.</span> Locale</h3>
<div id="outline-container-orgb2776ac" class="outline-3">
<h3 id="orgb2776ac"><span class="section-number-3">17.11.</span> Locale</h3>
<div class="outline-text-3" id="text-17-11">
<p>
I live in Netherlands and would like all my locale and timezone settings to match. Except my default locale.
@@ -1636,8 +1636,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org64456ec" class="outline-3">
<h3 id="org64456ec"><span class="section-number-3">17.12.</span> Networking</h3>
<div id="outline-container-org55dd6fe" class="outline-3">
<h3 id="org55dd6fe"><span class="section-number-3">17.12.</span> Networking</h3>
<div class="outline-text-3" id="text-17-12">
<p>
Not much to see here. I want networking to be enabled. I want firewall as well.
@@ -1668,8 +1668,8 @@ Not much to see here. I want networking to be enabled. I want firewall as well.
</div>
</div>
</div>
<div id="outline-container-orgf8899f5" class="outline-3">
<h3 id="orgf8899f5"><span class="section-number-3">17.13.</span> Hyprland</h3>
<div id="outline-container-org170e896" class="outline-3">
<h3 id="org170e896"><span class="section-number-3">17.13.</span> Hyprland</h3>
<div class="outline-text-3" id="text-17-13">
<p>
This is a big one because the DE needs so much configuration. This section mostly installs <a href="https://hyprland.org/">Hyprland</a>.
@@ -1738,8 +1738,8 @@ The configuration is done in the home manager section.
</div>
</div>
</div>
<div id="outline-container-orgccc1809" class="outline-3">
<h3 id="orgccc1809"><span class="section-number-3">17.14.</span> Services</h3>
<div id="outline-container-org39d3e95" class="outline-3">
<h3 id="org39d3e95"><span class="section-number-3">17.14.</span> Services</h3>
<div class="outline-text-3" id="text-17-14">
<p>
These are some of the services that I enable at the system level. Explanation in the comments.
@@ -1772,8 +1772,8 @@ These are some of the services that I enable at the system level. Explanation in
</div>
</div>
</div>
<div id="outline-container-org976592d" class="outline-3">
<h3 id="org976592d"><span class="section-number-3">17.15.</span> Audio</h3>
<div id="outline-container-org43a7e51" class="outline-3">
<h3 id="org43a7e51"><span class="section-number-3">17.15.</span> Audio</h3>
<div class="outline-text-3" id="text-17-15">
<div class="org-src-container">
<pre class="src src-nix">{ config, pkgs, lib, ... }:
@@ -1851,11 +1851,11 @@ These are some of the services that I enable at the system level. Explanation in
</div>
</div>
</div>
<div id="outline-container-org0379935" class="outline-3">
<h3 id="org0379935"><span class="section-number-3">17.16.</span> Miscellaneous Packages and Programs</h3>
<div id="outline-container-org58a807c" class="outline-3">
<h3 id="org58a807c"><span class="section-number-3">17.16.</span> Miscellaneous Packages and Programs</h3>
<div class="outline-text-3" id="text-17-16">
<div class="org-src-container">
<pre class="src src-nix" id="org88c455e">environment.systemPackages = with pkgs; [
<pre class="src src-nix" id="org470f0c8">environment.systemPackages = with pkgs; [
wget # fetch utility
curl # more fetch utility
binutils # executable utilities, like ld
@@ -1883,7 +1883,7 @@ programs.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];
</div>
<div class="org-src-container">
<pre class="src src-nix" id="org0e45df2">programs = {
<pre class="src src-nix" id="org3233e95">programs = {
nix-ld.enable = true; # helps with linking troubles with dynamic libraries
appimage.enable = true; # allow appimage installations
dconf.enable = true; # to save user settings
@@ -1899,14 +1899,14 @@ programs.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];
</div>
</div>
</div>
<div id="outline-container-orgc750df3" class="outline-3">
<h3 id="orgc750df3"><span class="section-number-3">17.17.</span> Fonts</h3>
<div id="outline-container-orgf257fee" class="outline-3">
<h3 id="orgf257fee"><span class="section-number-3">17.17.</span> Fonts</h3>
<div class="outline-text-3" id="text-17-17">
<p>
Nothing much to see here. I love <a href="https://protesilaos.com/codelog/2025-02-12-aporetic-fonts-version-1-1-0/">Aporetic</a>, and I use it everywhere.
</p>
<div class="org-src-container">
<pre class="src src-nix" id="orgfc16bd8">fonts.packages = with pkgs; [
<pre class="src src-nix" id="org906f628">fonts.packages = with pkgs; [
aporetic
nerd-fonts.iosevka
];
@@ -1914,14 +1914,14 @@ Nothing much to see here. I love <a href="https://protesilaos.com/codelog/2025-0
</div>
</div>
</div>
<div id="outline-container-org91c8501" class="outline-3">
<h3 id="org91c8501"><span class="section-number-3">17.18.</span> User Config</h3>
<div id="outline-container-orgf558316" class="outline-3">
<h3 id="orgf558316"><span class="section-number-3">17.18.</span> User Config</h3>
<div class="outline-text-3" id="text-17-18">
<p>
This creates the user profile that I login with. Initially created during install.
</p>
<div class="org-src-container">
<pre class="src src-nix" id="org5520d70">users.users.${user.username} = {
<pre class="src src-nix" id="org9bf8dcc">users.users.${user.username} = {
isNormalUser = true;
description = "henrov";
extraGroups = [
@@ -1936,8 +1936,8 @@ This creates the user profile that I login with. Initially created during instal
</div>
</div>
</div>
<div id="outline-container-org900ae9b" class="outline-2">
<h2 id="org900ae9b"><span class="section-number-2">18.</span> Home</h2>
<div id="outline-container-org0cdb5b9" class="outline-2">
<h2 id="org0cdb5b9"><span class="section-number-2">18.</span> Home</h2>
<div class="outline-text-2" id="text-18">
<p>
I use home-manager to manage my user level dotfiles and configurations.
@@ -1945,8 +1945,8 @@ Most of the "theme" of the system is decided here.
I also use it to install programs that are okay with being installed at the user level instead of the system.
</p>
</div>
<div id="outline-container-org5d7afd6" class="outline-3">
<h3 id="org5d7afd6"><span class="section-number-3">18.1.</span> default.nix</h3>
<div id="outline-container-org7cc6b85" class="outline-3">
<h3 id="org7cc6b85"><span class="section-number-3">18.1.</span> default.nix</h3>
<div class="outline-text-3" id="text-18-1">
<p>
This module will import all necessities.
@@ -1982,8 +1982,8 @@ This module will import all necessities.
</div>
</div>
</div>
<div id="outline-container-org04ba816" class="outline-3">
<h3 id="org04ba816"><span class="section-number-3">18.2.</span> Wallpaper</h3>
<div id="outline-container-org5b84c7b" class="outline-3">
<h3 id="org5b84c7b"><span class="section-number-3">18.2.</span> Wallpaper</h3>
<div class="outline-text-3" id="text-18-2">
<p>
wallpaper.nix installs wpaperd and deploys your wallpaper files from the repo (./assets/conf/desktop/wallpaper/pictures/) into ~/conf/desktop/wallpaper/pictures. It also deploys the default wallpaper configuration from assets/conf/desktop/wallpaper/wallpaper.conf into ~/conf/desktop/wallpaper/wallpaper.conf, which is the file you can edit as a user override.
@@ -2037,11 +2037,11 @@ in
</div>
</div>
</div>
<div id="outline-container-org4cda649" class="outline-3">
<h3 id="org4cda649"><span class="section-number-3">18.3.</span> Waybar</h3>
<div id="outline-container-orga136f62" class="outline-3">
<h3 id="orga136f62"><span class="section-number-3">18.3.</span> Waybar</h3>
<div class="outline-text-3" id="text-18-3">
<div id="org724c681" class="figure">
<div id="orga634f94" class="figure">
<p><img src="./.github/images/waybar.png" alt="waybar.png" />
</p>
</div>
@@ -2078,8 +2078,8 @@ in
</div>
</div>
</div>
<div id="outline-container-orgfa609f5" class="outline-3">
<h3 id="orgfa609f5"><span class="section-number-3">18.4.</span> Lock Screen</h3>
<div id="outline-container-orgb70c900" class="outline-3">
<h3 id="orgb70c900"><span class="section-number-3">18.4.</span> Lock Screen</h3>
<div class="outline-text-3" id="text-18-4">
<p>
The lock screen configured using <a href="https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/">hyprlock</a>.
@@ -2101,8 +2101,8 @@ in
</div>
</div>
</div>
<div id="outline-container-orga3b4a0c" class="outline-3">
<h3 id="orga3b4a0c"><span class="section-number-3">18.5.</span> Idle Screen</h3>
<div id="outline-container-org0339253" class="outline-3">
<h3 id="org0339253"><span class="section-number-3">18.5.</span> Idle Screen</h3>
<div class="outline-text-3" id="text-18-5">
<p>
&lt;henro: needs instruction&gt;
@@ -2120,8 +2120,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org893b26e" class="outline-3">
<h3 id="org893b26e"><span class="section-number-3">18.6.</span> Hyprshell</h3>
<div id="outline-container-org41f266f" class="outline-3">
<h3 id="org41f266f"><span class="section-number-3">18.6.</span> Hyprshell</h3>
<div class="outline-text-3" id="text-18-6">
<p>
For nice task-starting and -switching
@@ -2161,8 +2161,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org0264d18" class="outline-3">
<h3 id="org0264d18"><span class="section-number-3">18.7.</span> Hyprland</h3>
<div id="outline-container-org2e441e1" class="outline-3">
<h3 id="org2e441e1"><span class="section-number-3">18.7.</span> Hyprland</h3>
<div class="outline-text-3" id="text-18-7">
<p>
This configures the desktop environment along with the peripherals. The comments should explain whats happening.
@@ -2178,8 +2178,6 @@ in
wayland.windowManager.hyprland = {
enable = true;
systemd.enable = false;
# Load base config + bindings from repo files
extraConfig =
(builtins.readFile hyprConf)
@@ -2197,8 +2195,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org3581d95" class="outline-3">
<h3 id="org3581d95"><span class="section-number-3">18.8.</span> Walker</h3>
<div id="outline-container-org5e3668b" class="outline-3">
<h3 id="org5e3668b"><span class="section-number-3">18.8.</span> Walker</h3>
<div class="outline-text-3" id="text-18-8">
<p>
<a href="https://github.com/abenz1267/walker">This</a> is how I launch applications. It is bound to Win+Space in the ./asstes/conf/desktop/hypr/bindings.conf.
@@ -2299,8 +2297,8 @@ in
</div>
</div>
</div>
<div id="outline-container-orgf1944a5" class="outline-3">
<h3 id="orgf1944a5"><span class="section-number-3">18.9.</span> Theme</h3>
<div id="outline-container-orge912d1a" class="outline-3">
<h3 id="orge912d1a"><span class="section-number-3">18.9.</span> Theme</h3>
<div class="outline-text-3" id="text-18-9">
<p>
I use the <a href="https://catppuccin.com/">Catppuccin</a> almost everywhere. The nix module integrates almost automatically everywhere (except gtk).
@@ -2333,8 +2331,8 @@ You'll notice the color values in multiple places outside this as well.
</div>
</div>
</div>
<div id="outline-container-orgc197a85" class="outline-3">
<h3 id="orgc197a85"><span class="section-number-3">18.10.</span> Default-apps</h3>
<div id="outline-container-org4b09e5b" class="outline-3">
<h3 id="org4b09e5b"><span class="section-number-3">18.10.</span> Default-apps</h3>
<div class="outline-text-3" id="text-18-10">
<p>
This is where you can set defaults
@@ -2353,8 +2351,8 @@ This is where you can set defaults
</div>
</div>
</div>
<div id="outline-container-orga74db61" class="outline-3">
<h3 id="orga74db61"><span class="section-number-3">18.11.</span> Hyperexpo</h3>
<div id="outline-container-orgdf2f044" class="outline-3">
<h3 id="orgdf2f044"><span class="section-number-3">18.11.</span> Hyperexpo</h3>
<div class="outline-text-3" id="text-18-11">
<p>
hyprexpo gets installed and configured
@@ -2394,8 +2392,8 @@ hyprexpo gets installed and configured
</div>
</div>
</div>
<div id="outline-container-orge5bd1d0" class="outline-3">
<h3 id="orge5bd1d0"><span class="section-number-3">18.12.</span> Alacritty</h3>
<div id="outline-container-org2d445a3" class="outline-3">
<h3 id="org2d445a3"><span class="section-number-3">18.12.</span> Alacritty</h3>
<div class="outline-text-3" id="text-18-12">
<p>
Alacritty gets installed and configured
@@ -2417,8 +2415,8 @@ in
</div>
</div>
</div>
<div id="outline-container-orgaf2a62e" class="outline-3">
<h3 id="orgaf2a62e"><span class="section-number-3">18.13.</span> Dev Tools</h3>
<div id="outline-container-orgd19a6d3" class="outline-3">
<h3 id="orgd19a6d3"><span class="section-number-3">18.13.</span> Dev Tools</h3>
<div class="outline-text-3" id="text-18-13">
<p>
All the miscellaneous dev tools on this computer.
@@ -2477,8 +2475,8 @@ All the miscellaneous dev tools on this computer.
</div>
</div>
</div>
<div id="outline-container-org249f230" class="outline-3">
<h3 id="org249f230"><span class="section-number-3">18.14.</span> Kitty</h3>
<div id="outline-container-orgab96430" class="outline-3">
<h3 id="orgab96430"><span class="section-number-3">18.14.</span> Kitty</h3>
<div class="outline-text-3" id="text-18-14">
<p>
Kitty gets installed and configured
@@ -2502,8 +2500,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org38b6ebc" class="outline-3">
<h3 id="org38b6ebc"><span class="section-number-3">18.15.</span> Shells</h3>
<div id="outline-container-org11db41a" class="outline-3">
<h3 id="org11db41a"><span class="section-number-3">18.15.</span> Shells</h3>
<div class="outline-text-3" id="text-18-15">
<p>
The aliases mentioned in ./assets/conf/dev/terminal/shells.conf will be added to enabled shells
@@ -2726,8 +2724,8 @@ EOF
</div>
</div>
</div>
<div id="outline-container-org05a49f2" class="outline-3">
<h3 id="org05a49f2"><span class="section-number-3">18.16.</span> Zsh</h3>
<div id="outline-container-org38acaeb" class="outline-3">
<h3 id="org38acaeb"><span class="section-number-3">18.16.</span> Zsh</h3>
<div class="outline-text-3" id="text-18-16">
<p>
Zsh gets installed and configured
@@ -2770,8 +2768,8 @@ in
</div>
</div>
</div>
<div id="outline-container-org763ec70" class="outline-3">
<h3 id="org763ec70"><span class="section-number-3">18.17.</span> Starship</h3>
<div id="outline-container-org2df293f" class="outline-3">
<h3 id="org2df293f"><span class="section-number-3">18.17.</span> Starship</h3>
<div class="outline-text-3" id="text-18-17">
<p>
The configuration mentioned in ./assets/conf/dev/terminal/starship.toml will be added to enabled shells
@@ -2803,18 +2801,18 @@ in
</div>
</div>
</div>
<div id="outline-container-org4217850" class="outline-3">
<h3 id="org4217850"><span class="section-number-3">18.18.</span> Other Settings</h3>
<div id="outline-container-orgf89c3dc" class="outline-3">
<h3 id="orgf89c3dc"><span class="section-number-3">18.18.</span> Other Settings</h3>
<div class="outline-text-3" id="text-18-18">
<p>
Some repeated info from the configuration.
</p>
</div>
<div id="outline-container-org1490c09" class="outline-4">
<h4 id="org1490c09"><span class="section-number-4">18.18.1.</span> Home User</h4>
<div id="outline-container-org5930ebd" class="outline-4">
<h4 id="org5930ebd"><span class="section-number-4">18.18.1.</span> Home User</h4>
<div class="outline-text-4" id="text-18-18-1">
<div class="org-src-container">
<pre class="src src-nix" id="orgeb1e7f8">home.username = "${user.username}";
<pre class="src src-nix" id="orgdb05a54">home.username = "${user.username}";
home.homeDirectory = pkgs.lib.mkDefault "/home/${user.username}";
home.stateVersion = user.stateVersion;
</pre>
@@ -2823,8 +2821,8 @@ home.stateVersion = user.stateVersion;
</div>
</div>
</div>
<div id="outline-container-org931cd39" class="outline-2">
<h2 id="org931cd39"><span class="section-number-2">19.</span> Emacs</h2>
<div id="outline-container-orgefefa13" class="outline-2">
<h2 id="orgefefa13"><span class="section-number-2">19.</span> Emacs</h2>
<div class="outline-text-2" id="text-19">
<p>
I practically live inside emacs. The configuration for it is a mix between init.el and the nix configuration.
@@ -2903,8 +2901,8 @@ Comments describe the emacs package and what it does.
</pre>
</div>
</div>
<div id="outline-container-orga1673ca" class="outline-3">
<h3 id="orga1673ca"><span class="section-number-3">19.1.</span> Early Initialization</h3>
<div id="outline-container-orgfc9f13b" class="outline-3">
<h3 id="orgfc9f13b"><span class="section-number-3">19.1.</span> Early Initialization</h3>
<div class="outline-text-3" id="text-19-1">
<p>
There are some emacs settings that can be configured before the gui shows up.
@@ -3009,8 +3007,8 @@ These are listed here.
</div>
</div>
</div>
<div id="outline-container-org78897d2" class="outline-3">
<h3 id="org78897d2"><span class="section-number-3">19.2.</span> Initialization</h3>
<div id="outline-container-org1bd19cb" class="outline-3">
<h3 id="org1bd19cb"><span class="section-number-3">19.2.</span> Initialization</h3>
<div class="outline-text-3" id="text-19-2">
<p>
Now starts the main emacs configuration.
@@ -3422,22 +3420,22 @@ ting a file within such a
</div>
</div>
</div>
<div id="outline-container-org5a49e80" class="outline-2">
<h2 id="org5a49e80"><span class="section-number-2">20.</span> Machines</h2>
<div id="outline-container-orgc0e69e0" class="outline-2">
<h2 id="orgc0e69e0"><span class="section-number-2">20.</span> Machines</h2>
<div class="outline-text-2" id="text-20">
<p>
Only a few more things left. Specifically the machine level extra settings.
</p>
</div>
<div id="outline-container-orgc44e182" class="outline-3">
<h3 id="orgc44e182"><span class="section-number-3">20.1.</span> Traveldroid</h3>
<div id="outline-container-org785e401" class="outline-3">
<h3 id="org785e401"><span class="section-number-3">20.1.</span> Traveldroid</h3>
<div class="outline-text-3" id="text-20-1">
<p>
The configuration for the laptop does not change much. Most changes are because the hardware is different.
</p>
</div>
<div id="outline-container-org4995f13" class="outline-4">
<h4 id="org4995f13"><span class="section-number-4">20.1.1.</span> System Level</h4>
<div id="outline-container-org52c5fd5" class="outline-4">
<h4 id="org52c5fd5"><span class="section-number-4">20.1.1.</span> System Level</h4>
<div class="outline-text-4" id="text-20-1-1">
<p>
Nothing specific for the laptop.
@@ -3455,8 +3453,8 @@ Nothing specific for the laptop.
</div>
</div>
</div>
<div id="outline-container-orga0f7563" class="outline-4">
<h4 id="orga0f7563"><span class="section-number-4">20.1.2.</span> Hardware</h4>
<div id="outline-container-orgd6465eb" class="outline-4">
<h4 id="orgd6465eb"><span class="section-number-4">20.1.2.</span> Hardware</h4>
<div class="outline-text-4" id="text-20-1-2">
<p>
This is the most different. Mostly taken from hardware-configuration.nix setup at first install.
@@ -3505,8 +3503,8 @@ hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistr
</div>
</div>
</div>
<div id="outline-container-orge929591" class="outline-4">
<h4 id="orge929591"><span class="section-number-4">20.1.3.</span> Home</h4>
<div id="outline-container-org2b83bbe" class="outline-4">
<h4 id="org2b83bbe"><span class="section-number-4">20.1.3.</span> Home</h4>
<div class="outline-text-4" id="text-20-1-3">
<p>
This is mostly about configuring the monitor. And laptop specific utilities.
@@ -3533,18 +3531,18 @@ This is mostly about configuring the monitor. And laptop specific utilities.
</div>
</div>
</div>
<div id="outline-container-orgee42b93" class="outline-2">
<h2 id="orgee42b93"><span class="section-number-2">21.</span> README Utils</h2>
<div id="outline-container-orgd4cd546" class="outline-2">
<h2 id="orgd4cd546"><span class="section-number-2">21.</span> README Utils</h2>
<div class="outline-text-2" id="text-21">
</div>
<div id="outline-container-org3295e35" class="outline-4">
<h4 id="org3295e35"><span class="section-number-4">21.0.1.</span> Headers</h4>
<div id="outline-container-org4c54c6f" class="outline-4">
<h4 id="org4c54c6f"><span class="section-number-4">21.0.1.</span> Headers</h4>
<div class="outline-text-4" id="text-21-0-1">
<p>
This script adds a <code>DO NOT MODIFY</code> header to all the generated nix files.
</p>
<div class="org-src-container">
<pre class="src src-emacs-lisp" id="orge98dcac">(progn
<pre class="src src-emacs-lisp" id="orgfbdfd41">(progn
(defun add-tangle-headers ()
(message "running in %s" (buffer-file-name))
(when (string= (file-name-extension (buffer-file-name)) "nix")
@@ -3561,7 +3559,7 @@ This script adds a <code>DO NOT MODIFY</code> header to all the generated nix fi
</div>
<div id="postamble" class="status">
<p class="author">Author: henrov</p>
<p class="date">Created: 2026-02-22 zo 20:27</p>
<p class="date">Created: 2026-02-22 zo 20:41</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
-2
View File
@@ -1497,8 +1497,6 @@ in
wayland.windowManager.hyprland = {
enable = true;
systemd.enable = false;
# Load base config + bindings from repo files
extraConfig =
(builtins.readFile hyprConf)
-2
View File
@@ -8,8 +8,6 @@ in
wayland.windowManager.hyprland = {
enable = true;
systemd.enable = true;
# Load base config + bindings from repo files
extraConfig =
(builtins.readFile hyprConf)