Pages

Showing posts with label computers. Show all posts
Showing posts with label computers. Show all posts

06 April 2026

Plan B

 Being a member of The A-Team myself I love it when a plan comes together. But I am also aware of how important it is to always have a plan B or two (what some people call a plan C).

And I firmly believe this is even more true in the digital world. Yes, it is important to have a backup of your data, but that alone does not solve all your problems.

If you are using other people's software (especially commercial software) you have to use the software in the way that other people expects you to use it, otherwise, things might not work properly.

Experience in life teaches you to be prepared when the software does not do what you want it to do but it does what the designers want it to do instead.

So in respect to the websites I am working on, I usually have my plans B and C at hand so that I can say oh yeah I love it when my plans comes together :) 

 

 

12 March 2026

copyleft

 [This is a crosspost from my phlog post (gopher blog) from Saturday Mar  7  9:30:28 2026]


If you've ever visited my website 'chalsattack.com' you might have

noticed that I have a copyright sign on it. Make no mistake, I am more

the kind of copyleft guy than any other thing you can think of. But I

think I need to explain you one thing first.


In the first place, I put the copyright symbol several years ago only

because I thougt it was super cool having it on a website. I never

gave it any more importance.


Now that I am moving to a different hosting plan (same hoster,

different plan) I revised the text and thought that the copyright

should go away and enter the copyleft one. But much to my surprise I

learnt that copyleft is a mirroed copyright sign and well, I copied

and pasted the code I found on the internet but the sign refused to be

properly displayed.


Too bad. I will try again, no doubt, and I will eventually manage to

display it. I am too stubborn to give up. But I think the copyleft

symbol should have a better/easier way to be displayed.


UPDATE:


(Adding a copyright sign is as easy as typing "©" I just found

out there is "🄯" for copyleft. Let me try...)


What the heck! It works! I am a bit happier now


UPDATE 2:

"🄯" works too in html. "🄯" is hex. "U+1F12F" is unicode

07 March 2026

I think I got it right this time with my raspi

 Like I said in a previous post I upgraded my raspi model 4 to trixie (Raspberry Pi OS) successfully some weeks ago. It works fine, the only problem I had back then was configuring the network with a static ip (it is a usual thing). 

 Again, like I already said it pisses me off that I have to re-image the sd card to full-upgrade it. So I thought I should try to install "pure" debian instead of Rasberry Pi os and try to upgrade it by simply running apt full-upgrade (or dist-upgrade). So I did.

 I installed bookworm and then upgraded to trixie. It was fantastic and super fast. So I think that from now on it is going to be a blast updating and upgrading my raspi.

But only time will tell. The fist problem I had after the upgrade (it was configured to connect with inet) was again setting a static ip. What the hell! What is going on with that freaking raspi firmware? I finally could configure it properly and well, here I am writing this post.

 I have not installed a lot of software on it so far. I installed gpm, mc, byobu and weechat. I also installed network-manager because I imagined it would be easier to set the ip with it, but no luck. I removed it and continued with inet. 

 I don't know why it should be that hard, inet's config file is pretty simple in itself. 

From:

iface eth0 inet dhcp

To:

iface eth0 inet static

heck! 

 

 

04 December 2025

The geekiest thing

