DEV Community

Cover image for Personal TODO list on how I set up my dev machine
Vincenzo
Vincenzo

Posted on

Personal TODO list on how I set up my dev machine

I am a Linux fanboy, I have been using Linux (and especially Debian-based distros) since 2007 more or less. In 2007, I started using Ubuntu Gutsy Gibbon and when I wanted to upgrade to Ubuntu Intrepid Ibex I did it from the package manager, and disaster occurred.

My machine wouldn't boot up.

Since then every time there is a need of upgrading the system I have always installed it anew (keeping the /home partition from the old system) using the USB/cd live cd.

Fast-forward to a few days ago. I've been using Ubuntu 20.04 since 2020, and my package manager went "Yo biatch Ubuntu 22.04 is out, get on it" and even though I had that bad experience in 2008, I thought it was maybe time now to give it a try and upgrade distro while on a distro.

BAD CHOICE.

It all seemed like it was working but the day after, the PC was stuck on a boot loop, so I knew I had to reinstall stuff.

Luckily I am not that much of a paranoid freak, so I do not encrypt my hard disk, I managed to salvage the only 100kb of config files I needed by mounting the had on a live USB stick and put moving those files to a pen drive.

Yet I had to install stuff back to get them all as I wanted them to be, so I decided to write a small post on how I get my machine set up.

TODO

  • After a fresh install of Ubuntu I install the DE, I have been using Budgie and I love it.

  • Install Terminator as a terminal emulator, and I set up the keybinds to be the same as iTerm on mac so it is easier to remember when I use my work MacBook.

  • Install zsh, switch bash to zsh as my shell and install oh-my-zsh

  • I plop my .zshrc with few shortcut and theme I like in ~.

  • I am a javascript kind of guy, so I install nvm first.

  • I install hygen that I use to generate source code, and my templates.

  • I generate a new set of ssh keys, and add them to Github and on my raspberry pi (so I can ssh into it).

  • I generate the config for my raspberry pi to connect using identity_key.

  • I install: Discord, Brave, [Telegram(https://desktop.telegram.org/) and VSCode, which then I sync with my github profile to pull down my settings.

  • I install go.

  • I install: build-essential.

  • I install httpie.

  • I install docker (this is quite a boring process, to make it sudoers and so I can run without sudo). On Mac instead I use podman.

  • I install Spotify.

  • I set up my keybinds on Budgie: I use Super+Shift+Q to close windows, Super+Enter to Open a terminal, and a few other ones that I've been stuck with me since my early fluxbox days.

  • I troubleshoot why Alt+Ctrl+Arrows keybind doesn't work following a question I have also asked in the past.

  • Create a ~/code folder, to keep all my coding stuff in there.

  • Install the latest tools I have been using/learning: atm Godot, rust (via rustup).

  • I lose interest and never want to touch this PC ever again.

And that is it. I hope this list would be helpful to someone, it will definitely be helpful to me if in a few years I forgot again NOT to upgrade the distro.

I keep a little setup installer and info on this repo.

Top comments (4)

Collapse
 
moopet profile image
Ben Sinclair

Out of curiosity: why do you use Docker on linux and Podman on Mac?

Collapse
 
vikkio88 profile image
Vincenzo

company constraints, if your laptop is a company one (I would never own my own mac, the os is garbage) and you install Docker desktop they have to pay a fortune

Collapse
 
moopet profile image
Ben Sinclair

Ah. I use Docker on my work mac because we're under the paid threshold. Feel the same about the OS, btw - I used the mac as a docker host, and for its access to the office vpn and connect to it via ssh and a browser from my real computer.

Thread Thread
 
vikkio88 profile image
Vincenzo

the hardware is brilliant, the design slick and beautiful, the os is just dogshit