Log in

No account? Create an account
Alex Belits
Those who have relatively old laptops or embedded systems without NVME support, may find it interesting that there is such a thing as a 2T mSATA SSD. It is hidden inside 2T Samsung T5 external SSD -- those small drives are mSATA enclosures with USB3 interface.

To open the SSD case, remove stickers on both ends and four screws under stickers. Boards are mounted on the plastic frame that can be pulled out toward the USB-C connector side. The drive identifies itself as "Samsung Portable SSD T5, MVT42P1Q" and reports 3907029168 512-byte sectors, so both GPT and MBR partition tables will work on it.

This also means that now my Thinkpad X220 laptop now has total 6TB in SSD storage -- in addition to having 4T SSD in its SATA bay I have swapped its internal 1T mSATA SSD with external one from T5. Speaking of X220, I have seen an X220 board with bent mSATA connector pins that can break horribly when someone tries to install a drive for the first time without checking them first.


1 comment or Leave a comment
It happened -- the first update of Viber on Linux since October 2017. The recent protocol change left Viber barely usable, so finally Linux users got an update. The new version is, Debian package for Ubuntu works on 18.04 and 18.10.

On Ubuntu 19.04 it requires libssl1.0.0. Current versions of libssl1.0.0 can be found at https://security.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0.0_1.0.2n-1ubuntu5.3_amd64.deb (or whatever is the latest at http://security.ubuntu.com/ubuntu/pool/main/o/openssl1.0/ ) or http://security-cdn.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb (or whatever is the latest at http://security-cdn.debian.org/debian-security/pool/updates/main/o/openssl/ ). Please take into account that this is a security-critical package that got multiple security updates, it is maintained, and if it is installed manually, it won't be automatically upgraded. While annoying, this is an improvement over libcurl3 mess in


Leave a comment
Action Required: Fix Problem To Avoid Mail Service Disruption
Considering that phobos.illtel.denver.co.us is my own workstation (yes, there is still such a thing as a "workstation") that also acts as its own email server, and the only sysadmin on that box is me, scammers ended up impersonating myself when emailing me. And yes, they also spelled "server" as "sever", however the irony of this is not nearly as impressive.
2 comments or Leave a comment

Viber did not update its Linux port for a while, so by now there are two issues that cause trouble with it, even though it's proclaimed to work on Ubuntu.

1. The infamous libcurl3 issue.

That's a really stupid problem caused by dependency on libcurl3 in viber.deb, even though libcurl4 works just fine. Since those two are mutually exclusive, installing anything that requires libcurl3 will remove Viber, and installing Viber will remove libcurl4 and everything that depends on it.

The simplest solution is even more stupid, use RPM intended for Fedora, and convert it to Debian package using Alien: As root:

alien --to-deb viber.rpm

The result is perfectly installable.

2. Blank text issue.

That happened recently to me on a box with Intel graphics. Apparently some upgrade messes up text if old shader cache is present in .cache/qtshadercache , so all text disappears while all layout is fine. Just delete that directory:

rm -rf ~/.cache/qtshadercache

It will be re-created, and font rendering will work again.


Leave a comment

My laptop at work is Lenovo Thinkpad T460s with Core i5-6300U. Its CPU happens to have a "unique" version of a buit-in graphics adapter, Intel HD Graphics 520. When I first got that thing in 2016, it could only run Linux with DRI completely disabled -- it looked like Intel drivers did not properly support that adapter, even though things improved later. Nevertheless occasionally I got the dreaded
"[drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A"
message, and graphics went into some broken state. The box was running Debian, however no upgrades to either Debian or Ubuntu packaged kernel had any effect.

It turned out, there was firmware update missing, or to be more precise, firmware files skl_guc_ver6_1.bin and skl_huc_ver01_07_1398.bin were supplied with firmware-misc-nonfree package, however they were not loaded by default. To do that, one had to enable loading manually, so I had to add a file /etc/modprobe.d/i915.conf:
options i915 enable_guc_loading=1 enable_guc_submission=1

and remove blacklisting of microcode loader ("blacklist microcode") entries from other files in /etc/modprobe.d.

After making those changes on Debian or Ubuntu it's necessary to rebuild the ramdisk with
update-initramfs -u -k all
and reboot.

Everything is running well ever since -- of course, for the values of "well" applicable to Intel built-in graphics adapters. They usually do the right thing, however performance is nothing special, appropriate for a general-purpose work laptop.

Tags: , , ,

Leave a comment

