/ vimwiki / nixOS.wiki
nixOS.wiki
 1  %title nixOS
 2  :nix:ops:dev:
 3  %update 2023-06-03 20:39
 4  %update 2023-06-06 21:12
 5  
 6  [[nixpkgs]]
 7  [[nix-lang]]
 8  
 9  = basics =
10  nix is a functional, immutable package manager
11  nix (the package manager) is written in the nix language
12  nixOS is a linux distribution built on top of the nix package manager 
13  
14  in nixOS there are 2 kinds of packages. Regular packages and modules which do the configuration management of said packages. Both of these are written in the nix language. Even on nixOS configuration files generally cannot be set through the package manager. Insead [home-manager](https://github.com/nix-community/home-manager ) can be used.
15  
16  = installing nix package manager =
17  {{{bash
18  curl -o install-nix  https://nixos.org/nix/install 
19  curl -o install-nix.asc https://releases.nixos.org/nix/nix-2.3.7/install.asc
20  gpg2 --recv-keys B541D55301270E0BCF15CA5D8170B4726D7198DE
21  gpg2 --verify ./install-nix.asc
22  sh ./install-nix
23  rm ./install-nix.asc ./install-nix
24  }}}
25  
26  = nix-isms =
27  dev environments:
28  	generally the right way to define dev environments is through a shell.nix file which gets invoked when calling nix-shell
29  	in this file we define which packages we expect in order to build and run the program
30  
31  = build options =
32  in NixOS it often feels like the options are the magic part of building software. everyone seems to have just the right options in order to build the software they need
33  however, fear not, you too can be a master of options by searching at:
34  https://search.nixos.org/options or `nixos-option` 
35   
36  = install the OS =
37  https://gist.github.com/ladinu/bfebdd90a5afd45dec811296016b2a3f
38  
39  have to use LUKS1 (grub2 doesn't support luks2 -> should be available by grub2.06) 
40  
41  
42  -----
43  = Backlinks =
44  
45  - [[sealight.services]]
46  - [[ops|A complete list of the digital infrastructure I run or utilize]]
47  - [[lituus|Lituus]]
48  - [[linux]]
49  - [[kendrit|kendrit]]
50  - [[index|index]]
51  - [[dev|conjuring computers log]]
52  - [[Punya|Punya]]
53  - [[Industrial-Ops|Industrial Ops]]
54  - [[221113-1928|Cyborg Setup]]
55  - [[220321-2245|Python Packaging sucks]]
56  - [[220226-0007|Running a script based on udev rules]]
57  - [[201129-2055|Getting Matrix Online]]
58  - [[201125-2056|Finally sitting down to write ]]
59  - [[201118-2301|Feelin' Kinda Sad Today ]]
60  - [[201118-1520]]
61  - [[200921-1454]]