🧵 1/9

# Challenge in August: setup developer environment on Debian

How hard can one make this challenge!?

The only prep is installing 12 on an USB stick and hoping for the best.

🧵 2/9

## Getting the laptop

I received an old laptop built in year 2015 with .

The first challenge is to get the laptop in a stable state that it does not constantly crash. The issue is that the battery light is flashing orange.

The obvious solution is to let the laptop charge. Though after letting it do exactly that over a couple of hours without any resolution a deeper dive is needed.

The next check is to see if the charging cable could be the issue. Sadly do not have a complete duplicate cable and am only able to replace the cable to the surge block. Due to the fact that the model is quite old it does not use USB-C connector as the charging option.

No progress with the cable option. Next I try running the laptop battery free. This is where I realized that newer models do not always have the option to remove the battery.

Removing the battery created the most stable option to test and/or clean up the current system before over writing it with Debian.

This is where it is brought to my attention that the laptop does not have the specs to run Windows 11. Thus, any will do just fine.

🧵 3/9

## Why Debian?

I am a long time user and have a couple of servers. I want to change the servers to Debian because it potentially can have longer LTS over Ubuntu and like the nature of Debian over the other two. Plus the 6-12 month version upgrade cycle of Fedora is just too frequent for my taste.

One downside of the system so far is that the documentation is not beginner friendly. E.g. had difficulty downloading the ISO, since I was being navigated towards the documentation over the home page.

🧵 4/9

## Why is it not so easy as plug'n'play?

The trickiest part of installing any other system onto a Windows system is learning how many road blocks Windows places to void the attempt. The goal is to get into the _Boot Loader Menu_. From here one can reboot directly into the specific device, which in this case is a USB-stick.

Getting through the installation process of Debian is straightforward.

Network management gave some errors, since I decided to install without Ethernet connection. I was hoping to use the existing option on Windows over wireless. Seems like it is not that straightforward.

Setting a timezone is a bit annoying, since it is based off of language. After choosing US English as the language, I am only given the timezones within US territory. This didn't bug me too much, since I knew I can adjust it post install.

Getting through installation went quite smooth and after the reboot, I was hoping to be greeted by the sign-in mask of the desktop. Only to be surprised by the terminal login options.

🧵 5/9

## Bare bone nature of Debian

Debian's bare bone nature is shocking and refreshing at the same time. When coming from a feature rich system like Fedora, one thinks that lots of terminal functions are a given.

Learning that tools like `git` and `curl` are not default tools on every system is surprising.

This is a good thing to know since Debian offers the perfect environment to test out how good one's project setups truly are. Just start a , install the bare minimum tools, and see if the script runs without any other tweaking from one own side.

🧵 6/9

## The source list

When installing Debian via a USB-stick, the source list will be the stick. This is okay as initial setup, though sucks if one wants to install additional software.

First enter root mode via

```
su - root
```

By default one cannot run a command with prepending the `sudo` keyword, since the initial user is not assigned to the `sudo` group.

Once in root mode, edit the file

```
vi /etc/apt/sources.list
```

and update to

```
deb deb.debian.org/debian bookworm main non-free-firmware
deb-src deb.debian.org/debian bookworm main non-free-firmware

deb deb.debian.org/debian-security bookworm-security main non-free-firmware
deb-src deb.debian.org/debian-security bookworm-security main non-free-firmware

deb deb.debian.org/debian bookworm-updates main non-free-firmware
deb-src deb.debian.org/debian bookworm-updates main non-free-firmware
```
[Source](wiki.debian.org/SourcesList)

Once done updates and upgrades should work.

`apt update && apt upgrade -y`

🧵 7/9

## Update user group

While still in root mode, one can take the opportunity to add the current user to `sudo` group.

```
usermod -aG sudo <username>
```

[Source](linuxtechi.com/things-to-do-af)

🧵 8/9

## Enable Firewall

It is recommended to install the firewall on the operating system level.

```
sudo apt install ufw -y
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
```

[Source](linuxtechi.com/things-to-do-af)

🧵 9/9

## Desktop approach

With Debian's bare bone nature one can choose many ways to deal with the UI.

Chose the desktop approach and chose [xfce](linuxcapable.com/how-to-instal) due to its lightweight nature.

Although xfce is quick, missing the default suite of software the Gnome provides.

At least xfce has a default shortcut for the terminal in comparison to Gnome on Fedora.

@barefootstache Sounds like LMDE would have been easier. Up and running in 10 minutes. 😉

Follow

@rspfau lots of other distros would have been easier and don't know if I would gotten the same learning experience

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.