29 Juli 2022

Debian 11, UEFI, and non-free wireless driver

 This is not trivial. I want to dual boot my Windows with Debian 11.

To solve the UEFI problem you must boot the installer in UEFI mode. You should see the UEFI information appears in the installer splash screen. If you boot the installer in ordinary/legacy mode, be prepare for the problems. The problem I encountered was unable to install grub. 

I boot the installer in UEFI mode from the option from windows, it run smoothly. Magically everything went fine.

Non-free wireless driver must be copied into a drive in a deb file. Plug the drive at the same time as the installer. I've never succeeded this step by hot plugging the drive during installation.

voila.

17 Juni 2020

Koleksi berita obat COVID-19

12 Mei 2022: Pandemi sepertinya telah berakhir, berikut arsip perkembangan pembuatan obatnya. Saat ini telah ada Paxlovid dan Molnupiravir sebagai obat yang diformulasikan untuk Covid-19.

Arsip:

Berikut ini list berita yg berkaitan dengan obat COVID-19, semoga meningkatkan optimisme kita untuk menghadapi virus corona. Para peneliti telah dan terus bekerja keras untuk menemukan obat yang tepat, hal ini bisa dilihat dari perkembangan yang cepat dari waktu dipublikasikannya hasil penelitian yang cuma berjangka waktu satu bulan.

Setelah satu tahun banyak obat yang diresepkan secara darurat atau bahkan dalam tahapan uji klinis untuk mengobati Covid, namun sampai saat ini obat Covid masih belum ada.


  1. Paxlovid
    • Produk Pfizer yang dikembangkan untuk covid
    • Mengandung nirmatrelvir dan ritonavir.
    • Nirmatrelvir untuk menghambat protein SARS-COV-2 sehingga tidak dapat melakukan replikasi
    • Ritonavir untuk menjaga nirmatrelvir agar tetap ada di dalam tubuh dalam konsentrasi tinggi
  2. Molnupiravir
    • Antivirus dari Merck yang dikembangkan khusus untuk corona virus
  3. Favipiravir
    • Antivirus; menghambat replikasi virus
    • Perawatan influenza dari Jepang
    • Merk: Avigan
    • Status: diresepkan di Indonesia
  4. Oseltamivir
    • Antivirus; menghambat replikasi virus
    • Perawatan influenza dari Jepang
    • Merk: Tamiflu
    • Status: diresepkan di Indonesia
  5. Remdesivir
    • Antivirus; menghambat replikasi virus
    • Perawatan hepatitis C dan hRSV (virus pada saluran pernafasan)
    • Merk: Covifor, Veklury
    • Status: diresepkan di Indonesia
  6. Tocilizumab
    • Immunosuppresant, Antibody monoclonal: mengatasi terjadinya cytokine storm
    • Perawatan rheumatoid arthritis
    • Merk: Actemra
    • Status: diresepkan di Indonesia
  7. IVIG/IGIV 
    • Antibody
    • Merk: Privigen, Gamaras
    • Status: diresepkan di Indonesia
  8. Methisoprinol
    • Antivirus
    • Obat Herpes
    • Status: diresepkan di Indonesia
  9. Lopinavir + Ritonavir
    • Antivirus
    • Obat HIV
    • Merk: Lopivia
    • Status: diresepkan di Indonesia
  10. Azythromicyn
    • Antibiotik
    • Status: diresepkan di Indonesia
  11. Ivermectin
    • Obat Cacing untuk binatang ternak
    • Status: diresepkan di Indonesia
  12. Dexamethasone
    • Status sudah terbukti dengan uji klinis pada pasien di inggris
    • Referensi https://www.bbc.com/news/health-53061281 (
  13. Obat pengencer darah
    • Cara kerja dengan membuat darah encer diharapkan bisa mencegah terjadinya penggumpalan darah yang menyebabkan stroke.
    • Referensi https://www.telegraph.co.uk/news/2020/05/16/blood-thinning-drugs-can-help-save-covid-19-patients-lives/  (Tom Morgan dan Edward Malnick, 16 Mei 2020)
  14. Colchicine (Recolfar)
    • Status: masih diuji di tikus.
    • Merupakan obat gout, asam urat.
    • Cara kerja dengan menghambat pengeluaran alpha defensin yang menyebabkan terjadinya penggumpalan darah (blood clot) yang dapat menyebabkan stroke.
    • Diklaim lebih tepat dibandingkan obat-obatan pengencer darah
    • Referensi https://www.jpost.com/health-science/hadassah-doctors-crack-the-cause-of-fatal-corona-blood-clots-631681 ( 16 Juni 2020)

