Update readme to match personal notes
This commit is contained in:
225
README.org
225
README.org
@@ -1,6 +1,225 @@
|
|||||||
#+PROPERTY: header-args :noweb no-export :results silent :comments both :tangle no
|
:PROPERTIES:
|
||||||
#+STARTUP: overview
|
:ID: 26ecd52b-1c5c-46b8-8eb9-fe827a753f0a
|
||||||
#+title: Madeleine's nest (=sydnix=)
|
:ROAM_ALIASES: sydnix
|
||||||
|
:END:
|
||||||
|
#+title: Guix-rebound 2
|
||||||
|
#+tags: nix
|
||||||
|
|
||||||
|
Current name of ~guix-rebound~ ought to be changed. This is a rewrite from scratch. }:3
|
||||||
|
|
||||||
|
A second try at NixOS, now that I have a better idea of what I'm doing. The effort is largely inspired by my darling Faye's glorious ~wishsys~.
|
||||||
|
|
||||||
|
* Inbox
|
||||||
|
|
||||||
|
** Refactor: single file per service
|
||||||
|
|
||||||
|
Modules, but lightweight.
|
||||||
|
|
||||||
|
* Tasks
|
||||||
|
|
||||||
|
** Emacs
|
||||||
|
|
||||||
|
*** [#A] One-off environment changes without direnv
|
||||||
|
|
||||||
|
I would like the ability to ergonomically e.g. add HLS to my current environment without setting up an entire project. Perhaps something like "create new workspace under a nix-shell invocation" could work?
|
||||||
|
|
||||||
|
*** minibuffer
|
||||||
|
|
||||||
|
**** DONE jk to escape
|
||||||
|
CLOSED: [2024-11-20 Wed 12:11]
|
||||||
|
|
||||||
|
**** DONE history navigation in insert mode w/ [[kbd:][C-j]] / [[kbd:][C-k]]
|
||||||
|
CLOSED: [2024-11-20 Wed 12:11]
|
||||||
|
|
||||||
|
**** [[kbd:][RET]] to send whilst in normal mode
|
||||||
|
|
||||||
|
*** dired
|
||||||
|
|
||||||
|
**** DONE use [[kbd:][/]] to live narrow
|
||||||
|
CLOSED: [2024-11-14 Thu 04:46]
|
||||||
|
|
||||||
|
*** set up JuliaMono for use with ipa: links
|
||||||
|
|
||||||
|
*** text-mode
|
||||||
|
|
||||||
|
**** grammar
|
||||||
|
|
||||||
|
**** spellcheck and dictionaries
|
||||||
|
|
||||||
|
**** org-mode
|
||||||
|
|
||||||
|
***** init.org for beorg
|
||||||
|
|
||||||
|
***** IPA links
|
||||||
|
|
||||||
|
***** capture templates
|
||||||
|
|
||||||
|
****** journal entry
|
||||||
|
|
||||||
|
****** todo
|
||||||
|
|
||||||
|
***** fancy headline stars
|
||||||
|
|
||||||
|
***** DONE better colour for inline code
|
||||||
|
CLOSED: [2024-11-21 Thu 09:04]
|
||||||
|
|
||||||
|
**** DONE variable pitch
|
||||||
|
CLOSED: [2024-11-30 Sat 19:06]
|
||||||
|
|
||||||
|
*** form and element text objects à la vim-sexp
|
||||||
|
|
||||||
|
*** customise the eshell prompt
|
||||||
|
|
||||||
|
*** jump to prev/next hole in haskell
|
||||||
|
|
||||||
|
*** make a bind for inserting hrules
|
||||||
|
|
||||||
|
*** KILL set up emms
|
||||||
|
CLOSED: [2024-12-11 Wed 13:46]
|
||||||
|
|
||||||
|
- BLOCKER: [[*download my music library][download my music library]]
|
||||||
|
|
||||||
|
it kinda sucks. }:\
|
||||||
|
|
||||||
|
*** set up JuliaMono for use with IPA glyphs
|
||||||
|
|
||||||
|
*** KILL literate config
|
||||||
|
CLOSED: [2024-12-27 Fri 19:35]
|
||||||
|
|
||||||
|
*** evil-cp fixes
|
||||||
|
|
||||||
|
**** [[kbd:][(]] / [[kbd:][)]]
|
||||||
|
|
||||||
|
When [[kbd:][)]] is hit whilst the cursor is at ~↓1~, it should move to the matching
|
||||||
|
bracket, ~↓2~, *not* the right bracket of the ~save-excursion~ call.
|
||||||
|
#+begin_src elisp
|
||||||
|
(save-excursion
|
||||||
|
;; ↓1 ↓2
|
||||||
|
(re-search-forward))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
**** element text objects
|
||||||
|
|
||||||
|
*** automatically close compilation buffer
|
||||||
|
|
||||||
|
*** fix =[e= / =]e=
|
||||||
|
|
||||||
|
*** unmap =TAB= in normal mode
|
||||||
|
|
||||||
|
*** eshell trail à la M-x calc
|
||||||
|
|
||||||
|
#+begin_quote
|
||||||
|
I really like how you re-examined shells and terminals. I hadn't thought of how
|
||||||
|
they're kinda unrelated. What I then don't understand is why eshell stuck to
|
||||||
|
the paradigm of interleaving input and output. It's a relic left over from
|
||||||
|
terminals. ie:
|
||||||
|
>>> input
|
||||||
|
[tonnes of output]
|
||||||
|
>>> input
|
||||||
|
[tonnes of output]
|
||||||
|
to me it seems the input should be entered in the minibuffer (or some separate
|
||||||
|
frame/window) and the outputs should be in a separate window/frame with separate
|
||||||
|
read-only buffers.
|
||||||
|
#+end_quote
|
||||||
|
[[https://www.reddit.com/r/emacs/comments/6y3q4k/comment/dml16vq/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button][source]]
|
||||||
|
|
||||||
|
** TODO Dotfiles
|
||||||
|
|
||||||
|
- [[https://rgoulter.com/blog/posts/programming/2022-02-20-using-home-manager-to-manage-symlinks-to-dotfiles.html][link]]
|
||||||
|
- [[https://www.bekk.christmas/post/2021/16/dotfiles-with-nix-and-home-manager][link]]
|
||||||
|
|
||||||
|
*** TODO Emacs
|
||||||
|
|
||||||
|
*** TODO (neo)vim
|
||||||
|
|
||||||
|
*** TODO readline
|
||||||
|
|
||||||
|
** DONE disko
|
||||||
|
CLOSED: [2024-12-28 Sat 18:13]
|
||||||
|
|
||||||
|
** IDEA refactor disko configs to be more reusable
|
||||||
|
|
||||||
|
** IDEA replace uses of gpg with age
|
||||||
|
|
||||||
|
I don't know anything about either.
|
||||||
|
|
||||||
|
** TODO password store 4 firefox
|
||||||
|
|
||||||
|
** TODO secrets
|
||||||
|
|
||||||
|
** TODO niri
|
||||||
|
|
||||||
|
Or Qtile
|
||||||
|
|
||||||
|
** TODO qtile
|
||||||
|
|
||||||
|
Or Niri
|
||||||
|
|
||||||
|
** TODO tf2.nix
|
||||||
|
|
||||||
|
- declaratively configure tf2
|
||||||
|
- tf2Packages?
|
||||||
|
- mastercomfig integration?
|
||||||
|
- define aliases / bindings from nix?
|
||||||
|
|
||||||
|
** TODO mpd
|
||||||
|
|
||||||
|
*** TODO mpdscribble
|
||||||
|
|
||||||
|
** TODO syncthing
|
||||||
|
|
||||||
|
** HOLD impermanence
|
||||||
|
|
||||||
|
** TODO ~sydnix.defaults~ module
|
||||||
|
|
||||||
|
** TODO Split up ~flake.nix~ into a file per output
|
||||||
|
|
||||||
|
** TODO default package sets
|
||||||
|
|
||||||
|
Some examples of what I mean:
|
||||||
|
|
||||||
|
- ~defaultPackages.essential = true~ to install ~neovim~ and ~git~;
|
||||||
|
- ~defaultPackages.development = true~ for ~jj~ and Emacs.
|
||||||
|
- ~defaultPackages.desktop = true~ for ~cantata~, ~obs~, ~vlc~, ~vesktop~, ~soulseek~;
|
||||||
|
|
||||||
|
Naturally, one would expect some way to say "all these, except this and that."
|
||||||
|
|
||||||
|
** TODO Set envvars
|
||||||
|
|
||||||
|
*** =$EDITOR=
|
||||||
|
|
||||||
|
See [[id:5b4ee1e4-fad7-4783-8e98-301b41579a63][~choose-editor~]].
|
||||||
|
|
||||||
|
** System maintenance scripts
|
||||||
|
|
||||||
|
It might be a good idea to namespace these as subcommands of a single binary.
|
||||||
|
|
||||||
|
*** TODO ~nix-clean~
|
||||||
|
|
||||||
|
Collect garbage, clean up boot entries, delete old generations...
|
||||||
|
|
||||||
|
https://discourse.nixos.org/t/what-to-do-with-a-full-boot-partition/2049
|
||||||
|
|
||||||
|
*** TODO ~choose-editor~
|
||||||
|
:PROPERTIES:
|
||||||
|
:ID: 5b4ee1e4-fad7-4783-8e98-301b41579a63
|
||||||
|
:END:
|
||||||
|
|
||||||
|
- If the Emacs daemon is running...
|
||||||
|
- ...then run ~emacsclient~.
|
||||||
|
- ...otherwise, prompt the user to choose between Emacs and Vim
|
||||||
|
- If Emacs: run ~emacs~.
|
||||||
|
- If Vim: In order, try ~nvim~, ~vim~, then ~vi~.
|
||||||
|
- If neither are available, use ~nix run nixpkgs#nvim~
|
||||||
|
- If this fails, try ~nano~.
|
||||||
|
|
||||||
|
*** TODO ~forget-host HOST~
|
||||||
|
|
||||||
|
Remove a given host from =~/.ssh/known_hosts=. Something like =sed -i -e '/192.168.122.54/d' .ssh/known_hosts=.
|
||||||
|
|
||||||
|
* Impermanence and persistence
|
||||||
|
|
||||||
|
- Persistent files to be linked into ~/~ go under ~/persist/root~
|
||||||
|
|
||||||
* References
|
* References
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user