#+title: Crazazy's literal config #+author: Crazazy #+PROPERTY: header-args :tangle yes :noweb yes :results silent #+HTML_HEAD: #+HTML_HEAD: #+OPTIONS: ^:nil p:t This is my collection of literal config for my global and emacs setup In this document I'm mostly going to set up some prerequisites for tangling other files and setting up dependencies It is assumed that you have nix and emacs installed for this config to work. You can tangle all files [[elisp:(dolist (i (directory-files (file-name-directory (buffer-file-name (current-buffer))) t "\\.org$")) (org-babel-tangle-file i))][with this link]] You can then install required dependencies with [[shell:./bootstrap.sh &][the bootstrap link]] * Dependencies Dependencies are handled by [[https://github.com/nmattia/niv][niv]]. I have put the dependencies in a shell file, rather than the output of niv itself, as I prefer that this configuration setup declares what I as a user would otherwise be doing by hand. Declarativity takes precendence over reproducibility here ** initialization First, we have to setup niv, you don't have to do anything here, as nix will just do everything for you #+begin_src sh :tangle bootstrap.sh :tangle-mode (identity #o755) #!/usr/bin/env nix-shell #!nix-shell -p niv -i bash niv init #+end_src Then, we remove the default stuff that niv comes with by default #+begin_src sh :tangle bootstrap.sh niv drop nixpkgs niv drop niv #+end_src ** Adding dependencies Now it is time to actually add some dependencies into niv *** Emacs This dependency adds nix infrastructure for emacs that I wrote a while ago. better to add it as a dependency now #+begin_src sh :tangle bootstrap.sh niv add crazazy/emacs #+end_src *** NUR the [[https://github.com/nix-community/nur][Nix User Repository]] that contains my old config, and custom packages some people made #+begin_src sh :tangle bootstrap.sh niv add nix-community/NUR #+end_src *** emacs-ng I don't want to exactly lose track of this, so I'm going to include [[https://github.com/emacs-ng/emacs-ng][emacs-ng]] just incase #+begin_src sh :tangle bootstrap.sh niv add emacs-ng/emacs-ng #+end_src * Other stuff Other files that are available right now are [[file:nixos.org][the nixos config]] and [[file:emacs.org][the emacs config]] If you have any questions or comments about this repository, just HMU at [[mailto:crazazy@tilde.cafe]]