Coding with Titans

so breaking things happens constantly, but never on purpose

HowTo: OS upgrade on Raspberry Pi 4

The process of system upgrade is very easy and was already described here. This is a really great guide. I just want to add few comments, that affected my installation. The main actions to perform to install latest version of Raspbian are: Go to and check the latest OS codename. Verify, if this version is not already installed on the Raspberry using cat /etc/os-release command. $ cat /etc/os-release PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)" NAME="Raspbian GNU/Linux" VERSION_ID="9" VERSION="9 (stretch)" VERSION_CODENAME=stretch ID=raspbian ID_LIKE=debian HOME_URL="http://www. Read more →

GitLab on Raspberry Pi not updating

I recently noticed that my GitLab installed on Raspberry Pi (running Jessy) stopped updating and stick to version 8.7.9, however the latest one as of today is 8.16.4. Normally apt-get updateand apt-get upgradeshould do the trick. But it turned out there was a change in the build system and newer packages don’t get uploaded into ‘raspbian’ version of repository. For details - take a look on issue #1303. Although quick patch is following and short: Read more →

TeamCity – advanced application version patcher

I am a really big fan of JetBrain’s TeamCity product. I use it a lot at work and also for my hobby projects. But unfortunately I found it lacks one important, yet very basic feature – proper (and easy) application version management. Someone might say, that this is not totally true, there is a build-in AssemblyInfo Patcher. Yes, OK, although this one is extremely limited and can mostly be used for very simple projects, created by Visual Studio New Project Wizard and never modified. Read more →

Minimizing size of VHD on Windows

Virtual hard-drives used by virtual systems running under Hyper-V on Windows 8 Pro (or later) can very quickly become extremely huge in size. Thankfully there is a nice and easy procedure that I always use to minimize and compact them, which presents as following: Turn on the system, that is going to be optimized and log in. Clean the trash bins, clean temp folders and remove all other unneeded stuff from the system drive (like: old system restore points), turn off hibernation and finally turn off or reduce the size of paging file. Read more →

GiT Cheat Sheet – Commands

GiT is a marvelous tool. It’s like a developer’s tool shaped into Swiss knife. It pays back to have it, yet you still need a bit of training not to make yourself hurt (like lose whole day’s work!). Or most importantly training to know, what is the command’s name for the task you are going to do. Those commands are not very obvious, somehow Mercurial and SVN did a better job here, that’s why I am providing my own list in this short tutorial. Read more →

GiT Cheat Sheet – Split my repository

Internet is full of tutorials about git usage, so here is mine too. But instead of showing basic, I wish to present the solution for an advanced problem, that I personally fight from time to time. I hope this could be valid and could also save your day! The Problem. My project’s repository became so big I noticed some components that could be turned into a separate libraries and used elsewhere either. Read more →

Missing mktemp for gitolite on Synology

I use gitolite to remotely manage my repositorites inside own cloud on Synology DS411 DiskStation. Hardware is maybe a bit old, but still gets new software updates. And of course from time to time, those updates break my configuration. Mostly because my symlinks are removed and $PATH gets reset to predefined folders. Simplest fix to restore gitolite is to symlink mktemp into known location. Login as administrator and type: ln -s /opt/bin/mktemp /sbin/mktemp New repository creation should work fine now. Read more →

Sending Ctrl-C signal to another application on Windows

I have a few command-line applications running on Windows. I haven’t written them myself, they are just ports of some Linux/Unix utilities. And there are situations, when I simply want them to stop or to pay more attention to me. Sure, I could make them to exit using TerminateProcess from my manager application, but this seems to be quite rude, even in the IT world. Much cleaner and nicer way would be to send them a polite notification, that would wake them up, allow release used resources (as some communicate with remote servers) and handle the exit themselves. Read more →

Konsola dla emulatora Windows Phone OS

Jeśli zajmujesz się na poważnie pisaniem aplikacji na Windows Phone i często korzystasz z emulatora, to jest jedna opcja, która może ci pomóc w debugowaniu. Otóż emulator wyświetla logi na konsoli! Tak, korzysta ze standardowej konsoli w Windows. Domyślnie jest ona niestety ukryta. Brakuje menu, aby ją pokazać, zatem pozostaje tylko ustawienie magicznej wartości w rejestrze: na maszynie 32-bitowej: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\XDE] "EnableConsole"=dword:00000001 na maszynie 64-bitowej: [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\XDE] "EnableConsole"=dword:00000001 Miłego podglądania! Read more →