I have a home workstation box running Gentoo Linux. The desktop environment is KDE Plasma, currently at 5.11.5. And that's apparently not a good combination with the current NVIDIA driver. In the past I have seen occasional broken OpenGL compositor behavior, when a window suddenly flickered to black until redrawn, however otherwise everything worked properly, and I did not bother investigating what was a known but rare annoyance. Recently, however, I have found that the problem got much worse, screen occasionally turned to solid black, and X11 the driver produced an infamous "XID 31" log message.

The problem is not fatal, switching to a text console, restarting kwin_x11 and switching back to the desktop restores sanity while the rest of the session remains running, however it became frequent enough to become very annoying. I was also afraid that whatever was confused enough to access the wrong video memory address (what "XID 31" is according to NVIDIA), may also do something worse -- leak objects, corrupt GPU data or crash the driver.

Read more...Collapse )

Update (2018-02-15): It looks like the problem was fixed in KDE Plasma 5.12.0 -- I have not seen it after upgrading to 5.12.0 (later 5.12.1) and reverting from Compton to KWin compositing. I am not entirely sure about it because the problem was intermittent to begin with, and it may be that the new version simply doesn't hit the conditions that trigger it as often as the old one did. However so far all windows are displayed properly, and no "XID 31" log messages.

Update (2018-02-18): 5.12.1 still managed to produce an error:

[721975.776488] NVRM: Xid (PCI:0000:07:00): 31, Ch 00000020, engmask 00000101, intr 10000000

So the combination of KWin compositor and NVIDIA is still broken. Switching back to Compton.

Tags: , ,

Leave a comment
I made those root filesystem builder and installer scripts some time ago, and they worked very well for all my Debian and Ubuntu installations. Still there were some glaring deficiencies in them, most notably the tendency of leaving mounted filesystem images on failures, and installer not creating a large enough /boot partition for kernels and especially ramdisks that grew up in size.

Now I can anounce that those problems are a thing of the past, as new updates to Radish were committed to its git repository.

If anyone did not keep track of those (what should be pretty much the whole population of Earth except for myself), Radish is a set of shell scripts that can produce a pre-built small root filesystem image ("small root" part being the reason for calling it Radish) for Debian and Ubuntu Linux, and produce bootable storage devices using that image.

The images can be updated with more software, or scripts can be modified to include whatever software the user wants to add. Installer script generates a partition table / MBR and two partitions used for MBR-based installation of Linux. The installer also takes care of resizing the root filesystem to fit the partition, and updates UUIDs, so they remain unique among installations. This is important for handling multiple removable devices where identical filesystems can create a great amount of grief when multiple devices (such as USB and SATA-connected drives) are connected to the same Linux box.

Still no GPT/UEFI support at the moment, and installer is limited to Debian and Debian-like systems.
Leave a comment
https://github.com/abelits/flashair-download now supports Transcend Wi-Fi card. In its default mode, Transcend card uses the same model as the default mode of FlashAir, card acts as an access point, transfer is performed using HTTP.


2 comments or Leave a comment

Download files from Toshiba FlashAir SD card over Wi-Fi: https://github.com/abelits/flashair-download

Print on Canon SELPHY 1200: https://github.com/abelits/canon-selphy-print

FlashAir script is for the configuration with FlashAir card as the access point, it uses Network Manager through nmcli utility to temporarily switch the access point, download files that are not present on the host, then restore the original state of Wi-Fi connection. It requires Network Manager having a configuration for the card, with the connection name the same as SSID name.

SELPHY support assumes that the printer configured in CUPS and accessible over Wi-Fi. The driver chosen for this printer is irrelevant, script uses raw mode and sends JPEG file with dimensions used by the printer.

I did not want to use a printer as an access point because it may interfere with the CUPS spooler -- spooler may be still talking to the printer while everything else is done, or printer may be in an error/out of supplies state, so keeping the connection on while the queue is not empty is not a good idea, either. Printer indicates its connection status on its built-in screen, so setup is sufficiently convenient, at least with my phone acting as a mobile access point.

On FlashAir, on the other hand, access point mode is more convenient because it does not tie the setup to any particular external access point, so photos can be downloaded at the first opportunity.


6 comments or Leave a comment
If someone using an Ubuntu desktop, and after update to 16.10 he is wondering where his "Wired connection 1" went, and why his attempts to connect to VPN using Network Manager interface are failing, the culprit is


The bug (with the dreaded WONTFIX) is at https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1638842 . This is getting annoying.

I have added ",except:type:ethernet" to the end of its "unmanaged-devices" definition, however it may be that someone using Bluetooth or other unusual devices may just replace this file with an empty one.

