📚 docs(README): added yadm method and modified the formatting and steps from the installation section

This commit is contained in:
Sergio Laín 2024-08-08 19:03:10 +02:00
parent 7ef1d8d7b5
commit 55f98e1f3a
No known key found for this signature in database
GPG key ID: 8429B2EE312F8150

91
.github/README.md vendored
View file

@ -196,12 +196,17 @@ Here is all the information about my setup:
# :wrench: <samp>Setup</samp> # :wrench: <samp>Setup</samp>
### :package: <samp>Manual Installation</samp> > [!WARNING]
> The installation guide is under construction, try it at your own risk!
### :package: <samp>Dependencies Installation</samp>
> [!NOTE] > [!NOTE]
> The names of the packages are from the AUR and Arch Repos; adapt them to your system. Most of the packages are available on other distros official repos (most of the time out-to-date). To install CLI/TUI specific packages in non-arch based distros, I recommend to use [homebrew](https://brew.sh/). > The names of the packages are from the AUR and Arch Repos; adapt them to your system. Most of the packages are available on other distros official repos (most of the time out-to-date). To install CLI/TUI specific packages in non-arch based distros, I recommend to use [homebrew](https://brew.sh/).
1. First, lets start with the required **base packages** for the configuration to function. Assuming you're running Arch Linux, and your AUR helper is [yay](https://github.com/Jguer/yay): - **Base Packages**
First, lets start with the required base packages for the configuration to function. Assuming you're running Arch Linux, and your AUR helper is [yay](https://github.com/Jguer/yay):
```bash ```bash
yay -Sy hyprland hyprlock hypridle xdg-desktop-portal-hyprland hyprpicker \ yay -Sy hyprland hyprlock hypridle xdg-desktop-portal-hyprland hyprpicker \
@ -212,9 +217,9 @@ Here is all the information about my setup:
On the first line we have the hypr ecosystem packages and on the other lines we have the must have packages. On the first line we have the hypr ecosystem packages and on the other lines we have the must have packages.
2. Now lets move to the **Optional Packages** (If you dont want to install any more packages, move to the 3th step) - **Optional Packages**
- Replaceable Packages Now lets move to the Optional Packages (If you don't want to install any more packages, move to the Dotfiles Installation step)
```bash ```bash
yay -Sy yazi nemo kitty ttf-ms-win11-auto ttf-jetbrainsmono-nerd zathura zathura-pdf-mupdf qimgv-light \ yay -Sy yazi nemo kitty ttf-ms-win11-auto ttf-jetbrainsmono-nerd zathura zathura-pdf-mupdf qimgv-light \
@ -223,7 +228,21 @@ Here is all the information about my setup:
Here we have some packages that you can replace with your favorite ones and are not required at all for the desktop to function (though it wont look the same). For example, the terminal (kitty), the file manager (nemo and yazi), the font (ttf-jetbrainsmono-nerd), the video player (mpv), etc. Here we have some packages that you can replace with your favorite ones and are not required at all for the desktop to function (though it wont look the same). For example, the terminal (kitty), the file manager (nemo and yazi), the font (ttf-jetbrainsmono-nerd), the video player (mpv), etc.
- Bluetooth Useful CLI/TUI packages
```bash
yay -Sy ripgrep riprep-all sd duf nvtop btop dua-cli bat pacseek tgpt-bin sysz gtrash-bin topgrade fastfetch
```
Useful GUI packages
```bash
yay -Sy pika-backup vesktop-bin nwg-displays nwg-look gnome-logs galculator gparted nm-connection-editor
```
- **Bluetooth**
Lets start installing the Bluetooth packages:
```bash ```bash
yay -Sy bluez bluez-utils blueman yay -Sy bluez bluez-utils blueman
@ -236,7 +255,7 @@ Here is all the information about my setup:
systemctl --user start bluetooth.service systemctl --user start bluetooth.service
``` ```
- Icon Theme - **Icon Theme**
First off, we have to download the icon package from the releases page of their repo. You can do it very easily by using curl. First off, we have to download the icon package from the releases page of their repo. You can do it very easily by using curl.
@ -256,24 +275,69 @@ Here is all the information about my setup:
mv Catppuccin-SE ~/.local/share/icons/ mv Catppuccin-SE ~/.local/share/icons/
``` ```
- Useful CLI/TUI packages ---
### :floppy_disk: <samp>Dotfiles Installation</samp>
> [!WARNING]
> Here we can take two routes. **CHOOSE ONE, NOT BOTH!**
#### <samp>Yadm Method</samp> (_Easier to install and maintain_):
[Yadm](https://yadm.io/) is amazing. It lets you manage your dotfiles with git without the hassle of creating a git repo on your home directory as well as gitignoring a lot of files.
It also lets you pull from the repos that you set up on remote to your local repo and then push to your personal remote.
I'd recommend you to look at it if you want a more personal and advanced config.
For now, we are going to install it the simple way without to many complications and just to have an origin to pull and another to push.
Firstly, **be sure to backup your existing config files**. Then, we are going to install yadm. You can do it using pacman with the following command:
```bash ```bash
yay -Sy ripgrep riprep-all sd duf nvtop btop dua-cli bat pacseek tgpt-bin sysz gtrash-bin topgrade fastfetch sudo pacman -S yadm
``` ```
- Useful GUI packages After that, its time to clone the dotfiles repo into your system using yadm.
> [!NOTE]
> If you any file of the repo that already exists in your system and the content differs, the local file will be left unmodified and you'll have to review the changes and resolve the differences.
```bash ```bash
yay -Sy pika-backup vesktop-bin nwg-displays nwg-look gnome-logs galculator gparted nm-connection-editor yadm clone https://github.com/Matt-FTW/dotfiles.git
``` ```
3. **Installing the dotfiles**: If you installed the fonts mentioned earlier, be sure to refresh the font cache.
```bash
fc-cache -fv
```
Congratulations, at this point your done installing the configuration! :tada:
Logout from your current desktop session and log back into the Hyprland session.
If you want to pull from my remote, commit or add any files you can do it using yadm and then the git command you want to use (pull, commit, add, etc).
Now, if you want to **add your personal remote**, use the following command:
```bash
yadm remote add origin <url>
```
Then, be sure to push your changes to your remote!
Now you can receive new updates from my repo and modify your custom one :sunglasses:
If you had any issues or you have some questions about the installation process, feel free to [open an issue](https://github.com/Matt-FTW/dotfiles/issues/new/choose) or a [new discussion post](https://github.com/Matt-FTW/dotfiles/discussions/new/choose)
#### <samp>Git Method</samp> (Classic method not recommended):
Firstly, clone this repository (remember to have git installed). Firstly, clone this repository (remember to have git installed).
```bash ```bash
git clone --depth 1 --recurse-submodules https://github.com/Matt-FTW/dotfiles.git git clone https://github.com/Matt-FTW/dotfiles.git
cd dotfiles && git submodule update --remote --merge cd dotfiles
``` ```
Now is time to copy the files into their respective directories. **Be sure to backup your existing configuration files** before copying the files. Now is time to copy the files into their respective directories. **Be sure to backup your existing configuration files** before copying the files.
@ -282,7 +346,6 @@ Here is all the information about my setup:
```bash ```bash
cp -r .config/* ~/.config/ cp -r .config/* ~/.config/
cp -r .local/bin/* ~/.local/bin/ cp -r .local/bin/* ~/.local/bin/
cp .czrc ~/
``` ```
If you installed the fonts mentioned earlier, be sure to refresh the font cache. If you installed the fonts mentioned earlier, be sure to refresh the font cache.