RSSAmplifier

Blog

My mostly tech blog

Recent content on My mostly tech blog

blog.benoitj.caRSS feed ↗51 posts

Latest posts

Are all mouses defective by design?

How it all started It all started 2 years ago when I had to replace a broken 10yo mouse I had been using extensively. I bought another Logitech mouse, but it started having weird double click issues at random time. It would be less of an issue if I pressed the button harder and at the center. I thought this was a fluke and ordered another mouse, to get the same issue shortly after. The problem…

Back to Doom Emacs

In the beginning It all started last year (was it before last year?) where I decided to simplify my overall tech setup, and put more Clojure (Joy) in my tech life. Some steps to simplify my life: Migrate my personal laptop from Guix back to Nix Rebuild my servers from my half baked docker swarm. Going back to Emacs native bindings Now is time for a 2nd round of Emacs changes. My current Emacs…

Vacation Affects My Blogging

Today I realized I did not think about posting since I’m back from vacation. Whenever I’m on vacation, I think about this blog. When I work, well I forget about it. My resolution is to post every week, no matter the length or the topic. And looks like I skipped one! Lets try to fix that. what happened since my last post? back to work Lots of things to deal with, but nothing really…

Rebuilding My Server - Proxmox Cloud Init Image template

Cloud init According to cloud-init.io , Cloud init is: Cloud images are operating system templates and every instance starts out as an identical clone of every other instance. It is the user data that gives every cloud instance its personality and cloud-init is the tool that applies user data to your instances automatically. Okay… Maybe if I explain how I create a VM from a cloud-init…

Time for Some Changes to My Primary Server

My selfhosting Journey My journey to self hosting started in the 90s and evolved (good and bad) over the past 25 or so years: Created a Linux router using a 486, some ISA BNC network cards, and a dialup connection with a remote dialup controller. Self hosting email HTPC Self hosting Plex , Kodi , RSS, Music collection, pictures, books, Nextcloud and more home made NAS Freenas (The old TrueNAS)…

Rebuilding My Server Getting Unsupported Sfp+ Working on Linux

Context I have been running VMs on XCP-NG for a while now. XCP-NG does not come with a console by default, but Xen Orchestra (XOA) gets you covered. The only issue with XOA is the complete version requires you to compile and install it manually. I’ve been lagging on this setup and remembered a time where I ran Proxmox . So 2 days ago, I installed a HD in one of my kid’s desktop…

Owning Your Own Domain(s)

Here is how I use my domains. I have two domains: One for my email addresses One for my own network and servers I use two different ones to separate usage, and to keep one semi private. Benefits Some benefits: I’m not locked in a particular service provider For example, I used many email providers, yet, kept the same email address. Been with mailbox.org, mxroute.com, migadu, and now…

Need to Extend My GnuPG Keys Again

I did not know what to post next. What to do in this case? Delegate and I ask a friend to pick up the next post ;-). Thanks @shom for this pick! The Context My GNUPG Usage I use GnuPG for many things: encryption: I use passwordstore to encrypt some of my “system” passwords, for example my imap or smtp passwords. signature: I sign all my commits, got that habit a while ago.…

Emacs as My IDE - Part2: The Setup

You can read part1 here . Elisp configuration can be found here . In part2, I’ll go over the setup to be able to experiment, and capture my findings. LSP or not? The objective is to try to use Emacs for real professional development including for languages like Java, go, or Python. My field of work requires me to quickly switch to other languages, now or known. Emacs is great for some…

Learning to Learn

