<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Dilip's Log</title><link>http://idlip.in/</link><description>Dilip's Log</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><copyright>Copyright © 2023-2026, Dilip | Zororg; All rights reserved.</copyright><lastBuildDate>Sun, 04 Feb 2024 00:00:00 +0000</lastBuildDate><atom:link href="http://idlip.in/tags/nixos/rss.xml" rel="self" type="application/rss+xml"/><ttl>1440</ttl><item><title>NixOS and its Madness</title><link>http://idlip.in/posts/nixos-madness/</link><pubDate>Sun, 04 Feb 2024 00:00:00 +0000</pubDate><guid isPermaLink="true">http://idlip.in/posts/nixos-madness/</guid><category>nixos</category><description>
&lt;div id="outline-container-headline-1" class="outline-2"&gt;
&lt;h2 id="headline-1"&gt;
Need to Update. WIP
&lt;/h2&gt;
&lt;div id="outline-text-headline-1" class="outline-text-2"&gt;
&lt;p&gt;
Too much going on, need some time to wrap up.&lt;/p&gt;
&lt;p&gt;
I initially thought to talk about nix and nixos usage thing, but new drama has rose up regarding to sponsorship, governance and maintainers leaving.&lt;/p&gt;
&lt;p&gt;
So far Aux and Lix has been initiated, apart from nixos governance, using nix as dev environment and its steep learning curve is a hectic.&lt;/p&gt;
&lt;p&gt;
Someday might add new posts or update this regarding to nixos!&lt;/p&gt;
&lt;p&gt;
As on [2026-03-19 Thu], I think maybe things got dusted off. Interesting I was reading about a nix user giving Guix a fair try.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://nemin.hu/guix-one-month-later.html"&gt;https://nemin.hu/guix-one-month-later.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Nix: Home for Acer</title><link>http://idlip.in/posts/nix-acer/</link><pubDate>Sat, 21 Oct 2023 00:00:00 +0000</pubDate><guid isPermaLink="true">http://idlip.in/posts/nix-acer/</guid><category>linux</category><category>nixos</category><description>&lt;p&gt;
In this post am sharing some of the experience of using my new laptop, &lt;strong&gt;Acer swift Go Oled&lt;/strong&gt;. Compact, Premium ultra-book with Oled, Yes, a good hand made mobile laptop.&lt;/p&gt;
&lt;p&gt;
As expected and as usual, it got windows 11 and first major encounter was heating and battery issue. It got me scared as it felt wrong decision. Since many claimed windows gives better battery life than Linux. It gave me nightmare of installing Linux too, really, new laptop with 4-5 hours of battery, for oled with black screens?&lt;/p&gt;
&lt;p&gt;
Anyways, windows made me really tinker to my needs, went on with &lt;code&gt;winutils&lt;/code&gt; and de-bloated few stuffs and made it somewhat tacit for me, then too I demanded more of it. To which windows felt weird and too much to handle. Thus did finally decide to dual boot or straightaway to erase disk for Linux. My first thought of choice was to use Arch with gnome, but since I had well maintained &lt;a href="https://github.com/idlip/d-nix"&gt;nixos config&lt;/a&gt;, I went with same config without much a-due.&lt;/p&gt;
&lt;p&gt;
Viola it gave me the exact setup I was looking for, enabling my hand to feel back in pace. Yet I was worried about battery and heating point of view, although many say, &lt;code class="verbatim"&gt;laptops arent made to run on battery&lt;/code&gt;, yet the heat? the air exhaust hitting my oled display directly?.&lt;/p&gt;
&lt;p&gt;
I gave a shot to &lt;code&gt;auto-cpufreq&lt;/code&gt;, it did a well decent job, yet I felt too little gain, I did change &lt;code class="verbatim"&gt;intel_pstate&lt;/code&gt; to &lt;code class="verbatim"&gt;acpu&lt;/code&gt; one. All i noticed is it lowered the max frequency rate from 4.3GHz to 3.2GHz.&lt;/p&gt;
&lt;p&gt;
Later on after many rebuilds, I saw Nixos &lt;a href="https://nixos.wiki/wiki/Laptop"&gt;wiki on laptop&lt;/a&gt;, may seem outdated, but it was legit, and I did enable service such as &lt;code&gt;thermald&lt;/code&gt;, &lt;code&gt;tlp&lt;/code&gt; and viola later on I noticed it works well. Seriously I don&amp;#39;t know how, it gave me better battery life, less heating in Linux (nixos) than windows. Maybe magical to me as others claim vice-versa.&lt;/p&gt;
&lt;p&gt;
Nonetheless, nixos handled the magics of services and making it a better experience by just writing one line of configs to &lt;code class="verbatim"&gt;true;&lt;/code&gt;. My desktop runs Hyprland (wayland) and it works flawlessly.&lt;/p&gt;
&lt;p&gt;
Okay, let me tell you about Finger Print, it gave me little trouble, and funny enough, it was again just to say &lt;code&gt;true;&lt;/code&gt; on a line.&lt;/p&gt;
&lt;p&gt;
I have FP, so obviously I wanted to be cool looking by using it, I initially did not expect FP to work, again online poeple said so. I was following some debian/ubuntu help on FP and enabling some drivers and all, it did not work. Later I gotta know that &lt;code&gt;fprintd&lt;/code&gt; latest one already has the support for my FP id, so just did enable &lt;code&gt;fprintd&lt;/code&gt; and viola! viola!, now I login in TTY with FingerPrint.&lt;/p&gt;
&lt;p&gt;
Although I wasted some time one tinkering and making it to work on my needs, I was not doing work I wanted, thus decided to settle and do productive tasks from then on. Anyway, whatever you customize it will be little to no gain. That&amp;#39;s why I decided to make and get my blog going, it is better to make one day each month or on boring holiday to do cleaning and customizing on OS.&lt;/p&gt;
&lt;p&gt;
Finally, It has become a pleasant experience to get nix and make it work as I expected on &lt;strong&gt;Acer&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;
Yet one thing remains unexplored, fan controlling. I see no mention of fan or &lt;span style="text-decoration: underline;"&gt;RPM&lt;/span&gt; via &lt;code&gt;sensors&lt;/code&gt; command, so one way is to check another tool. I skipped that part, since I don&amp;#39;t face heating issue or high fan noise even when I&amp;#39;m plugged in.&lt;/p&gt;
&lt;p&gt;
Ultimately one more thing making all experience better is the &lt;strong&gt;GOAT Emacs&lt;/strong&gt;. Bringing back my config and using it with more speed is another level of bliss.&lt;/p&gt;
&lt;p&gt;
This has become another embark of a journey, where the todo&amp;#39;s are just piling even more, and it looks fun to explore more and utilize efficiently for learning.&lt;/p&gt;</description></item><item><title>Nix Learning</title><link>http://idlip.in/posts/nix-learning/</link><pubDate>Wed, 03 May 2023 00:00:00 +0000</pubDate><guid isPermaLink="true">http://idlip.in/posts/nix-learning/</guid><category>linux</category><category>nixos</category><description>
&lt;p&gt;
NixOS is definitely an advanced Linux distro, but it ain&amp;#39;t easy to understand overnight or like Archlinux to have easy manual, but it sure has alot on the table. There is whole bunch of families like Nix functional language, Nix package manager… so and on with the prefix &amp;#34;nix&amp;#34;.&lt;/p&gt;
&lt;p&gt;
This is really confusing, many hate nix and are not convinced to go long run just because of this difficulty (mess?). To make a simple thing work as expected, you need to go through such a rabbit hole.
But once you know Nix* (families), everything will make sense, and you would feel bad to go back to old traditional Linux manners.&lt;/p&gt;
&lt;p&gt;
These are some of the learning resources, which are rich in content and nonetheless, will be confusing at some point. But engineers do have spared their time in writing these, taking actions, to reach some audience and solve some of the caveats of Nix. So dig through and learn new ;)&lt;/p&gt;
&lt;div id="outline-container-headline-1" class="outline-2"&gt;
&lt;h2 id="headline-1"&gt;
nix-learning
&lt;/h2&gt;
&lt;/div&gt;
&lt;div id="outline-container-uncategorized" class="outline-2"&gt;
&lt;h2 id="uncategorized"&gt;
Uncategorized
&lt;/h2&gt;
&lt;div id="outline-text-uncategorized" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://youtu.be/m4sv2M9jRLg"&gt;Nix Fundamentals&lt;/a&gt; (Video)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://stephank.nl/p/2020-06-01-a-nix-primer-by-a-newcomer.html"&gt;A Nix terminology primer by a newcomer&lt;/a&gt; - Stéphan Kochen&lt;/li&gt;
&lt;li&gt;&lt;a href="https://shopify.engineering/what-is-nix"&gt;What Is Nix&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://nasirhm.github.io/posts/getting-started-with-nix-introduction/"&gt;Getting Started With Nix: Introduction&lt;/a&gt; - Nasir Hussain&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.sulami.xyz/posts/nix-for-developers/"&gt;Lightning
Introduction to Nix for Developers&lt;/a&gt; - Robin Schroer&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.knightsofthelambdacalcul.us/posts/2020-06-20-nix-nixos-thoughts/"&gt;Nix(OS)
Thoughts&lt;/a&gt; - ?&lt;/li&gt;
&lt;li&gt;&lt;a href="https://fzakaria.com/2020/11/17/on-demand-linked-libraries-for-nix.html"&gt;On-demand
linked libraries for Nix&lt;/a&gt; - Farid Zakaria&lt;/li&gt;
&lt;li&gt;&lt;a href="https://serokell.io/blog/what-is-nix"&gt;What Is Nix and Why You Should
Use It&lt;/a&gt; - ?&lt;/li&gt;
&lt;li&gt;&lt;a href="https://push.cx/2018/nixos"&gt;NixOS on prgmr and Failing to Learn
Nix&lt;/a&gt; - Peter Bhat Harkins&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tweag.io/blog/2020-09-10-nix-cas/"&gt;Towards a
content-addressed model for Nix&lt;/a&gt; - Théophane Hufschmitt&lt;/li&gt;
&lt;li&gt;&lt;a href="https://lucperkins.dev/blog/nix-channel/"&gt;The easiest way (I&amp;#39;ve
found) to create your own Nix channel&lt;/a&gt; - Luc Perkins&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.johnbcoughlin.com/posts/nix-dynamic-linking/"&gt;Debugging
a dynamic linking bug in a Nix project&lt;/a&gt; - Jack Coughlin&lt;/li&gt;
&lt;li&gt;&lt;a href="https://notes.neeasade.net/adhoc-executable-patching-on-nix.html"&gt;adhoc
executable patching on nixos&lt;/a&gt; - ?&lt;/li&gt;
&lt;li&gt;&lt;a href="https://maxmcd.com/posts/strategies-for-binary-relocation/"&gt;Strategies
for Binary Relocation In Functional Build Systems&lt;/a&gt; - Max McDonnell&lt;/li&gt;
&lt;li&gt;&lt;a href="https://christine.website/blog/how-i-start-nix-2020-03-08"&gt;How I
Start: Nix&lt;/a&gt; - Christine Dodrill&lt;/li&gt;
&lt;li&gt;&lt;a href="https://christine.website/blog/i-was-wrong-about-nix-2020-02-10"&gt;I
was Wrong about Nix&lt;/a&gt; - Christine Dodrill&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.infoq.com/articles/configuration-management-with-nix/"&gt;Purely
Functional Configuration Management with Nix and NixOS&lt;/a&gt; - Eelco
Dolstra&lt;/li&gt;
&lt;li&gt;&lt;a href="https://bgottlob.com/post/2019-05-29-nix-use-cases/"&gt;Basic Use-Cases
of the Nix Package Manager&lt;/a&gt; - Brandon Gottlob&lt;/li&gt;
&lt;li&gt;&lt;a href="https://thomazleite.com/posts/development-with-nix-python/"&gt;Development
with Nix: Python&lt;/a&gt; - Thomaz Leite&lt;/li&gt;
&lt;li&gt;&lt;a href="https://medium.com/dapphub/dapp-tools-and-the-nix-package-manager-c4c692c87310"&gt;Dapp
tools and the Nix package manager&lt;/a&gt; - Mikael Brockman&lt;/li&gt;
&lt;li&gt;&lt;a href="http://gfxmonk.net/2015/01/03/nixos-and-stateless-deployment.html"&gt;NixOS
and Stateless Deployment&lt;/a&gt; - ?&lt;/li&gt;
&lt;li&gt;&lt;a href="https://christine.website/blog/nixos-encrypted-secrets-2021-01-20"&gt;Encrypted
Secrets with NixOS&lt;/a&gt; - Christine Dodrill&lt;/li&gt;
&lt;li&gt;&lt;a href="https://begriffs.com/posts/2016-08-08-intro-to-nixos.html"&gt;Purely
Functional Linux with NixOS&lt;/a&gt; - Joe Nelson&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tweag.io/blog/2018-03-15-bazel-nix/"&gt;Nix + Bazel = fully
reproducible, incremental builds&lt;/a&gt; - Mathieu Boespflug, Théophane
Hufschmitt&lt;/li&gt;
&lt;li&gt;&lt;a href="https://zenhack.net/2016/01/24/reflections-on-nixos.html"&gt;Reflections
On NixOS&lt;/a&gt; - Ian Denhardt&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mayflower.de/5800-Hardening-Compiler-Flags-for-NixOS.html"&gt;Hardening
Compiler Flags for NixOS&lt;/a&gt; - Franz Pletz&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hugoreeves.com/posts/2019/nix-home/"&gt;Your home in Nix
(dotfile management)&lt;/a&gt; - Hugo Reeves&lt;/li&gt;
&lt;li&gt;&lt;a href="https://christine.website/blog/nixos-desktop-flow-2020-04-25"&gt;My
NixOS Desktop Flow&lt;/a&gt; - Christine Dodrill&lt;/li&gt;
&lt;li&gt;&lt;a href="https://tailscale.com/blog/nixos-minecraft/"&gt;Tailscale on NixOS: A
new Minecraft server in ten minutes&lt;/a&gt; - Christine Dodrill&lt;/li&gt;
&lt;li&gt;&lt;a href="https://terinstock.com/post/2021/01/Setting-up-a-git-server-on-NixOS/"&gt;Setting
up a git server on NixOS&lt;/a&gt; - Terin Stock&lt;/li&gt;
&lt;li&gt;&lt;a href="https://myme.no/posts/2020-01-26-nixos-for-development.html"&gt;NixOS:
For developers&lt;/a&gt; - Martin Myrseth&lt;/li&gt;
&lt;li&gt;&lt;a href="https://myme.no/posts/2019-07-01-nixos-into-the-deep-end.html"&gt;NixOS:
Into the deep end&lt;/a&gt; - Martin Myrseth&lt;/li&gt;
&lt;li&gt;&lt;a href="https://rgoswami.me/posts/ccon-tut-nix/"&gt;A Tutorial Introduction to
Nix&lt;/a&gt; - Rohit Goswami&lt;/li&gt;
&lt;li&gt;&lt;a href="https://zimbatm.com/benchmark-nixpkgs"&gt;Benchmarking nixpkgs
builds&lt;/a&gt; - Jonas Chevalier&lt;/li&gt;
&lt;li&gt;&lt;a href="https://zimbatm.com/experiment-recursive-nix"&gt;Recursive Nix
experiment&lt;/a&gt; - Jonas Chevalier&lt;/li&gt;
&lt;li&gt;&lt;a href="https://zimbatm.com/deploying-k8s-apps-with-kubenix"&gt;Deploying
Kubernetes apps with KubeNix&lt;/a&gt; - Jonas Chevalier&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/tazjin/nix-1p"&gt;Nix - A One Pager&lt;/a&gt; - Vincent Ambo&lt;/li&gt;
&lt;li&gt;&lt;a href="https://foo-dogsquared.github.io/blog/posts/moving-into-nixos/"&gt;Moving
into NixOS&lt;/a&gt; - Gabriel Arazas&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.willghatch.net/blog/2020/06/27/nixos-the-good-the-bad-and-the-ugly/"&gt;NixOS:
the good, the bad, and the ugly&lt;/a&gt; - William G Hatch&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.nmattia.com/posts/2018-03-21-nix-reproducible-setup-linux-macos.html"&gt;Nix:
A Reproducible Setup for Linux and macOS&lt;/a&gt; - Nicolas Mattia&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.nmattia.com/posts/2019-01-15-easy-peasy-nix-versions.html"&gt;Easy
Peasy Nix Versions&lt;/a&gt; - Nicolas Mattia&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.nmattia.com/posts/2019-10-08-runtime-dependencies"&gt;Recovering
Nix derivation attributes of runtime dependencies&lt;/a&gt; - Nicolas Mattia&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="html-block"&gt;
&lt;p&gt;&amp;lt;!– TODO: add more from their website –&amp;gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://ops.functionalalgebra.com/nix-by-example/"&gt;Nix By
Example&lt;/a&gt; - Susan Potter&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ops.functionalalgebra.com/nixops-by-example/"&gt;NixOps By
Example&lt;/a&gt; - Susan Potter&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ops.functionalalgebra.com/nixos-by-example/"&gt;NixOS By
Example&lt;/a&gt; - Susan Potter&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ops.functionalalgebra.com/2018/04/18/inspecting-nix-lambda-named-arguments/"&gt;Inspecting
Nix lambda function named arguments&lt;/a&gt; - Susan Potter&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="html-block"&gt;
&lt;p&gt;&amp;lt;!– TODO: add Tweag Nix flakes –&amp;gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-overview" class="outline-2"&gt;
&lt;h2 id="overview"&gt;
Overview
&lt;/h2&gt;
&lt;div id="outline-text-overview" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://web.archive.org/web/20210123223258/https://ebzzry.io/en/nix/"&gt;A
Gentle Introduction to the Nix Family&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-nix-the-language" class="outline-2"&gt;
&lt;h2 id="nix-the-language"&gt;
Nix the language
&lt;/h2&gt;
&lt;div id="outline-text-nix-the-language" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://nixcloud.io/tour"&gt;A tour of Nix&lt;/a&gt; - an introduction to the
Nix Programming Language&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-nix-shell" class="outline-2"&gt;
&lt;h2 id="nix-shell"&gt;
Nix Shell
&lt;/h2&gt;
&lt;div id="outline-text-nix-shell" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://ghedam.at/15978/an-introduction-to-nix-shell"&gt;An
introduction to nix-shell&lt;/a&gt; - Mattia Gheda&lt;/li&gt;
&lt;li&gt;&lt;a href="https://fzakaria.com/2020/08/11/caching-your-nix-shell.html"&gt;caching
your nix-shell&lt;/a&gt; - Farid Zakaria&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-nix-flakes" class="outline-2"&gt;
&lt;h2 id="nix-flakes"&gt;
Nix Flakes
&lt;/h2&gt;
&lt;div id="outline-text-nix-flakes" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.ysndr.de/posts/internals/2021-01-01-flake-ification/"&gt;Building
with Nix Flakes for, eh .. reasons!&lt;/a&gt; - Yannik Sander&lt;/li&gt;
&lt;li&gt;&lt;a href="https://zimbatm.com/NixFlakes/"&gt;Nix Flakes edition&lt;/a&gt; - Jonas
Chevalier&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-experience" class="outline-2"&gt;
&lt;h2 id="experience"&gt;
Experience
&lt;/h2&gt;
&lt;div id="outline-text-experience" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://catgirl.ai/log/nixos-experience/"&gt;Eight Months of NixOS&lt;/a&gt; -
ash&lt;/li&gt;
&lt;li&gt;&lt;a href="https://tech.channable.com/posts/2021-04-09-nix-is-the-ultimate-devops-toolkit.html"&gt;Nix
is the ultimate DevOps toolkit&lt;/a&gt; - Ruud van Asseldonk, Reinier Maas,
Falco Peijnenburg, Fabian Thorand, and Robert Kreuzer&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-language-specific" class="outline-2"&gt;
&lt;h2 id="language-specific"&gt;
Language Specific
&lt;/h2&gt;
&lt;/div&gt;
&lt;div id="outline-container-java" class="outline-2"&gt;
&lt;h2 id="java"&gt;
Java
&lt;/h2&gt;
&lt;div id="outline-text-java" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://fzakaria.com/2020/07/20/packaging-a-maven-application-with-nix.html"&gt;Packaging
a Maven application with Nix&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-elixir" class="outline-2"&gt;
&lt;h2 id="elixir"&gt;
Elixir
&lt;/h2&gt;
&lt;div id="outline-text-elixir" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://ejpcmac.net/blog/using-nix-in-elixir-projects/"&gt;Using Nix in
Elixir projects&lt;/a&gt; - Jean-Philippe&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-c" class="outline-2"&gt;
&lt;h2 id="c"&gt;
C++
&lt;/h2&gt;
&lt;div id="outline-text-c" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.galowicz.de/2019/04/17/tutorial_nix_cpp_setup/"&gt;Setting
up a C++ project environment with nix&lt;/a&gt; - Jacek Galowicz&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-rust" class="outline-2"&gt;
&lt;h2 id="rust"&gt;
Rust
&lt;/h2&gt;
&lt;div id="outline-text-rust" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Managing Rust Dependencies with Nix - James Kay&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://hadean.com/blog/managing-rust-dependencies-with-nix-part-i/"&gt;Part
1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hadean.com/blog/managing-rust-dependencies-with-nix-part-ii/"&gt;Part
2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-series" class="outline-2"&gt;
&lt;h2 id="series"&gt;
Series
&lt;/h2&gt;
&lt;div id="outline-text-series" class="outline-text-2"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Nix by Example - James Fisher&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://medium.com/@MrJamesFisher/nix-by-example-a0063a1a4c55"&gt;Part
1: The Nix expression language&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ian Henry&amp;#39;s &lt;em&gt;How to Learn Nix&lt;/em&gt; series&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/introduction/"&gt;Part
1: What&amp;#39;s all this about?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/prior-knowledge/"&gt;Part
2: Prior knowledge&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/glossary/"&gt;Part 3:
What we talk about when we talk about Nix&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/quick-start-guide/"&gt;Part
4: Quick starts, full hearts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/basic-package-management/"&gt;Part
5: Basic package management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/profiles/"&gt;Part 6:
Profiles&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/garbage-collection/"&gt;Part
7: Garbage collection&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/channels/"&gt;Part 8:
Channels&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/sharing/"&gt;Part 9:
Learning to share&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/my-first-derivation/"&gt;Part
10: My first derivation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/okay-my-actual-first-derivation/"&gt;Part
11: Okay my actual first derivation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/nix-language/"&gt;Part
12: The Nix expression language&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/derivations/"&gt;Part
13: Derivations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/built-in-functions/"&gt;Part
14: Built-in Functions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/advanced-topics/"&gt;Part
15: Advanced Topics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/command-reference/"&gt;Part
16: Command Reference&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/configuration/"&gt;Part
17: Configuration&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/nix-manual-reflection/"&gt;Part
18: So I read the manual huh&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/switching-from-homebrew-to-nix/"&gt;Part
19: Switching from Homebrew to Nix&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/my-first-nix-bug/"&gt;Part
20: My first Nix bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/my-first-package-upgrade/"&gt;Part
21: My first package upgrade&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/declarative-user-environment/"&gt;Part
22: Setting up a declarative user environment&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/how-to-learn-nixpkgs/"&gt;Part
23: How to learn Nixpkgs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/overlays/"&gt;Part 24:
Overlays&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ianthehenry.com/posts/how-to-learn-nix/overriding/"&gt;Part
25: Overriding&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;
These links are extracted from humancalico&amp;#39;s git repo (&lt;a href="https://github.com/humancalico/nix-learning)."&gt;https://github.com/humancalico/nix-learning).&lt;/a&gt;&lt;/p&gt;
&lt;div class="center-block" style="text-align: center; margin-left: auto; margin-right: auto;"&gt;
&lt;p&gt;With that sorted, I hope learning becomes good ;)&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>NixOS : Reproducible - Immutable</title><link>http://idlip.in/posts/try-nixos/</link><pubDate>Thu, 23 Mar 2023 00:00:00 +0000</pubDate><guid isPermaLink="true">http://idlip.in/posts/try-nixos/</guid><category>emacs</category><category>nixos</category><description>
&lt;hr&gt;
&lt;p&gt;
Introduction part, you would better have read it on official nixos site (&lt;a href="https://nixos.org"&gt;https://nixos.org&lt;/a&gt;)&lt;/p&gt;
&lt;div id="outline-container-headline-1" class="outline-2"&gt;
&lt;h2 id="headline-1"&gt;
&amp;#34;Should you try NixOS?&amp;#34; ❄️
&lt;/h2&gt;
&lt;div id="outline-text-headline-1" class="outline-text-2"&gt;
&lt;p&gt;
Here&amp;#39;s an answer from a non-programmer, who just browses and watches media.
Just don&amp;#39;t, if you are looking for small benefit. &lt;strong&gt;Don&amp;#39;t!&lt;/strong&gt;
regret having hard time to figure out petty things, again forget about error, you cannot even search in web.&lt;/p&gt;
&lt;p&gt;
But, if you have decided, go with it. According to me (non-programmer), these points are good to consider NixOS&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You use Emacs (lol), &lt;strong&gt;Emacs&lt;/strong&gt; ❤️ &lt;strong&gt;Nix&lt;/strong&gt; is Match made in Heaven.&lt;/li&gt;
&lt;li&gt;You want to declare stuffs and get same output, and forget what all you setup, cause its all declared in config.&lt;/li&gt;
&lt;li&gt;You want an isolated environments (shell) to do some stuffs without involving whole system.&lt;/li&gt;
&lt;li&gt;You want to stop troubleshooting and breaking update and are lazy to backup, and want to rollback with ease like with just a reboot.&lt;/li&gt;
&lt;li&gt;You want to say I use &lt;strong&gt;Nixos Btw&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;You don&amp;#39;t want to worry about breaking your system nor fix something when you are updating system.&lt;/li&gt;
&lt;li&gt;You are willing to learn (advanced) things and fine with steep learning curve.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-headline-2" class="outline-2"&gt;
&lt;h2 id="headline-2"&gt;
How I manage my system 🌲
&lt;/h2&gt;
&lt;div id="outline-text-headline-2" class="outline-text-2"&gt;
&lt;p&gt;
I manage my whole system with single org file. Its easy and pretty handy. You can read that file here &lt;strong&gt;↬&lt;/strong&gt; &lt;a href="https://github.com/idlip/d-nix/blob/onepiece/d-setup.org"&gt;d-setup.org&lt;/a&gt; , its both self documenting and has all source code blocks.&lt;/p&gt;
&lt;p&gt;
Another key feature in my setup is, every file i tangle is at &lt;strong&gt;read-only mode&lt;/strong&gt;. So generally we can avoid editing/touching them. Thus, every action has to be made in &lt;strong&gt;d-setup.org&lt;/strong&gt; only.&lt;/p&gt;
&lt;p&gt;
Also, I have made files to be &lt;strong&gt;symlink&lt;/strong&gt;, so i can edit them without requiring to rebuild whole thing!&lt;/p&gt;
&lt;hr&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="outline-container-headline-3" class="outline-2"&gt;
&lt;h2 id="headline-3"&gt;
Credits 🎖️
&lt;/h2&gt;
&lt;div id="outline-text-headline-3" class="outline-text-2"&gt;
&lt;p&gt;
These configs were the inspiration and helped to build this way.&lt;/p&gt;
&lt;p&gt;
I thank them sincerely.&lt;/p&gt;
&lt;p&gt;
&lt;a href="https://github.com/Iron-Shark/Technonomicon"&gt;Iron Shark&lt;/a&gt; &lt;strong&gt;⟹&lt;/strong&gt; Made migrating to Single org-file config very easy.&lt;/p&gt;
&lt;p&gt;
&lt;a href="https://github.com/sioodmy/dotfiles"&gt;Sioodmy&lt;/a&gt; &lt;strong&gt;⟹&lt;/strong&gt; First config which I understand thoroughly and modified based on this.&lt;/p&gt;
&lt;hr&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item></channel></rss>