DON’T sell your old laptops!

Ethan Roberts on 2022-05-29

Computers have endless capabilities. That’s why whenever a family member or friend gives me their old computers I get very excited. I always know I can use it for some awesome projects.

The projects I will show you are really interesting, and while some require a bit of work, they make very fun side projects.

I have an old laptop from about 2010, the Acer Aspire 5742Z-4685. Packed with an Intel Pentium P6100 it’s pretty much only useful for light web browsing. It also comes with 4gb of ram. At the time this was probably a pretty good budget laptop with decent performance.

Despite being so old, this thing has lasted a long time. It came into my possession as a gift (more as a “take my junky laptop please”). The screen was already broken and it wasn’t in the best condition. Though luckily for me the previous owner upgraded it to 8gb of ram. 8gb of ram was the max for the laptop anyways.

In this whole process, I found out that the laptop had a bad hard drive. I will talk about that later and how I overcame this problem.

The Operating System

I still felt like this laptop had the potential for something. Although first, we need to install an operating system. If you are not familiar with the term, it is the graphical interface you see when you open up your laptop — such as Windows 10 or macOS. However, we are looking for a lighter solution.

Because of the state of the laptop, I decided to go for the operating system that needed the least amount of resources (e.g ram, storage, processor speed, etc) I tried out 3 options.

1. Lubuntu

https://lubuntu.net/

Lubuntu means “lightweight ubuntu”. Out of all of the operating systems, I like the aesthetics of this one the most.

It looks nice and plays nice. It has that Ubuntu feel. Even the requirements are pretty low. Lubuntu can be installed on a Pentium II or Celeron system with 128 MB of RAM.

The ISO file is 1.5gb which is larger than the rest of the operating systems.

Though I did run into the problem again. After a couple of hours of moderate usage, the filesystem turned to read-only. Some of the files were on bad blocks and it forced the system to shut down.

Website | Download

2. Puppy Linux

http://puppylinux.com/

The requirements for Puppy Linux are very low. People have succeeded in running Puppy with computers older than me!

Puppy Linux can run on a computer with a 333MHz CPU and 64MB of ram.

That is just insane. The iso file is only 300mb and is very fast to boot up and install. I ran into no issues with Puppy Linux and it has served me well.

The only thing that I didn’t like is that it didn’t come with aptitude or equivalent. It came with “Puppy Package Manager” which was quite limited. There are ways to install aptitude but I wouldn’t recommend it.

The reason I stopped using Puppy Linux was that you are default in a root shell. This is very insecure and you may accidentally break something. I know this because that happened to me. Whilst deleting some files I mistyped something and deleted a lot of files that the operating system needed to run. This happened because I was in a root shell and it gave me no warning before it deleted it.

Website | Download

3. AntiX

https://antixlinux.com/

AntiX is not as small as Puppy Linux, but it performs as well. It is smaller than Lubuntu. AntiX has apt package manager and is pretty fast.

It should run on most computers, 256MB old Pentium 3 processors should have smooth performance. It only requires 2.7gb of hard drive space and installs in less than 15 minutes on my laptop. AntiX will be perfect for all of the projects I will talk about — this is the operating system I have chosen for these projects, AntiX the one I recommend you use. I used AntiX version 19.1.

Website | Download

The YouTube video below has detailed instructions on how to install AntiX:

The Projects

Docker

Docker is not a project. It is a framework for all of your projects. It allows you to run your projects in ‘containers’ — which make them easier to control and configure. I followed the steps from the wiki.

Open up the terminal and uninstall any previous versions of docker that might conflict with our new install:

sudo apt-get remove docker docker-engine docker.io containerd runc

Update your installation and upgrade it:

sudo apt-get update && sudo apt-get upgrade

Allow APT to install repositories over HTTP:

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

Install Docker’s Official GPG key:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Add the official Docker repository:

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/debian \
   $(lsb_release -cs) \
   stable"

Install Docker using apt-get:

sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io

Verify your installation succeeded:

sudo docker run hello-world

If this last command fails then follow the tutorial from start again here:

https://docs.docker.com/install/linux/docker-ce/ubuntu/

Pi-Hole

Pi-hole®: A black hole for Internet advertisements Network-wide protection Instead of browser plugins or other software on each computer, install Pi-hole in one place and…pi-hole.net

Pi-Hole is something I would recommend to everyone. It is so easy to set up and is completely free. Pi-Hole automatically blocks advertisements on your entire network. No advertisements on your computer, phone, or tablet.

Assuming you have installed Docker like above, we can now pull the latest Pi-Hole image for install (from GitHub) and then run it.

sudo docker pull pihole/piholesudo docker run pihole/pihole

Get If you want to access the web interface you need to get the IP of the docker image. First, find out the container id:

sudo docker ps

Then inspect the container and retrieve the IP:

sudo docker inspect {container_id}

The IP address is where it says

“IPAddress”:”172.17.0.2"

Now you can connect to the PiHole web interface with that IP address.

Running your own media server

Example of Jellyfin

Do you have tons of movies and tv shows lying around on a hard drive? Installing a media server is a great way to organize it. Jellyfin is my personal choice. There is a large competition for the best media server application, and I picked Jellyfin. I did a comparison of the main three here:

Plex vs. Emby vs. Jellyfin — which is the best option? These are the three main competitors in the home media market. Plex, Emby, and Jellyfin. Which one is the best? Which…medium.com

To install we do a very similar command that we did for PiHole. Pull the image and run it:

sudo docker pull jellyfin/jellyfin
sudo docker run jellyfin/jellyfin

Copy media files. First find out the name of your docker image:

sudo docker ps

Note down the name of the container. Now you should copy any media files you have into the docker container. This can be done with this command:

sudo docker cp /home/antix/yourfile.mp4 {your_container_name}:yourfile.mp4

You can access the web interface from the port 8096.

Though you should get the IP first:

sudo docker inspect {container_id}

The IP address is where it says

“IPAddress”:”172.17.0.2"

Hosting a game server

You can also host a Video Game server. Such as Minecraft. ITZG has set up a nice docker image for us to use. To get the docker image run this command:

sudo docker pull itzg/minecraft-server

For the first run, we have to assign the EULA to true. Run the docker image with this command below:

docker run -e EULA=TRUE -d -p 25565:25565 --name mc itzg/minecraft-server

The Minecraft server will start up shortly. You can check the status with:

sudo docker logs -f mc

After it starts up you can just connect with the IP address. You can inspect the container and retrieve the IP:

sudo docker inspect mc

The IP address is where it says

“IPAddress”:”172.17.0.2"

Those are my favourite projects to do with an old laptop. I have used all three of them. To be honest the PiHole is my favourite. I don’t have to worry about ads or install and 3rd party AdBlockers.

Comment below if you have any questions or tips for other readers!