[Photo by Lukas](https://www.pexels.com/photo/blue-retractable-pen-574070/)

Fix 'Cannot Rebase Onto Multiple Branches' error once and for all

A Guide to using git pull --rebase effectively Using git pull --rebase as your default merge strategy offers several benefits, particularly in maintaining a clean and linear commit history, which can simplify collaboration and code review. However, users may occasionally encounter the error “Cannot rebase onto multiple branches”. This article explains why this happens and provides a solution to make git pull --rebase work seamlessly. Benefits of git pull --rebase Linear History: Rebasing applies your local commits on top of the upstream changes, creating a straight line of commits without unnecessary merge commits. This makes the project history easier to read and understand. ...

2024-05-27 · 2 min · timor
[Photo by @felipepelaquim](https://www.pexels.com/photo/electronic-book-subscription-in-an-electronic-gadget-8531176/)

Remove Password From PDF documents

I use a Pocketbook Touch HD first gen. to read ebooks and I bought it in 2017 (oh dear!). It’s a really good device, despite being terribly slow according to current standards and battery have probably only 20% capacity comparing to the day I bought it. Anyway, it outperformed any of my smartphones on it’s longevity. I don’t use it that often anymore but it happen to me to read some stuff that I find on the Internet. ...

2024-05-27 · 1 min · timor

Installing Oracle Instant Client on Ubuntu 24.04

New system, old problems. Getting Oracle Instant Client to work was a trouble 10 years ago and it’s not different today 🤣 There are two ways to install it on Ubuntu/Debian. First is “recommended”, but boring. Second is “crazy”, but have some benefits. As I’m doing it mostly in Docker images, that’s how I will present it. First, check for up to date versions  external link and links on Oracle’s official site. ...

2024-04-17 · 4 min · timor
[Generated by AI](https://www.bing.com/images/create/a-nice-logo-for-a-blog-post-about-file-system-in-c/1-65ef5d10460f428181c3ff8bcc359936?id=goqww%2bR2QLJoCYN4XjxV2w%3d%3d&view=detailv2&idpp=genimg&idpclose=1&thId=OIG2.yF78KU7PXi.xzuZrKVJa&FORM=SYDBIC)

Best practices for writing Dockerfiles - Follow "Filesystem Hierarchy Standard"

When it comes to building Docker images, adhering to the “Filesystem Hierarchy Standard”12 can greatly enhance the organization and maintainability of your containers. Unfortunately, it’s not uncommon to encounter Docker images where files are haphazardly scattered across directories, leading to confusion and unnecessary complications. Let’s delve into some best practices to ensure your Dockerfiles follow the FHS guidelines, thus avoiding common pitfalls and streamlining your container development process. Below you can find the most important directories, from the perspective of Docker images. /dev or /root rarely are useful here. ...

2024-03-11 · 3 min · timor
[Photo by Pixabay](https://www.pexels.com/photo/orange-and-white-seashell-on-white-surface-33234/)

The power of extensive command history in Bash and Zsh

I rely heavily on shell usage. For over 15 years, I was a devoted user of Bash until I discovered Zsh and made the switch. One thing that remained constant throughout my transition was my configuration to maintain an extensive commands history. This setup is replicated across all my systems. When you spend a lot of time coding, you often find yourself repeating commands or running variations of them. Remembering all these commands can be challenging, but with resources like Google and ChatGPT, it’s not always necessary. However, if you find yourself frequently searching for specific commands, it can be time-consuming and distracting. That’s where having parts of the command at your fingertips becomes invaluable. With a quick press of Ctrl+r and a little scanning, you can find what you need. ...

2024-03-05 · 3 min · timor
[Renovate Bot](https://github.com/renovatebot/renovate)

Automatic updates of Docker images with Renovate Bot

I’ve been writing recently about best practices for patching and deprecating Docker images , but today I want to show how to automate a huge part of this process. You might already hear about Dependabot1, it’s a Github’s way to notify developers about security vulnerabilities in their projects. Renovate2 is similar tool3, but doesn’t require Github. For my professional work I use Bitbucket, so Renovate feels more universal as can be used anywhere. ...

2024-03-01 · 4 min · timor
[Photo by Antony Trivet](https://www.pexels.com/photo/herd-of-blue-wildebeest-walking-in-savanna-6053000/)

How I stopped worrying and loved Makefiles

First contact with make When I was invited for my first job interview in the IT, I’ve been asked such question: How would you typically build a program from sources, what commands will you use? I answered: It’s obvious: ./configure make make install Those times belong to the past now and nowadays not many programmers use GNU Make1. Try asking this question and you will see disgust at best. ...

2024-02-16 · 9 min · timor
[xkcd.com](https://xkcd.com/349/)

Best practices for patching and deprecating Docker images

Intro One of the biggest benefits of Docker images is their immutability. Once they’re built, they don’t change. Built once, would work forever… That’s how nightmares of security guys starts 🤣 We have then two contradictory concepts: flowchart LR id1(Keep it stable) <---> id2(Keep is up to date and secure) For day to day work, usually first concept wins. You want your builds stable and try to avoid tempting distractions of upgrading log4j to latest version… Who knows what might break. That’s fine, makes sense. ...

2024-02-09 · 7 min · timor
[pre-commit](https://pre-commit.com)

My pre-commit config for Hugo blog

I love blogging with Hugo  external link and I have two blogs already that use it. The good thing about static sites is that you have all the data in the files. You can optimize them locally, batch process, amend, etc. Powerful templating engine allows to quickly pre fill documents in the format I like. I have some steps in the Makefile for things like image optimization, but I often don’t remember to run them 😃 ...

2024-01-29 · 2 min · timor

Tuning PipeWire for best audio quality on Ubuntu

TL;DR If you’re not interested in the “story of my life”, go directly to “Tuning PipeWire ” section. I’m not an audiophile, but I spent whole days in the headphones and I like when sound sounds good. I like slight bass boost, which adds this kick to the melody, but won’t overwhelm me after an hour of listening. I like when high tones are clear, but I get annoyed if they’re too strong. And finally, I hate all cracks, hisses or electric circuit noises. ...

2024-01-28 · 8 min · timor