My dotfiles using Arch Linux. Just for the time it takes to document this repository and configurations, this repo deserves one star!
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.
Table of Contents generated with mtoc
- containerscrew dotfiles (documentation in-progress)
- Disclaimer
⚠️ - Arch Linux installation
- dotfiles installation
- Shortcuts
- Tips
- Links & Credits
- License
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 😀
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.
- Download
ISO
file. https://archlinux.org/download/ (to download the torrent I usetransmission
) - Take a pendrive and burn the ISO using, for example, https://etcher.balena.io/
- Insert the pendrive into the new PC, modify the boot options to use the pendrive instead of the local disk.
- If all goes well, you should see the distro prompt.
root@archiso ~ #
Pre-flight checks 🚀
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
Run the following command:
$ 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.
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.
$ 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
$ cd /tmp
$ git clone https://github.com/containerscrew/dotfiles.git
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
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
Configurations about networking
, display managers
and more.
Run:
$ ./installers/core_config.sh
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
All in one:
./installers/run_all.sh
See shortcuts documentation.
Some tips about archlinux configurations.
Tips documentation