Configuring my wifi extender is probably the geekiest thing I did in 2025 by far. It is sad but true :-(

22 November 2025

Raspberry Pi OS 2025

This week I upgraded my raspberry pi os to trixie. And this time it is 64 bits. I had 32 bits before.

 It sucks having to re-image the whole thing again and again. But being a toy, it is not that bad.

And again, as usual, I had trouble configuring its DNS. I had to connect a monitor to be able to use NetwokManager, even though it uses a terminal interfece nmtui. 

I have to say that rpi-imager worked pretty well.

Nevermind, now it is up and running fine. I only have to tweak some things here and somethings there and enjoy my renewed toy whose hostname is kiwi by the way.

11 August 2025

18 February 2025

Twenty years exclusively using GNU/linux

 WOW, let me hear that again: WOW!!!

In short. I started dual-booting in 2004 and switched to linux full time in 2005. This means that I have been using GNU/linux for two decades!!!

The word "exclusively" is used for emphasis, since I have also been playing and using other operating systems. Mainly BSD and occasionally Solaris (or some sort of derivative). 

But somehow I always come back to debian, do not ask me why. Call it what you want, maybe because I am too used to it or who knows. Maybe it is just love at first sight (which is very likely)

Keep on rockin'

06 March 2024

xana and jean turned bookworms

 This week, apart from my daily chores, I upgraded two of my main laptops (hostnames: xana and jean) to bookworm (debian 12). Both used to run bullseye and I must say that the upgrade was pretty neat.

Be warned that before running apt full-upgrade I read their "official" guide that I found here because I had some bad experiences in the past trying to upgrade without removing other software that I had installed from different repositories. This time I did it right and the results were excellent.

xana took a little longer because I have many many packages installed (around 1800) it is an older laptop and you know, in time systems tend to get bloated. It took more or less one hour. I have to do some serious cleaning.

jean has around 1000 packages. It took more or less half an hour. 

I am really happy that both upgrades went so well. I only had to make one simple modification on xana after the upgrade. I use st (simple terminal or stterm) on both laptops but I had compiled it from source to include some modifications. These modifications were lost after the upgrade.

Now I use the default package as provided by the debian distribution. But I had to add some options to the command: 

st -f "Liberation Mono:size=12"

From now on lets see what good things bookworm has to bring.

03 March 2024

Axyl, an OS with i3 by default

Last night I discovered Axyl. An operating system based on ARCH linux and focused on window managers. 

It works well with i3, bspwm, dwm, XMonad, Spectrwm and others, but the default one is i3.

I must say that I only tried it live. But it runs fast and it is pretty cool. I have not installed it because I am too lazy to learn ARCH. I tried ARCH once but only for a little while.

Their official website is https://axyl-os.github.io

As a curiosity. It was developed in Republic of the Philippines. But I do not know anything else about it apart from what I read on Wikipedia.


21 January 2022

pharc v.7.0 released


 I am proud to announce that today I released pharc v.7.0. It only includes some minor changes as you can read in the changelog:

* pharc v.7.0

* Updating permissions for gophernicus.

The thing is, when we had bucktooth as gopher server, it was ok to have permissions 750 for directories and 640 for files. This is not the case anymore with gophernicus. It needs 755 and 644 permissions.

 This is not a great deal, it was pretty easy to run these lines I found on sdf's gopher tutorial:

 

$ find ~/gopher/ -type f -print0 | xargs -0 chmod 644
$ find ~/gopher/ -type d -print0 | xargs -0 chmod 755
 

But it had to be done manually and after that you had to chmod +x your 
moles again to work. 
Like I said, this was not a huge problem but I had to do something about it. 
So now the problem seems to be fixed for good.
 
One more important change is that since I had to update the wiki for version 7. 
I added the wiki to the gopherhole. So from now on you can find both resources 
(the source code and the wiki) on the web and on gopherspace.
 
On the web:
https://gitlab.com/pharc
https://gitlab.com/pharc/pharc/-/wikis/home
 
On gopherspace:
 gopher://sdfeu.org:70/1/users/chals/downloads/software
gopher://sdfeu.org:70/0/users/chals/wiki 
 

02 April 2020

cpulimit YAIT (Yet Another Impressive Tool)

One of the truly impressive tools I discovered this week is cpulimit. It allows you to limit how much cpu percentage a process can use. It is specially indicated when running cpu intensive applications. In my case it is 'ffmpeg'.                                                                                                     
                                                                                                                                       
I use 'ffmpeg' on a daily basis to convert my .avi videos to .mp4. I often run the script at night with cron.daily but the problem arises when I need to run it during the day. Here comes cpulimit to the rescue:

 $ cpulimit -e ffmpeg -l 800 -b

Here is a quick explanation:
 -e ffmpeg (the process to limit)
 -l 800 (I have 16 cores: 800 = 50%)
 -b Run cpulimit in the background to free the terminal

Really impressive (and handy).

06 May 2019

New lappy

Birthday present to self :P
Codename: jean
OS: buster




26 June 2018

Screenshot of the week 14

It seems we all have to use ssl in our websites from now on, therefore, I have updated chalsattack.com and blog.chalsattack.com to use https.

At the same time I had to tweak the html code a little bit as well as the the css of the site. It is not a big change, but I love how it looks like in elinks.

Note: The window manager is i3

Enjoy the screenshot of the week :)


28 July 2017

Dillo: like a bat out of hell

I love text browsers. My favourite ones are lynx and elinks.
I love graphical browsers. My favourite ones are chromium and firefox.
I love browsers that somehow are in the middle like w3m-img or links2.

This is to say that I spend a lot of time surfing the web in different ways depending on what I need to achieve or the hardware I am using at the moment. It is not the same being connected to a powerful remote server or connected using an eeepc of 512mb of ram.

So instead of saying that I love them, it would be more accurate to say that I make an extensive use of all kinds of web browsers.

Among the graphical browsers I used to like was midori, it allowed me to do almost anything I could do with chromium but it needed less resources which was fine. The problem I have always had with midori is that I have often have to face one or other bug. In my eeepc everytime I scrolled down it opened a new tab and switched to it (oh man so annoying).

