sontungexpt / stilux-dotfiles

Arch linux ricing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Information

Basic applications

Features Applications
Window Manager i3
Status Line polybar
Applications Launcher rofi
Code Editor neovim, visual studio code
Browser firefox
File Manager lf, thunar
Notification Manager dunst
Shell zsh with oh-my-zsh theme
Bluetooth Manager blueman
Wifi Hotspot linux-wifi-hotspot
Screenshot flameshot, scrot
Desktop Record recordmydesktop
Disk Manager gparted
Grub Manager grub-customizer
Theme Manager lxappearance-gtk3
Image Viewer feh
Video Player mpv
Aur, Download Helper yay, git, curl, wget
Terminal kitty
Icons Theme WhiteSur-icon-theme
Main Theme tokyo-night
Cursor Theme catpuchin-cursor
Login Manager lightdm, lightdm-webkit2-greeter, lightdm-webkit2-theme-glorious
Lockscreen betterlockscreen
Compositor picom
Vietnamese Input ibus-bamboo
System Monitor gotop
Volume Control pavucontrol
Achrive Manager rar, unrar, zip, unzip, tar
Trash Manager trash-cli
Clipboard Manager xclip
Ntfs Support ntfs-3g
System Information Tool neofetch
Multi Monitors Tool arandr

Sitlux applications

Features Applications
Desired Apps figma, gimp, kdenlive, inkscape
Color Pitcher xcolor
Social Apps discord, microsoft teams, zalo-web-app
Office Suite only-office
Dev Environment python with pip, ruby with rbenv, flutter, android studio, gcc, cmake, nodejs with npm
Brownser microsoft-edge
Dotfiles Manager git bare

Scripts

Name Features
screenshot To screenshot and copy the picture to clipboard
setavatar To change avatar lightdm
extract To unachrive file regardless of zip or rar
zsh-history-fix To solve zsh history error
showwifipass To show logged in wifi password
setwallpaper To set wallpaper of i3 wm
add-lightdm-background To auto add background to the storage background of lightdm
cleanarch To clean your arch linux

Preview

overview preview1

Install arch linux and i3 wm

Install arch ( you can follow the instruction below or this video to dual boot with window)

Install arch
  • Step 1: Setup Time
timedatectl set-ntp true
  • Step 2: Check UEFI
ls /sys/firmware/efi
  • Step 3: Check internet connection
ping google.com
  • Step 3.5: Connect to Wi-Fi (Skip if you already success in step 3)
iwctl
device list

Choose one device from the list example: wlan0

station wlan0 get-networks
station wlan0 connect "Wi-fi Name"
exit
  • Step 4: Sort Package Download Server
pacman -Sy reflector
reflector -c [Region] -c [Region-Close] -c [Region-Close] -c [Region-Close] -a 12 --sort rate --save /etc/pacman.d/mirrorlist

If you are Vietnamese use this

reflector -c Vietnam -c Singapore -c Japan -c India -a 12 --sort rate --save /etc/pacman.d/mirrorlist

NOTE: There are usually error on this step, but you can totally ignore it and be fine!

Check mirror list that reflector generate

cat /etc/pacman.d/mirrorlist
  • Step 5: Disk Checking
lsblk
  • Step 6: Disk Partition (Read it all before do)
cfdisk /dev/nvme0n1

NOTE: Sometimes it will be sda instead of nvme0n1!

A disk usually has more than 50GB to work properly (You should take a picture)

Example:

(Always) 500M for (EFI System). (Eg: /dev/nvme0n1 or /dev/sda)

(Example) 1GB for (Linux swap) (If less RAM add more Swap) (eg: /dev/nvme0n1p2 or /dev/sda2)

(Should) 30GB (or more) for root (Linux Filesystem) (eg: /dev/nvme0n1p3 or /dev/sda3)

(Always) The rest for home (Linux Filesystem) (eg: /dev/nvme0n1p4 or /dev/sda4)

Disk partition with cfdisk: (replace sda with nvme like the above)

  1. Choose (gpt) if asked
  2. At Free Space choose [NEW]
  3. Enter disk space (eg: 500M,30GB,.....)
  4. At dev/nvme0n1p1 choose [TYPE] and choose partition type like above
  5. Repeat with all the other partition
  6. Choose [WRITE] to save it all

Swap Rule:

  1. RAM ⩽ 2GB: Double the RAM (eg: 2GB RAM then 4GB Swap)
  2. 2 GB – 8 GB: Equal the RAM (eg: 3GB RAM then 3GB Swap)
  3. 8 GB: Minimum 4GB for Swap (add more as you like)
  • Step 7: Disk formatting
  1. New arch linux only do this
mkfs.fat -F32 /dev/nvme0n1p1

mkswap /dev/nvme0n1p2
swapon /dev/nvme0n1p2

mkfs.ext4 /dev/nvme0n1p3

mkfs.ext4 /dev/nvme0n1p4
  1. If you dual boot with Window do this

For swap partition do this

mkswap /dev/nvme0n1p2
swapon /dev/nvme0n1p2

For root partition do this (it will format partition)

mkfs.ext4 /dev/nvme0n1p3

For home partition do this (it will format partition)

mkfs.ext4 /dev/nvme0n1p4

NOTE: Replace with nvme if you have nvme instead of sda as the above

  • Step 8: Mount Partitions

