# **Arch Fun**

## **Commands**

````- Cmdline Fuzzy Find - fzf
## Adding shit to Git:
```zsh
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
````

```git
git remote set-url origin git@github.com:go0sifer/dotfiles.git

```

Test

```git
git remote -v

```

## Refreshing Grub:

```zsh
os-prober
```

```zsh
sudo grub-mkconfig -o /boot/grub/grub.cfg
```

### System Performance and Boot Time

**Check boot-up time and analyze the boot process:**

- **Total Boot Time:**

  ```bash
  systemd-analyze
  ```

  Shows the time taken in kernel and user space during boot

- **Breakdown by Service:**

  ```bash
  systemd-analyze blame
  ```

  Lists all systemd units and their startup durations, sorted by time taken

- **Critical Chain:**

  ```bash
  systemd-analyze critical-chain
  ```

  Displays the critical path of services that define your system's boot time

- **Visual Boot Graph:**
  ```bash
  systemd-analyze plot > boot.svg
  ```
  Generates an SVG file visualizing your boot process for graphical analysis
- **Boot Logs:**

  ```bash
  journalctl -b
  ```

  Shows all system logs from the current boot

- **Show System Time and RTC:**

  ```bash
  timedatectl
  ```

  Displays current system time and hardware clock.

- **Show System Uptime:**

  ```bash
  uptime
  ```

  Shows how long the system has been running.

- **zbarimg with slurp to copy QR / Barcodes in place.**

  ```bash
  grim -g "$(slurp)" - | zbarimg -
  ```

  For cleaner output with clipboard integration:

  ```bash
  grim -g "$(slurp)" - | zbarimg --raw -q - | wl-copy
  ```

| Tool            | Purpose                                                                 | Why Use it?                                                                                  |
| --------------- | ----------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| Webcamize       | Use DSLR/cameras as a webcam on Linux                                   | Seamless, script-based, supports many camera models                                          |
| Dysk            | Colorized disk usage viewer                                             | Easier, more informative than `df`                                                           |
| Pure Bash Bible | Pure Bash scripting solutions                                           | Leaner scripts, less external dependencies, easier optimization                              |
| **Durdraw**     | Terminal-based pixel/ASCII art and animation studio                     | Create ANSI/ASCII art, frame-by-frame animations, usable with keyboard or mouse              |
| **DurFetch**    | System fetch tool with Durdraw animation support                        | Display system info alongside animated ASCII art                                             |
| **Caligula**    | Simple terminal disk image burner                                       | Burn `.iso` or `.img` files safely to removable disks with a single command                  |
| **Pastel**      | Command-line color tool & palette manager                               | Generate, convert, and manipulate colors and gradients in the terminal                       |
| **AstroTerm**   | Terminal-based planetarium viewer                                       | View real-time or date-based star maps, constellations, and planet locations in the terminal |
| **fortune**     | Shows a random, often humorous quote or proverb                         | Package name: `fortune-mod`                                                                  |
| **figlet**      | Generates large ASCII text banners                                      | Offers various font options                                                                  |
| **cowsay**      | Displays speech bubbles by ASCII-art cows (variety)                     | Can combine with `fortune`                                                                   |
| **wtf**         | Explains computer acronyms and jargon                                   | Launch with `wtf is `                                                                        |
| **sl**          | Shows a moving ASCII train (for LS typo fun)                            | Meant as a joke for typos                                                                    |
| **fastfetch**   | Shows system information in a stylish ASCII format                      | Customizable config                                                                          |
| **cmatrix**     | Simulates the digital rain from The Matrix                              | Provides several modes                                                                       |
| **pipes.sh**    | Animated pipes screensaver in the terminal                              | Or find `pipes.sh` on GitHub                                                                 |
| **bonsai**      | Grows an ASCII bonsai tree in the terminal                              | May require universe repo                                                                    |
| **cava**        | Visualizes audio in the terminal (audio spectrum)                       | Needs audio input; ALSA/MPD                                                                  |
| **fzf**         | Fuzzy Find Use to search files on disk                                  | Search for files easily                                                                      |
| **MPD**         | Music Player Daemon                                                     | Hosts server for Music apps like rmpc.                                                       |
| **RMPC**        | Terminal based music player                                             | Be cool and play your music in a terminal with Customizable interface                        |
| **picard**      | MusicBrains tagger                                                      | Tag your music with metadata for rmpc.                                                       |
| **zbarimg**     | Scan and decore bar codes // QR codes from image files                  | Get links from QR codes without risk of interacting with it                                  |
| **tealdeer**    | Display simple help pages for cmdline tools from the tldr-pages project | Shorter than man pages.                                                                      |
| wf-recorder     | Screen record a selected section of the screen                          | wf-recorder -g "$(slurp)" -f ~/Videos/Out.mp4                                                |

| Command         | What It Does / Use                                                        | How to Install (Arch/Most Distros)                |
| --------------- | ------------------------------------------------------------------------- | ------------------------------------------------- |
| ncdu            | Visual, interactive disk usage analyzer (delete, drill down)              | `sudo pacman -S ncdu`                             |
| duff            | Prettier alternative to `df` for drive usage                              | `sudo pacman -S duff`                             |
| ripgrep (rg)    | Fast recursive search (grep alternative, logs/code)                       | `sudo pacman -S ripgrep`                          |
| mosh            | Mobile shell for SSH sessions with roaming                                | `sudo pacman -S mosh`                             |
| lshw            | Hardware info (detailed or specific: CPU, mem, etc.)                      | `sudo pacman -S lshw`                             |
| mtr             | Combines ping/traceroute, shows live latency & packet loss                | `sudo pacman -S mtr`                              |
| fd              | Fast, user-friendly alternative to `find`                                 | `sudo pacman -S fd` (package: `fd` or `fd-find`)  |
| fzf             | Interactive Fuzzy Finder for lists, process selection                     | `sudo pacman -S fzf`                              |
| ranger          | Terminal file manager with previews, bulk renaming                        | `sudo pacman -S ranger`                           |
| zoxide (z)      | Smart directory jumper (better than cd)                                   | `sudo pacman -S zoxide`                           |
| exa             | Modern `ls` replacement with colors, tree, icons                          | `sudo pacman -S exa`                              |
| glances         | All-in-one resource dashboard (top, disk, net, etc.)                      | `sudo pacman -S glances`                          |
| iotop           | Shows real-time disk I/O usage per process                                | `sudo pacman -S iotop`                            |
| stat            | Shows detailed file or filesystem info                                    | Usually preinstalled                              |
| dstat           | Combined resource timeline (CPU, RAM, disk, net, etc.)                    | `sudo pacman -S dstat`                            |
| watch           | Reruns any command at fixed intervals                                     | Usually preinstalled                              |
| progress        | Monitors & shows progress of coreutils operations                         | `sudo pacman -S progress`                         |
| dog             | Modern DNS lookup tool (prettier than dig)                                | `yay -S dog` (AUR)                                |
| termshark       | Terminal UI for tshark packet analysis                                    | `sudo pacman -S termshark`                        |
| lsof            | Lists open files and ports                                                | Usually preinstalled                              |
| ipcalc          | Subnet calculator (CIDR, netmask, range info)                             | `sudo pacman -S ipcalc`                           |
| wormhole        | Encrypted peer-to-peer file transfer                                      | `sudo pacman -S magic-wormhole`                   |
| systemd-analyze | Diagnose system boot, show slow services                                  | Usually preinstalled with systemd                 |
| procs           | Modern process viewer (pretty `ps` replacement)                           | `sudo pacman -S procs`                            |
| lazydocker      | TUI for managing Docker                                                   | `sudo pacman -S lazydocker` / `yay -S lazydocker` |
| rsync           | Efficient file/directory sync & transfer                                  | Usually preinstalled or `sudo pacman -S rsync`    |
| shred           | Secure file deletion by overwriting                                       | Usually preinstalled (coreutils)                  |
| moreutils       | Collection of extra CLI utilities (ts, errno, ifdata, etc.)               | `sudo pacman -S moreutils`                        |
| vidir           | Bulk edit directory names in editor                                       | Part of `moreutils`                               |
| vipe            | Edit piped data in your editor                                            | Part of `moreutils`                               |
| unp             | Unpacks any archive (auto-detects)                                        | `yay -S unp` (AUR)                                |
| jq              | JSON processor (query & transform JSON data)                              | `sudo pacman -S jq`                               |
| taskwarrior     | CLI task management and TODO system                                       | `sudo pacman -S taskwarrior`                      |
| asciinema       | Record/share terminal sessions (creates text-based playbacks)             | `sudo pacman -S asciinema`                        |
| asciicast2gif   | Convert terminal recordings to GIFs                                       | `yay -S asciicast2gif` (AUR)                      |
| fabric          | Python CLI for remote server automation/AI agent (also aliases for `fab`) | `pip install fabric` (see docs for packaging)     |
| llama / ollama  | Local LLM CLI (used for AI command generation)                            | `yay -S ollama` (AUR) or see upstream release     |
| tldr            | Simplified man pages for commands                                         | `sudo pacman -S tldr`                             |
| df, du          | Disk usage tools (references; already in base)                            | Usually preinstalled                              |
| ps, top         | Process monitoring (classics, often referenced)                           | Usually preinstalled                              |

| Command / Concept                                                                | What It Does / Tip                                                                                  |
| -------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `reflector --country US --latest 10 --sort rate --save /etc/pacman.d/mirrorlist` | Update the mirror list to the 10 fastest US mirrors.                                                |
| `sudo pacman -S `                                                                | Installs a package from the official repositories.                                                  |
| `sudo pacman -Sy `                                                               | Syncs package databases and installs the package.                                                   |
| `sudo pacman -Syu`                                                               | Fully updates the system and all packages (recommended: do this regularly, avoid partial upgrades). |
| `sudo pacman -Rns `                                                              | Removes a package, unneeded dependencies, and its system config files.                              |
| `pacman -Ss `                                                                    | Search official repositories for packages matching ``.                                              |
| `pacman -Q`                                                                      | Lists all installed packages with their version numbers.                                            |
| `pacman -Qs `                                                                    | Searches locally installed packages for ``.                                                         |
| `pacman -Qi `                                                                    | Shows detailed info (version, description, etc.) for a package.                                     |
| `pacman -Ql `                                                                    | Lists files installed by a package and their locations.                                             |
| `pacman -Qe`                                                                     | Lists explicitly installed packages (not dependencies).                                             |
| `pacman -Qdt`                                                                    | Lists orphaned packages (installed as dependencies, now unused).                                    |
| `sudo pacman -Sc`                                                                | Removes old package files from the cache, keeping only the latest.                                  |
| `sudo pacman -Scc`                                                               | Clears all files from the package cache.                                                            |
| `/etc/pacman.conf`                                                               | Pacman configuration (can control coloring, parallel downloads, ignored packages, etc.).            |
| `IgnorePkg` / `IgnoreGroup` in pacman.conf                                       | Prevents specific packages or groups from being updated (useful for holding broken updates).        |
| `sudo pacman -U `                                                                | Manually installs a local package file.                                                             |
| `sudo downgrade `                                                                | Downgrades a package (install the `downgrade` package; helpful if a new version breaks something).  |
| `git clone  && cd yay && makepkg -si`                                            | Installs AUR helper (yay); necessary for installing from the Arch User Repository.                  |
| `sudo systemctl enable paccache.timer` or similar                                | Enables automatic cache cleanup (keep only a few previous versions).                                |
| `sudo rm /var/lib/pacman/db.lck`                                                 | Fixes "unable to lock the database" error (remove lock file if pacman crashed).                     |
| Review `/var/log/pacman.log` after a failed upgrade                              | Helps recover a broken system: check what was being upgraded if interrupted.                        |
| Use `pacstrap`                                                                   | To reinstall system packages if the system is unbootable post-upgrade.                              |

## Adding shit to Git:

```zsh
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
```

```git
git remote set-url origin git@github.com:go0sifer/dotfiles.git

```

Test

```git
git remote -v

```

## Refreshing Grub:

```zsh
os-prober
```

```zsh
sudo grub-mkconfig -o /boot/grub/grub.cfg
```
