Thanks to visit codestin.com
Credit goes to github.com

Skip to content

A dotfile managed with chezmoi containing many personalized configurations and fixes.

License

startup-dotfiles/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Important

This repository stores my dotfiles, which contain many personalized configurations that may not be suitable for anyone other than myself. Additionally, this is currently only applicable to a minimal installation of Arch Linux, so if you want to use my dotfiles, please refer to the installation steps below. Please note that this may overwrite some of your files, so be sure to back them up !!!

Warning

This repository is currently incomplete, lacking scripts for automating configuration handling and some fine-tuning details, which may result in breaking changes. If you are interested in certain configurations, you can manually copy the content or suggest improvements to enhance them.

Dotfiles

GitHub last commit GitHub Repo stars GitHub repo size GitHub code size in bytes Github open issues

A dotfiles managed with chezmoi .
Containing many personalized configurations and fixes.


Typing SVG

Note

The following Linux distributions are supported, and there are currently no plans to support more distributions.

  • Arch Linux (I use it BTW)

Typing SVG

You need to install the following packages:

# For Arch Linux user
sudo pacman -S chezmoi ansible python-watchdog

Typing SVG

Here, it is assumed that you have some basic knowledge of chezmoi and ansible. Please refer to the following installation steps.

Step 0: Pre-configuration (optional)

Warning

When using Ansible for automated configuration, the main purpose is to conveniently set up system settings, install drivers, and so on. Unless you know what it does or you only want to use the dotfiles, you can skip this step.

Caution

The work is not yet complete, and it lacks testing, so there may be some issues.

# install required collections
# NOTE: If your network is poor, the download may fail, please run it again.
cd ansible/
./run.sh

# Do a dry-run to make sure things go smoothly:
ansible-playbook main.yml --ask-become-pass --check -vvv
# then, start run tasks
ansible-playbook main.yml --ask-become-pass

Step 1: Clone the repository

The dotfiles are managed using chezmoi, which internally integrates with Git, making it easy to clone and update. By default, it clones the dotfiles to the ~/.local/share/chezmoi directory, and you can run chezmoi cd to directly navigate to that directory.

# by HTTPS (default)
chezmoi init --branch chezmoi https://github.com/Sstmtz/dotfiles.git
# by SSH   (option: --ssh)
chezmoi init --branch chezmoi --ssh [email protected]:Sstmtz/dotfiles.git

Step 2: Install dependencies

The list of required packages is stored in the lists directory.

  • base: related to the dotfiles. Provides the dependencies required for these configurations.

  • extra: not related to the dotfiles. Provides a list of packages I use daily, which you can ignore.

  • _themes: some theme-related packages. (for references only)

  • _devices: some device-related packages. (for references only)

  • _custom.lst: specific to my personal use, please ignore it.

  • _deleted.lst: some packages that I no longer use, please ignore it.

You can install the packages included in the specified .lst file by using install_pkg.sh or install_fpk.sh scripts.

Warning

There may be some packages that require manual handling during installation, please let me know if there are any. Additionally, you can comment or uncomment to choose which packages to install.

Note

Typically, you only need to install the packages listed in the base directory.

cd ~/.local/share/chezmoi/

# [required] install base packages (default: packages.lst)
./scripts/install_pkg.sh

# [required] install the packages listed in `base` directory.
./scripts/install_pkg.sh ./lists/base/code.lst
./scripts/install_pkg.sh ./lists/base/fonts.lst
./scripts/install_pkg.sh ./lists/base/shells.lst
./scripts/install_pkg.sh ./lists/base/terminals.lst
./scripts/install_pkg.sh ./lists/base/utils.lst

# [optional] install the packages listed in `extra` directory
# ./scripts/install_pkg.sh ./lists/extra/dailyuse.lst
# ./scripts/install_pkg.sh ./lists/extra/gaming.lst
# ./scripts/install_pkg.sh ./lists/extra/productivity.lst
# ./scripts/install_pkg.sh ./lists/extra/system.lst
# ./scripts/install_pkg.sh ./lists/extra/tools.lst

# [optional] if you want to install platpak software (in `flatpaks.lst`)
# plesae use `install_fpk.sh`.
# ./scripts/install_fpk.sh ./lists/extra/flatpaks.lst

Step 3. Copy to your home directory

In fact, if you are not satisfied with certain configurations, you can ignore them by modifying .chezmoiignore file in home directory. And I have disabled some, to re-enable them, please uncomment.

# finally, apply it
chezmoi apply -v

Typing SVG
  • dianaw353/dotfiles: Most of my ansible configuration is based on this dotfile.
  • HyDE: Some scripts are referenced from this repository.
  • ARU: Arch Linux Optimization Guide(RU)

About

A dotfile managed with chezmoi containing many personalized configurations and fixes.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published