Added tangle-file.sh + helper
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
#+title: Droidnix: A Dendritic NixOS + Home Manager Configuration
|
||||
#+author: Henro Veijer
|
||||
|
||||
#+BEGIN_SRC emacs-lisp :results silent
|
||||
(let ((dir (getenv "XDG_DROIDNIX_DIR")))
|
||||
(when dir
|
||||
(let ((langs '("nix" "sh" "bash" "conf" "lua" "qml" "jsonc" "el" "toml" "css")))
|
||||
(dolist (lang langs)
|
||||
(let* ((prop (concat "header-args:" lang))
|
||||
(val (org-entry-get (point-min) prop t))
|
||||
(expanded (when val (replace-regexp-in-string
|
||||
(regexp-quote "$XDG_DROIDNIX_DIR")
|
||||
dir val))))
|
||||
(when expanded
|
||||
(org-global-prop-set prop expanded)))))))
|
||||
#+END_SRC
|
||||
|
||||
#+options: toc:t num:nil htmlize:nil
|
||||
#+PROPERTY: header-args:nix :prologue "# --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:sh :prologue "# --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:bash :prologue "# --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:css :prologue "/* --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. --- */"
|
||||
#+PROPERTY: header-args:lua :prologue "--- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:conf :prologue "# --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:qml :prologue "// --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:json :prologue ""
|
||||
#+PROPERTY: header-args:jsonc :prologue "// --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:el :prologue ";; --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:toml :prologue "# --- This file has been auto-generated. For permanent changes alter the appropriate block in $XDG_DROIDNIX_DIR/README.org. ---"
|
||||
#+PROPERTY: header-args:none :prologue ""
|
||||
#+language: en
|
||||
#+html_head: <style>pre.src { background-color: #1e1e2e; color: #cdd6f4; padding: 1em; border-radius: 4px; }</style>
|
||||
#+HTML_HEAD: <script src="https://cdn.jsdelivr.net/npm/tree.js@1.0.0/dist/tree.min.js"></script>
|
||||
#+HTML_HEAD: <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/tree.js@1.0.0/dist/tree.min.css">
|
||||
|
||||
* Shortcuts
|
||||
[#introduction][Introduction]
|
||||
[#the-assets-folder][The Assets Folder]
|
||||
[#the-nix-files][The .nix files]
|
||||
|
||||
|
||||
---
|
||||
|
||||
* Introduction :intro:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: introduction
|
||||
:END:
|
||||
** What is Droidnix
|
||||
Droidnix is a modular, declarative NixOS + Home Manager configuration with configurations managed via Emacs Org and Nix Flakes. The project is designed for reproducibility, maintainability, and cross-machine compatibility.
|
||||
|
||||
*** Installed components:
|
||||
**** Core
|
||||
**** Hyprland
|
||||
|
||||
*** Goals, project Structure, import hierarchy
|
||||
This project uses a **modular NixOS configuration** with **Hyprland** support, designed for **literate programming** and **cross-device reusability**.
|
||||
The Droidnix repository is organized into two main parts:
|
||||
1. =.assets/=: Static, non-generated files (e.g., configs, scripts, themes).
|
||||
2. Generated files and folders
|
||||
|
||||
#+title: NixOS Configuration Structure
|
||||
|
||||
* Root Level
|
||||
- = is the entry point and imports:
|
||||
- =generated/assets/=
|
||||
- =generated/modules/=
|
||||
- =generated/hosts/=
|
||||
|
||||
* Generated Structure
|
||||
|
||||
The =generated/= directory contains all generated configurations, divided into three main groups: =system=, =hyprland=, and =mangowc=.
|
||||
Reference in New Issue
Block a user