Since I had some time this week, I decided to try to improve my bow grip using a 3D printer and the already customized bow grip that we worked on at the club some months ago. The first steps were trial and error, by applying some 2 components paste on the grip, shoot some arrows, check that the hand was positioned correctly, add some paste, repeat until the hand was positioned correctly and…
Last weekend I found a number of encrypted hard-drives that were used to do periodic backups from 2006 to 2014. At the time, the backups were made using rsync with hard-links to save only one occurrence of the file if it was not changed since the last backup. I wanted to check that everything was still there and upgrade this to a Borg repository so that I can profit from compression and…
A number of websites I maintain are built and deployed automatically through GitLab pipelines, either on an AWS S3 bucket that is then used by AWS CloudFlare, or to an SFTP server of an hosting provider. In this article I will summarize the necessary configuration to GitLab-CI and the necessary variables in the CI/CD settings. Deploy to AWS S3 We first need to inject the credentials necessary for…
Because my different projects use a lot of pipelines for tests and deployments, I wanted to use the different possibilities of the cloud to reduce the load on my GitLab server and instead run these short-lived containers on other virtual machines. In this post, I will explain the different steps needed to install a GitLab Runner and the necessary adapter for Docker Machine in a container that can…
While trying to compile KiCad from the latest sources, I had problems installing the large number of required dependencies with the correct versions on my two computers. I already know of a tool that allows building a system image that is in a known state and can be executed independently of the host system : Docker. In this article, I will summarize the different steps I took to compile KiCad…
Git is currently the most popular Version Control System and probably needs no introduction. I have been using it for some years now, both for work and for personal projects. Before that, I used Subversion for nearly 10 years and was more or less happy with it. More or less because it required to be online to do more or less anything : Commit needs to be online, logs needs to be online, checking…
As I prefer to work on a Linux computer for programming, at work I have to use a virtual machine to execute the product and test in a real environment using different Windows versions. The problem encountered is that the emulated graphics card, even with full drivers in my KVM setup is only providing an OpenGL 1.1 version, something so old that some of the functionalities of our application are…
I have a number of computers that are connected to different networks, sometimes accessible from the Internet, sometimes behind a NAT that I can configure, sometimes behind NAT that I cannot modify and sometimes behind multiple obstacles. Recently, I discovered that there is a very easy way of dealing with this: Tor Hidden Services. Usually when we think about Tor, we think about the anonymity…
Since the number of stuff I’m deploying on my small Kubernetes cluster is increasing and manually managing the volumes is beginning to be a pain, I decided to start learning about the Storage Classes, Persistent Volumes and Volume claims. Even if at first it seems to be intimidating, it was really easy to integrate them with my small Ceph cluster that I also play with. Ceph On the Ceph side,…
Recently there has been a lot of news about OpenFaaS and I wanted to try it out. As the rest of my tests have been done on Kubernetes, I looked more closely to the FaaS-Netes. Everything here was done on a local minikube deployment and using my test Docker registry deployed on a server in the local network. Deployment The first deployment was really easy. Once minikube is operational, it’s…
I have been using the same router with OpenWRT installed for now 8 years and recently my network was beginning to become somewhat insufficient. I have a number of servers in my home, a number of mobile devices connected by Wifi and the router is in the living room whereas we both have a desktop computer on an another floor, without cabled network in the home. Until now, the network was using a…
Some time ago I was tasked with migrating our Subversion repositories to Git. This article was only written recently because, well, I had forgotten about the notes I had taken during the migration and only stumbled on them recently. Our largest repository was something like 500Go and contained a little more than 50'000 commits. The goal was to recover the svn history into git, keep a much…
This is a follow-up of the previous Preseeded Debian Install article, this time to add the capability of asking for a headless install through SSH. I received every part of my future storage server and needed to install Debian on it. As I did not want to hook up a keyboard and display on it just to install the OS, I looked into the Debian Installer Network Console. The concept is really simple, as…
Since I tend to reinstall my laptop quite often -each time I have to use it for work more or less-, I wanted to automate a large portion of the installation process, from the installation itself to the configuration. I delegated the configuration part to SaltStack, which I will cover in a future post, once I figured out everything I needed. This first part will cover the Debian installation, using…
After an another long pause on this blog, I piled up a number of notes in my notebook that I have to write down. But first, like with any other reboot, I have to refresh my tools. This time, I migrated my blog from Chronicle to Hugo. I put my existing articles through a simple converter to get them in markdown. The articles are written in Markdown, converted and processed through Hugo.
After the configuration of my servers through Saltstack, I decided to go furter and to also store the configuration to my laptops and home computed into Saltstack and thus allow an easy way to format and get a fully configured system back in place really easily and quickly. First step was to get a quick way of formatting my computers without or with only minimal human intervention. As I’m…
I started working on a custom Quadcopter for fun. I started from the Crossfire by MickeyB from which I redesigned large portions to better fit my needs. I wanted a somewhat smaller design so that it fits inside a Rako box for transport. I started using the original arms but then, the original center piece was too large for the Quad to fit inside the 600mm x 400mm x 120mm Rako box I had on hand.
After a long pause in this blog, I just updated the broken edition method. Before, the only method to add new notes in this blog was using SVN, which was broken when I migrated to Mercurial. Now, I shared a folder with WebDAV, using ownCloud so that I can access these notes from anywhere using either a mounted folder in my home directory or the online interface. As soon as an entry is added or…
As always during holidays, I have too much time on my hands. Relevant XKCD: #554 My blog now supports Gopher ! You can visit it on gopher://schwery.me This link is no longer valid, this server has been torn down If you are interested in the script that is responsible for serving the pages, it is written in Perl5, is some 170 lines long and is bad code that needs to be rewritten in Haiku.
A small note about the most useless key on my keyboard : Num_Lock I don’t know about you, but when I have numbers to type, I use the line on top of the keyboard and not the numeric pad that, once activated, replaces some keys of my keyboard - Yes, I’m on a laptop. So, about disabling that key and rendering it useful : xmodmap -e 'keycode 77 = ISO_Level3_Shift' Replace the keycode with…
I finally found a way to share the code snipplets that I wrote for a reason or an another with anyone who would have any use for them. I decided to drop my usual SVN repositories and try another versioning tool : Mercurial. The main reason was that the name sounded cool and that it was really easy to setup some web repository view … I know it’s not really a plus since all VCS provide…
As always when you have to study an exam, you notice something on your computer that doesn’t work … Today was the easy way to connect an external display and use it to … hum … work. As I don’t use fancy desktop environment, no gui tools are available. That’s not a problem, you just have to do it the easy way: Some obscure key bindings that will launch a…
Hi ! Today I just experimented with an old tool: Linux-PHC. This is a kernel module that replaces the default apci module and allows more control over the cpu. The main function of this module is to allow the user to modify the CPU voltage, usually lower it. Why would you lower the CPU voltage ? The answer is simple: On a laptop, it means less heat and more battery.
I’ve always asked myself how some Linux distributions have pretty lines along the : Starting ACPI services... [ OK ] Starting anac(h)ronistic cron: anacron deferred while on battery power. [ OK ] Starting deferred execution scheduler: atd [ OK ] It appears this is managed by the LSB and there is only one file to edit to have anything you want for your boot output : /etc/lsb-base-logging.sh…
Okay, I already see the questions coming : a. What’s this blog ? b. Why not using Wordpress like everyone else ? c. What more does it have ? d. Obi-Wan Kenobi ? So : a. I’m using Chronicleto power this blog. b. Because I was looking for something clean, simple and efficient, because I want to be able to edit every entry by hand, using either a simple nano by ssh or a subversion…
I really hope nobody ever saw the previous blogs ! Hum … ;-) Okay, so once again I wanted to start a blog to share / store every small things I have lost in my bookmarks. In my bookmarks are links to virtually everything that has been useful in my system, with notes on how to apply these configurations stored everywhere. Now I want to have someplace where I can order all that and share with…
I am Thomas, a software engineer. I love new challenges and learning new things. I earned a Master’s Degree in Computer Science graduating from the EPFL (Swiss Federal Institute of Technology in Lausanne), with a specialization in Software Systems. When not programming for my job, I like designing and building mechanical keyboards, shooting my bow, cooking with my family, mapping my surroundings…