All items...           Popular tags: Linux (7), Hack (6), DIY (3), Debian (3), Other (3), Retrocomputing (3), Electronics (2), Database (1)

Listing contents with tag Hack:

LibreOffice base: One macro to open them all

2017-04-22 15:39:42,  In: Hack, Database

Recently I was developing a simple database application in LibreOffice Base version 4.x. This is quite slow tool, but with a few modifications and tricks complex applications can be made.
Usually, database application consists of several forms supporting several tables opened from each other or common "switchboard" form. The problem in LibreOffice base is that it is not possible to easily make the "switchboard" form with buttons launching forms for other tables. There is no "macro wizard" to make it easily and most existing databases use extensions or hard-coded macros for it.
Officially, the only way to do it is by using Switchboard extension which is not much supported in later versions. Another way is to create macros for buttons. If you have 10 buttons opening 10 forms, you will have to make 10 macros connected to them, opening different forms. As in pure Open-Source programs, the only documentation is source code. Let's do it in more universal way: I inserted a target form name in ToolTip...

... Read More

Windows 98 - fixing file operation delays

2016-12-24 04:12:59,  In: Hack, Retrocomputing, Windows

Another text from series "Notes to myself". After installation of Internet Explorer 6 in Windows 98, some weird things may start to happen. It starts when large amount of files are deleted, moved or copied. After this operation every refreshing of explorer window related to renaming, moving, copying or deleting causes a minute hang of Explorer window. This persists until restart.
This is caused by a bug in Internet Explorer 6 shell, which is totally harmless in NT-based Windows systems, while in Win9x causes hang. And although MS has been notified about this problem since 2002, they haven't released any patch. The only thing we can do is to replace the part IE introduced to Explorer using the one from previous version, version 5.5.
But we have a IE 6.0! We need to use separate DLLs for IE and Explorer shell. So let's begin:
1. Obtain Internet Explorer 5.5 in Your language, CABs version, not a downloader which doesn't work. Using WinRAR, WinZIP or any other archiver supporting CABs, extract...

... Read More

Two ways to work remotely on Linux

2016-09-08 00:26:03,  In: Linux, Hack

At work, I have my Linux laptop and Linux workstation. Usually both are running. Sometimes I want to work on my small (12.1-inch) notebook using a nice Full-HD display and full-sized keyboard of my Workstation. Because both of these computers are in the same LAN and "see" each other IP addresses, I can use different open source solutions to connect them for remote control. Typical and well tested one is VNC (Virtual Network Computing) while older and not commonly used is X forwarding, popular in scientific software in 1980s and early 1990s (later replaced by proprietary client solutions). For some time I was working with VNC, now I switched to X forwarding. Here I'll show these solutions, their positive things and problems with them. All tests have been performed on Linux, a 64-bit Debian Jessie with TDE window manager (if you don't know, it's an older KDE). However, a test has been made to show that, contrary to common myth, it is possible to connect by X-forwarding using Windows...

... Read More

Using dead multimedia keys in Linux.

2016-08-20 20:46:22,  In: Linux, Keyboard, Hack

For years I was using a KeyMaestro keyboard connected to PS/2 port. This keyboard is a normal AT keyboard with a set of multimedia/Internet keys. When I switched to Linux, I decided to still stick with it as most multimedia keys were working OK.
But not all the keys. Let's try to make them all running.
First, you should know how the keyboard is used in Linux. The user presses a key, then the keyboard emits the code. Driver in Linux kernel emits the SCANCODE, and Linux program responsible for keyboard mapping maps it to KEYCODE. The keycode may be then used by the system (to be translated to letter as keysym, but we don't go up this level). This way many different keyboards for different platforms may be used by only altering the scancode-to-keycode translation method.
To make key do things we want, we must get its keycode. The most simple method is to use xev and, after seeing the window, pressing the keys. In the console, you will...

... Read More

Making a professional-looking stickers

2016-08-01 16:43:38,  In: Hack, DIY

Again I got an old computer with a sticker missing. This is quite frequent, especially in machines which were used in schools - everyone wanted to have a piece of computer and stickers were stolen in the beginning. If the sticker was molded using non-flat form, then there is a problem as they are not easily made at home (but still possible using e.g. silicone forms and polymer resins). But if the problem is a flat sticker, it can be made very simple way. You need:

1. 1:1 scale print-out of the sticker.
2. Transparent sticky tape
3. Two-sided sticky tape. Do not use foam tapes, use flat ones. You can find it in home improvement stores as tape for fixing carpets or doormats.
So first of all, print the sticker proper way. Use a good vector graphics program like Inkscape to make your sticker, as it allows to get the true scale of the image, lossless rescaling of vector graphics and its CMYK has black. If you put a black-background bitmap on black-background vector, you will get two black colors: From...

... Read More

Mountable, compressed full disk backup in Linux

2016-07-20 14:50:16,  In: Linux, Hack

The biggest problem with compressed full-disk backups in Linux is "all or nothing" philosophy. If you make an image by streaming dd's output to GZip, making a ".img.gz" file, you will end with file which needs decompression before any processing. Want to extract one file - decompress everything! And you need storage for it.
As a help, we can use SquashFS - a compressed file system used in embedded device systems. To start, let's boot the computer off you favourite distro not to run from disk under backup and mount the drive which will be backed up (in this example it's mounted in /mnt/custom).
Then let's fill the empty space up:
root@sysresccd /mnt/custom % dd if=/dev/zero of=/mnt/custom/rubbish.tmp bs=16384
According to your drive you can use smaller or larger block sizes (bs). When it finally ends, we will get a drive filled to the maximum. Remove the file we created:
root@sysresccd /mnt/custom % rm /mnt/custom/rubbish.tmp
This way, we've completely blanked a free...

... Read More

Older posts...       Main page       Newer posts...