30 Desember 2018

Interval arithmetic with mpfi

Interval arithmetic is a mature field in computer science that was conceived in the 50s or 60s. Mostly it was used to ensure the precision of floating point numbers, i.e. a floating point number's possible max and min value fall into certain precision. E.g. 3.13< pi< 3.15

Problem: having an f(x), we want to find the max and min of f(x) for x between x1 and x2.

I'm trying to solve this problem with mpfi library:
  • libmpfi-dev - multiple precision floating-point interval computation library
  • libmpfi0 - multiple precision floating-point interval computation library

Here is the code for f(x)=x^3 with x1=-4 and x2=3:
 
#include "stdio.h"
#include "mpfi.h"
#include "mpfi_io.h"

int main(int argc, char** argv) {
  mpfi_t x, fx;

  mpfi_init(x);
  mpfi_init(fx);
  mpfi_interv_si(x, -4, 3);

  //fx = x*x*x
  mpfi_mul(fx, x, x); //fx = x*x
  mpfi_mul(fx, fx, x); //fx = fx*x
  mpfi_out_str(stdout, 10, 2, fx); printf("\n");
  mpfi_clear(x);
  mpfi_clear(fx);
  return 0;
}
Compilation:
 $ gcc -lmpfi test.c
$ ./a.out
[-6.4e1,4.8e1]
The result is min f(x)= -64 and max f(x)= 48 for x1=-4 and x2=3

21 Januari 2018

Cheap Class D audio amplifier experiments

I have a nice vintage micro sound system. It can easily accept any audio signal from my gadgets, but it consumes around 60W of power. So lets try to make a smaller carbon footage :D. I tried class D amps to drive the speakers. I did two experiments:

1. 12 Volt amp
The setup was very simple. Audio outputs from a gadget went to amp line-in. But put a variable resistor as the volume control, between the gadget audio-out and the amp's line-in. It should be a stereo one. I tried with 12V unused power supply from old networking equipment, it worked. It also worked with a 9V power supply that usually comes with todays network router.
It worked fine with phone, but there was severe hums and buzz with laptop headphone port. I suspected the problem was the connector. I used a 4-ports audio connector that usually comes with a smart phone; 2 ports for L/R channel, 1 port for microphone and the last port for the ground.
Apparently the audio port on computer didn't connect the ground correctly. The ground connector might be connected into the microphone port, thus leaved the ground unconnected. Therefore it sounded terrible,
the audio signal was very small compared to the noise. The solution was simple, just shorted the microphone port to the ground port.
However before I tried the solution, the amp was already damaged. So then I tried with the second experiment.

2. 5 Volt amp
Still same setup as the previous one, but the power supply is given from USB. Nice, no need a dedicated power supply and USB is ubquitous. I use my laptop USB to power the amp.

Observations:
It sounds rather vintage, closer to crispy sound of tube lamp amp, than deep sub wooferish sound of modern audio system. So? There is a simple rule for a good audio system, it should reproduce sound as closer as the original, a sub woofer definitely distort the original sound, thus I guess I can consider my D class amp setup sounds good.

30 Juli 2017

HP printer driver in linux vs windows

I had problem with my HP deskjet 1000 on linux. As usual the cartridge was injected. I tried to print something but there was no response, neither error message nor mechanical movement. Then I switched into windows XP to see if there was anything wrong with my linux configuration. Voila, the driver gave an error message, the cartridge was not configured for this printer. Fine, a message at least, don't know whether it is correct or not. update: It turns out that the message was correct, the printer works perfectly after I change the cartridge!
Conclusion: HP still gives windows better driver, even an old OS such as XP.

28 Februari 2017

incorrect acrobat reader font in linux

If your acroread doesn't render some fonts correctly try to install this package:
ttf-mscorefonts-installer
During its installation it will download and install the fonts necessary to render the pdf correctly.

08 Desember 2015

command abbreviation in gnuplot

Basically it can be anything, as long as not conflicting with others, for example:
  • filledcurves; filledcu
  • transparent; trans trasp transpa
  • using; u
  • title; t, ti
  • solid; sol, soli
  • closed; clo, clos
Funny eh?

20 Juni 2015

writing

Somehow I feel my idea and imagination limited by my optimism. They plummet once a pessimistic thought strikes my mind. Probably it's a sign that basically my writing is about hopes and dreams.