In other news, I have found that apulse works for running Skype without PulseAudio, as long as ALSA is not trying to use PulseAudio. On Gentoo this means actually removing PulseAudio support, as opposed to having it inactive, however on distributions with binary packages that would be problematic. It happens that removing /usr/share/alsa/pulse-alsa.conf (and preventing it from being installed again) is sufficient.
7 comments or Leave a comment
У меня создалось впечатление, что в данный момент мои англоязычные знакомые, которые могут читать по-русски и русскоговорящие, которые читают по-английски, находятся в полном недоумении от материала, который Facebook им направляет якобы от моего имени. Все упоминания "либералов" по-русски и все упоминания "либералов" по-английски относятся к каким-то группам людей, не имеющих практически ничего общего, кроме самых маловажных свойств и действий, и только наиболее запутавшихся участников. Это не имеет никакого отнощения ко мне, меня в существующей обстановке было бы наиболее правильно назвать социалистом, однако так как я оказался точкой соприкосновения, думаю, что именно мне следует предложить некоторое этому объяснение.
Очень длинный текстCollapse )
(English version)
42 comments or Leave a comment
I believe, by now whatever English-speaking friends I have who can read Russian, and all my Russian-speaking friends who can read English, should be thoroughly confused by the content of whatever Facebook throws at them on my behalf. That is, everything in Russian that refers to "Liberals" and everything in English that refers to "Liberals" seem to mean groups of people that don't have much in common except for some least important activities and attributes, and only the most confused members in common. The problem has nothing to do with me, in the current environment I can be best described as a Socialist, however since I happen to be an unwilling connection point between the two, I think, I have to provide an explanation.
A Very Long TextCollapse )
(Russian version)
Leave a comment
I have already mentioned this:


Now we have ONIE installer ported to our x86 hardware. Except this port is so generic, it works on most x86-based motherboards that support "classic" MBR-based booting, can be booted over PXE, and have SATA boot media:


Build for im_n29xx_t40n platform produces kernel and ramdisk images suitable for PXE booting. It will need kernel command line option boot_reason=embed to install after being booted from PXE, for example, with this pxelinux.cfg/default:

SERIAL 0 115200 0
LABEL linux
SAY Now booting the kernel from SYSLINUX...
KERNEL im_n29xx_t40n-r0.vmlinuz
APPEND ro console=tty0 console=ttyS0,115200n8 boot_reason=embed
INITRD im_n29xx_t40n-r0.initrd

To install Radish images, we have this:


To build it, first build static partclone with extfs support from patched sources at


using the following (assuming it is initially installed in /home/user):
./configure --disable-rpath --disable-all --enable-extfs
--enable-static --without-libiconv-prefix --without-libintl-prefix
--prefix=/home/user --exec-prefix=/home/user --bindir=/home/user/bin
--sbindir=/home/user/bin --datarootdir=/home/user/share

Then copy partclone.restore to the components/ in onie-x86-installer and run

./build_installer.sh .

The result is a shell script, originally produced as installer.sh . When downloaded by ONIE over HTTP it will install Radish image that has the same name with suffix .sh replaced with -image.bin .
Leave a comment
I think, I am supposed to provide some update after my look changed in a noticeable way. So this:
4 comments or Leave a comment
This is how my Slashdot user page looks now.

Thanks to Slashdot moderation system and shills exploiting it, I can post only two comments per day, and both of them are at score -1 -- invisible by default. This also never expires.

Oh, and 437 is my user ID. I was among the first people on that site, actively participated in all discussions over 15 years, and until this year nothing even remotely like that happened.

The only way to restore things is to mod my comments up, however scarce they may became, so I ask everyone who sees this and has an account with mod point, to mod them up. Yes, they are insipid, and yes, I can't have a meaningful discussion until this limit will be lifted, that's the whole point.

My comments can be seen at http://slashdot.org/~Alex+Belits/comments


1 comment or Leave a comment
...and today was my first day at work at Interface Masters. Even committed some code.
4 comments or Leave a comment
Today I was laid off at Meyer Sound.
4 comments or Leave a comment
I have finally uploaded October photos.

New San Francisco photos:

Sunday Streets Berkeley on October 14:

Walk from Emeryville to Berkeley:

Pearl Street in Boulder, CO:

And a very small section on food:
Leave a comment
I got a new camera and taken some pictures...
Leave a comment

I knew that people mis-use Venn diagrams, but this takes the cake -- not only the diagram is the opposite of what it is supposed to mean (intersection of sets instead of union), it also shows a non-empty intersection between a set ("People who think hipsters rule the mission") and its complement ("People who don't")! And that intersection is a superset of the people who supposedly use the product.

So exclusive, no one can possibly have it!

Leave a comment