containerscrew / dotfiles

dotfiles using Archlinux and Qtile

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

containerscrew dotfiles (documentation in-progress)

My dotfiles using Arch Linux. Just for the time it takes to document this repository and configurations, this repo deserves one star!

Arch

Warning

The documentation is not yet well finished. There are still things to document and configure. However, I hope the configuration files can help you.

current-desktop

current-desktop2

Table of Contents generated with mtoc

Disclaimer ⚠️

It is my personal setup, the way I like it, with configurations, applications that are comfortable for me. Use it if you want as a template, as a guide. I will update it as I need to add new packages, configs...etc.

And yes... all my commits in this repo you will see that they are called Wip 😀

Arch Linux installation

The installation of Arch Linux has been carried out using archinstall. The official installation page is also very complete, everything and that using archinstall is more comfortable and makes the process easier.

  1. Download ISO file. https://archlinux.org/download/ (to download the torrent I use transmission)
  2. Take a pendrive and burn the ISO using, for example, https://etcher.balena.io/
  3. Insert the pendrive into the new PC, modify the boot options to use the pendrive instead of the local disk.
  4. If all goes well, you should see the distro prompt.
root@archiso ~ #

Before installation using archinstall

Pre-flight checks 🚀

Connect to the internet

Once the usb is booted, connect the laptop to your local network (if not using ethernet cable).

iwctl station wlan0 get-networks # change wlan0 interface if needed. Type `$ ip a` if you don't know the name
iwctl station wlan0 connect SSID # put the SSID/BSSID with your corresponding local network
ping -c 1 1.1.1.1 # test connectivity

iwd official documentation

Start the installation

Run the following command:

$ archinstall

Considerations in archinstall

Example of my configurations. Modify those you consider necessary.

Setting Configuration
Archinstall language English (100%)
Mirrors Netherlands
Keyboard/Language/Encoding en/en_US/UTF-8
Disk Configuration Use best effort/BTRFS/Default partitioning
Disk Encryption ALWAYS
Bootloader Grub
Swap True
Hostname archlinux
Profile Minimal
Root password Yes
User sudoer Yes
Audio Pipewire
Kernels Linux
Additional packages rsync python3 openssh neovim curl git wget
Network NetworkManager
UTC Europe/Amsterdam
Optional repos multilib

The installer will ask if you want to chroot into the system. Type yes and enable ssh (for rsync). systemctl enable sshd. Will be necessary if you want to rsync files from other computer. If not necesary, do not enable this service.

Remember to disable sshd later. In fact, ufw will block all external connections.

After installation

First setps after installation. Remove the usb from your computer and restart. Grub will launch the new archlinux distro, and a basic prompt (black window) will appear. Enter your username and password.

Connect the computer to the internet

$ sudo su -
$ nmcli device wifi list
$ nmcli device wifi connect SSID_or_BSSID password SSID/BSSID-PASSWORD
# or use
$ nmcli device wifi connect -a
$ ping -c 1 1.1.1.1 # check connectivity
$ history -c
$ exit

Download dotfiles from git

$ cd /tmp
$ git clone https://github.com/containerscrew/dotfiles.git

dotfiles installation

Now, is time to install all the necessary dotfiles/packages/configurations. I have decided to separate each part into a .sh file inside the installers/ folder. There is also a file that executes in order all at once. I recommend to go step by step to understand what is going on.

Warning

All the scripts must be executed inside the repo root folder.

Remember, these packages many are necessary for the whole Qtile setup and others are custom that I use. Modify it to your needs

Packages

The distro comes with the defaults. Is time to install our custom packages. Please take a look to installers/packages.sh.

Inside the folder dotfiles, where you cloned the repo, run:

$ ./installers/packages.sh

Core config

Configurations about networking, display managers and more.

Run:

$ ./installers/core_config.sh

User config

Configurations about ~/.config/, user permissions, mouse, shell and more. Here is probably where you will need to change and adapt the configuration to your personal tools, configs... as you like.

Run:

$ ./installers/user_config.sh

Run all

All in one:

./installers/run_all.sh

Shortcuts

See shortcuts documentation.

Tips

Some tips about archlinux configurations.

Tips documentation

Links & Credits

Useful links & credits

License

LICENSE

About

dotfiles using Archlinux and Qtile

License:Apache License 2.0


Languages

Language:Shell 54.1%Language:Python 31.6%Language:Lua 10.2%Language:SCSS 2.8%Language:Makefile 1.3%