Here is a simplified version of how I learn: The sponge phase I document myself about a specific subject (documentation, blogs, books, YouTube, people. This phase is intense, kind of obsessive. At that phase, it’s about absorbing as much and as various information without thinking too much. I try to not make an opinion, I just absorb. The experiment phase At this phase, I try stuff. If…

Native Emacs Bindings

Context My journey with Emacs starting around 1996, while working on a cross platform portfolio management application, especially working on cross platform Windows / Linux GUI based on WxWidgets . Emacs was great for C++ projects, even at the time. My configuration was minimal and I was using native bindings. Then around 2000, I started coding in Java, and also discovered vim. Modal editing…

Fixing Paving Mistakes

Story and some info about how I fixed some pavers installation miscalculations. This post has nothing to do with computers, but everything to do with learning, and building things, skills quite related to coding and computers. The Context: Some time ago, I built a large pavers patio to put a dining table and gazebo. Here is the initial work: Figure 1: Picture of my backyard, with a gazebo sitting…

RSS, the best way to publish posts, and give control to your readers

So you’ve got a new shiny blog, or an old one, here is what I find important about RSS. Here is my take on RSS it’s the simplest way to automate notifications to regular readers You give control to your readers, they choose how they read, when they read and in the format they read. Some users use RSS not just for blogs, but for watching Youtube, peertube, reading Reddit, Slashdot, and…

RSS Exclusive - Reminder on the RSS Club

Pssst - this is a RSS only post. Please keep it secret. Read more about RSS Club: https://daverupert.com/rss-club/ I won’t give names, but during a public chat, one of my readers mentioned my “RSS Club” posts. I don’t think anyone really noticed, it was a really close one. Reminder to read the club rules again, especially you who I won’t mention your name :-D. Joke…

Back on Nix

Back on Nix I’m back on nix. Guix / guile felt nice, here is why i’m back: I’m really missing a practical reproducible OS , kept having issues with dependencies of my personal channel. This is something trivial when using Nix flakes. With Guix channels being a local configuration, and having to hack it to get it to work the way I would want to, this process of “dependencies…

Guix After a while

It’s been couple of months after I migrated back to Guix. Overall, the basic experience is good, comfortable. At the same time, some of the pain points, are quite painful: Guix does not handle well dependencies between software from different channels Some useful packages are still missing For clear reasons, packaging anything golang, rust, java, javascript, and similar is pretty much…

RSS Exclusive - App Defaults (2023 Edition)

Pssst - this is a RSS only post. Please keep it secret. Read more about RSS Club: https://daverupert.com/rss-club/ I’m a fan of RSS and on my feed recently, I’ve seen “App Defaults” seven times. Here is my take on it. Operating system: Desktop : nix, guix; Server: ubuntu Window manager: dwm Web browser: firefox, qutebrowser Web feed client: elfeed, miniflux Search engine:…

Progress on my Guix yearly migration

This is my first post since I started my Nix -> Guix migration. TLDR: I had a basic system and home setup in 3 hours using my older configuration, but due to a kernel or grub bug, I lost 3 days. I found a workaround and now have a working system and home configuration for most things. Some Issues and discovery The first issue I had was a confusing one. And made me lost 3 days. In version 5.6 of…

Guix Home Configuration - Part 2 - Services

Nix home-manager Nix home-manager has a lot of services. In fact, I don’t think I manage any configuration files myself except for my Emacs configuration. From daemon, to email, to bash, it’s covered. In nix term, a program is a package + configuration, while a service is a program with an autorun. email configuration Configure account specific information. From email addresses to imap…

Guix home configuration - part 1 - Packages

The most important part of my Nix configuration: nix home manager. From packages installed, services enabled, configuration copied or generated, home manager is where the Linux “customization” happens. Nix flakes alternative Lets make this simple, my primary flake is my dotfile configuration. No matter the setup, both Nix and Guix rely on the source control to make sure the packages…

Guix VM System Configuration

Something I forgot on my last Guix system configuration post, my work VM setup. Obviously it’s built on top of my regular setup, but it has some specifics. VirtualBox The main difference between running on bare metal and running in VirtualBox is that I do need the virtualbox-guest-additions. This allows to: have a seamless mouse / keyboard integration with the host OS it also resize the…

How Guix Compare to Nix and Vice Versa

This started as a question from Mr. X on System Crafters general room on matrix: maybe I was offtopic here, but nobody who can compare Guix and NixOS? This is my opinion, based on me running nix and Guix (and RDE) as my primary OS for the past 3-4 years now. People who know me on the System Crafters community know I’ve switched between both almost as often as @acdw has re-started his Emacs…

Guix system configuration

In this post, I’m starting the analysis phase of migrating to Guix. The first step is analyzing my current nix system configuration, and what I would need to do to port it to Guix. My use cases I run Nix, and soon Guix, on two types of desktops: At least one work laptop running Linux in a VM where I: code, primarily in java, Node, JavaScript, Typescript, HTML/CSS, Python, Golang, and any…

Going Back Series - Guix Is Back

It’s Guix season again this year, I’m going back to Guix Linux. My current setup with NixOS Let me start by describing my current NixOS setup: Configuration for my personal and work use cases System configuration for my laptop and a work VM Heavy use of home manager to configure and enable tools I need (desktop, coding, terminal, tools, and more) Desktop setup with dwm, st, and many…

Going Back to Basis

Trying clojure blog generator On my last post, I mentioned I changed my blog setup to cryogen and clojure. While it was a mostly successful experiment, I’m going to keep it at that, an experiment. Going back to my hugo / ox-hugo setup. My cryogen setup is still available here . ← craftering → For comments, use email or Mastodon Don't forget to subscribe to my RSS feed !

New blogging setup

If you read this, it means I’ve moved away from hugo, to a fully custom clojure blogging setup. The whole setup achieves pretty much the same features I had with hugo, with barely more than 100 lines of code. You can read the code here . The setup is roughly 100 lines of code that use asciidoctorj, selmer templates, and clojure maps. I tried to maintain the similar features as before: simple…

Seeking a Hugo Blog Replacement

The path to replace Hugo. My current blog setup always worried me a bit due to the complexity it has. I write org-mode files, that are then exported to Hugo markdown file with the help of the great package ox-hugo, and these markdown are then converted by hugo to HTML and RSS. That process works and is quite stable, yet, introduce complexity to: understand how ox-hugo works understand how Hugo…

RSS Exclusive - 2022w50 What Kept Me Busy This Year

Pssst - this is a RSS only post. Please keep it secret. Read more about RSS Club: https://daverupert.com/rss-club/ Got busy this year This will be a short post, but I’ve been busy this year. The main reasons i’ve not posted in a while are due to personal events and all the efforts I spent with home improvement (also known as house crafting). Will focus on “crafter” stuff.…

RSS Exclusive - 2021w50 - Weekly Summary

Pssst - this is a RSS only post. Please keep it secret. Read more about RSS Club: https://daverupert.com/rss-club/ For a while I’ve been thinking of capturing thoughts / experiences regularly. You will find thoughts related to my work, my passions, and my life. Work - Great managers are good partners with their employees Having a great manager is important. One that will: create winning…

RSS Exclusive - 2021w49 - Weekly Summary

Pssst - this is a RSS only post. Please keep it secret. Read more about RSS Club: https://daverupert.com/rss-club/ For a while I’ve been thinking of capturing thoughts / experiences regularly. You will find thoughts related to my work, my passions, and my life. work - new project Last week I joined a long running project. Couple of thoughts from this: Most of challenges are related to…

IntelliJ to Emacs - part 1 - The Plan

A bit of my history with editors and IDEs I’ve been using Emacs and vim since the mid 90s. First for C/C++, then Java. Java has been my primary language since then. At that time, I really used Emacs as an unmodified editor, not as a custom tool. Using Makefiles, and search/replace to do most of my work. Eclipse Around 2005, I made the switch to Eclipse IDE for my Java coding. Main advantages…

The last 12 months

Blog silent I’ve been blog silent for almost a year now. This blog post is my attempt to capture what I’ve been doing, currently doing and will be doing. TLDR: most of the last 12 months spent working on my house, working on many client’s projects, coaching, and learning. Personal The last 3 years has been a bumpy road in my family. Covid and the restrictions that came with it…

RSS Exclusive - Proof it's Always a Good Time to Take Vacation

Pssst - this is a RSS only post. Please keep it secret. Read more about RSS Club: https://daverupert.com/rss-club/ No matter what managers or you think No matter what managers or you think, work is never a good reason to wait for your vacation! And I can prove it! The proof Lets start with some facts: vacation is good for you, for your mental health vacation is good for your employer, a well…

Lean UX, large code

It all started that day Two weekends ago, bored, I was looking for something to do. I remembered posts on fosstodon about some website size ranking called “ The 512kb club ”. Last time I worked on my blog setup, I tried porting it to Emacs org publish. Following the instructions on 512KB site, I ran my site through GTMetrix. To my surprise, I discovered my simple blog index page was…

Chezmoi Merging

Adjusting chezmoi to my workflow Today, I’ve been adjusting chezmoi to match my workflow for editing dotfiles. You may be interested to read my previous post where I go over how to setup and use chezmoi: Dotfiles management using chezmoi - How I Use Linux Desktop at Work Part5 The workflow I’m seeking: edit the files in place the same way I edit any files. I don’t want to use…

Home data storage

A need to own your data The workday today ended with my friend and work buddy telling me it’s about time he own and centralize his data (for him, wife and kids). I’ve had servers since the 90s, so obviously I had solutions for him :P Like mine, he and his family use a variety of devices at home, phones, laptop, desktop. The two obvious choice to self host your data are: a…

Netboot Pxe

Where are my USB drives? Have you been there too? I seems to never find my spare USB drives when I need them. This week, I wanted to re-install my laptop but could not find an unused USB drive to put the ISO on. This is when I found PXE and NetBoot.xyz image. What is PXE? PXE stands for Preboot eXecution Environment. It’s a way to distribute boot images over network. It uses a combination of…

Working From Home

A curse and/or a blessing? Like many of us, I’ve been exclusively working from home since March. I’ve read couple of post on fosstodon mentioning how much people want to go back to the office. I have a totally different experience. Adjustments Lets start with the obstacles I’ve experienced and some solutions that works for me: Doing long hours I start later in the morning so that…

Ditch WYSIWYG apps and switch to plaintext tools

On this post, I’ll go over WYSIWYG apps, and effective alternatives. Like it or not, in tech jobs, we have to write documentation and create diagrams to share our ideas and solutions. The traditional approach is to use WYSIWYG (what you see is what you get) apps. The approach with WYSIWYG apps is to allow you to edit the graphical representation of your document. This is now mainstream in…

Learning Gentoo

Been quite busy in the last couple of weeks. What kept me busy? Family being on vacation, my backyard landscaping project, and wiping Arch from my laptop with Gentoo…. I had no clue what was really Gentoo before wiping my laptop clean. Like with any major learning, the easiest way to learn is to just dive in and practice until you understand enough. This is a learning experiment, so…

Patching Tools - St

As part of my renewed dotfiles setup and dev box setup, I’m taking the opportunity to update my core suckless.org tools: st, dwm, dmenu. I’ve been using these for some time, and it’s great for me to be able to customize tools I use. In this post, I’ll re-create a new ST fork using up to date code base, and new patches that will work for me. Note : The focus will be on…

Git Merge Conflicts - Git patching and resolving conflict (part 2)

I’m creating this post after seeing many people suffering and manually addressing merge conflicts while integrating patches with dwm, st, or dmenu code base. The most common issues seen: applying patches on latest from master using patch instead of git to patch resolving conflict manually In my previous git post , I went over how to create and apply patches to a git repository. In this post,…

Git patching and resolving conflict (part 1)

I’m creating this post after seeing numerous people suffering and manually addressing merge conflicts while integrating patches with dwm, st, or dmenu code base. The most common issues seen: applying patches on latest from master using patch instead of git to patch resolving conflict manually Applying patches and resolving conflict is the land of version control system like git and we have…

Dotfiles management using chezmoi - How I Use Linux Desktop at Work Part5

Part 5 of the series How I use Linux desktop at work where I describe how I’m building a new Vagrant configuration to use for coding on Windows Host systems. This post describes how to automate software installation and manage your dotfiles using chezmoi . In this post, I’ll also replace openbox with my favorite DM, dwm. Previous posts: part1 - Basic setup part2 - X, and WM part3 -…

Display Manager With Autologin - How I Use Linux Desktop at Work - Part4

Part 4 of the series How I use Linux desktop at work where I describe how I’m building a new Vagrant configuration to use for coding on Windows Host systems. This post describes the learning process to setup LightDM with autologin. As with previous posts, I will go over the research and manual implementation first, then go over how to automate it. In part 3, I described how I automated the…

How I use Linux desktop at work - Part3 - Guest additions

Part 3 of the series How I use Linux desktop at work Just to recap, this series is describing how I leverage vagrant and VirtualBox to provision development VM on my work PCs. I’m also taking the opportunity to build them from scratch with the tools I use at home. Previous posts: part1 - Basic setup part2 - X, and WM In the post, I’ll cover: reasons why I ended up compiling the guest…

How I use Linux desktop at work - Part2 - Window manager and GUI

Part 2 of the series How I use Linux desktop at work Just to recap, this series is describing how I leverage vagrant and VirtualBox to provision development VM on my work PCs. I’m also taking the opportunity to build them from scratch with the tools I use at home. In the post, we go over: creating a basic arch VM configure VM install X related packages Install one Window Manager (lxde) The…

How I Use Linux Desktop at Work - Part 1 - Basic setup

Most coders is large companies are facing the same situation: We develop for Linux servers, but we are running on Windows or MacOS boxes. Things are working mostly the same at best, at worst, it’s broken. We need a solution and Vagrant is a quick way to provision a Linux VM on your local desktop. This will be a series of posts starting with these 4 topics: Basic setup Getting basic X setup…

Blogging Setup

In this second post, I’ll go over my thought process to create / publish a blog using markup languages and couple of tools. The objective of my setup was to be done quickly so I can write something else than software configuration :) My hopes for my blogging setup: something I can use from day one, get out of the way, and allow me to improve at a later time automated build and deploy use a…

I should try blogging

Like many, I’ve been thinking about sharing using a personal blog. Like many, I’ve been procrastinating about it :). I can thank the movement #100DaysToOffload initiated by Kev Quirk on fosstodon to get me out of my lazyness. Im hoping to share whatever interest me, but mostly: coding linux, apps I use electronics and games anything I am learning right now, from food, to building house…