diff options
author | Akshay <[email protected]> | 2020-10-17 08:04:30 +0100 |
---|---|---|
committer | Akshay <[email protected]> | 2020-10-17 08:04:30 +0100 |
commit | 3414053d7cd17b43dd929e4e5fc468d98145e0d5 (patch) | |
tree | 7b6ec8cfe18e217343cdd54986d5c179fc9e8098 /docs/posts/nixOS | |
parent | 897df34e5e55448ae89fbf1a77533e792e7a5c4e (diff) |
update intro, new post: Self-hosting Git!
Diffstat (limited to 'docs/posts/nixOS')
-rw-r--r-- | docs/posts/nixOS/index.html | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/docs/posts/nixOS/index.html b/docs/posts/nixOS/index.html index de6da96..90de43e 100644 --- a/docs/posts/nixOS/index.html +++ b/docs/posts/nixOS/index.html | |||
@@ -54,10 +54,10 @@ | |||
54 | <p>Builds may be generated by specifying a <code>default.nix</code> file, and running <code>nix-build</code>. Conventional package managers require you to specify a dependency list, but there is no guarantee that this list is complete. The package will build on your machine even if you forget a dependency. However, with Nix, packages are installed to <code>/nix/store</code>, and not global paths such as <code>/usr/bin/...</code>, if your project builds, it means you have included every last one.</p> | 54 | <p>Builds may be generated by specifying a <code>default.nix</code> file, and running <code>nix-build</code>. Conventional package managers require you to specify a dependency list, but there is no guarantee that this list is complete. The package will build on your machine even if you forget a dependency. However, with Nix, packages are installed to <code>/nix/store</code>, and not global paths such as <code>/usr/bin/...</code>, if your project builds, it means you have included every last one.</p> |
55 | <p>Issues on most my projects have been “unable to build because <code>libxcb</code> is missing”, or “this version of <code>openssl</code> is too old”. Tools like <code>cargo</code> and <code>pip</code> are poor package managers. While they <em>can</em> guarantee that Rust or Python dependencies are met, they make assumptions about the target system.</p> | 55 | <p>Issues on most my projects have been “unable to build because <code>libxcb</code> is missing”, or “this version of <code>openssl</code> is too old”. Tools like <code>cargo</code> and <code>pip</code> are poor package managers. While they <em>can</em> guarantee that Rust or Python dependencies are met, they make assumptions about the target system.</p> |
56 | <p>For example, <a href="https://github.com/nerdypepper/site">this website</a> is now built using Nix, anyone using Nix may simply, clone the repository and run <code>./generate.sh</code>, and it would <em>just work</em>, while keeping your global namespace clean™:</p> | 56 | <p>For example, <a href="https://github.com/nerdypepper/site">this website</a> is now built using Nix, anyone using Nix may simply, clone the repository and run <code>./generate.sh</code>, and it would <em>just work</em>, while keeping your global namespace clean™:</p> |
57 | <div class="sourceCode" id="cb2"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1"></a><span class="co">#! /usr/bin/env nix-shell</span></span> | 57 | <div class="sourceCode" id="cb2"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true"></a><span class="co">#! /usr/bin/env nix-shell</span></span> |
58 | <span id="cb2-2"><a href="#cb2-2"></a><span class="co">#! nix-shell -i bash -p eva pandoc esh</span></span> | 58 | <span id="cb2-2"><a href="#cb2-2" aria-hidden="true"></a><span class="co">#! nix-shell -i bash -p eva pandoc esh</span></span> |
59 | <span id="cb2-3"><a href="#cb2-3"></a></span> | 59 | <span id="cb2-3"><a href="#cb2-3" aria-hidden="true"></a></span> |
60 | <span id="cb2-4"><a href="#cb2-4"></a><span class="co"># some bash magic ;)</span></span></code></pre></div> | 60 | <span id="cb2-4"><a href="#cb2-4" aria-hidden="true"></a><span class="co"># some bash magic ;)</span></span></code></pre></div> |
61 | <p>Dependencies are included with the <code>-p</code> flag, the shell script is executed with an interpreter, specified with the <code>-i</code> flag.</p> | 61 | <p>Dependencies are included with the <code>-p</code> flag, the shell script is executed with an interpreter, specified with the <code>-i</code> flag.</p> |
62 | <h3 id="impressions">Impressions</h3> | 62 | <h3 id="impressions">Impressions</h3> |
63 | <p>NixOS is by no means, simple. As a newcomer, using Nix was not easy, heck, I had to learn a purely functional, lazy language to just build programs. There is a lot to be desired on the tooling front as well. A well fleshed out LSP plugin would be nice (<a href="https://github.com/nix-community/rnix-lsp">rnix-lsp looks promising</a>).</p> | 63 | <p>NixOS is by no means, simple. As a newcomer, using Nix was not easy, heck, I had to learn a purely functional, lazy language to just build programs. There is a lot to be desired on the tooling front as well. A well fleshed out LSP plugin would be nice (<a href="https://github.com/nix-community/rnix-lsp">rnix-lsp looks promising</a>).</p> |
@@ -76,7 +76,10 @@ | |||
76 | <p>I'm Akshay, I go by nerd or nerdypepper on the internet.</p> | 76 | <p>I'm Akshay, I go by nerd or nerdypepper on the internet.</p> |
77 | <p> | 77 | <p> |
78 | I am a compsci undergrad, Rust programmer and an enthusiastic Vimmer. | 78 | I am a compsci undergrad, Rust programmer and an enthusiastic Vimmer. |
79 | I write open-source stuff to pass time. I also design fonts: scientifica, curie. | 79 | I write <a href=https://git.peppe.rs>open-source stuff</a> to pass time. |
80 | I also design fonts: | ||
81 | <a href=https://git.peppe.rs/fonts/scientifica>scientifica</a>, | ||
82 | <a href=https://git.peppe.rs/fonts/curie>curie</a>. | ||
80 | </p> | 83 | </p> |
81 | <p>Send me a mail at [email protected] or a message at [email protected].</p> | 84 | <p>Send me a mail at [email protected] or a message at [email protected].</p> |
82 | </div> | 85 | </div> |