NOTE: Replace with nvme if you have nvme instead of sda as the above

  1. New arch linux only do this
mount /dev/nvme0n1p3 /mnt

mkdir /mnt/boot
mount /dev/nvme0n1p1 /mnt/boot

mkdir /mnt/home
mount /dev/nvme0n1p4 /mnt/home
  1. If you dual boot with Window do this
mount /dev/nvme0n1p3 /mnt


mkdir /mnt/home
mount /dev/nvme0n1p4 /mnt/home
  • Step 9: Install base packages
pacstrap -i /mnt base base-devel linux linux-firmware linux-headers intel-ucode sudo git neofetch networkmanager network-manager-applet dhcpcd neovim
  • Step 10: Basic setup
Note: If you dual boot with windows then do mount the EFI partition first:

mkdir /mnt/boot
mount /dev/nvme0n1p1 /mnt/boot
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt

NOTE: For this step replace [timezone] with region example Australia/Sydney

ln -sf /usr/share/zoneinfo/[timezone]/[timezone] /etc/localtime

If you are Vietnamese do this

ln -sf /usr/share/zoneinfo/Asia/Ho_Chi_Minh /etc/localtime
hwclock --systohc
nvim /etc/locale.gen

After that uncomment: en_US.UTF-8 UTF-8

For those who don't know how to use neovim:

  1. Press [i] to enter vim edit mode
  2. At line # en_US.UTF-8 UTF-8 remove # and the additional spaces then press [ESC]
  3. Enter the following keys [:] [w] [q] then [ENTER]
locale-gen
echo LANG=en_US.UTF-8 > /etc/locale.conf

NOTE: From the following step replace stilux-pc with your pc name (note names should be short and not contain special characters use - for spaces eg: stilux-pc)

echo stilux-pc > /etc/hostname
nvim /etc/hosts

Add the following line: (do like above to edit vim) (press [TAB] at [TAB])

127.0.0.1[TAB]localhost
::1[TAB]localhost
127.0.1.1[TAB]stilux-pc.localdomain[TAB]stilux-pc

(Exit and save like above)

Create password for root (Admin)

passwd

Enter the password blindly, they will not show up

  • Step 11: Add User Replace stilux with your preferred username
useradd -m stilux
passwd stilux

Enter the password blindly, like above

usermod -aG wheel,audio,video,optical,storage,power stilux
EDITOR=nvim visudo

(use neovim like above)

Add: stilux ALL=(ALL) ALL
Uncomment: %wheel ALL=(ALL) ALL

(Save and exit like above)

  • Step 12: Create Grub Boot

Check if nvme0n1p1 is mount if not mount again

lsblk

Install ntfs-3g if you dual boot with windows

pacman -S ntfs-3g os-prober
pacman -S grub efibootmgr dosfstools mtools
nvim /etc/default/grub

After that uncomment: GRUB_DISABLE_OS_PROBER=false

Save and exit like above

systemctl enable dhcpcd.service
systemctl enable NetworkManager.service

Note: /boot is the EFI partition that you mount in step 10

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --recheck
grub-mkconfig -o /boot/grub/grub.cfg
  • Step 13: Exit, Reboot, Update
exit
umount -lR /mnt
reboot

How to login:

  1. Enter the username at first
  2. Enter the password blindly then [ENTER]

Update the system:

sudo pacman -Syu

NOTE: Should do once everyday

Enter root password (admin)

Reconnect to Wi-Fi

nmtui

Restart System

reboot

Turn off the system

poweroff

Install i3 window manager ( you can follow the instruction below or this video to install i3 )

Install i3
sudo pacman -S xorg xorg-xinit i3-wm dmenu kitty

sudo cp /etc/X11/xinit/xinitrc ~/.xinitrc
sudo nvim ~/.xinitrc

After that remove:
twm &
xclock -geometry 50x50-1+1 &
xclock -geometry 80x50+494+51 &
xclock -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login

And add:
exec i3

Setup stilux-dotfiles

  • You need to install arch linux and i3 window manager before setup this config
  • Open terminal and copy this command
git clone https://github.com/sontungexpt/stilux-dotfiles.git && cd stilux-dotfiles && chmod +x setup && ./setup && cd .. && rm -rf stilux-dotfiles
  • Follow the instructions in the terminal when the scripts is running

5. Usage

i3 key binding

Key Binding Description
Mod + Enter Open terminal (kitty default)
h, j, k, l Move focus left, down, up, right
Mod + d Open rofi
Mod + g Open github
Mod + m Open bluetooth manager
Mod + n Open wifi-hotspot
Mod + b Open mail
Mod + u Open UIT school web
Mod + shift + u Open UIT course
Mod + x Lock screen
Mod + shift + s Print a select area and copy it to clipboard(no save picture)
printscr Print the full-screen desktop
shift + printscr Print a select area and save it to Pictures/Screenshots
crtl + printscr Capture the focused window and save it to the directory
Mod + shift + f Open flameshot gui
Mod + t Open thunar file manager

Neovim

My neovim config

Polybar

About

Arch linux ricing


Languages

Language:JavaScript 75.4%Language:CSS 10.9%Language:PureBasic 6.2%Language:HTML 3.6%Language:WebAssembly 1.8%Language:Shell 1.7%Language:Lua 0.2%Language:Python 0.1%Language:Scheme 0.1%Language:SCSS 0.1%