feat!: Continue the migration to chezmoi

This commit is contained in:
Thomas Brasdefer 2024-12-18 16:50:11 +01:00
parent 15b6581aa1
commit 68cc9a9e62
Signed by: tombdf
GPG Key ID: A047E76CC4582988
29 changed files with 677 additions and 65 deletions

11
.chezmoiexternal.toml Normal file
View File

@ -0,0 +1,11 @@
[".vim/autoload/plug.vim"]
type = "file"
url = "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim"
refreshPeriod = "168h"
[".config/kitty/kitty-themes"]
type = "git-repo"
url = "https://github.com/dexpota/kitty-themes.git"
refreshPeriod = "168h"
[".config/kitty/kitty-themes".clone]
args = ["--depth=1"]

View File

@ -5,3 +5,10 @@ utils
{{- if ne .chezmoi.hostname "ecole" }}
.config/gtk-3.0
{{- end }}
.gnupg/.#*
.gnupg/.gpg-v*.lock
.gnupg/gpg-agent.conf
.gnupg/pubring.kbx
.gnupg/pubring.kbx~
.gnupg/random_seed
.gnupg/trustdb.gpg

View File

@ -7,7 +7,7 @@
</div>
## About this repository
It contains all my configuration files and the script permitting to install my configuration on any Arch-based Linux distribution or any Linux distribution (as long as you can install [that](#prerequisites)).
It contains all my configuration files (managed by [Chezmoi](https://www.chezmoi.io/)) and the script permitting to install my configuration on any Arch-based Linux distribution or any Linux distribution (as long as you can install [that](#prerequisites)).
**Overview :**
- [💻 OS]():
@ -36,20 +36,20 @@ Check the `utils/packages` file to see all the packages installed by the script.
## Installation
### Prerequisites
`Git`, `pacman` and `sudo` are necessary, be sure to have them install and configure!
`Chezmoi`, `pacman` and `sudo` are necessary, be sure to have them install and configure!
`Git` and `age` might be useful to have install.
You may want to install the appropriate [driver](https://wiki.archlinux.org/title/NVIDIA) if you have an NVIDIA GPU.
### Installation guide
Clone this repository in your home directory with the `git clone` command.
Initialize the `chezmoi` repository and start the installation script with the following command :
```bash
chezmoi init --apply https://gitea.hexasec.io/tombdf/.dotfiles.git
```
git clone https://gitea.hexasec.io/tombdf/.dotfiles.git ~/.dotfiles
```
Then execute the `install.sh` script file.
```
~/.dotfiles/install.sh
```
> [!CAUTION]
> I do **NOT** recommand you to change the name of the `.dotfiles` directory nor do I recommand you to place the folder somewhere else than the home directory.
> [!HELP]
> If you just want to get the dotfiles without running the script, just use :
> ```bash
> chezmoi init https://gitea.hexasec.io/tombdf/.dotfiles.git
> ```
### Finishing the configuration
The script will end by itself. I recommend you to restart your computer.

18
dot_gitmessage.tmpl Normal file
View File

@ -0,0 +1,18 @@
# Type describes the nature of the change
type(scope): concise description
# Message body - Explain in detail what has been changed and why
# Use the present tense: "Add" instead of "Added" or "Adds"
# List of change types:
# feat : New feature
# fix : Bug fix
# docs : Documentation only
# style : Formatting, missing semicolons, etc.
# refactor : Code change that neither fixes a bug nor adds a feature
# test : Adding missing tests or correcting existing tests
# chore : Maintenance, dependencies, etc.
# Closes/Fixes/Resolves: #123 (if applicable)
# Co-authored-by: Name <email> (if applicable)

20
hooks/commit-msg Executable file
View File

@ -0,0 +1,20 @@
#!/bin/bash
commit_msg_file="$1"
commit_msg=$(cat "$commit_msg_file")
# Check commit message format
if ! echo "$commit_msg" | grep -qE '^(feat|fix|docs|style|refactor|test|chore)\([[:alnum:]_-]+\): .+'; then
echo "Error: Commit message format does not follow convention"
echo "Expected format: type(scope): description"
echo "Valid types: feat, fix, docs, style, refactor, test, chore"
exit 1
fi
# Check first line length
if [ $(echo "$commit_msg" | head -n 1 | wc -c) -gt 72 ]; then
echo "Error: First line of commit message must not exceed 72 characters"
exit 1
fi
echo "Commit message format validated ✓"
exit 0

10
hooks/post-commit Executable file
View File

@ -0,0 +1,10 @@
#!/bin/bash
last_commit=$(git log -1 --pretty=format:"%H")
signature=$(git verify-commit "$last_commit" 2>&1)
if echo "$signature" | grep -q "Good signature"; then
echo "Commit $last_commit successfully signed ✓"
else
echo "Warning: Last commit was not properly signed"
echo "$signature"
fi

18
hooks/pre-commit Executable file
View File

@ -0,0 +1,18 @@
#!/bin/bash
echo "Checking GPG signature..."
# Check if a GPG key is configured
if ! git config --get user.signingkey > /dev/null; then
echo "Error: No GPG key configured"
echo "Configure your key with: git config --global user.signingkey YOUR_KEY"
exit 1
fi
# Check if GPG agent is running
if ! gpg-connect-agent /bye > /dev/null 2>&1; then
echo "Error: GPG agent is not running"
exit 1
fi
echo "GPG signature validated ✓"
exit 0

View File

@ -20,6 +20,7 @@ display_header
check_not_root
check_internet
check_arch
check_chezmoi
# Request confirmation
echo "┌──────────────────────────────────────┐"
@ -38,8 +39,8 @@ source "${SCRIPT_DIR}/scripts/shells.sh"
source "${SCRIPT_DIR}/scripts/development.sh"
# Setup configuration files
echo -e "${GREEN}Setting up configuration files...${DEFAULT}"
setup_dotfiles
echo -e "${GREEN}Applying dotfiles configuration...${DEFAULT}"
chezmoi apply
# Final configuration
setup_final

View File

@ -0,0 +1 @@
{{ .chezmoi.homeDir }}/.config/kitty/kitty-themes/themes/gruvbox_dark.conf

View File

@ -0,0 +1,7 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB3SEFQenFBK200RnFvb2ZU
YTlNRk1CMFVrbWg0RTN2TkIyeFdOa3RSYzJFCncyNk8vSkZXcDBTcW4rZ0JieWoz
UkNudHpEN282UkY3cDhxNFAxZGxZV3cKLS0tIGxOUE5PMGFtb213ZlVHVmMzU1pB
dEFOaDRJNmFPeSs5Q3FGRXEzTnYzTzgKlKsD9z6TA/1rKjXu0+r2kIlBmb/VNfrh
Dmd4xjM8UGPqRHJiSDd9AWm5HKRMYNIi+I9bN2GD22bF8A==
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,19 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1UW00eW4zUkplK285Mmxh
TUIyRmxpUEMwTGR5bnB6eWJhT1lHRzhXSzNvCmJFZ2pEc0txMU1IbCs4bEtQZDc2
elhLSklMY0wvOElhQTJGVGJzMi9KQXMKLS0tIFg3QWp1ZjV1YVprNkhuY00raHFO
RnZ3SFJSZVFkb21iTHV1VTM5a2xnaTgK+4pr2lQOYxKTeCv5Ot5H6avqsyiTLzuD
tagstCg6ChMJI+m8NNTpkCVUDWYcbBN0KHkjZIhUPTqh41eqWHNo7HU1mAXinrkp
FV2Ixha425rzX79ASxcJqBLJrhfd4/Oozu4ZQ+TbCTq9A77Zw3A7l9dMbTlmlp/y
TWYUTSE98lsjCt2DjTesz0ebbUw0Ozxsbs0ikolbTd59oCiKUjMqVEsMPxKeQa9Z
K6BzxyD6R8iikPHgA4oKxRmYABQTuwJjstcJOIuzqtNVJiMsAxmQGCp+Muu0RJC4
Kpwqb1mKmmYp9ysjgI/G/kan4n+kv8yUDJOuUCJ4DCVCSROfIOCDgw87GpLsdXlj
d8sCqi62k1sQsb9C3EcHyCMe5inrlFs0Zys8ZqBlGg9d4pL0eR0/zqjGc6+mWofI
9Ol4TKNP1DVVbR0iPyzIBKfsAf00Q0XOpQkcrvRiF83pVn4APb2bs+m05C62ZjGS
+TLYyTdCxlnCas9qWSHyyR9Mv26KD5/UtUutTs2oQha4liDFN2F6KUAB0QDCbh+A
lWaBgGNIMnNw7AdumJ+f+Hwj7dY4MtOnJX/REBPsVDdapmXs7/cmyZfFthO00ixL
copeXzECiFGd+AWouZdYFGjwSvSK3RtUdX2vEFzKM07mbSnzv2Mr511D9KUaXjdv
PS37aHj2l8f3wVgF6FwGO7XYCF016l6rmQ0XmMFiH9hlPmpiBo6KhlHKg31KU6i9
+30KRlGBJgpSHr//k3Q8HvJ58Gb55f/XfsUOgrWWBsQKGSxS8SR53iT4KgdYpnwj
aUxSAFe44GjpZasfzqBnRQILFjRKOLVPDcNE9Llqv5Q=
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,33 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBzSmMrWVVCM3o5RzFHMCtY
eXlFcitVTkR3cXJvSDBJVTcrMzUrY05YVUZ3ClhHbk9sOWRQazMzVkczdEpicVN3
b2FraUtjQUIraUhSR1F5a2dxcmsva28KLS0tIHRUT0lMalZ5QkNzMHlFSTc0VGkr
cGhvRGxXMExlT2p4OUF3ZnFXRGxibzgKH0s8a4t5AjMyrBm+fRpUPX40uJqhx02k
BeiSsUMn8tN5aPbU5xf0n6tSSulVlrWcypJFMkr0FVNcXpY9PROctjGOd94p9GYl
TU7E2yM0+7SByYCfBuWGbsM6j3ljK/0eAgX//GKMTLOnnQYxi+S/QGQLI618iM6V
PKEEHZLM5BYGcRmyHW05KeWNly2nughuichNEaxXApR/PzfX68d1Y2RIMvqxgbSd
kTxDqHDE5Ox1LlVtI2/WFOO+wj61onSerqku1rase8ezcN78x4dMI4Dkl2SNTiUK
TW356VHw9CPW4+m2DQXr6yV+4bpj+0cqCfqzoEg3bksQA1DjTfZzv6K2gtFSRN8m
CO2euPCeVg6f1m8vrX/u6ObSgc4QiWoGAe9kBf/DeaEEGcCmXeOCk739Kks/UIK4
4T5CD7ZwYl2fuEsRRNZU4Pbi2GLH8IrL1FFS47jNwLvbUKmWNe2pXHgW7O68VTSg
AnSrtv69K1i5t+0I3RfmygWWEQSIyBEiZWgdp4T0urYKl3J7J5MbFZJ6xMHcscKs
4Fn+wPL4u0rgwx6TyzlV8SZ32WqceDgrkOPIeir1S15+Ni6KIJAhg9JLcxTGDumT
4nk+1UnUYwBFVmpG6Vzt9nFjrni+JmiRuF3XWJjwJlFgsSSh2al8JxL+Ag2D+u4W
L9mcGcIlzMf0e/MPVq3dCEuQ7tmNgnzgByV9hUTwijs80+FNNUdHH3I2alkcv6n4
miN61koRUzAXhCIo5ih45bD/R1MmtMfkL4d4tJIYUj2TqM+COg2QL2gA2n9t1gXE
nVGemUm8luZehVZCZORtXmS3jqgmS6se+PQ5S1jMq8Pzb8OwgXRF8qw8KKAMtI2e
wtKhWpSQM9rsojJm1WJ9c/pUHFPPot5ZKNLKYjZ51ox2J6GIEdXGMH6MoxxMIRC6
AOcwuwf2IbPyI+Z/0lQ94JzxZIYGk8aJarwqUcBv90BQgbz0hczV0i5jqNxgqDHA
Zb1Z3fGmtyFAIoq+BVdDIGKRgD9HsXCHGUfZf23f4d0rXU14Gk9fI/xEzFPlWvXO
h9FmoJAquu3MXU1b2YSu66W3eNeZaOYatE6OM+eH7LWKWoDhETUT85PQQ3PdTFqi
VDpwtoAlAsjxfkUmzg+Y9uvobiS1b6KdFDd+jJ+CmXZTf6i1fcKYQ/D6jGaaxdGK
EJ3D4BP45EteUHwVslJ1RiGvk3I0HjLl5Z2a6pggE8DmJI2qIekaw8PGBf/RpiJA
uEiWCtV5IIR03vZZR7Gs5R1wY2bu4hPyivyh5VwpNtGNytGakQXK01fibtcf54ol
9Y7dGCTuRgEv87whZwGwn0vL70GhiPMpP0bFv7I2Wa/ouc4Kq7TJQqRRgQj1cXzG
RBlYaAsIQ9CqzzS5Hdj/WD8/MCLWbRNDpuSh6Zp8BLtause8HCPN0qrtInChOE2v
YoCCIeiuCHu+0R25Laosg3PpHDhwwLkDrL5NaqznJeWwCJi6KwOPRO0rXdSyVo+1
AgLMpjU/R1zACtCxFZ5bw5Mf9W+1j00bHvaIcMBnPWTXiC6KIHpqTrwzpuUXq5e4
9ICwb8ivId2PJZVcoAKSGez0GsVsR0lX2d5Mi6LcWKBG5llRxEh96Y37r9J7Zutj
9XDmzTE3Iy4g3FlNE+tQr2fwm4qnEaSRF7jC7useCSWz4g+/vqHMeuJ7lUYZYcDC
fzEKOFH6/cWNKCm4zDqX5QUrjkYoNUzmLw1ZmVlSEj3RQByxToUTCw==
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,59 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBoZmkzSW8wZUJsQ3FXcjN4
OUw0dTFUaS9wODZER05TN3YwbjZPZXBSa0EwCnV5d3NKbUR5dE94NVFqYWVkY0pH
ZWM3YW5zcEw2RXo2M2d0ME44dFlnZFkKLS0tIFhHQWd1M0NQTkxUWWlNUnZvNUE2
Y2dCcUdQRVBQOTZPUDR1YlBCK0wyMmcK7QoE6LHwo7XQdNBLCa2eBySCf7WS+ywr
ZkxOmTxyHyGOainSKceQUlj1fIpqftiv1lN0GHlL8T7E2Ku+gpU7cjM3G6Wklfhl
85F2qujod5TmhrTlSddBfjYRvdRqRyL03oWHPjXYUzxc/cs5hqxXxpLD8Hnr4bMx
c+zX6CPN8iOQsZEkgUXCMXbApLd+eH75YbqByBr89YbaYTtpvcGbczIEqXbFcq6s
NmKNl2AZSA+uwudWtnSdr6Jrt6C3skxveKJy4nRI5JYQLmi5GbCZXz9845xOTsBA
Kvo7aKSanHXgs6Dvj9CupTp7GkuuZZOwPj7yKPk17YWASbK2MVUvnZGQWsxKrPkl
xaKaeqFVSoofSHXj21z4yurYeBULzfsWrIhSXpZoxlYfExhpXj8qJyEud+rSuEAW
AKZzNGnk5aA7HBQmlsHTs1rlJu/ZFJGMUT2R7R8D1kk8lPQKXL7kDgIzGh76sxmg
DRP3RcFjwrJFAE20SmY5KKcuoelu2PeRnU/VqAp25EM9v46hDhUk12suey8KFDZc
B7BDUGk7qMrQxs+FHV/nSQCKd3nL+R35xwv8HZHU96K+lqfr6Ko7obHZ7C6MWOlN
/SjYIGmipWK5pNoldWhYU2F9I6LyxsfY/tZbY0TB6MSGYhbh8MfQWORnRpw1LeVp
0GlJutwlhYqSYwt4DvwUDXXItBw6mlN3hea2/vqIodD/JZx3hL8Ml6JbLDIZWcRD
X6L6JuUIa7Dx6hLKxGKCiNxGq4c8LpqWnXw+sli/a8C8eeqKOtM074Lksmbc/xc0
7/7Q7VDOT+dtPE1XwIYhygNUS19PnlLO4+CHUGI8nKkeEmPNSp8MFx7ZohglkyzZ
i9EYWWjpQYAlmYdAYy/l9gYmVTV7y9FEDlK3lvKdYUJ/+0eDnlYTK4CYyx/xs14L
cwJ8rDPjJ1ieifCUfDR9sMAEvUiTm6/CeFOaH6QXJscxkdm7SEjYzK8x1Z1bLEgu
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
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,19 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSArZkdLbjM4Q0E3OUtCbWRo
QjNVN2dUMHFpMW9NY1pPODJuR2tvaUVlbGdVCjVnLy9hQlhrWUYvSWI1M3lJOCtE
ZTFlMEdUbncvenVkM012SmVrd0ZzN0EKLS0tIFlEZEY2YWhsUW5iMWx2UWtFaURt
Z2xWdDdwQXJJeDUxOHFEVTJ5a05jN3cKAvAHKh/jWRMvqaBwVWd3r8LfeyTfZPA/
fL9Hrun2MwLbPug0lifHeAqdNgK+4SMpxdsDtqd5mKU6LuXIfy3pTFuuplE2Xybh
XRSOQQcsIHkfCdYSkZsZAHWA9iHL4VDuOs20naNDo8vTYDgUsyjpB7jp/gSe5UKN
J7iTirCt5Z9sRXxoGMhPS2vc4bYEHPJF2ZnxiX+0c3n/eDYXviBBSgcr7LDC50hu
fOudj2cXgw5EaEd/KQIaS9Ri9J5xC1kvFxpVjzC5gifa7leQ53D+JTvSFezi7D3P
F6ll+xkYKSIqcq5pR4jDJ9xPcPtYKEf3ycQT5sUgxDEFNV6IrmCyGeLoW+sOuUTm
62fp0d0TYHc1g9/JH0GcxorD0YkI3WO4YG/2i1hOQA+VLlyGf4/UTHXft17svf6z
L9YzUCl+YZG+f2ewKxC/j4gL0Cx5n+oURt1tchU4UF6ExZPB9j9pbLoZw25VPUN0
crSuWjxo0T7waixaCV851MUybQsXWQQWAF9oA8cGUtruVEXc7C9FxFJ5ClAQR3Ty
XorjvHEBg05xiGgm+asuBWIDexSjfCoE9/P/WGKUQ8nXRKmnhmtcczGJd2Arq3JR
4WNTX+1W2ilyjJW1c0Q21ShGfQJmhC0UkFszub6NVl4iRJqk79eQGITbsDkBVYf1
H6ia+iOvN2T4tywjo6ChVo7MqrldznPA7H0JQDTB12QZEOb7lthRCX0RDeqye/Ux
LHbSGyMK9SucRi1CzevtDdPaht59HKJND0q0ZnCN5Tr13WXFQk0NjLXR6hM2Mpqv
v/XMCQs=
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,41 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBVkZRODJoRGNVUzI2dzh1
MjRRQ09UUjhscFRTNVZPUjY5ZnJ4MThJUUVBCnc1bjhKV1JXRVJwS05VcmJzc1ls
R2RIQUFPeXdUUlJXVEV1b1FFcVJpcUEKLS0tIG5VSHNtMjd4eWNycTlIeU5CT1Ev
S05uUDF1eGwrQ1ViVXFMR2lPZXMvaWMKL5s92un/hUHP4Q/RsHLSxKY7S71/yPM9
qlFcy+IcKKEefjYmlmfG/KpZqwwz2bn/68ZZo3WxSQxzaR/+amThd39arsKeIjEL
4KbTtM6sbtfYZ8JaqBJSTb72TKcgPz2YPy5et0+hn6gWkgk6hS/IMimSfmnrKyUP
jhHkC3+Yvnj3rvFxUl+bgmjjiD7uT6uqYqq4PRSWn20bDkoDvSIaujJzQi5EJXIa
QkFjLYKF7wKm8FPKfFNd8OvkkOyd/wjG9tdQWuXMqFrJHVRrnhfe8jReFpEi9uw4
gfK9vj75jMrH5u3zYsDgHDGOylk/+u7eCwjs0sqaWDQOtFc3iyaNM7BGvEvSug+E
aWsZcBkMpQmf7UPZzj+im0yRHO5AGBcgwvJJuZxKzNVxFn48fvq9OhC9Dju819UY
QifYDRiDDsnD9pSwpw3Qf6ybalDRpHMWRo8szCL3LE948Dj1PoXpEiI1ox5J/uUX
CBmv+TIAyeHLWycnAvKCxc0UioZUW/+/LLmfeS636VotS8OO+ce6zukds9W29tgZ
kldmhEm+s80p0Y8UGpQ35lKzzJExKI5oDLnSAZN2Z4V3RXxx90ichoBZ2+Ygw34+
4taIBqqjJewIocQkqLe81OulYwASjkDzjGPlPdOChcm3YD4iNbG6qYQAk+f6NpoV
UIqKMkq/+QBV/e9wO74mgoEbcHwLVLp1qa7vPytHCEJwr6/s7lSEC/81vSdvMxxk
DGP4bAWNTGfp0aaWEsLOiQQLaDPi6EU1KVc8qIbZ82bK4DtjfCRj1Bn92icus1st
/tBFYHr/DVIbjqAieHP/u8UbShpw9srzdD6I10mJsh8OVyjsbcg44y3frBqogBfa
1qfQcjrYB4dcuvZ2H/HEhJ7lkKv3AXqtlJK3YLylMcufKYGl4h6rzF4hNlGSxxxY
bw2obJyYlzQa85i9oQnOAh3zV+gL5n0uCdei1E9h+8W9cTAG81JTDwaCkIg2cap/
lvmuWYcPK/J2QNcRpciRereEDTdIuARkVUEyKTTCM0k00BDEFhANQ4OxktOmNmia
gz6SH0y+qQ6kEIJO+kmgTqNvss7hJDOLoji+fxYED7qcDwhLrT5G7XPK2gUlnRgK
blOErSg1zGRCZa9LAwV2vAHoryqOjKh6MdUVEfmpyQwesUapE5mvSTpp9TzUT++2
Za3M6l4B7orB6XdruGrdBSBsP/W770HmIOsg+p9GmPAh+tah16mlOXJc7ReDjXTj
viYTaElxF9klaGvxaz9hBCH3yZ7/rCzX58+rrJVl+2yE0drzMMWUcBmCLIQ55kFg
SLxA1HeVFMn/XPpOMGHyeJNMzyvR5Ymg15hEpkEZkj4/A8DDWpBeBrl4bFJlUDHG
N/BogO5cgTA0QEw8XNTwA5RImfGhqP0/mZP9Bjhx4Nsjz+sgi6lHHJz1RQKzLm2N
7RXzzJALqsNbMDmG5je6AMsNvA+s7+XV8BXP/wTDfJQNUJEMfglyX8PIHCxKrQNl
EpO0rfphXyD3WszKz1DNxX9BqOjwJnWoycjgwVFx2aIBZLNu+4clrc9SEFupQvqc
XZLAvSz19ZdnU3y00Ma7dD9S0j42j7ltru9bKjRMzmbh+q7fPFNlvL0UUG5QXlv5
Ap6cTRs3jiSbgkUuETRwgh4yjnpqaku6A1QVYXVV3692jBQ3sQu4b4v3WlSA/Y2b
6k84efr50jDXZY8W6+Q8RyMlzQcutyxkJAEmUDIbVR0upAJ2nYLiWajjSHOdszi0
aJYCenn5dKIfh1tVax1GcW9UqZbCyfyx87Eo8lZVxO7+2CjFVVccneNsMBGVTYuv
nGrnI4YedfXBTxmrXYULvnJD44q0LcEVBmrA8rkNOgKl9bMd4jGcjLoQZbIfZOfG
EnuwwolPvJCpKHfLuv+3d/zAaJsGRikDjfoMqY7xQJA5RuV5bKvLFt+8BrbNkG3Q
8jQvaMHXJ6j/30W+ncVaj+4lrRKw7+dhsPruEZn7kj/W0ZsMQp6IPNR0YSLwBbuk
3PnQz7CWQSeqT75jdDXdMllfd7aFkTuKlavL3MXdYGVG7KRRcHkMalumT+KClasZ
Ittw3YBndcaJzFhLS2uwsRQlHGIwHKQSRbIIfZps1ZctD2ezmWiKDvE5MGqfDyHr
8JjsLBnKPxNo7qOMOO9TtiF+QS7967s7M5bkwfRPdZdF1m/vBsEJb14S8UjhQCQn
w9LioN0=
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,71 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZRDJkaVVhbXdBa1F6d05H
K3BiZlhHWnllZEFXYkNVUDJKSmg4NGJlV1Y0CkpRMUNyNVM0ZHRJMWxGZGhTMEFC
VmRZaFR1VGFnZVFtem9mMmRoV3dHK3cKLS0tIFVITVcwdVVNNkJpYmJtUzRmUllq
dUxkdFJ6M2pmRkVIeGMwNC9MNm1LUzQKf2cabfxMoJSZtWJBnMzn0KYxfSE5L7+f
YChH1vBsgzMM7zkpUCXht3IqRQ9uCys0XGWoekCVzTmcxsSTm9wkhkkDV68wq+/7
y1S/HXFfmYLASyImtPik8l8ed68em3R1tnjYyQ9u/Q3j5vbxtT9dvVmooalncw36
SK0ql4MdIphSVYC/EUbO5/cYR97TOw2fwJyQvPxlOlKWbycpomdJYTftexKIQrHh
DUosnc2mZSsXPdGfflAUWlN0ngWkLKatCWLHTH1sanbq8/cha1Wm2FgLpOJ8Kj2P
eJHdCuaCCxEAHhs41DNCakAsrV1cSxV5gwl4HnV4AaTuQMl4IdOPrKSuJIaltQvc
9huQI54HmcRid9mFgeApS+o4n7TudE+F3+EWdLlXQLpVfw6tjmU177DVVjsdevoj
w8C69FmEZWrilR9W6uV+QUsD4dS+uzCnIr108C7PAeCK8CRDeuO24hGFaiOt63kJ
HTBiapzF741CSgUu5uTpNu3E4nkbHRZMMv6jPLSJNy4fYA/RGzCiEfDJvovPO4pj
o9jLUXjpRsp4k8kTQfYYv41EbVA4gBtX5bPkrDebGpSSi3HiDtdGtffSAnUCQPPf
a3VpyoJnPMZRle4kgTyjnzEWJH6Bx9sQbPP3V+wW4pqLxt28sh0TWHpF/fN88hpm
xn4jGPma6owXUzsW2HNHgcGxBBzGzYzPkUGnzvwwM3OK3+iLpNLpuAxEvlE6PxT3
hCxg/N4Dikc3bl8a7Jo6HiDJ615BmApgmtsK6XsZLcvR2qvtf0biwR7mhWKzmsLT
E8eVRUxJfsHFqnCwi9fHItHosSQi8KQTDv1j3tDEWTcsQxMnmMeiK3ihNqXByxZf
BanOK+VwopaljfHD+j1QudCUHyAmB5FJlo/76/c0VJQ2N3lI7TkeJ72WLKaSVfeX
YtIELube6PR/kGzydYi3w+LBquRgMcepVhX8W1bxy6fPeav1xmJ57oFh7TykKxlo
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
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,71 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBFWFI0N3JYbW1GS2R2SE5Y
UXNkVlpqZ01GS1c0cnBhVDBpY3VJbDNrRmo4Cm1xVklLbGRBYVZwcTU1LzROYzhQ
c2kxNGk1a25aWVJrQ1lnaHM2MlRTT28KLS0tIEFOTzQ4TXVMVmI1dWJZMG91Rm90
RFNWcHo3ODBJTktja0tJSU1CMlExbHcKrsQ6Trp40E6GWhyU4nWzJn9je2uccNZG
8Q2cS9A4hsiBj6okNTyRMACsAVej8vco4riEj8vyoixIXIehBt9BVSWg0Fryv6XK
GuDRIofx2TuBlMEGKIhC46CDFU4E0GJYsgKDjxcR888ZMq/nH25piu/xltSF8hyY
mgLow7MybaLCmN9rYOnxowvVfSwfO1ZOJi+1oJ1AlusWqets8tW93ehbbNh891kS
Wh71E5dpjL9wkUCmN+Mv9P+zFP/TrcV+QwF1xNUeRtT6MlIqAU8Z+bV3hVwjnHhb
G/1Fk1KbN6gJDKwvBLdT/rcPDD0Co3dLzVXtZbOxmZ2Kl5RCF6dEZk84O1oLycFJ
5MHY17+QeorAA4sFi3/w4I5naO8JsnXpYUy5WTPaBKQcjhVmhbBjYc7pLpmp1I75
9eCbT9NmPZvg8iuDnKywwyvWqBuZ7tIGp2MHhu3lku3Ca0kykuyXGoGndc98HyrU
8ySpK6F6LiBRw7559vBu0c5px0WgTHGKeZT1jNzWQLG2uLt95eWsFWQwqSLHgwd6
Y7P7DqwFIAKWU1WK0vWDixb0qTj7qOujk57nD2OJiRuPdC85AKbfl7KV1Pi3dMBI
+VrHYJ0U5rBlsX6rVbGaO0XSrxulmYgEkgbOO0ObrMiYkfj9mnH/vQnRtRuT/LZi
eet+3fv/PHif6hjEY448V2Ku/9fY6eY8FnbhaU0iaWUgUmy8iOh1VBQLJBhZg+cM
goDtldaStUcy9QHwnHcq9KdAmingsJE2RfLe74oHhy6+7+cu10CEiNucSjZ3yNHz
/lTFZpNnUJNj7++P9NCs7bfiZvZR/ICWXb3/rCFFGsPnkxHdq9f1ksp1XqnbHDkU
pBNQnIxUwwKvVGILZCtmrYg2lHMPGIdqks255lbaISrManjh31IpKcs5ux8wBLZZ
5yzRfYkBDZKDZaVsEkjte8Jh1WSdsKMAbsQyv11um2AnmGYfJEXoOQLa8BR0i6UY
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
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,9 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAzRnBPSjM0d1orWit0ZWFw
eDZKeDZJOGNndkpKZytLVDAvaythZ2FpbGdNCngrTmRzcTZDYUZFZWN0OWw3eWp1
K1Y0cWp1ekEzWFNhVEVTY3VjMy96SHMKLS0tIFVYemVZZEJWTURJM2svMmluNjVr
KzVnWVRqQWVDTDM2UUNmQlhwMmxNaW8KqM1uV9fwD/VSgFzrnT0pqzb+j/qF2naw
gxkSq9JVMuYA54rWYjyeMBolpl3KzCVcmDHG62kJqUXIVpIsAf29Zpw+M1ayXqih
78njniDFIrY4m+UTQ9Iv1HyNQNtMyuFgSHmfvSRnVQkzjsa14o2XPVEFjubtVTf4
ACmIQ1yv
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,10 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBzRzZNeHRPRVhhclZMMDRC
MmtuV2U2N0RqVXZ0NzNJZnMxZDQyQjJBYjMwCm4wWkk0d0t2SzJpbG1VK2hZUmhm
bmg0cGVUU0xPU1BKM3lYWTR6SlFDUkkKLS0tIHZTd1piY0YzY0NMamh6MC9FUWRt
L01rUVBoQVJiVzFubFhpTG9VWTJlRmsKtrF1JIvLoeZ97cHjW41Qn9Xs5QdSglOn
1GVhM7LfJNmIvCIq+ALFNZQkX9O1KF/av76fBveEpJ5Lnjf1G7TC4pljSQpSeNQ1
tmkqWSSTTdv85zT82WbGveCJjxNF2Oe6wLyxU1qPyfRasnf2MKJOv81+WysNjMwO
U3m5XK1ZiLb3CgNxAyBcLD0ceXxNnDh8Gj5pfQuMuT9pMjmlW9/t/AbVjPeimVk4
xqe6otu8Jw==
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,9 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYb216eHJjay9Ib2l6Ny9v
N1FxNVdDN05ZZjJSVk1Mbkl3Wmx4VndtQkMwCndJV1pIWHVJZ0U5NEVoKzdkZzBE
aWFBU201cVFqYXJSdE92bFJ5MVZDRTQKLS0tIDdZTUJ5dUJPdlo3M2tiNzMwUnpj
YTVidWpObG5lMStmeWFvQzJGU0h3SmMKk+egPvkKu/xvYr35N8je4e0oWJhuaSxk
y/Q3AQN5Gbr9rKjSPRFJUX3GJf9XEuGfQ3TURtI7QXb5DEC8yESUWDeeOitAdT5b
rWJvav3mITf37lO2cG4+xvZbXfEej502dj2Wxr0/4JDWjpxFHry5YDnvHHDb2Y29
6laXBOfU+FuyU7jLoDaLHg5PyfwmgA==
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,15 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBlK2NEdE40VStSV2dqUk5L
UHlTRGpkR3RpczJCZDlvdGRsZG5jbGZCUEIwCm5HN0xqRXR1eGFEOCtkMmlXUm0v
MlhvTUZJbGp3R0UrcThNTzBNTjR4U1kKLS0tIGxRbGxYcnNDeGtvejJ5b1V3TkhZ
SDVHQ2tqZHdlUjJUSmtnRFJNb1FCZG8KlvBk8VYZ/sV7yezdIccrtYt2RWMqfcQP
/0pZtKBtlMctg3INbfEHksRD+ZdZh0tMqWSb97rOKfOCfy7PApkcNOvRCAP8kmtI
TikPj0EfzaaKJ+OyUosAvg0suPw5HfgYkVUsJ6Ebi3bb9aWpp5FY2i/YzMsd1zUt
tdoJTQR/qBdvIaxlAWCvfoC7w9ZkverqW3VcoOisvTTOP8zr12u8V4uIJbhPz9c7
dYFTAZSXNIBqOI2IiU2vQpc4gSthakoAfHKtn+H6KFV153gc2fYVZ1hyBoygcWvU
OE1VIAV1RlR6UGXSCTgoDjM2sBKAF6h0TktrxIBZ+1kzxDtgHsyt5CzDhp4yWpjV
kscfS4AhIZQBwZGqiWKcakIp6R849x6HHWU66ovP0ANnP4fUghnmv4EqWSioCnQL
yYLD4k8GOQ1FIusATAJ8CjK+UpMs7bs+JddFl30gWft4mKq0jPfvuvnE2KQVuEqN
FDCKyRUY5dwTR6Lwwo4qYcJfXUorhXZQ90VhNB1cpG/hZ9Ew8LQwYEWsGs1KZXJk
+Ehn23FNmMciVU1+QJ7DLlcrEoRXVpQ=
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,15 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmMTJ0QTMwdW40VllOalcw
bGlrMGt5RkVVbDR2QVNQcEIyYVcySTc5V0RvCmgyZkFncXpsYTlOeUp3cG8rQkpz
a3UvMjlvbkxVZnprL21UNFluT0M2MzQKLS0tIHhBZXRROFZmNGxoL0xOZkpiczkw
ZmpSejcrb2VJa2FTNU5oVUprL3RNTmsKC0uV8w+xnhZ4JyEyJyFo6mELse6CxK97
U/QtnB7o5iTPp2pEpVyOIBX50vhqMoewDKhlPzwtepSitzXhVcnOmmyXewVfxij4
1v3061xIj8VRZhc04dl+xA5Ex6hjF/4jEeLzPwe6IBEuK7MW9rQDE0YPKnaDH2YQ
lcDEhWTiVfYVmjanOsvmkkE44KKBZvXGQbOO4H3zQpUTAug1gJRqKrfXW7Nkp6aU
xl+GMzs5uyin8lAhbTX15VSFb6xkQyhac1KFKrhaLTdN/r3+BgrtGyJnd9IkZ+WY
5+dvmEBf+nc8SEfLZJ+gvdngLa/vT1UlX7NTGnW3CvZhi/cETV7TaEPHEkwlq1i5
L9Lx/r5HWj3yZn0fcVaJ7H8Nmr5B8YD1xuAcHb3kQS8cHANnybbeS6ZLjSVPdZGh
FzFhp5nGItxMVFfIWUc2xIDQS3ftN3BRLMy7g1flhHpgyvIj4vzOWkG/2eXmcwkd
Ixj6GlTTS9j/OOi2Po+RBXcRkPjPNlvHELuKDFAz3tvYjGTvEI/g8r7jwyRTiw6N
vrnSgQihUD62qtcfTAL6BfhcGUl7htZ9IYv6xOj/IlHjKzkgwbrFnl0Bzg==
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,92 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAyYlpXaWtGbkx2VGVZM3RE
Q0xPVEhsOWZ5VWQ4QlpWaXNGYUh6QzBacGxnCmdyM1diWVFjMHdZb0tvdEJQZWtF
ZU1DNkN1VVAxRkRENzNsRzR2dC8rTjAKLS0tIHh1R1pVOGJEcUhrL1dXdzNxRHI5
TFJLZWV2c2F1M1JyN1VWcjE5anY2dmcKsqKuC04eyiF2TkFrquG7cTCI9NRMB5oD
Ez8A0tEXLEANwTKSPKpAUxCZj+X7L0thFaIECi6/f5zUxTORj+t2HMPmDKWul92r
bbGIwRFRwFX8W361Gz8PGACorXi8DE34qRkG7xlKqDo1kXka9M/gm+t1mDAbJVii
oV98qmZ1x7T/Lj+QDJUkKmfF+Yh5vvf0Zat3V1i4LDpLgjy2oQoDDK7zRC5TPBk2
GekKxTWE/6nrAtFipYkrft8/jiPjdsPiDJb58uSQ31Fu+xYYmlnXabu2g+MSI6KJ
oySe0QevO4xxDNDXX9mf7Fh+koap/fIEYKyM2yubj1aCGpjl9oBTEebaLOT2AjaQ
Wu0ITO6AAKXiqT1zWNcCStpLCFydKKXfjb82by8GBlzMos4se77SwvdPDdKRBCef
ch6uOB8GiX5ndqinTa7ziUIQB6+/jstoLLpokWoshAHm54weA9zA+qNd5bc6Zw7M
i8+iaZJB1AZlr8GTOu+Xk2AASeBq6WKwP0NJsg298vJB5iNE621c226O26f7UApI
J7eQZPGKTm218enGPSmtyxiO9j9ceFkpMb1+7Q69Lfd68MxbsGIetVy1hE4ler4E
gUiir1Rc5CuDYcjDqDWeJMX2E/mCyussmkE7Fw4rn3rJ5F63p2X1RqkxXQHNQDyW
7u4vuOGDxE5Peho4CBBsTcMON4P3mvEID9bBZIZNs/dDmAgAx9NmR7jyMsAqgk8m
gpQlxZW6XHggSDBA15ht/rELZ7ngnn7NF/0ao9RSxAghRVrLxl6ipd7gqEQGIjjC
JllLIDV6KuuU+x66AIibo7OQBS9FoiP6XI41MTzJXbKJirT3i/mQQ5twMmKlyCOX
eED1Q0qZtE5mYOdPwyPCmVrWwWuyVohqT58V2aXG7653u3PIQ8g6PCIiSHqZiVfo
TQmzxmVkuD1g+BeMZwvLENj2xFDGMwNQy3O2pwRZ/rJVBKqqsJZuCIUMEtbQnPIO
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
R0Pj49W36W98Fz/OFPPLHw==
-----END AGE ENCRYPTED FILE-----

View File

@ -0,0 +1,87 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHeHhnWkhsZUsyMjd2b3Rx
Y3h2S05vREZXZWR0eXhqWVVxVzA1YTBLVEJRClM1N1NQMW1Ld1JGOHM0SC9xR0Za
MXdlM3RtYmRHUVFTQnB0Y240VHp0djAKLS0tIHdCbFpKVGNDWHh3Y1RQcllrdGI2
QzlLbm53YVl4K1VCY2d0aGNmbFh0RWMKRVKrK9IMRBwDM7/zAcHwjFsDhRLZg6dW
WKAkIORktdY0Hbuf6I9DBOJHzegn6FQmh2S4YTHyL7YJ+pRqsbOtduFkrp3Y+A0q
tINQgad5JcmM1aWOY4AP3Ie6TmKawaV1OOu8lk5Aq4cwMk03v0vHZKO0A2t7aiN3
ZhHk2hYgSi/NrAM+ZRUwKyLYWr+5mWUcahGBGx6U0udZYlm1ly6I7Ify9rkRbqQr
W/KYsG8IF3WV4TFubnQUe3TacL+W0UqORfChFxZkO9TZ2Ss3kKtOb9HJJ8Dpg83t
EM2BAOImnSRh3C5NoYKcuaJoVK3ycuvzratAtwmE9i/fU1bGdlzQ+eYwY1+w9ar2
cu18jeCE3AgVLbMphhk53yrWX6Cgj9Sk4RvyG8YldUc3WVMs+CFkY4Dn1HhyTvkr
mE6IsOgGWFZQRjHb/FuxIWeK0k6VoQfrpFhr3IBn7NtGQDvaqrktag4/d2Pr9czh
RlmolcndshW//WMLdtBzeA0nWgjWYWV53KLKZ9gftFpZ3g1QaLd6wU75BIu+wwjT
2PWLw4Izmhd370lPVeiEV9Z7r9Rc7KNi/NF7+SS3Bc0/YXoh9AnNVi6nvPnYUeCi
LEM596G4YM1hDsWONWAnPoeyVkXJu0W/sK7YmLak55d7l29xdtVK0LsI7wcCzwzv
1aAUYWsuQ0svEf7MN9AqqX8jvx6MVFC1LCMa/ChYFAvzdJzsaaBCzu5cggg4pN9C
xxetYXatPg7ETByXyq2vsM2DE0P3Fwt3bMrgpt9ZWc/kqj/FGxRx6Jx6HL7V5RGq
e/C15e1FbA2PPHknGYYC1WwI4FKaRd5KzrG82tWXVyiAjmmz7clBSfZgm91wxlb/
GnJp8z9etvGoFTSHNpgo85vNi4OhddgdQVojmmfn2Tjqc94HZLReZjlsA3BAP8k8
FszM3hNpH2bYINSWvaGX0hoi9t/4UPBZdKezXX258g/XZZ9THFtopLH/Y2mwcVbh
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
-----END AGE ENCRYPTED FILE-----

View File

@ -3,7 +3,7 @@
echo -e "${GREEN}Installing core packages...${DEFAULT}"
# Installation of core packages
check_installation "sudo pacman -S --noconfirm --needed" "base-devel doxygen jdk-openjdk nodejs npm cargo curl wget unzip stow"
check_installation "sudo pacman -S --noconfirm --needed" "base-devel doxygen jdk-openjdk nodejs npm cargo curl wget unzip"
# Installation of yay
if ! command -v yay &> /dev/null; then

View File

@ -30,6 +30,6 @@ check_installation "sudo pacman -S --noconfirm" "firefox"
# Configuring Firefox
mkdir -p $HOME/.config/betterfox/
git update-index --assume-unchanged ~/.dotfiles/.config/betterfox/user.js
git update-index --assume-unchanged ~/.local/share/chezmoi/private_dot_config/betterfox/user.js
echo -e "${GREEN}Desktop environment installation completed${DEFAULT}"

View File

@ -4,7 +4,6 @@
echo -e "${GREEN}Setting up Vim...${DEFAULT}"
check_installation "sudo pacman -S --noconfirm --needed" "vim"
mkdir -p $HOME/.vim/{autoload,backup,colors,plugged}
curl -fLo $HOME/.vim/autoload/plug.vim --create-dirs "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim"
check_installation "yay -S --noconfirm --needed" "code-minimap"
# Installing NeoVim
@ -14,7 +13,3 @@ check_installation "sudo pacman -S --noconfirm --needed" "neovim wl-clipboard"
# Installing Kitty
echo -e "${GREEN}Setting up Kitty...${DEFAULT}"
check_installation "sudo pacman -S --noconfirm --needed" "kitty"
echo -e "${GREEN}Setting up Gruvbox theme for Kitty...${DEFAULT}"
mkdir -p $HOME/.config/kitty
git clone --depth 1 https://github.com/dexpota/kitty-themes.git $HOME/.config/kitty/kitty-themes
ln -sf kitty-themes/themes/gruvbox_dark.conf $HOME/.config/kitty/theme.conf

View File

@ -28,6 +28,14 @@ function check_arch() {
fi
}
# Check that chezmoi is installed
function check_chezmoi() {
if ! command -v chezmoi &>/dev/null; then
echo -e "${RED}[ERROR] Chezmoi is not installed${DEFAULT}" | tee -a "$LOG"
exit 1
fi
}
# Secure installation of packages
function check_installation() {
local command=$1
@ -67,6 +75,17 @@ function setup_final() {
read -p "Enter your Git email: " git_email
git config --global user.name "$git_name"
git config --global user.email "$git_email"
# Update chezmoi config with git information
chezmoi cd
chezmoi add-template ~/.config/chezmoi/chezmoi.toml <<EOT
[data]
name = "{{ .git_name }}"
email = "{{ .git_email }}"
[git]
autoCommit = true
autoPush = true
EOT
fi
# Setting up Vim plugins
@ -115,47 +134,3 @@ Notes.
EOF
echo -e "${DEFAULT}"
}
# Function to manage configurations files with stow
function setup_dotfiles() {
echo -e "${BLUE}Setting up configuration files...${DEFAULT}" | tee -a "$LOG"
# Check for existence of .dotfiles directory
if [ ! -d "$HOME/.dotfiles" ]; then
echo -e "${RED}[ERROR] .dotfiles directory not found${DEFAULT}" | tee -a "$LOG"
return 1
fi
# Backup existing configurations
local configs_to_backup=(
"$HOME/.config/hypr/"
"$HOME/.config/waybar/"
"$HOME/.config/nvim/"
"$HOME/.config/ohmyposh/"
"$HOME/.vimrc"
"$HOME/.bashrc"
"$HOME/.zshrc"
"$HOME/.config/fish/fish.config"
)
for config in "${configs_to_backup[@]}"; do
backup_config "$config"
done
# Apply configurations with stow
echo -e "${BLUE}Applying dotfiles with stow...${DEFAULT}" | tee -a "$LOG"
cd "$HOME/.dotfiles" || exit 1
# Unstow first in case of existing links
stow -D . 2>/dev/null || true
# Stow new configuration
if stow .; then
echo -e "${GREEN}Configuration files installed successfully${DEFAULT}" | tee -a "$LOG"
else
echo -e "${RED}[ERROR] Failed to install configuration files${DEFAULT}" | tee -a "$LOG"
return 1
fi
return 0
}

View File

@ -7,7 +7,6 @@ cargo
curl
wget
unzip
stow
yay
wayland
hyprland