Autarchy of the Private Cave

Tiny bits of bioinformatics, [web-]programming etc

    • Archives

    • Recent comments

    Midnight Commander (mc): convenient hard links creation from user menu

    3rd December 2015

    Midnight Commander is a convenient two-panel file manager with tons of features.

    You can create hard links and symbolic links using C-x l and C-x s keyboard shortcuts. However, these two shortcuts invoke two completely different dialogs.

    While for C-x s you get 2 pre-populated fields (path to the existing file, and path to the link – which is pre-populated with your opposite file panel path plus the name of the file under cursor; simply try it to see what I mean), for C-x l you only get 1 empty field: path of the hard link to create for a file under cursor. Symlink’s behaviour would be much more convenient…

    Fortunately, a good man called Wiseman1024 created a feature request in the MC’s bug tracker 6 years ago. Not only had he done so, but he had also uploaded a sample mc user menu script (local copy), which works wonderfully! You can select multiple files, then F2 l (lower-case L), and hard-links to your selected files (or a file under cursor) will be created in the opposite file panel. Great, thank you Wiseman1024!

    Word of warning: you must know what hard links are and what their limitations are before using this menu script. You also must check and understand the user menu code before adding it to your mc (by F9 C m u, and then pasting the script from the file).

    Word of hope: 4 years ago Wiseman’s feature request was assigned to Future Releases version, so a more convenient C-x l will (sooner or later) become the part of mc. Hopefully.

    Posted in *nix, how-to, Notepad | No Comments »

    How to fix: Xiaomi Mi Band stopped tracking steps and sleep

    26th July 2015

    Mi BandA few days ago, my Mi Band (version 1) stopped properly tracking sleep and counting steps. Here is a full list of symptoms:

    • synchronization appears to work correctly;
    • total count of steps is updated, but when you click it – there are no per-hour details;
    • in the older app version: after sync completes, there is no green message “Updated X items”;
    • night sleep tracker does not update at all: neither total hours slept, nor per-hour details;
    • the band is otherwise functional, e.g. “Find the band” works – it vibrates and flashes diodes.

    Warangelo00 found a solution, which worked for me (and no, you do not need to hard reset the device):
    note: the fix below will most probably not work for Mi Band 2, see comments; iPhone owners may try switching iPhone from AM/PM (12-hour clock) to 24-hour clock to fix the non-synchronization problems with MiBand2 – please write in the comments if this method works for you.

    1. enable Bluetooth, if it is disabled;
    2. start Mi Fit, go to Play –> Incoming call (or, in older app version, SettingsIncoming calls);
    3. enable it – set to On;
    4. now call your mobile phone from a different one – wait for the band to vibrate and flash lights;
    5. you should now be able to refresh Mi Fit main page, and see both current day and previous night per-hour details; in the older app version, it should also show the green “Updated X items” message after syncing;
    6. you can now disable incoming calls notification if you don’t need it.

    According to Holly, the trick may also work for Mi Pulse.

    Not sure if this fix will last, but it did help me – thanks, Warangelo00!

    Posted in Hardware, how-to | 49 Comments »

    PGF vs PNG vs JPEG 2000 for long-term photo storage/archive

    26th May 2015

    I am using an excellent photo-management suite digiKam, which offers 3 lossless compressed formats for photos versioning and storage: PNG, JPEG 2000, and PGF. I wanted to know which one should I use, which urged me to perform this comparison.

    This post is not intended to be an in-depth comparison, but should be sufficient to choose one of the three file formats for your purposes. For more format details and history simply follow the links provided. File formats are reviewed roughly in “historical” order.

    PNG (Portable Network Graphics) was designed as GIF replacement.

    • It is lossless.
    • It is suitable for photos.
    • PNG is more space-efficient in the case of images with many pixels of the same color, such as diagrams/plots (as compared to PGF and JPEG2000). However, PNG photos are almost always larger than lossless PGF/JPEG2000 photos (real photo example: 9.9 MB in PNG, 7.0 MB in JPEG 2000).
    • PNG is fairly fast at (en|de)coding.
    • PNG is widely supported by web-browsers, image editors, and other software.
    • PNG uses CRCs internally for each data block, so if damage occurs only the damaged block(s) should be lost – theoretically. However, in practice, according to the Just One Bit paper (local copy), PNG is actually much less damage-resilient than JPEG 2000.

    Read the rest of this entry »

    Posted in Comparison, Links, Misc, Software | No Comments »

    Casio G-Shock: amazing survivalist watches

    14th May 2015

    Casio G-Shock

    Casio G-Shock

    In May 2010 I’ve paid US $118 for Casio G-Shock GW-810D (Atomic/Waveceptor Tough Solar) wrist watch with stainless steel band.
    5 years later, at the end of April 2015, I lost it :( .

    Looking for a replacement, I found that:

    • Casio seems to no longer make affordable models with the same functionality and a metal band – only polymer;
    • a similar used model from Casio (MTG-something) costs upwards of 70 EUR.

    I was quite sad about that. Any survivalist-minded person can easily see why:
    Read the rest of this entry »

    Posted in Hardware, Misc | No Comments »

    Tools to manage Debian services and start-up scripts

    8th April 2015

    • sysv-rc-conf: text-UI, allows editing multiple runlevels, but seems to be failing recently
    • rcconf: another good-looking text-UI alternative; can only modify current runlevel
    • bum: GUI tool (BootUp Manager)

    More details about these tools and runlevels (in German).

    Posted in *nix, Notepad | No Comments »

    Ender’s Game (the movie)

    29th March 2015

    Just finished watching Ender’s Game. As of this writing, it has IMDB rating 6.7, and I think it is slightly under-rated.

    Ender's Game (2013) on IMDb

    If you love Sci-Fi movies, this one is a definite “should watch”. I’m not sure if it has much “watching again later” value, but for one evening it is very good.
    The story holds well together, has a good (though noticeably compressed) pace, and proceeds in a fairly expected way. Overall, I liked how this movie was made. The music also blended in organically.

    Some share of the reviewers claim that watching this movie does not spoil reading the book after the movie. Some even go as far as to claim that this entire 2-hour movie can be deemed a “trailer” to the book. I had also seen disgruntled reviews of people comparing the movie to the book and complaining about the changes in the movie, and timeline compression. Well, compression was noticeable, but without it the movie would probably be boring. Also, not having read the book, I believe that the changes were necessary to make this movie hold together better. Honest film adaptations of the books are not necessarily good – these are different media, after all. Moreover, if a movie incites interest to read the book (and Ender’s game did!) – this is only for the better. Especially if a movie is like a trailer to the book :)

    Posted in Movies | No Comments »

    Compressors galore: pbzip2, lbzip2, plzip, xz, and lrzip tested on a FASTQ file

    28th March 2015

    About 2 years ago I had already reviewed some parallel (and not) compressing utilities, settling at that time on pbzip2 – it scales quasi-linearly with the number of CPUs/cores, stores compressed data in relatively small 900k blocks, is fast, and has good compression ratio. pbzip2 was (and still is) a very good choice.

    Yesterday I got somewhat distracted, and thus found lbzip2 -

    an independent, multi-threaded implementation of bzip2. It is commonly the fastest SMP (and uniprocessor) bzip2 compressor and decompressor

    - as it says in the Debian package description. Is it really “commonly the fastest” one? How does it compare to pbzip2? Should I use lbzip2 instead of pbzip2?

    This minor distraction had grown into a full-scale web-search and comparison, adding to the mix plzip (a parallel version of lzip), xz, and lrzip. After reading thousands of characters, all of these were put to a simple test: compressing an about 2 gigabyte FASTQ file with default options.

    All the external links and benchmarks, as well as my own mini-benchmark results, are provided below.

    The conclusion is that out of all the tested compressors lbzip2 is indeed the best one (for my practical use). It is only slightly better than the trusty pbzip2, which takes the second place. All the other compressors performed so poorly, that they do not get any place in my practical rating…

    So, let us first ask internet wisdom/foolishness, if lbzip2 or pbzip2 is faster/better?
    Read the rest of this entry »

    Posted in *nix, Comparison, Links, Misc, Software | 6 Comments »