Georgi Sotirov's Blog

My personal and professional life


I lost my phone :-(

Yesterday, I lost my phone Samsung A5.2016. However, "lost" is perhaps not the right word here, as what I actually done was to forget it in my youngest doughtier kindergarten ODZ 188. I went there to attend an open lesson on hygiene and upon entering the building I was calling my wife. Then, I left the phone on a cabinet, so to be able to put leggins as the weather was wet and that was it. I'm not normally leaving my phone just like this, but perhaps I was in a hurry and distracted. I noticed the lost about an hour later, when I was taking my daughter home, but calling my number was already giving me the "the phone is switched off or outside network coverage" operator message.
I returned to search my phone, but it was gone and nobody knew anyting. Through, the Facebook's group of my daughter's group in the kindergarten, I learned that one of the mothers had noticed my phone when going out from the open lesson, which means it disappeared somewhere between 16:30 EET and 16:45 EET as when I was leaving I haven't noticed any phone on the shelf and I took my daughters art from there. I'm not sure what should I think, but I just cannot comprehend how my phone was taken from a kindergarten, where I'm taking my daughter each working day. I'm already desperate that I would recover my phone, but I'll publish it's IMEI and serial number here for those who eventually may find out that their phone was stolen (although this is not sure).

Model: SM-A510F
IMEI: 352937/08/475020/4 (352937084750204)
Serial number: R58H90EPAFM

Anyway, I still have hope that I wold recover my phone, so if you stumble on this message and had bough a second hand phone recently, check your phone and let me know if it matches the information above. I would pay you the price which you've paid if the data is intact.

P.S. It's by the way the second third phone I'm losing in 9 12 years. The first last one was in a restaurant in Constanta, Romania in August 2009. It was a Nokia E65.

Update 2018-03-02 10:00 EET: This morning I filed a complaint with the police.
Update 2018-03-07 08:00 EET: As my wife properly remarked me, it's in fact the third time I'm loosing my phone. The first one was in August 2005 at a gas station returning from the wedding of one of my cousins. It was a Siemens C65.


ReactOS 0.4.8 RC on VMware ESXi

Over the weekend ReactOS 0.4.8 RC was released. I was able to upgrade and install also VMware Tools, but I wasn't able to run network with e1000 driver, so I continued using vlance as suggested on VMware page in ReactOS's Wiki. I also had a BSOD with error 0xC0000218, related to impossibility to read registry hive, which turned out to be disk problem (see topic Blue Screen crash on VirtualBox in ReactOS's forum).

Take a glimpse and try it yourself!


My Linux virtual machines

I'm a Linux user since 1999 and apart from using Slackware Linux the most, I'm using also other distributions from time to time in my work (e.g. RadHat Linux now Fedora, SuSE Linux now OpenSuSE Leap) and my personal projects and experiments (Debian, Ubuntu, CentOS and others). In 2009 I've built my virtual server based on VMware ESXi hypervisor, with the main idea to be able to build Slackware packages for different releases and both x86 and x86_64 architectures. So I currently have:

And I updated all these (23+1) today :-)

I'm accessing these virtual machines by SSH and NoMachine (for desktops). Being a person of various interests I'm using Oracle Express Edition 11g R2, MySQL, MariaDB и PostgreSQL database systems, different applications like Oracle SQL Developer, MySQL Workbench, PgAdmin III, Meld, kdesvn, Calibre and many others on these virtual machines.

Here below some screenshots:

Debian 9.3 (Stretch) Desktop
Ubuntu 17.10 (Artful Aardvark) Desktop
Fedora 27 Desktop
openSUSE Leap 42.3 Desktop
CentOS 7 Desktop

How many virtual machines are you running in your home environment?


Thanks again (for using all my disk space) Microsoft!

A Windows 7 virtual machine I'm running is regularly getting broken, because the disk space is out.

My investigations (with the help of Disk Space Analyzer from Glary Utilities) has revealed that this is due to:
  • CBS.log in C:\Windows\Logs\CBS growing large (е.г. several giga bytes at times); and
  • more recently folders C:\ProgramData\Microsoft\Microsoft Antimalware\Scans and C:\ProgramData\Microsoft\Microsoft Antimalware\Definition Updates growing large (several gigabytes on last check).
Anyone knowing remedy for this (other than "don't use M$" and "don't use Windows Defender")?


Translation of Bugzilla 5.0.4 and 4.4.13

I was just about wondering what's going on with Bugzilla's development, when this morning I saw the announcement for 5.0.4 and 4.4.13 in my mailbox. Given it was Saturday, I started updating the translations immediately. You could now have them from the usual places (for 5.0 and 4.4). These releases came 1 year and 9 months after the previous ones, which I find rather strange (the bugs fixed for 5.0.4 - e.g. 1273846, 1310728, 1301887 and 1303702 were all reported 2 years ago and some of them were fixed more than a year ago). Both releases were triggered by the security issue (see the security advisory, bug 1433400 and CVE-2018-5123), but I think this is the longest period without a new Bugzilla release in the past 12 years that I'm translating it.


AVG Free Antivirus deletes PowerShell scripts

Yesterday, as I was working on my PowerShell backup script (see my SPSB project on GitHub) in a Windows 7 virtual machine, I noticed strange behavior. Just like this the script was getting deleted once it was executed automatically by Windows as a Logoff or Shutdown script set up through Local Group Policy Editor. I was struggling to find explanation of this myself or through Googling the Internet as nothing like this was happening on another Windows 7 (real) machine in my WAN network (where the script was actually supposed to work).

I only understood what's happening after my brother working on the same virtual machine told me via Hangouts that he was receiving strange messages from AVG Free Antivirus about some bak.ps1 script that is being quarantined. It stuck me to once that this was the script I was working on and it explained it's strange disappearance from the file system. I'll still have to find what exactly into the source was causing AVG to quarantine the script file, but I find it rather strange that another system account was receiving the messages from AVG and not the account I was working with.

I'll update this post when I found what exactly in the script was considered a threat by AVG.


Translation of Bugzilla 5.0

With a month of delay from the official release here comes the translation of the latest Bugzilla 5.0 in Bulgarian. I started two weeks ago and it took me that much time, because there were ton of modifications in the templates and not exactly into the strings for translation, but the templates need to be synchronized to ensure proper work of the application. I also spent some time identifying and fixing errors in the templates, so I believe this is the best translation ever. Of course, feel free to make me aware if you notice wrong translation or problems.
Download translations of Bugzilla 5.0 from my FTP site.


Using InfoNotary certificate on OmniKey CardMan 6121 under Slackware


This small article describes the installation and configuration of OmniKey CardMan 6121 card read under Slackware, which enables the usage of InfoNotary's universal certificates for e-banking.

Getting started

Plug in the device to a USB port on your computer, after it's recognized by the kernel in the output of command lsusb you should find the following:

Bus 001 Device 028: ID 076b:6622 OmniKey AG CardMan 6121

Installation of device drivers

The manufacturer of the device offers binary drivers for the CardMan 6121 and other readers.

Manual installation

Download the driver archive and unpack it to a temporary directory, then run
the install script, for example in Slackware64 14.1:
# cd /tmp
# wget ''
# tar -xvf ifdokccid_linux_x86_64-v4.0.5.4.tar.gz
# cd ifdokccid_linux_x86_64-v4.0.5.4
# ./install

Automatic installation

A package is provided by the SlackPack repositories for different Slackware versions called pcsc-omnikay, so alternatively, you could use slapt-get utility, configure SlackPack repositories and then just issue the following command:

# slapt-get --install pcsc-omnikey

Installation of necessary software

You need PC/SC Lite middleware for accessing the smart card using SCard API (PC/SC standard), for packages could be found in SlackPack repositories for different Slackware versions. You also need OpenSC tools and libraries for work with smart cards that are used by Firefox and Thunderbird. Packages could be found from the same place.

Manual installation

Download the packages into a temporary directory, obtain root privileges and then enter following commands to install them, for example in Slackware64 14.1:
# installpkg pcsc-lite-1.8.11-x86_64-1gds.txz
# installpkg opensc-0.14.0-x86_64-1gds.txz

Automatic installation

Alternatively, you could use slapt-get
utility, configure SlackPack repositories and then just issue the following command:

# slapt-get --install pcsc-lite opensc

The PC/SC Lite daemon from the package comes bundled with a startup/shutdown script, so you could start it by just issueing the following command:

# /etc/rc.d/rc.pcscd start

If you want the daemon to start automatically with the system, then just add it to local initialization script like this:

# echo '/etc/rc.d/rc.pcscd start' >> /etc/rc.d/rc.local

Configuration of Firefox

Now that the driver and necessary software are installed
it remains only to configure Firefox to be able to communicate with the card read. This is done in the following way:
  1. Open Edit -> Preferences;
  2. In Firefox Preferences window navigate to Advanced, then to tab Certificates;
  3. Click on Security devices button;
  4. In window Device Manager that opens click on button Load on the right;
  5. Enter "OpenSC PKCS#11 Module" in Module Name and select
    /usr/lib64/ file as Module filename, then
    click OK;

After the module is loaded the window manager would display the information about the reader:

See also


I become father (version 3.0)

Today I have become father for third time and yes, it's a girl again :-), but I'm more than happy with my new daughter Dobromira. Both the mother and the baby are well and we'll expect them at home in the next few days.

Dobromira comes to our lives as a bit of surprise, but I would say a much wanted surprise, because I have always dreamed about big family of at least three children. Now that dream have come true and my life is even more meaningful.


Enable negotiatable authentication in Firefox

Well, I've spend some time investigating this, so I decided to share. I have tired to set up NTLM authentication in Firefox by Googling the web, but what was bugging me was that it was not working, while with IE there was no problem at all. Most of the sites suggested setting network.automatic-ntlm-auth.trusted-uris and I've entered the internal sites there. Even tried to enable it for all sites by setting the value "http://,https://", but still no success.
Today, I decided it's about time I find the solution, so I started by refreshing my knowledge from the Internet. Normally, for the authentication the web server sends HTTP 401 Unauthorized (or Authorization Required) response, so I've started investigating the HTTP headers (with the help of Live HTTP Headers extension) and I noticed that after it Firefox actually sends nothing for the internal host names that I have already set up in network.automatic-ntlm-auth.trusted-uris. Strange? Yes, until at some point I noticed the following:
Authorization: Negotiate ...
So, the web server was actually negotiating authentication mechanism, instead of asking for NTLM directly, but Firefox wasn't negotiating. This made me think that something is missing and I searched about other keys related to authentication into about:config. Thus, I found network.negotiate-auth.trusted-uris and once I set the internal site host names into this value everything come into place - Firefox was already negotiating the authorization, which turned out to be Kerberos actually.
So whenever you setup automatic authentication for internal sites consider setting both network.automatic-ntlm-auth.trusted-uris and network.negotiate-auth.trusted-uris, so it works for you, even if the authentication mechanism is negotiable.