When everything seems to be going against you, remember that the airplane takes off against the wind, not with it.
Henry Ford (via quotemadness)
TVSTRANGERTHINGS
Monterey Bay Aquarium
taylor price
Claire Keane
One Nice Bug Per Day
Peter Solarz

Product Placement

Origami Around
Aqua Utopia|海の底で記憶を紡ぐ
Cosmic Funnies
$LAYYYTER

❣ Chile in a Photography ❣
Game of Thrones Daily
let's talk about Bridgerton tea, my ask is open

shark vs the universe

祝日 / Permanent Vacation

#extradirty
Three Goblin Art

roma★
Stranger Things

seen from Malaysia

seen from Germany
seen from Malaysia
seen from United States
seen from United States

seen from Malaysia
seen from Canada
seen from Brazil
seen from United States

seen from United States

seen from Brazil
seen from United States

seen from Malaysia
seen from Germany

seen from Germany

seen from Malaysia

seen from T1

seen from United States
seen from United States

seen from United States
@adimahajan
When everything seems to be going against you, remember that the airplane takes off against the wind, not with it.
Henry Ford (via quotemadness)
Stop and Relax
The tree of research must be fed from time to time with the blood of bean-counters, for it is its natural manure.
Alan Kay
Automatic backups using rsnapshots
More than once I have hit myself on the foot by running
git --init
on an existing git repository and loosing my local changes. So, it was about time that I started using a backup system. I tried rsnapshot and it works like a charm. I am currently using the default configuration and syncing everything on my local machine (not a good idea for backup). Check out the rsnapshot page for more details
There are some ideas so wrong that only a very intelligent person could believe in them
-- George Orwell
cp with a progress meter
Sometimes while copying big files, I'd like to know how much longer the copy will take. Rsync to the rescue:
rsync --progress source destination
Recovering from messed up Arch Linux update
Yesterday, I did something dumb. Really dumb. Arch Linux made a fundamental change in the file system, so manual intervention was needed during update. No big deal. I had followed such instruction multiple times. The instructions said:
# pacman -Syu --ignore filesystem,bash # pacman -S bash # pacman -Su
Now, unlike 90% of humanity, I don't use bash; rather I use zsh as my shell. As an idiot, I thought that the --ignore bash line corresponded to the shell. So, instead of following the instructions as I should have, I did something stupid. I changed bash to zsh:
# pacman -Syu --ignore filesystem,zsh # pacman -S zsh # pacman -Su
After the upgrade, I rebooted and was greeted by the following prompt:
grub>
Brilliant. After a bit of fiddling around with the grub commands, I figured that this was because I still used grub-legacy instead of grub. So, the update had overwritten my /boot/grub/menu.lst file as /boot/grub/menu.lst.pacsave. After reading the help for all available commands, I found out that I could simply use
grub> configfile /grub/menu.lst.pacsave
to boot. Not so fast. Once I tried this, I got an error message that the hard disk could not be found and I was dumped to a recovery terminal. After googling around for a day, I finally figured out the right solution:
Boot using a recovery CD/USB
Chroot into your existing installation:
mount /dev/sda3 /mnt mkdir /mnt/boot mount /dev/sda1 /mnt/boot mount -t proc /proc /mnt/proc mount -t sysfs /sys /mnt/sys mount -o bind /dev /mnt/dev mount -o bind /dev/pts /mnt/dev/pts chroot /mnt bash
Recreate the linux image:
mkinitcpio -p linux
Rename menu.lst.pacsave to menu.lst
mv /boot/grub/menu.lst.pacsave /boot/grub/menu.lst
Et Voilá, a working distro again!
Upgraded ArchLinux to systemd, RIP rc.conf
Phew, I had been postponing upgrading to systemd for a while. Finally upgraded. Took most part of the day, and figure out how the boot-loader works, the raw commands to set up a static ip, and how to set up the default nameserver. I wish the install procedure was simpler.
Systemd might be more efficient than initscripts, but I am not convinced that it is easier to manage. I am going to miss the simplicity of rc.conf. That simplicity was what attracted me to Arch Linux in the first place. I'll see how easy it is to manage the system with systemd, else I'll be distro-hunting again.
Change to old directories
Well, we all know that you can use
cd -
but did you know that in ZSH you can use
cd -3
to change to the third last directory! Of course, if you press a tab after
cd -<TAB>
ZSH will display a list of previous 15 directories.
It is impossible to list all the problems with this approach in a book that's only around 1000 pages long ...
-- Steve McConnell in Code Complete (chapter 23)
Using msmtp with cron
I wanted to use msmtp as a sendmail alternative with cron. First I tried to set
CRONARGS=-m/usr/bin/msmtp
in /etc/conf.d/crond but it did not work. The cron.logfile said
(CRON) INFO (Syslog will be used instead of sendmail.): No such file or directory
I did not know which file or directory it was searching! Even manually starting cron with the -m option gave the same error message. So, out of desperation, I symlinked /usr/bin/msmtp to /usr/bin/sendmail (and set CROMARGS= in /etc/conf.d/crond) but even that did not work. Finally, after a bit of Google kata, I realized that the cron looks for sendmail at /usr/sbin/sendmail. One more symlink later, cron is sending me emails.
ZSH: Go to a parallel directory
ZSH allows you to switch to a parallel directory by substituting any part of the current working directory with something else. For example, consider the following directory structure:
mkdir -p {first,second}/common cd first/common
At this stage, you can do
cd first second
to jump to second/common directory. Sweet!
Diff directories
I wanted to diff two directories to see what files are different between the two. Out of curiosity, I ran
diff -r dir1 dir2
and to my amazement, this worked perfectly. That was easy!
Running X11 applications after su
Often I log in as one user, then do
su otheruser
However, getting X11 applications to work after that is a pain. There are various solutions floating around the Internet, messing with .Xauthority file, and what not. The simplest solution is to just log in using
sux otheruser
and voilla, X11 forwarding works automatically!
I would have written a shorter letter, but I did not have the time
Blaise Pascal