But thank god I discovered dillo. It is an incredibly fast graphical web browser that works like a charm in all my machines, especially in my less powerful ones, like the eeepc or any other old laptop/desktop machines.

Dillo has a certain number of limitations, that is true. It does not interpret javascript and therefore you lose a bit of some sites functionality. But this is a trade-off I am willing to accept.

Dillo has a number of configuration files under ~/.dillo that once tweaked will make your life way better. This is a list of the files you need to have in there:

* dillorc This is the actual config file. You can set many options here like the homepage, the colours you like...

* domainrc Dillo cross-domain request rules file. In this file you can configure which sites are allowed to retrieve data from third party domains.

* bm.txt The bookmarks file. You can add any bookmarks from the browser using its graphical interface, however the syntax is very easy and it is quicker to add your bookmarks directly to this file. For example:

:s1: Super cool sites
s1 http://www.chalsattack.com chalsattack
s1 http://blog.chalsattack.com/ chals' blog


* cookiesrc How to handle cookies. The syntax is also plain easy.
DEFAULT DENY
chalsattack.com ACCEPT
blog.chalsattack.com ACCEPT_SESSION

Note: Accepting cookies will create an additional cookies.txt file in ~/.dillo

Once everything is in place prepare to surf at full speed, be careful, you might get a ticket for speeding ;)

Now you can visit most sites on the web, check your mail and do almost anything you can do with other browsers. But you will not be able to for example watch videos or visit sites that exclusively depend on javascript.

Conclusion: The chalsattack.com version which was active from 2015 and 2016 made an extensive use of javascript, since I couldn't visit it with dillo, I re-wrote the site from scratch as you can read here

Next installment: a screenshot of dillo in action.

28 May 2017

raspi 3.5 inch touch screen

I got a 3.5 inch touch screen for my raspi. Loading the driver is pretty straightforward if you use raspbian:

git clone https://github.com/goodtft/LCD-show.git
chmod -R 755 LCD-show
cd LCD-show/
sudo ./LCD35-show

Awesome!!!


07 January 2017

raspi 3 and usb hard drive

Using a 16GB sd card for a basic cli raspbian system (no desktop environment whatsoever) is more than enough. However, it is very limited to really enjoy the awesome minidlna software I installed. So I ended up attaching a 1TB usb hard drive to my raspi 3.

The first thing to notice is that the power supply works fine supporting both devices (raspi and hard drive).

The second thing is that I can now finally enjoy the UPnP service for hours and hours during these cold winter afternoons.


Note: I've been watching SG Atlantis all afternoon. What a great Saturday :)

26 November 2016

raspi 3

My raspi 2 suddenly stopped working for an $unknown_reason I only know it lost ssh connection all the time. So I decided to get a raspi 3.

It arrived on November 24th. You could have seen me broadcast on irc the steps from the moment I put my hands on it until I finally plugged it in:

Day changed to Thu, 24 Nov 2016                                                                                        
[...]                                                                                                                                            
10:03:06        @chals | My raspi3 kit just arrived yay                                                                
10:03:10        @chals | time to play                                                                                  
10:05:22        @chals | ok heat sinks in place                                                                        
10:11:49        @chals | board in case...                                                                              
10:13:53        @chals | case closed                                                                                    
10:14:01        @chals | it's show time

And here it is:

Its hostname is kiwi (legacy name from its predecesor)


(Note: Is is plugged to a 900va UPS so that it can actually work 24/7)

08 December 2015

gui vs cli

When I started using linux 10 years ago, I desperately needed graphical programs to configure the system and do most of my daily tasks, no matter how simple they were. Even though I had some basic experience typing commands at the terminal I felt clumsy when it came to surviving at the command line.

However, over the years and very little by little, I discovered that most cli programs are faster, more powerful and strikingly way easier to use than their gui counterparts.

I know this is easier said than done, but in order to prove that, I needed to make an exhaustive list of all the programs I use at the gui and their cli counterparts. Let me insist that this list is exclusively a list of software I use on a daily basis. It is far from being exhaustive in terms of covering all the software I install on my computers.

The first two examples that come to mind are synaptic and d4x. At first I always used synaptic to manage software and d4x to download files. After some time I started using aptitude and wget. I never looked back.

Then the music player. I started using cmus and I never installed rhythmbox again.

As torrent client I used several gui programs. Now I exclusively use rtorrent.

Of course the usual and most basic applications you use on a daily basis are your file manager and your text editor. On the gui I use pcmanfm and medit but on the cli I use the mc and nano.

On a daily basis you also need a window manager. I use i3 on the gui and very rarely dvtm on the cli, I tend to use tmux as a window manager instead of a proper window manager.

