Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tednaaa/dotfiles
🧙♂️ I'll create dotfiles here
https://github.com/tednaaa/dotfiles
dotfiles
Last synced: 2 months ago
JSON representation
🧙♂️ I'll create dotfiles here
- Host: GitHub
- URL: https://github.com/tednaaa/dotfiles
- Owner: tednaaa
- Created: 2021-04-20T11:51:48.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-26T16:55:59.000Z (3 months ago)
- Last Synced: 2024-10-27T08:29:29.165Z (3 months ago)
- Topics: dotfiles
- Language: Lua
- Homepage:
- Size: 313 KB
- Stars: 8
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
### How to manage dotfiles?
```bash
cd .manager
cargo run link
cargo run unlink
```### Arch Installation with KDE (intel + nvidia)
> Check internet connection
```
ping google.com
```> [!NOTE]
> if you are using wifi, check [this](#connect-to-wifi)> Disk partitioning
```
# check existing partitions
lsblk# create partitions (nvme0n1 is the name of the disk)
cfdisk /dev/nvme0n1
```| Number | Type | Size |
| ------ | ---------------- | -------------------------------- |
| 1 | EFI | 1 GB |
| 2 | Linux Swap | 16 GB |
| 3 | Linux Filesystem | 950 GB (remaining space on disk) |> Formatting
```
mkfs.fat -F 32 /dev/nvme0n1p1
mkswap /dev/nvme0n1p2
mkfs.btrfs /dev/nvme0n1p3
```> Mounting
```
mount /dev/nvme0n1p3 /mntbtrfs subvolume create /mnt/@
btrfs subvolume create /mnt/@homeumount /mnt
mount -o compress=zstd,subvol=@ /dev/nvme0n1p3 /mnt
mkdir -p /mnt/home
mount -o compress=zstd,subvol=@home /dev/nvme0n1p3 /mnt/homemkdir -p /mnt/efi
mount /dev/nvme0n1p1 /mnt/efi
```> Package Installation
```
pacstrap -K /mnt base base-devel linux linux-firmware git btrfs-progs grub efibootmgr grub-btrfs inotify-tools timeshift neovim networkmanager
pipewire pipewire-alsa pipewire-pulse pipewire-jack wireplumber fish openssh man sudo
```> Fstab
```
genfstab -U /mnt >> /mnt/etc/fstab
cat /mnt/etc/fstab
```> Context swith to our new system
```
arch-chroot /mnt
```> Timezone Setup
```
ln -sf /usr/share/zoneinfo/Europe/Rome /etc/localtime
hwclock --systohc
```> Locale Setup, uncomment line with `en_US.UTF-8`
```
nvim /etc/locale.gen
locale-gen
```> Add hostname
```
echo Archi > /etc/hostname
```> Configure `/etc/hosts`
```
127.0.0.1 localhost
::1 localhost
127.0.1.1 Archi
```> Root and Users
```
passwduseradd -mG wheel {username}
passwd {username}# uncomment line which says like `Uncomment to let members of group wheel execute any action`
EDITOR=nvim visudo
```> Grub Setup
```
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
```> Unmount everything and reboot
```
systemctl enable NetworkManagerexit
umount -R /mnt
reboot
timedatectl set-ntp true
```> Automatic snapshot setup
```
sudo EDITOR=nvim systemctl edit --full grub-btrfsd# change ExecStart line to this
ExecStart=/usr/bin/grub-btrfsd --syslog --timeshift-autosudo systemctl enable grub-btrfsd
```> Paru setup `required to install timeshift-autosnap package`
```
sudo pacman -S rust# from paru docs
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -siparu -S timeshift-autosnap
reboot
```> Driver installation, also you can check [arch wiki](https://wiki.archlinux.org/title/Xorg#Driver_installation)
```
sudo pacman -S intel-ucode nvidia nvidia-utils lib32-nvidia-utils
```> [!NOTE]
> To install `lib32-nvidia-utils` you need to enable `multilib````
sudo nvim /etc/pacman.conf
```> Desktop Environment `Minimal KDE`
```
sudo pacman -S plasma-desktop plasma-pa plasma-nm plasma-firewall kscreen bluedevil powerdevil power-profiles-daemon dolphin ark
```> My additional packages
```
sudo pacman -S wezterm fzf ripgrep bat
paru -S google-chrome
```> Now install display manager and reboot
```
sudo pacman -S sddm sddm-kcmsudo systemctl enable sddm
reboot
```> [!TIP]
> And that's it, enjoy your new system!> Some more additional packages
- `asdf` - Manage all your runtime versions with one tool!
- `starship` - The minimal, blazing-fast, and infinitely customizable prompt for any shell!## Connect to Wifi
```
rfkill unblock all
iwctlstation wlan0 connect {wifi_name}
```