@ajhalili2006's dotfiles in a nutshell, without using home-manager for managing dotfiles.
Find a file
Andrei Jiroh Halili d7a95fa880
chore(global): apply patches from termux branch
See-Also: 00aa74c825
See-Also: cbeb6b6b85
Signed-off-by: Andrei Jiroh Halili <ajhalili2006@andreijiroh.xyz>
2024-08-13 23:54:16 +08:00
.abuild chore(abuild): update personal configs 2023-12-16 10:53:43 +08:00
.asdf@ccdd47df9b chore(submodules): update commit pointers 2024-07-07 17:49:05 +08:00
.byobu chaotic commit hellscape 2023-08-12 10:56:06 +08:00
.config chore(global): apply patches from termux branch 2024-08-13 23:54:16 +08:00
.gnupg chore(gpg): add kgpg specific configs 2024-06-06 23:09:13 +08:00
.local/share chore(yadm): update encrypted archive 2024-01-10 22:01:27 +08:00
.nvm@4beab63631 chore(global): add golang to asdf version manager alongside nvm updates 2024-08-11 15:38:13 +08:00
.ssh Update configs and add new SSH key on authorized_keys 2023-06-13 11:08:57 +02:00
.trunk feat(bashrc): add global bashrc stuff 2023-01-06 01:22:50 +08:00
.vscode chore(config): update VS Code and git config 2024-08-13 09:07:13 +08:00
.yadm-project@0a5e7aa353 chore(deps): add yadm repo and its symlink 2024-01-10 22:06:39 +08:00
bin feat(bashrc): add asdf to bash/tools config directory 2024-05-28 16:02:28 +08:00
.bash_login chore(bash): update shellrc files as usual 2024-07-07 17:46:25 +08:00
.bash_logout chore(global): regular configuration hellscape for now 2023-05-12 18:55:54 +02:00
.bashrc chore(bash): update shellrc files as usual 2024-07-07 17:46:25 +08:00
.env chore(global): update shellrcs and config 2024-08-13 09:06:17 +08:00
.gitconfig chore(global): apply patches from termux branch 2024-08-13 23:54:16 +08:00
.gitignore chore(global): initial commit 2022-12-25 23:55:37 +08:00
.gitmodules chore(global): add nvm repo as submodule 2024-06-06 23:02:51 +08:00
.nanorc chore(global): update shellrcs and config 2024-08-13 09:06:17 +08:00
.profile chore(global): update shellrcs and config 2024-08-13 09:06:17 +08:00
.tool-versions chore(global): add golang to asdf version manager alongside nvm updates 2024-08-11 15:38:13 +08:00
LICENSE docs(license): add license files 2022-12-29 19:51:07 +08:00
LICENSE-MIT docs(license): add license files 2022-12-29 19:51:07 +08:00
LICENSE-MPL-2.0 docs(license): add license files 2022-12-29 19:51:07 +08:00
meta-info.toml chore(global): update shellrcs and config 2024-08-13 09:06:17 +08:00
README.md chore(global): update configs and readme as usual 2024-07-21 07:45:31 +08:00

~ajhalili2006's dotfiles

This is the redesigned dotfiles repo for ~ajhalili2006, because my first repo became a mess so hard to fix it in, built from scratch and based on https://drewdevault.com/2019/12/30/dotfiles.html.

Quick deploy

# Working on it soon.
curl -fsSL https://scripts.andreijiroh.xyz/dotfiles/setup.sh | bash -

Available Git mirrors

This project is hosted on hosted instance of sourcehut git at the ~ajhalili2006/dotfiles Git repository, alongside the following Git mirrors:

Setup

With yadm

# on a Alpine Linux sandbox VM (or chroot)
apk add yadm git gnupg

yadm clone https://mau.dev/andreijiroh.dev/dotfiles
yadm restore --staged $HOME
yadm checkout -- $HOME

# run the bootstrap script
yadm bootstrap

Without yadm

It's easy, although this will be different because git clone <clone-url-above> will scream some errors when attempt to do so after creating a user with their own home directory.

# go back to your $HOME
cd ~

# init repo, add origin to git.sr.ht repo (have you got your SSH keys?)
git init
git remote add origin git@git.sr.ht:~ajhalili2006/dotfiles-modern

# another route here is cloning the repo before the user creation take place
# so you can skip the "fetch and force checkout hellscape"
git clone git@git.sr.ht:~ajhalili2006/dotfiles-modern /home/ajhalili2006
# ...create user "ajhalili2006" here
chown ajhalili2006:ajhalili2006 -Rv /home/ajhalili2006

# fetch and force checkout, RIP any unstashed hellscapes
git fetch
git checkout -f main

# logout and login again to refresh your shell env

Codespaces + Gitpod specifics

Because this cause confusion to most cloud dev environment services, although they'll symlink stuff when there's no install script, but that is a design flaw to be work around in the future.

License

TL;DR before we dive in to legalese:

  • Everything is licensed under both MIT + MPL 2.0, unless otherwise noted. Most third-party code and submodules used here aren't covered by this policy.
  • Open source !== open contribution. Since this is just a personal project, expect your contributions to be either rewritten or declined.
  • For contributors who wish to send patches, either an agreement to the DCO (via --signoff flag on commits and when sending email patches via ~ajhalili2006/public-inbox@lists.sr.ht) or through signing the project-specific Individual CLA alongside this specific copyright transfer agreement on this project (requires separate signature, uses FSFe's FLA 2.0) is mostly enough. Doing both is recommended to avoid further legal headaches down the line, atlhough ~sircmpwn recommends against signing the CLA, especially due to legalities around copyright assignments in OSS.