Perhaps the toughest program to get rid of is the web browser, we are so used to graphical browsers that it is sometimes hard to browse the web in a text only browser. I mostly use chromium on the gui and a wide variety of text browsers like elinks, which has tab support (with vp for images), lynx and lately, I have started using w3m more and more for its ability to display images inline.

I also ditched gitk in favour of tig, because it is more handy.

There is also a number of applications that I do not use on a daily basis, but almost always on the cli, such as scrot for my screenshots.

07 October 2015

torrents galore

This very week I switched to a new ISP. Having a connection of your own for the first time in your life makes a huge difference in terms of how you handle your own ports to play nicely with your software.

One of the things that I had always wanted to do was installing a torrent client which could run unattended. I have a lot of experience with mldonkey, which is a client for several networks, bittorrent among them. However, I was looking for a lighter client for my raspberry pi. I tried several clients: rtorrent, ctorrent, and I finally settled for transmission, or more accurately transmission-cli.

Many, or most clients, have both a GUI and a CLI, some of them have a web interface which is great for managing your downloads from a remote location. But I somehow prefer logging into the machine using ssh, opening a multiplexer instance (usually screen) and fire up the bittorrent client. This is damn simple for all of us who spend most of our free time logged into remote machines, for work or play.

Using transmission-cli is easy peasy:

 $ transmission cli *.torrent

Awesome!!!

Update 11-10-2015: A friend of mine suggested trying transmission-daemon and its web interface. I did. It is great,  even though it needs a little tweaking since it uses a different user by default (debian-transmission) and you have to give that user write permissions to the directory you want to store your files.

Update 24-11-2015:  Even though I use transmission-daemon and transmission-cli on my raspi. I exclusively use rtorrent in my laptops and servers. rtorrent is a really powerful and handy bittorrent client.

03 September 2015

dotfiles

I have tried several methods of storing and making my dotfiles portable across different machines. There are dozens of excellent programs out there but somehow, I didn't really like any of them. Until my friend demure told me about GNU Stow.

Note: In debian, besides stow, there is a package called xstow which stands for (extended stow). They both work in a similar way.

GNU Stow is not meant to manage your dot files. The typical area of action of stow would be /usr/local  Its main usage is creating links to files in differnet parts of your filesystem so that you can try different versions of the same program (or at least this is what I understood from reading this article: Using GNU Stow to manage your dotfiles). 

And reading that article is precisely how I learnt to use it to create symbolic links to all my dot files while they are perfectly stored in my home in a directory named dotfiles.

The main reason why I like it so much is because Stow does something similar to what I used to do manually. The fact of finding a program that does all the hard work for you automatically is really great.

This is what I used to do before:

I had a dotfiles directory inside my Dropbox folder which synchronized across all my computers. Inside that dotfiles directory I had several files, but I'm going to use the typical .bashrc as an example.

In all my machines I made a symbolic link in my home directory named .bashrc to Dropbox/dotfiles/.bashrc This way all my computers read the same file as if the file was a real one. Make no mistake, the file did exist, but it was only a link after all.

In order to achieve this I had to type:

 $ ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

Whenever I made a new installation, I had to do the same for each of my dot files inside my dotfiles directory.

I do not know if you can imagine it, but my dotfiles directory was a little bit chaotic because there are many dot files that have their own dot folder so there were files with a dot, folders with a dot and files inside the dot folders.

What GNU Stow does for you:

With Stow you can keep all your dot files perfectly organized inside their own directory as long as they are inside ~/dotfiles And stow will make a symbolic link to all the right places where the files should go.

For example. You would place your .bashrc inside a directory named bash inside your dotfiles directory. Then you would only have to change to your dotfiles directory and type:

 $ cd ~/dotfiles
 $ stow bash

And be done with it. Isn't this an extraordinary thing?

Note: keep in mind that in debian you can also use xstow instead. It works exactly the same. Thus:

 $ cd ~/dotfiles
 $ xstow bash

Now comes the best part of all. So far my examples have only taken a single file (.bashrc) into account. But sure your dotfiles directory is full of both dot files and dot folders. If you had to go one by one it would be as hard as making the links manually. Well, with stow you can use wildcards to make your life easier.

For example, if you have in your dotfiles directory the following directories:

bash i3 cmus filezilla elinks mr nano gitconfig tmux mc ssh screen supertux

In order to create symbolic links to them all at the same time you can do:

 $ cd ~/dotfiles
 $ stow *

And be happy :)

One important consideration is that in each directory inside your dotfiles directory, you have to keep the skeleton structure of your dotfiles.So that stow knows where to place them. I recommend you take a look at the article I linked to above in order to understand it better.

Another important consideration is that I created a private git repository to use a version control system to keep track of changes to my files.