Skip to content

Lamtea/dotfiles-i3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles-i3

My dotfiles for i3 on Arch linux on laptop.

Overview

Main display:

overview1

Sub display:

overview2

My Base Configurations

Only settings related to the 'Depend on' list are excerpted.

Category Configuration
Boot Loader GRUB 2
Kernel Linux Zen, Linux, Linux LTS
File System Btrfs on LVM on LUKS2 (SSD, HDD)
Graphic Intel UHD 630, NVIDIA GeForce MX150 (NVIDIA Optimus)
Network Realtek RTL8169 (LAN), Intel Wireless-AC 9560 (WiFi, Bluetooth)
Monitor Laptop Built-in(eDP-1 connected), LG24UD58(HDMI-2 connected)
Tablet Wacom Intuos 4
Printer Brother DCP-J152N
Scanner Brother DCP-J152N

How to Install

Preparation

Please complete the following tasks:

dotfiles (My dotfiles for command-line interface on Arch linux)

Installation

# Options can use other packages or be ignored(see below 'Depend on' list).
# You may have to edit with the file by changing options.
# See Arch wiki for settings.
yay -S <dependent packages>
# Set and enable the required services.
#   NetworkManager, wpa_supplicant, apparmor, avahi-daemon, bluetooth, hddtemp,
#   clamav-daemon(optional), clamav-freshclam(optional), cups(optional), cups-browserd(optional),
#   lightdm, nmb(optional), smb(optional), colord(optional),
#   libvirtd(optional), snapper(optional)
# See Arch wiki for settings.
sudo systemctl enable <dependent service packages>
# Set and enable the required user services.
#  mpd
# See Arch wiki for settings.
sudo systemctl --user enable <dependent user service packages>
cd ~
git clone https://github.com/Lamtea/dotfiles-i3.git .dotfiles-i3
cd .dotfiles-i3
./install.sh
cp <your favorite icon> .face
# Customize to your hardware.
# For Localization, see below 'Localization'.
vi .bin/detect_display.sh
  PRIMARY_NAME="<your primary monitor>"
vi .bin/polybar_launch.sh
  DISPLAY_MAIN="<your primary monitor>"
  DISPLAY_SUB="<your secondary monitor>"
vi .config/polybar/config
vi .config/conky/archer-conky-left.conf
vi .config/conky/archer-conky-right.conf
# Add lsm to kernel parameters for apparmor.
sudo vi /etc/default/grub
  GRUB_CMDLINE_LINUX_DEFAULT="lsm=landlock,lockdown,yama,integrity,apparmor,bpf ..."
sudo update-grub
sudo systemctl reboot

Set the tools:

  • Themes:
    • lxappearrance-gtk3
      • Adapta-Nokto
      • Papirus-Dark
      • Flatbed Cursors original Black
      • Noto Sans CJK JP Regular
    • kvantum
      • KvAdaptaDark
    • fcitx5 (optional)
      • nord