etika diseminasi hasil penelitian

Seringkali kita mendengar adanya penemuan-penemuan peneliti maupun akademisi di media. Namun ketika digali lebih lanjut kita akan kesulitan mendapatkan informasinya.
Mengapa?

Pada dasarnya kerahasiaan disebabkan karena pertama produknya jelek sehingga malu/takut ketahuan atau kedua produknya benar-benar bagus sehingga takut ditiru. Kita berprasangka baik bahwa yang terjadi bukanlah yang pertama.

Alasan yang sering muncul adalah  kerahasiaan, hak cipta, dan paten. Namun jika penelitian mereka dibiayai negara, bukankah hasilnya milik negara pula? Sehingga diseminasi hasil-hasilnya kepada masyarakat adalah wajib.

alternative

That day I never thought that this can be something real. Not even close.

Once in a lunch after a conference, we had a small talk about the political situacion. They have no other choice, either left or right.

People considered the movement as an antisystem. "why don't they just joint a party?" someone critisized when the movement disperse into a neighbourhood assembly. Join? Voila! Now they are themselves a party, the third greatest in the Spain and even almost win in some important province capitals for example Madrid and Barcelona. In other case at least it forces bigger parties to form a coalition.

The latest development of this political coalition still puts the candidates of this movement as rulers in several most important cities in Spain.

19 Januari 2015

network interface booting sequence

Network technologies have advanced a lot. Cross UTP cable is just so ancient. I just knew that cross cable is not necessary to connect two computers via UTP cable directly. Plug it, set the network, and voila done.

However when there is a service that bind to the network address, a chaos occurs. Since the cable only powered when both the computer up, to establish client server set up, we must turn the client first and then the server. Thus when the service in the server up, it detects that network is already up, and set up the networking accordingly. My experience with the setup was with postgresql. When the server up, but without internet connection, the service will be up without support to the inactive network interface. Only after the connection is up and the postgresql is restarted, the service is correctly set up.

This problem can be easily tackled by adding a network device such as a hub. However turning on the client first will also do.

That is if we work with LAN, what about WLAN? To be frankly, I have no idea. WLAN controllers software often work in GUI level. Yes, you can definitely set it up on lower level. Meanwhile services usually boot first, so it must be trickier to arrange the sequence. I think it must be easier to plug a LAN cable to an infrastructure, and let the clients connect there :).

15 Mei 2014

useeTV telkom di linux

Jika anda menemui masalah waktu streaming useeTV dari telkom speedy di linux, solusinya mungkin install saja vlc plugin. Di debian:
mozilla-plugin-vlc - multimedia plugin for web browsers based on VLC

Canon SLR bad build quality

Ok, I  am really dissappointed with Canon SLR build quality, particularly regarding its anticipation against humidity and fungus. Yes I admit that I probably was clumsy,  putting the equipment in inappropriate place.

The problem is that the fungus appears below the the UV-IR filter instead of upon it. So you have to dissamble the entire camera to clean it up!

Let me simply explain where the UV-IR filter..
so if you remove the lens and lock the mirror up, you should see the 'sensor', actually it is the UV-IR filter. It's a kind of sensor compartment where the UV-IR filter is the outmost layer. Beneath it there is empty space, bayer filter and then finally the sensor.


Yup the fungus is under that UV-IR filter, between UV-IR filter and bayer filter. Why didn't Canon seal this sensor compartment so it is air-tight and there's no chance a single spore infiltrates inside? Why Canon, why?

Conclusion: in a humid region Canon SLR is apparently not an option.

29 Maret 2014

Problems with browser client side ssl certificate in Linux

I tried to configure client side ssl certificate in debian squeeze using firefox and chrome (iceweasel as well). It was painful, did not work out.

Finally I tried Opera, voila.... it worked. Viva Opera!!!

However somehow I got problem when downloading Opera Browser from it front page, thankfully "tar.gz" keyword pointed me to opera repository :D.

17 September 2013

setting group in linux for printer administration

Finally I need to learn this matter when I encounter the problem of giving right to ordinary user to touch the printing system administration, namely lpadmin. So here are important commands:
Shows available groups:
$ groups 

Shows groups where a username belong to:
$ id username 

Adds a user into a certain (secondary) group:
$ usermod -a -G group user 
warning: DO NOT forget the -a option. Putting only -G will delete other previously defined groups of the user, and overridden only with the new one. About the primary group check this link about the problem of primary group in debian.

