<?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>Wed, 03 Jan 2024 00:00:00 +0000</lastBuildDate><atom:link href="http://idlip.in/tags/linux/rss.xml" rel="self" type="application/rss+xml"/><ttl>1440</ttl><item><title>Window Managers</title><link>http://idlip.in/posts/window-managers/</link><pubDate>Wed, 03 Jan 2024 00:00:00 +0000</pubDate><guid isPermaLink="true">http://idlip.in/posts/window-managers/</guid><category>linux</category><category>minimal</category><description>&lt;p&gt;
Desktop Environment gives us everything we would like to operate on Desktop with care towards UI and UX, that matches the common paradigm. It is a lot driven by mouse, and seems to fairly make work simpler and easier. It is not like keyboard can always make task quicker, mouse can be ahead of the race.&lt;/p&gt;
&lt;p&gt;
But I too followed the trend to ditch mouse and embrace the swiftness of keyboard. I like to hear the &amp;#34;clicks&amp;#34; and &amp;#34;tacks&amp;#34;.&lt;/p&gt;
&lt;p&gt;
Window Managers are tools which only manage the window alignment and their behavior, with wayland, the compositor acts as both display server and window manager. Typically tho window managers offer keyboard focused, tweakable configuration to suit user&amp;#39;s need, but alas it does work for minimal sake, just does offer on managing windows and thats it. It is not a Desktop environment to facilitate for other needs.&lt;/p&gt;
&lt;p&gt;
After fairly using a lot of window manager, from X11 days to now Wayland years, I stick with window managers only. It gives the feel of unique, self owned customization. My system can only be used by me, how cool !&lt;/p&gt;
&lt;p&gt;
Back in X11 days, I started with Cinnamon (Linux Mint) and later moved to XFCE to conserve Ram usage. Both were very good, Xfce was very much customization. Later I fell in the rabbit hole for more minimalism, and started looking at Youtube videos and came along the road of Window Managers.&lt;/p&gt;
&lt;p&gt;
Tried with &lt;code&gt;i3wm&lt;/code&gt;, and boyo boy, it worked and made the workflow like charm, and again I feel into another rabbit hole of World of window managers. The cost I had to pay was, endless customization for my needs, and wasting time. After fair usage, with some free time (pandemic age) I tried out other WMs, like &lt;code&gt;dwm&lt;/code&gt;, &lt;code&gt;leftwm&lt;/code&gt;, &lt;code&gt;Qtile&lt;/code&gt; &amp;amp; &lt;code&gt;bspwm&lt;/code&gt; and used them all fairly equally and it was done.&lt;/p&gt;
&lt;p&gt;
With wayland years, I soon discovered &lt;code&gt;sway&lt;/code&gt; was popular and drop-in replacement, so was suite of apps needed to replacement for pure wayland integration. Soon listed some and move to &lt;code&gt;sway&lt;/code&gt; ship, and reddit showed beautiful blur and animations of &lt;code&gt;hyprland&lt;/code&gt;, and finally I settled on with &lt;code&gt;Hyprland&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;
So far I have only listen WMs names, and I have not spoken of personal usage and feeling towards each of them, cause, they all just do one thing and they do it well. So except for config file (syntax), there is not much difference for user who wants to use laptop and &amp;#34;&lt;strong&gt;do the work&lt;/strong&gt;&amp;#34;. It is a wonderful change to stick with WM, cause easy management of windows and minimal way of using the system, so I can use the saving part for demanding tasks.&lt;/p&gt;
&lt;p&gt;
One peculiar, and best thing WMs offer are Workspace. Which acts like spaces where windows are placed or configured, we get 10 (typically enough) or even more to organize and use our application in a handy way.&lt;/p&gt;
&lt;p&gt;
Closing words, Window Managers are definitely great, and changing enhancement, users (linux) should give it a try at least once, of course it&amp;#39;s not for everyone, but how can anyone tell unless if they have not even tried. It can enhance the workflow for many, and can be worse for others.&lt;/p&gt;
&lt;p&gt;
So, just have a share of trial, explore and relax!&lt;/p&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>Tools that are Best!</title><link>http://idlip.in/posts/tools-readme/</link><pubDate>Fri, 17 Mar 2023 00:00:00 +0000</pubDate><guid isPermaLink="true">http://idlip.in/posts/tools-readme/</guid><category>terminal</category><category>linux</category><category>minimal</category><description>
&lt;hr&gt;
&lt;div id="outline-container-headline-1" class="outline-2"&gt;
&lt;h2 id="headline-1"&gt;
Utilities that are Best! 🌟
&lt;/h2&gt;
&lt;div id="outline-text-headline-1" class="outline-text-2"&gt;
&lt;hr&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Class&lt;/td&gt;
&lt;td&gt;Name&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Window Manager&lt;/td&gt;
&lt;td&gt;&lt;a href="https://hyprland.org/"&gt;Hyprland&lt;/a&gt; 🌸&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Text Editor&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.gnu.org/software/emacs/"&gt;Emacs&lt;/a&gt; 💮&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gtk Theme&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/Fausto-Korpsvart/Gruvbox-GTK-Theme"&gt;Gruvbox&lt;/a&gt; / &lt;a href="https://github.com/vinceliuice/Orchis-theme"&gt;Orchis&lt;/a&gt; 🎨&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Font&lt;/td&gt;
&lt;td&gt;&lt;a href="https://tosche.net/fonts/comic-code"&gt;Comic Code&lt;/a&gt; / &lt;a href="https://github.com/dtinth/comic-mono-font"&gt;Comic Mono&lt;/a&gt; / &lt;a href="https://github.com/tonsky/FiraCode"&gt;Fira Code&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pdf Reader&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/ahrm/sioyek"&gt;Sioyek&lt;/a&gt; 📔 (ditch zathura)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Media Player&lt;/td&gt;
&lt;td&gt;&lt;a href="https://mpv.io"&gt;MPV!&lt;/a&gt; 🎬 (its MVP too)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Image Viewer&lt;/td&gt;
&lt;td&gt;&lt;a href="https://sr.ht/~exec64/imv/"&gt;Imv&lt;/a&gt; 🖼️&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RSS Reader&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/skeeto/elfeed"&gt;Elfeed&lt;/a&gt; 📰 (Again, Emacs)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Music Player&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/ncmpcpp/ncmpcpp"&gt;Ncmpcpp&lt;/a&gt; or &lt;a href="https://github.com//mingus"&gt;Mingus in Emacs&lt;/a&gt; 🎶&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Terminal&lt;/td&gt;
&lt;td&gt;&lt;a href="https://codeberg.org/dnkl/foot"&gt;Foot&lt;/a&gt; via footclient ⚽&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Menu/Launcher&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/davatorium/rofi"&gt;Rofi&lt;/a&gt; 🚀&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notification&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/dunst/dunst"&gt;Dunst&lt;/a&gt; 🛎️&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Shell&lt;/td&gt;
&lt;td&gt;&lt;a href="https://zsh.org"&gt;Zshell&lt;/a&gt; with &lt;a href="https://starship.rs"&gt;Starship&lt;/a&gt; 🔰&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Status Bar&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/Alexays/Waybar"&gt;Waybar&lt;/a&gt; 🍥&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Favourite Color-Schemes&lt;/td&gt;
&lt;td&gt;Modus-Vivendi + Gruvbox&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;Rest all other stuffs I do in Emacs, tbh I could do everything in Emacs lol.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Feel free to comment down and ask me doubts or about some improvements, you wanna inform! I will be glad.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>My Linux Journey</title><link>http://idlip.in/posts/linux-journey/</link><pubDate>Fri, 10 Mar 2023 00:00:00 +0000</pubDate><guid isPermaLink="true">http://idlip.in/posts/linux-journey/</guid><category>linux</category><description>
&lt;p&gt;
&lt;strong&gt;Small info/log on my linux journey and my experience.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;
&lt;em&gt;If you are reading this, I encourage you to write blogs like this and have it in your git repo. Don&amp;#39;t forget to tag or inform me, I&amp;#39;d be glad to read your journey too!&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;
Linux is not widely recommended or discussed topic among real life friends or circle, every system comes pre-installed with win-dows, and its no big surprise people don&amp;#39;t have a feel towards their usage of OS.&lt;/p&gt;
&lt;p&gt;
Not many people update their system, not many try to explore Alternative softwares, they stick very much to the default out-of-the-box Application. Tbh if you deep dive and understand windows, it is total crap, &lt;strong&gt;Obnoxious&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;
My reason to switch over to Linux was simple as other had :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No Freedom&lt;/li&gt;
&lt;li&gt;Slow win-dows&lt;/li&gt;
&lt;li&gt;Cannot even run the browser properly&lt;/li&gt;
&lt;li&gt;Cannot even do multitasking efficiently&lt;/li&gt;
&lt;li&gt;The bloatware crap were too much&lt;/li&gt;
&lt;li&gt;Updates are like &lt;strong&gt;eternal sleep&lt;/strong&gt; (No-sense updates)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;My linux journey was from Linux Mint &amp;gt; EndeavourOS &amp;gt; Arch Linux &amp;gt; and now NixOS.&lt;/p&gt;
&lt;div id="outline-container-headline-1" class="outline-2"&gt;
&lt;h2 id="headline-1"&gt;
The Embark
&lt;/h2&gt;
&lt;div id="outline-text-headline-1" class="outline-text-2"&gt;
&lt;p&gt;
I started to explore some YouTube video on Linux (as a normie at that time), soon I got familiar with good explanation, thankfully CTT had made an Linux Mint playlist and it helped to installing the first and the best &lt;strong&gt;Beginner Distro&lt;/strong&gt;, the &lt;strong&gt;Linux Mint&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;
The gain and experience was &lt;strong&gt;Ultimate&lt;/strong&gt;. Loved it, felt the Freedom, felt the deeper understanding of a &lt;strong&gt;real System&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;
I choose the flagship Cinnamon DE and it was very comfortable.&lt;/p&gt;
&lt;p&gt;
After few months, I finally stumbled upon a drawback here, it was stable packages (old package versions).&lt;/p&gt;
&lt;p&gt;
That is when I saw the concept of &lt;strong&gt;Rolling release&lt;/strong&gt;, at that time &lt;strong&gt;EndeavourOS&lt;/strong&gt; was the flavor of Linux distro at that time, peaked the distrowatch and all. So guess what, I installed EvndeavourOs and expanded more love towards terminal and latest packages.&lt;/p&gt;
&lt;p&gt;
Soon i felt i did not needed what all EndeavourOS ships, I want custom or DIY (something i take control of), then i realized, EOS was arch-based, so guess again, went with the great Independent Arch linux.&lt;/p&gt;
&lt;p&gt;
Boom, the best linux journey (learning), I only mean it for learning, other than that Arch is just cool kids bag.&lt;/p&gt;
&lt;p&gt;
Finally, now with some other jolt of distro trend, I stumbled the name &lt;strong&gt;&amp;#34;NixOS&amp;#34;&lt;/strong&gt;.
It is somewhat reinventing the wheel, but it is so different that I&amp;#39;d hate to even say it as a Linux distro, It stands unique with linux distros.&lt;/p&gt;
&lt;p&gt;
Tbh I loved LM and Arch alot, I was a devotee to Arch too, and I hated Nix when I tried, cause things were weird.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You won&amp;#39;t know where to start nor what to refer&lt;/li&gt;
&lt;li&gt;Flakes or home-manager, How to understand?&lt;/li&gt;
&lt;li&gt;Do nix-env or rebuild all the time?&lt;/li&gt;
&lt;li&gt;What files to edit to achieve same setup as my previous distro?
These were all the things that I hated and was frustrated about, there was still many things that felt hard.
I did leave Nix and install Arch few times back and forth, I was debating with myself and id my own research all over Internet.
That is when I thought nix lacked Documentation or good YouTuber to speak of, I really wish one of them could explain and make it their distro to explain timely on things.
Fine, somehow forced myself and came a long way of setting up Good working nixos config, now I&amp;#39;m on flakes.
Nix is great if it works as expected or if we make it work, but, if I get stuck or the issue goes for days that is when I really hate Nix, because it ain&amp;#39;t easy to solve some unique issues. Most of these apply for HomeManager actually, it adds more trouble.
It is adviced to learn how Nix works or Nix as Functional Programming Language.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;
Okay, so it was not about shilling Nix or anything, Just my Linux experience.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item></channel></rss>