draft0 - a shared blog by just some people

Menu

All Entries (Page 32)

moviefy.sh - Make Bash Output like It's The 80s And We're In Hollywood

Source this script in Bash to make unformatted output of commands appear on screen slowly, accompanied by beeping galore.

source moviefy.sh or . moviefy.sh. Every command executed after that will be moviefied. There is no way to turn it off again. (Just exit.) Please note that formatted output may be mangled or it may crash the script. Curses stuff won't work.

#!/bin/bash

export LC_ALL=C
exec > >\
(while IFS= read -d '' -r line; do
  if [[ -n $line ]]; then
    echo
    for (( i=0; i<${#line}; i++ )); do
      char="${line:$i:1}"
      printf '%c' "$char"
      case $char in
        [" "]) sleep 0.04
               ;;
        [$'\t']) sleep 0.08
                 ;;
        [$'\v']) sleep 0.7
                 ;;
        [$'\n'$'\r'$'\f']) sleep 0.25
                           ;;
        *) beep -f $(shuf -i 3000-3200 -n 1) -l 5
           sleep 0.015
           ;;
      esac
    done
    printf "${PS1@P}"
    printf ""
  fi
done)
PROMPT_COMMAND='printf "\0"'
Comment via email

Fujitsu Cordant Pentium II Aluminium Case Mod

I always wanted an aluminium case. A friend gave me this Pentium II he finally decided to get rid of last year. Nice PC, but even nicer in black and with newer hardware in it.

I suck at spray painting and I need to get better paint next time. But if the light comes from the right angle it looks like I imagined it.

I replaced the key lock with a large screw, got rid of the drive cages, replaced the PSU and mainboard, added a graphics card with internally pluggable VGA, replaced the external VGA port with a serial port and added a small LCD panel where the drives used to be, connected internally to the unplugged VGA port. Oh, and green LED strips. I also added two 60 mm fans in the back. I didn't want to cut a whole in any of the other sides, so 60 mm was the largest possible size. Still better than none.

And yes, I actually have a use for a RS232 port.

The main reason I put in the LCD is because I can. I liked the idea ever since I saw a build with a two-line character LCD for status messages around 2004. But nowadays there is a lot more space on the front since optical drives and diskette drives have become rare. So why not make it a regular screen that can be addressed by the OS without much custom code? The idea is to have it display CPU load, temps, notifications and stuff. But I may end up using it mainly for art, animations. I'm not sure, yet.

File Attachments (34 files)

Comment via email

Backup Shell Script

This entry is an update of the entry 'Automatic backups with rsync under Linux'.
There is a newer version of this entry: 'backup.sh'.

This is an outdated version of my backup script. I've posted a newer version here.


Here is an updated, more versatile version of the simple backup script I posted before. It takes arguments now (wow)! So now you need only one backup.sh and in your cron tab or similar you can pass it the directory you would like to back up.

For example backup.sh /home/user UsersHomeDir will back up the home directory of user to the predefined location.

In preperation you only need to mount the drive you would like to back up to and enter the mount point (or a path inside it) at the top of the script (variable $BUDIR). In this destination folder (which can be an external drive or a NAS) backups are organised in directories named by the host name of the machine the script was executed on and the name of the backup job (the second argument). By default it will keep 8 incremental backups per backup name. This can be changed with the variable $NUM.

If you give the script only one argument it will interpret it as a name of a file that contains the directories that you want to back up.

If you pass no argument to the script it will look for such a file in the location that is pre-defined at the top of the script (variable $LIST).

You can download the script here if you want to.

Comment via email

Automatic backups with rsync under Linux

There is a newer version of this entry: 'Backup Shell Script'.

This is a very primitive and bad script. I've posted a new version here.

"No backup no pity!"

I don't agree. But I like the saying for reasons that I shall not analyse here right now.

I don't always have proper backups of my data, let alone off-site backups. I have no backup at all of a large portion of my hoarded data. But I did at some point take the time to create scripts that back up important stuff automatically. Here is a simple one using rsync and a mounted share as a target.


#!/bin/bash

NAME="usershomedir"
SRCDIR="/home/user"
BUDIR="/mnt/backup/"

rm -rf $BUDIR$NAME.8
mv $BUDIR$NAME.7 $BUDIR$NAME.8
mv $BUDIR$NAME.6 $BUDIR$NAME.7
mv $BUDIR$NAME.5 $BUDIR$NAME.6
mv $BUDIR$NAME.4 $BUDIR$NAME.5
mv $BUDIR$NAME.3 $BUDIR$NAME.4
mv $BUDIR$NAME.2 $BUDIR$NAME.3
mv $BUDIR$NAME.1 $BUDIR$NAME.2
cp -al $BUDIR$NAME.0 $BUDIR$NAME.1
NOW=$(date)
echo >> $BUDIR$NAME.log
echo >> $BUDIR$NAME.log
echo >> $BUDIR$NAME.log
echo "##### STARTING INCREMENTAL BACKUP AT $NOW" >> $BUDIR$NAME.log
echo >> $BUDIR$NAME.log
rsync --archive -L --delete $SRCDIR  $BUDIR$NAME.0/ 2>&1 | tee -a $BUDIR$NAME.log

You would create one of these scripts per directory you want to backup. BUDIR is the directory where you want to backup to be stored. This will probably be the same for every script if you have only one backup drive/server. SRCDIR is the directory you want to backup. NAME is the name you want the backup to be stored under. It can be a sub-directory if you want, so you can sort the backups into directories on the target.

Comment via email

SBWG 0.5.12

Large leaps of progress are being made with SBWG. The feature set is growing satisfyingly rapid, some not so great ideas have been scrapped and as I'm learning more about Bash the code quality is also improving. I'm behind on writing a proper introduction, README and so on.

You can download version 0.6.17 here and I'll write something about it later.

See how large the leaps are? The version changed before I finished writing this entry.

Comment via email

Lucid Dreaming Links

  • Klartraum-Wiki
  • More links
  • BLucid - Der Klartraum-Podcast
  • Klartraumforum
  • LucidSage - Podcast
  • Schlafhacking-Blog (techniklastig)
  • Comment via email

    Binary Towel Day Calendar 2020

    This is a calendar I made for someone for an unknown use case.

    File Attachments (1 file)

    Comment via email

    LED Pictures

    An unremembered number of years ago I started wanting to make at least one picture like this. A picture engraved into a transparent polymer sheet, lit by LEDs from the side. The light gets scattered in the rough places of the sheet. If the LEDs are hidden, e.g. in a frame, this makes it look like the transparent picture itself is glowing. I liked the idea - probably seen it somewhere. And I knew I'm not good at making pictures - be it with paint or an engraving cutter. So I didn't do it. Usually this is the end with ideas like this of mine.

    I couldn't get rid of the idea for years though. And some day I made one. It didn't look good but I liked it. I made a few more and added more efford this time.

    I saw a potential to become better at this (and still do) so I made more and more. And about 7 years later I have made hundrets of them. Here are a few I like best:

    File Attachments (27 files)

    Comment via email
    Mastodon