Here is the complete commands with username latihan:
$ id latihan
uid=1001(latihan) gid=1001(latihan) groups=1001(latihan)

$ sudo usermod -a -G lpadmin latihan
$ id latihan
uid=1001(latihan) gid=1001(latihan) groups=1001(latihan),107(lpadmin)
Now user latihan can run lprm to delete print spools.

26 Agustus 2013

laptop processor fan error solved

Followed up the first failed attempt to disassembling my laptop, finally I could fix the fan error. My friend actually did it :D, just by spraying high pressure lubricant into the fan motor. I also renewed the thermal paste that was totally dried.

At a slight sight my friend was able to determine the problem. He turned the fan, but it didn't spin continuously, only 1 rotation and stop. After the lubricant was sprayed, it spin longer up to several rotation. Incredible skill. Good bye noise!

error in primary group changing of debian

There is terrible problem with primary group changing in debian. When I unleashed this code
sudo usermod -g primgroup user
the shell doesn't respond. It looks like that it hangs. But when I tried on other shell, it says that it change nothing (so apparently the first command [the hang one worked]). Still it is a mistery! Furthermore when I tried to create a file, and check it using
 ls -l 
it still gave me the old primary group. Amazingly after I restart my computer, tadaaa, everything set up as expected. So? I don't know

03 Mei 2013

linux sound error in CF-T8

It is common that linux(particularly debian) on panasonic toughbook series have sound problems; either no sound from the internal speaker, internal speaker stays on despite the headphone is plugged, no sound at all or any combination of them.

A simple solution is given in agentoss.wordpress.com. Just comment out everything in /etc/modprobe.d/alsa-base.conf. Then put this configuration there:
options snd-hda-intel model=thinkpad

13 Maret 2013

linux kernel kompilation

again? yeah sadly!
  • 0. Source Preparation
    If you just downloaded the latest kernel, just go to no. 1. In case you already have previous kernel source, you should download just the patch, instead of downloading the whole new kernel. How to apply patch? its in the kernel Documentation/applying-patches.txt
    summary:
    in version 3 kernel, linux patch from 3.x.y is relative to 3.x
    but the patch of 3.x1 is relative to 3.x0
    illustration:
    linux-3.8.2/ is created from linux-3.7.9, so you have to go back to 3.7
    from 3.7.9 apply reverse patch you get 3.7
    apply patch (forward) from 3.7 to 3.8
    apply patch (forward) from 3.8 to 3.8.2
    voila!
    note: What if my kerne source is 3.0.1? just go back to 3.0 then repeatedly patch forward 3.1, 3.2, ..., until 3.8, then apply 3.8 to 3.8.2
    in short:
    $ cd kernel-source-directory
    for reverse patch (-R option)
    $ patch -R -p1 < ../patch-x.y.z
    for (forward) patch
    $ patch -p1 < ../patch-x.y.z

    Now you can configure your kernel.
    small note on .config file, keep it back up, every time runs make menuconfig.
  • 1. In Debian
    If you want to be cool even though in debian, go to no. 2.
    Debian has a very nice tool to compile kernel.
    http://www.debian.org/releases/stable/i386/ch08s06.html.en
    $ make menuconfig
    $ make-kpkg clean
    $ fakeroot make-kpkg --initrd --revision=custom.1.0 kernel_image
    you might want the header as well
    $ fakeroot make-kpkg --initrd --revision=custom.1.0 kernel_header
    ok you've got a deb package, just run dpkg -i  on it.
    nice and easy but it takes time for compilation somehow, because it doesn't compile incrementally, clean up everything every time make-kpkg runs. If you want the incremental compilation check the traditional way, no. 2.
  • 2. Traditional
    http://kernelnewbies.org/FAQ/KernelCompilation
    in short:
    compile everything
    $ make

    install modules, it will create the kernel directory /lib/modules/x.y.z and fill it with the kernel modules. Basically this is the kernel modules that you marked as [M] on kernel config.
    # make modules_install

    install the kernel into /boot, yep the kernel is just one file vmlinuz.x.y.z. It will not touch your /lib/modules directory.
    # make install
    not mandatory but preferable to create the initrd image, option -c for creating new, and -k for kernel version
    # update-initramfs -c -k x.y.z

    update your boot menu, I only know for _debian_
    run this anywhere, then copy  the grub.cfg into /boot/grub/
    # grub-mkconfig -o grub.cfg

voila, it's done,  just reboot!