Depend on

  • dotfiles (My dotfiles for command-line interface on Arch linux)
  • X
    • xorg-server
    • xorg-apps (not include xorg-xbacklight, replaced acpilight)
    • xf86-input-wacom (optional) (If you haven't wacom tablet, remove .bin/setup_wacom.sh and the relevant part from .xprofile)
    • srandrd (aur)
    • numlockx
  • Graphics (optional) (If you haven't NVIDIA Optimus, remove prime-run from .config/i3/config, and remove or edit .config/mpv/mpv.conf)
    • GPU
      • Intel (UHD 630)
      • NVIDIA Optimus (GeForce MX150)
        • nvidia-prime
        • nvidia-settings
    • Hardware video acceleration
      • libva-intel-driver
      • intel-gpu-tools
      • libva-utils
      • libvdpau-va-gl
      • vdpauinfo
    • Vulkan
      • vulkan-icd-loader
      • vulkan-headers
      • vulkan-validation-layers
      • vulkan-tools
      • vulkan-intel
      • nvidia-utils
    • OpenCL
      • opencl-headers
      • ocl-icd
      • intel-compute-runtime
      • opencl-nvidia
    • CUDA
      • cuda
      • cuda-tools
      • ncurses5-compat-libs (aur)
      • opencv-cuda
      • python-cuda
      • python-pycuda
    • Machine learning
      • cudnn
      • tensorflow-opt-cuda
      • python-tensorflow-opt-cuda
  • Icon
    • papirus-icon-theme
  • Cursor
    • xcursor-flatbed
  • Font
    • noto-fonts
    • noto-fonts-* (optional) (your locale, cjk is default)
    • noto-fonts-emoji
    • noto-fonts-extra
    • ttf-hackgen (optional) (aur, Japanese font, alacritty use it)
    • ttf-meslo-nerd-font-powerlevel10k (aur)
    • fantasque-sans-mono
    • ttf-monapo (optional) (aur, Japanese font, jdim use it)
    • ttf-liberation (optional) (for steam)
    • ttf-noto-nerd
    • ttf-meslo-nerd
    • ttf-hack-nerd
    • ttf-fantasque-nerd
    • font-manager (font viewer)
  • Theme manager
    • Gtk
      • lxappearrance-gtk3
    • Qt
      • kvantum
  • Login manager
    • lightdm
      • lightdm-gtk-greeter
      • lightdm-gtk-greeter-settings
  • User manager
    • mugshot (aur)
  • Window manager
    • i3-wm
  • Status bar
    • polybar
      • procps-ng
      • nvidia-smi (optional) (If you haven't NVIDIA Optimus, remove .bin/nvidiatemp.sh and the relevant part form .config/polybar/config)
      • hddtemp
        • openbsd-netcat
  • Menu
    • dockbarx-git (aur)
    • rofi
      • rofi-calc
    • xfce4-appfinder
  • Compositor
    • picom/compton
  • Background
    • nitrogen
  • Display
    • Display CAL (optional) (If you haven't monitor for creators, remove a line of exec --no-startup-id displaycal-apply-profiles from .config/i3/config)
      • displaycal-apply-profiles
      • colord
        • colord-gtk
        • colord-sane
    • Redshift
      • redshift
  • Audio
    • pipewire
      • lib32-pipewire
      • wireplumber
      • helvum
      • pipewire-alsa
      • pipewire-pulse
      • pipewire-jack
      • lib32-pipewire-jack
      • volumeicon
      • pavucontrol
      • gst-plugin-pipewire
  • Geolocation
    • geoclue
  • Notify daemon
    • dunst
  • System monitor
    • conky-lua-nv (optional) (aur, If you are not sure, remove lines of exec --no-startup-id conky from .config/i3/config)
  • Package manager
    • octopi (aur)
    • snapd (aur)
    • yay (aur, from dotfiles)
  • Linux security module
    • apparmor
  • Policy kit
    • polkit-gnome
  • Keyring
    • gnome-keyring (from dotfiles)
    • libgnome-keyring (from dotfiles)
    • seahorse
  • Network manager
    • networkmanager
      • networkmanager-openvpn
      • wireguard-tools
  • mDNS
    • avahi
  • Windows cooperation (optional)
    • samba
  • Bluetooth manager
    • blueman
  • Clipboard manager
    • clipit
  • Power manager
    • systemd-logind
    • thermald
  • Screen locker
    • // xss-lock
    • // xautolock
    • // xscreensaver
    • // light-locker
  • Screen shooter
    • scrot
    • flameshot
  • Terminal
    • rxvt-unicode-truecolor-wide-glyphs (aur)
    • alacritty
  • File manager
    • thunar
      • thunar-archive-plugin (optional) (depend on Archiver)
      • thunar-media-tags-plugin
      • thunar-volman
      • thunar-dropbox (optional) (aur, require dropbox account)
      • thunar-shares-plugin (optional) (aur, depend on samba)
      • thunar-vcs-plugin (aur)
      • gvfs
        • gvfs-smb
        • gvfs-mtp
        • gvfs-gphoto2
        • gvfs-afc
      • tumbler
      • raw-thumbnailer (aur)
      • catfish
    • ranger (from dotfiles)
  • Archiver (optional)
    • xarchiver
  • Editor
    • neovim (from dotfiles)
    • mousepad (optional)
  • Browser
    • w3m (from dotfiles)
    • vivaldi
      • vivaldi-ffmepg-codecs
    • brave-bin (aur)
    • google-chrome-stable (aur)
    • firefox-developer-edition
      • firefox-developer-edition-i18n-* (your locale)
      • youtube-dl
  • Mail
    • postfix (from dotfiles)
    • neomutt (from dotfiles)
    • thunderbird
    • birdtray (aur)
  • Music player
    • mpd
    • ncmpcpp
    • cantata
    • spotify (aur)
  • Input method (optional) (If you don't use it, remove a line of exec --no-startup-id fcitx5 from .config/i3/config)
    • fcitx5-im
    • fcitx5-nord
    • fcitx5-mozc
  • PDF Viewer (optional)
    • zathura
      • zathura-ps
      • zathura-pdf-mupdf
      • zathura-djvu
      • zathura-cb
      • mupdf-gl
    • evince
  • Printer & scanner (optional)
    • cups
      • brother DCP-J152N printer driver (brother official)
      • cups-pdf
      • cups-pk-helper
      • cups-filters
      • system-config-printer
      • bluez-cups
  • Virus scanner (optional)
    • clamav
    • clamtk
  • Writer (optional)
    • xfburn
    • etcher-bin (aur)
    • rpi-imager (aur)
  • Firewall
    • ufw
    • gufw
  • Cloud
    • rclone (from dotfiles) (optional) (If you are not sure, remove lines of exec --no-startup-id ~/.bin/rclone_mount.sh from .config/i3/config)
  • System admin (optional)
    • gnome-firmware
      • fwupd
      • fwupd-efi
    • gparted
      • parted
    • gsmartcontrol
      • smartmontools
    • snapper-gui-git (aur, btrfs user only)
      • snapper
      • snap-pac
      • snap-pac-grub (aur)
      • grub-btrfs
    • btrfs-assistant (aur, btrfs user only)
  • Utility (optional)
    • qtqr
  • Systemtray application
    • udiskie
    • remmina
    • osmo
    • my-weather-indicator-git (aur)
    • veracrypt
    • uget
      • uget-integrator (aur)
      • uget-integrator-firefox (aur)
    • xpad
    • joplin-appimage (aur)
    • slack-desktop (aur)
    • qsync (optional) (If you haven't qnap nas, remove a line of exec --no-startup-id /usr/local/bin/QNAP/QsyncClient/Qsync.sh from .config/i3/config)
  • Developer tool
    • visual-studio-code-bin (aur)
    • android-studio (aur)
    • dbeaver
    • azuredatastudio-bin (aur)
    • storageexplorer (aur)
    • meld
    • postman-bin (aur)
    • wireshark-qt
    • wireshark-cli
    • filezilla (optional)
  • Virtual machine (optional)
    • virt-manager
      • qemu-desktop
      • libvirt
      • edk2-ovmf
      • dnsmasq
      • iptables-nft
    • virtualbox
      • virtualbox-guest-iso
      • virtualbox-guest-utils
      • vitrualbox-host-dkms (for linux-zen users)
      • virtualbox-ext-oracle (aur)
  • Creator tool
    • krita
    • gimp
      • gimp-plugin-gmic
      • gimp-nufraw
      • gimp-help-* (your locale)
    • inkscape
    • blender
  • Main application
    • discord
    • jdim (optional) (snap, If you don't use it, remove a line of exec jd.sh from .config/i3/config)
    • lutris
    • steam (multilib)
    • speedcrunch
    • calibre
    • mcomix (aur)
    • geeqie
    • xsane (optional) (If you haven't scanner, remove a line of exec xsane from .config/i3/config)
      • xsane-gimp
    • smplayer
      • smplayer-skins
      • smplayer-themes
      • mpv
    • peek
    • libreoffice-fresh-* (your locale)

Localization

  • Edit font settings.
    • Noto * CJK JP, HackGen Console NF # change your locale.
  • Edit .config/conky/archer-conky-left.conf.
    • ### Datetime section.
      • ${time %Y年%m月%d日}$ # change your locale.

i3

See: Wiki

Scripts

Name Description
arch_updates.sh check package updates.
detect_display.sh set xrandr.
hddtemp.sh get hddtemp.
nvidiatemp.sh get nvidia card temperature.
polybar_launch.sh start polybar.
rofi_launch.sh start rofi.
rofi_powermenu.sh start rofi power menu.
setup_touchpad.sh disable touch pad.
setup_wacom.sh enable wacom pen tablet.
open_with_linux.py script for firefox extension.
get-windowclass-i3.sh get window class name for i3.

Develop Environment

  • bash
  • python
  • lua
  • git
  • neovim