mirror of
https://github.com/Snigdha-OS/documentation.git
synced 2025-09-05 19:06:37 +02:00
📝 docs: add raw mds
This commit is contained in:
@@ -0,0 +1,154 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
# Offline Installation
|
||||||
|
|
||||||
|
### 🖥️ **How to Install Snigdha OS in Offline Mode**
|
||||||
|
|
||||||
|
Installing Snigdha OS in **offline mode** means performing the installation without an active internet connection. While Snigdha OS's installation typically requires an internet connection to fetch updates and additional packages, it’s still possible to install it offline using the installation ISO and pre-downloaded packages. This method is especially useful if you're in an environment with limited or no internet access.
|
||||||
|
|
||||||
|
Here's a step-by-step guide to install Snigdha OS in **offline mode**:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 📥 **Step 1: Download Snigdha OS ISO**
|
||||||
|
|
||||||
|
1. **Go to the Official Snigdha OS Website**:
|
||||||
|
Visit the Snigdha OS download page:
|
||||||
|
- [Snigdha OS Downloads](https://snigdhaos.org/downloads.html)
|
||||||
|
|
||||||
|
2. **Download the ISO File**:
|
||||||
|
Select your preferred edition (KDE, GNOME, etc.) and download the ISO file. This will be used to create the bootable USB.
|
||||||
|
|
||||||
|
3. **Optionally Download Extra Packages**:
|
||||||
|
If you know you will need additional packages (like drivers or software that may not be included in the ISO), it’s a good idea to download them beforehand using another system that has internet access. You can use a tool like **Pacman** to download packages:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Sw package_name
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 💾 **Step 2: Create a Bootable USB Drive**
|
||||||
|
|
||||||
|
You need a **bootable USB** to install Snigdha OS. Use **Ventoy** or **Rufus** (for Windows) or the `dd` command (for Linux) to create a bootable USB drive.
|
||||||
|
|
||||||
|
#### **For Linux Users (Using `dd`)**
|
||||||
|
|
||||||
|
1. **Insert USB Drive**:
|
||||||
|
Plug in a USB drive (at least 4 GB).
|
||||||
|
|
||||||
|
2. **Find USB Drive Location**:
|
||||||
|
Use the `lsblk` command to identify your USB drive:
|
||||||
|
```bash
|
||||||
|
lsblk
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Create Bootable USB**:
|
||||||
|
Run the `dd` command to copy the Snigdha OS ISO to your USB drive (replace `/dev/sdX` with your USB device path):
|
||||||
|
```bash
|
||||||
|
sudo dd if=snigdhaos-YYYY.MM.DD-x86_64.iso of=/dev/sdX bs=4M status=progress oflag=sync
|
||||||
|
```
|
||||||
|
|
||||||
|
4. **Eject USB**:
|
||||||
|
After the process finishes, safely eject the USB:
|
||||||
|
```bash
|
||||||
|
sudo eject /dev/sdX
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **For Windows Users (Using Rufus)**
|
||||||
|
|
||||||
|
1. **Download and Install Rufus**:
|
||||||
|
Download **Rufus** from [https://rufus.ie/](https://rufus.ie/) and install it.
|
||||||
|
|
||||||
|
2. **Open Rufus** and Select the USB Drive.
|
||||||
|
|
||||||
|
3. **Choose the Snigdha OS ISO** and select the appropriate **Partition Scheme** (usually **GPT** for modern systems).
|
||||||
|
|
||||||
|
4. **Start the Process**:
|
||||||
|
Click **Start** to create a bootable USB. Wait for it to complete.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔌 **Step 3: Boot into Snigdha OS Live Environment**
|
||||||
|
|
||||||
|
1. **Insert the Bootable USB** into the target system.
|
||||||
|
|
||||||
|
2. **Enter BIOS/UEFI**:
|
||||||
|
Restart the system and press the appropriate key (often `F2`, `DEL`, or `ESC`) to enter BIOS/UEFI.
|
||||||
|
|
||||||
|
3. **Set USB as Primary Boot Device**:
|
||||||
|
In the BIOS/UEFI settings, set the USB drive as the first boot device.
|
||||||
|
|
||||||
|
4. **Save and Reboot**:
|
||||||
|
Save the changes and reboot the system. It will boot into the Snigdha OS live environment.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### ⚙️ **Step 4: Install Snigdha OS Offline**
|
||||||
|
|
||||||
|
1. **Launch the Installer**:
|
||||||
|
In the live environment, click on the **Snigdha OS Installer** icon on the desktop or in the application menu.
|
||||||
|
|
||||||
|
2. **Select Language and Region**:
|
||||||
|
Follow the prompts to select your language, region, and keyboard layout.
|
||||||
|
|
||||||
|
3. **Partitioning**:
|
||||||
|
Choose the disk where you want to install Snigdha OS. You can either let the installer automatically partition your disk or choose manual partitioning for more control.
|
||||||
|
|
||||||
|
- **Btrfs** is the default filesystem used by Snigdha OS.
|
||||||
|
- You can set up **LVM** or **ZFS** if you want advanced features.
|
||||||
|
|
||||||
|
4. **Offline Mode Warning**:
|
||||||
|
The installer will ask for an internet connection to fetch updates and additional software. **Ignore this step** since you are installing in offline mode. Proceed without an internet connection.
|
||||||
|
|
||||||
|
5. **User Configuration**:
|
||||||
|
- Set up your **username** and **password**.
|
||||||
|
- Configure **root password** if required.
|
||||||
|
|
||||||
|
6. **Installation Location**:
|
||||||
|
Confirm the partition where you want to install Snigdha OS. Double-check the partitions to avoid data loss.
|
||||||
|
|
||||||
|
7. **Begin Installation**:
|
||||||
|
Click on the **Install** button to start the installation. The system will copy files from the ISO to the target disk.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔄 **Step 5: Install Pre-Downloaded Packages (Optional)**
|
||||||
|
|
||||||
|
If you have pre-downloaded additional packages or software (like drivers, codecs, or essential tools), you can install them during or after the installation process:
|
||||||
|
|
||||||
|
1. **Mount the USB with Packages**:
|
||||||
|
If the packages are on another USB or disk, you can mount it to the system during installation using the terminal.
|
||||||
|
|
||||||
|
2. **Use Pacman to Install Packages**:
|
||||||
|
Once Snigdha OS is installed and you’ve booted into the system, use the `pacman` package manager to install any pre-downloaded packages:
|
||||||
|
```bash
|
||||||
|
sudo pacman -U /path/to/package_file.pkg.tar.zst
|
||||||
|
```
|
||||||
|
|
||||||
|
Replace `/path/to/package_file.pkg.tar.zst` with the actual path to the downloaded package.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### ⚙️ **Step 6: Final Steps and Reboot**
|
||||||
|
|
||||||
|
1. **Configure Your System**:
|
||||||
|
Once the installation is complete, you may need to configure your system settings, such as display resolution, Wi-Fi (if available), and user preferences.
|
||||||
|
|
||||||
|
2. **Reboot the System**:
|
||||||
|
After installation, **reboot** your system and remove the USB drive.
|
||||||
|
|
||||||
|
3. **Boot into Snigdha OS**:
|
||||||
|
Your system should boot into Snigdha OS. If you set up a **dual-boot** with other operating systems, you’ll see the bootloader menu to choose the OS.
|
||||||
|
|
||||||
|
4. **Offline Setup**:
|
||||||
|
If you have any additional software or updates that need to be installed, you can use the **offline package manager** to install them later when you have an internet connection.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🎉 **Conclusion**
|
||||||
|
|
||||||
|
You’ve now installed Snigdha OS in **offline mode**! While some post-installation updates and software installation may require an internet connection, this method allows you to set up and use Snigdha OS in environments with no or limited internet access. This installation method is ideal for areas with poor connectivity, or for advanced users who want to configure their system fully offline.
|
||||||
|
|
||||||
|
Enjoy your new Snigdha OS setup! 😎🚀
|
@@ -0,0 +1,176 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
# Customize Snigdha OS
|
||||||
|
|
||||||
|
### 🖌️ **Guide to Customizing Snigdha OS**
|
||||||
|
|
||||||
|
Snigdha OS, with its polished look and powerful tools, is highly customizable. Whether you want to tweak the desktop environment, improve system performance, or add your personal touch, this guide will walk you through the steps to make Snigdha OS your own.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### ⚙️ **Step 1: Select Your Desktop Environment (DE)**
|
||||||
|
Snigdha OS comes with several desktop environments, such as KDE Plasma, GNOME, XFCE, i3, and more. Customization options depend on your DE.
|
||||||
|
|
||||||
|
- **KDE Plasma**: Highly customizable with themes, widgets, and layouts.
|
||||||
|
- **GNOME**: Simplistic and clean with extensions.
|
||||||
|
- **XFCE**: Lightweight and minimalistic with theming options.
|
||||||
|
|
||||||
|
#### To install additional DEs:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S xfce4 gnome
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🎨 **Step 2: Change Themes**
|
||||||
|
Snigdha OS includes **Snigdha OS Settings Manager** for managing themes, icons, and cursors.
|
||||||
|
|
||||||
|
#### Using Snigdha OS Settings Manager:
|
||||||
|
1. Open **Snigdha OS Settings Manager** from the application menu.
|
||||||
|
2. Navigate to the **Appearance** or **Desktop Theme** section.
|
||||||
|
3. Select and apply a **theme**, **icon pack**, or **cursor**.
|
||||||
|
|
||||||
|
#### For KDE Plasma:
|
||||||
|
1. Go to **System Settings → Appearance**.
|
||||||
|
2. Customize:
|
||||||
|
- **Global Theme**: Change the entire desktop look.
|
||||||
|
- **Plasma Style**: Adjust panel and widget styles.
|
||||||
|
- **Icons**: Pick a new icon set.
|
||||||
|
- **Application Style**: Change the window and button styles.
|
||||||
|
|
||||||
|
#### Installing New Themes:
|
||||||
|
1. Open **System Settings → Appearance → Get New Themes**.
|
||||||
|
2. Browse and install themes, icons, or cursors.
|
||||||
|
3. Apply them from the same menu.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 📂 **Step 3: Customize Widgets and Panels**
|
||||||
|
Widgets and panels enhance functionality and aesthetics.
|
||||||
|
|
||||||
|
#### For KDE Plasma:
|
||||||
|
- Right-click on the desktop or panel and select **Add Widgets**.
|
||||||
|
- Drag and drop widgets to the desired location.
|
||||||
|
- Adjust panel size, position, and contents by right-clicking the panel and selecting **Edit Panel**.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🖼️ **Step 4: Change Wallpapers**
|
||||||
|
Snigdha OS comes with stunning default wallpapers, but you can easily add your own.
|
||||||
|
|
||||||
|
#### Steps:
|
||||||
|
1. Right-click on the desktop and select **Configure Desktop** (KDE) or **Change Background** (GNOME).
|
||||||
|
2. Select a wallpaper from the list or **Add Image** to upload your own.
|
||||||
|
|
||||||
|
#### Online Wallpapers:
|
||||||
|
Install dynamic wallpaper applications like **Komorebi** or use online wallpaper tools.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🖥️ **Step 5: Modify the GRUB Bootloader**
|
||||||
|
Customize the GRUB bootloader for a personal touch.
|
||||||
|
|
||||||
|
#### Install a GRUB Theme:
|
||||||
|
1. Install `grub-customizer`:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S grub-customizer
|
||||||
|
```
|
||||||
|
2. Open GRUB Customizer and select a theme.
|
||||||
|
3. Save and reboot to see the changes.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 💡 **Step 6: Add Extensions and Plugins**
|
||||||
|
Extensions add extra functionality to your desktop environment.
|
||||||
|
|
||||||
|
#### For GNOME:
|
||||||
|
1. Install `gnome-shell-extensions`:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S gnome-shell-extensions
|
||||||
|
```
|
||||||
|
2. Use the **GNOME Extensions** website ([extensions.gnome.org](https://extensions.gnome.org)) to enable and manage extensions.
|
||||||
|
|
||||||
|
#### For KDE:
|
||||||
|
Use the **KDE Store** to download and manage plugins, scripts, and widgets.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔧 **Step 7: Adjust Performance Settings**
|
||||||
|
Snigdha OS includes tools for optimizing performance.
|
||||||
|
|
||||||
|
#### Using Snigdha OS Assistant:
|
||||||
|
1. Open **Snigdha OS Assistant**.
|
||||||
|
2. Enable performance tweaks like **ZRAM**, **CPU governor**, or **RAM optimization**.
|
||||||
|
3. Use **System Cleaner** to remove unnecessary files.
|
||||||
|
|
||||||
|
#### Manage Startup Applications:
|
||||||
|
Disable unnecessary startup applications to improve boot time:
|
||||||
|
1. Open **Startup and Shutdown** in **System Settings**.
|
||||||
|
2. Uncheck apps you don’t need at startup.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔍 **Step 8: Install Useful Applications**
|
||||||
|
Snigdha OS includes essential applications, but you can add more tools to suit your workflow.
|
||||||
|
|
||||||
|
#### Example Commands:
|
||||||
|
- **Install a Web Browser**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S firefox
|
||||||
|
```
|
||||||
|
- **Install a Terminal Emulator**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S alacritty
|
||||||
|
```
|
||||||
|
- **Install AUR Packages** (e.g., Google Chrome):
|
||||||
|
```bash
|
||||||
|
yay -S google-chrome
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🖥️ **Step 9: Configure Keybindings**
|
||||||
|
Set custom keyboard shortcuts for frequently used actions.
|
||||||
|
|
||||||
|
#### KDE Plasma:
|
||||||
|
1. Open **System Settings → Shortcuts**.
|
||||||
|
2. Customize global shortcuts for applications and system actions.
|
||||||
|
|
||||||
|
#### GNOME:
|
||||||
|
1. Open **Settings → Keyboard → Custom Shortcuts**.
|
||||||
|
2. Add and modify shortcuts for specific commands or actions.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🎵 **Step 10: Customize Sounds**
|
||||||
|
You can change system sounds to add a unique auditory flair.
|
||||||
|
|
||||||
|
#### KDE Plasma:
|
||||||
|
1. Open **System Settings → Audio → Event Sounds**.
|
||||||
|
2. Choose and apply custom sound themes.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🛡️ **Step 11: Enable Gaming Tweaks**
|
||||||
|
Snigdha OS has a **Gaming Edition** optimized for gaming, but you can also add tweaks manually.
|
||||||
|
|
||||||
|
#### Install Gaming Tools:
|
||||||
|
1. Install **Lutris** for managing game libraries:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S lutris
|
||||||
|
```
|
||||||
|
2. Install **Steam**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S steam
|
||||||
|
```
|
||||||
|
3. Enable **GameMode** for performance:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S gamemode
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🚀 **Conclusion**
|
||||||
|
Snigdha OS is one of the most customizable Linux distributions, offering endless possibilities to tailor your desktop. From themes to performance tweaks, you can make it your perfect operating system. Dive in, experiment, and enjoy your personalized Linux experience! 🎉
|
@@ -0,0 +1,110 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 4
|
||||||
|
---
|
||||||
|
# Install Packages
|
||||||
|
|
||||||
|
### 📦 **How to Install a Package on Snigdha OS**
|
||||||
|
|
||||||
|
Installing packages on Snigdha OS primarily involves using the **Pacman** package manager or an **AUR helper** for community-contributed software. Here's a step-by-step guide:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🛠️ **Step 1: Update Your System**
|
||||||
|
Before installing a package, ensure your system is up-to-date to avoid dependency issues:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 📂 **Step 2: Search for a Package**
|
||||||
|
To find the package you want to install, use the following command:
|
||||||
|
```bash
|
||||||
|
pacman -Ss package-name
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Example:
|
||||||
|
Search for the Firefox browser:
|
||||||
|
```bash
|
||||||
|
pacman -Ss firefox
|
||||||
|
```
|
||||||
|
This command displays available packages with "firefox" in their name or description.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### ✅ **Step 3: Install the Package**
|
||||||
|
Once you know the exact package name, install it using:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S package-name
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Example:
|
||||||
|
Install Firefox:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S firefox
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 📦 **Step 4: Verify Installation**
|
||||||
|
To check if a package is installed:
|
||||||
|
```bash
|
||||||
|
pacman -Q package-name
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Example:
|
||||||
|
Verify Firefox installation:
|
||||||
|
```bash
|
||||||
|
pacman -Q firefox
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔍 **Step 5: Explore Package Details**
|
||||||
|
View information about an installed package:
|
||||||
|
```bash
|
||||||
|
pacman -Qi package-name
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Example:
|
||||||
|
```bash
|
||||||
|
pacman -Qi firefox
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🌐 **Installing AUR Packages**
|
||||||
|
If the package you want is not in the official repositories but is available in the **Arch User Repository (AUR)**, use an AUR helper like `yay` or `paru`.
|
||||||
|
|
||||||
|
#### Install a Package from AUR
|
||||||
|
```bash
|
||||||
|
yay -S package-name
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Example:
|
||||||
|
Install Google Chrome from AUR:
|
||||||
|
```bash
|
||||||
|
yay -S google-chrome
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🧹 **Clean Up After Installation**
|
||||||
|
After installing a package, clean up unused dependencies (optional):
|
||||||
|
```bash
|
||||||
|
sudo pacman -Rns $(pacman -Qdtq)
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
:::tip
|
||||||
|
:::
|
||||||
|
1. **Enable Parallel Downloads**: To speed up installation, enable parallel downloads in `/etc/pacman.conf` by adding:
|
||||||
|
```
|
||||||
|
ParallelDownloads = 5
|
||||||
|
```
|
||||||
|
2. **Use Trusted Sources**: Only install AUR packages from trusted sources and review the `PKGBUILD` file before installation.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🎉 **Conclusion**
|
||||||
|
Installing packages on Snigdha OS is straightforward with `pacman`. For additional software, AUR helpers like `yay` expand the possibilities. With these tools, you can access a vast array of software tailored to your needs! 🚀
|
@@ -0,0 +1,88 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
# Language
|
||||||
|
|
||||||
|
### 🌐 **Installing Language Packs and Google Fonts on Arch/Snigdha OS**
|
||||||
|
|
||||||
|
Here’s how you can install language packs for better localization support and Google Fonts for enhanced typography.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🌏 **Step 1: Install Language Packs**
|
||||||
|
|
||||||
|
#### **Step 1.1: Install System Language Pack**
|
||||||
|
Language packs are provided by the desktop environment or specific applications. For example:
|
||||||
|
|
||||||
|
- **KDE Plasma**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S plasma-desktop kde-l10n
|
||||||
|
```
|
||||||
|
- **GNOME**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S gnome-shell gnome-getting-started-docs
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Snigdha OS Asian Fonts**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S snigdhaos-asian-fonts
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Step 1.2: Enable Your Preferred Language**
|
||||||
|
1. Open **System Settings** → **Regional Settings** or **Language**.
|
||||||
|
2. Select and add your desired language.
|
||||||
|
3. Apply the changes and reboot if necessary.
|
||||||
|
|
||||||
|
#### **Step 1.3: Install Additional Fonts for Localization**
|
||||||
|
To display text correctly in specific languages (e.g., CJK, Arabic):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### ✍️ **Step 2: Install Google Fonts**
|
||||||
|
|
||||||
|
Google Fonts can be installed to enhance the typography for web design, office applications, or general use.
|
||||||
|
|
||||||
|
#### **Option 1: Install via Pacman**
|
||||||
|
Arch Linux provides a package for Google Fonts:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S ttf-google-fonts
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Option 2: Install via AUR**
|
||||||
|
For the latest collection of Google Fonts, use an AUR helper like `yay`:
|
||||||
|
```bash
|
||||||
|
yay -S ttf-google-fonts-git
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Option 3: Manual Installation**
|
||||||
|
1. Download the fonts:
|
||||||
|
- Visit the [Google Fonts](https://fonts.google.com/) website.
|
||||||
|
- Select and download your desired font(s).
|
||||||
|
|
||||||
|
2. Extract and install:
|
||||||
|
```bash
|
||||||
|
mkdir -p ~/.local/share/fonts
|
||||||
|
unzip /path/to/downloaded-fonts.zip -d ~/.local/share/fonts
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Refresh the font cache:
|
||||||
|
```bash
|
||||||
|
fc-cache -fv
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🧹 **Step 3: Verify Installation**
|
||||||
|
- **Check Available Fonts**:
|
||||||
|
```bash
|
||||||
|
fc-list | grep "font-name"
|
||||||
|
```
|
||||||
|
- Test the fonts in applications like LibreOffice, GIMP, or your web browser.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🎉 **Conclusion**
|
||||||
|
With language packs and Google Fonts installed, your system will be well-suited for multilingual usage and professional-grade typography. Enjoy customizing your experience! 🚀
|
@@ -0,0 +1,107 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
# Update Snigdha OS
|
||||||
|
|
||||||
|
### 🔄 **How to Update Snigdha OS**
|
||||||
|
|
||||||
|
Snigdha OS, based on Arch Linux, uses a **rolling release model**, meaning you always have access to the latest updates. Keeping your system up-to-date ensures stability, security, and access to the latest features.
|
||||||
|
|
||||||
|
Follow these steps to safely and effectively update your Snigdha OS system:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔧 **Step 1: Open the Terminal**
|
||||||
|
|
||||||
|
Press `Ctrl + Alt + T` to open the terminal or use the **Konsole** or any terminal emulator installed on your system.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔄 **Step 2: Update the System**
|
||||||
|
|
||||||
|
Run the following commands to update your Snigdha OS system:
|
||||||
|
|
||||||
|
#### **Basic Update Command**
|
||||||
|
Use **Pacman** (the default package manager) to synchronize and upgrade packages:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Snigdha OS Assistant (Optional)**
|
||||||
|
Snigdha OS provides a GUI tool called **Snigdha OS Assistant** for system management, including updates.
|
||||||
|
- Open **Snigdha OS Assistant** from the application menu.
|
||||||
|
- Click on **Update System** and follow the prompts.
|
||||||
|
|
||||||
|
#### **With AUR Packages (Using an AUR Helper)**
|
||||||
|
If you use AUR packages, update them alongside system packages with a tool like `yay` or `paru`:
|
||||||
|
```bash
|
||||||
|
yay -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🛠️ **Step 3: Rebuild Outdated Configurations**
|
||||||
|
|
||||||
|
After major updates, especially those involving the kernel or critical system components, rebuild configurations to avoid issues. Snigdha OS makes this easy with:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S linux-headers
|
||||||
|
```
|
||||||
|
|
||||||
|
If you use the **ZRAM** feature or **custom kernels**, ensure they're updated and aligned with the current system kernel.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🧹 **Step 4: Clean Up Unused Packages**
|
||||||
|
|
||||||
|
Remove unused or orphaned packages to free up space:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Rns $(pacman -Qdtq)
|
||||||
|
```
|
||||||
|
|
||||||
|
Clear the package cache to save disk space (Snigdha OS already does this automatically with **paccache**):
|
||||||
|
```bash
|
||||||
|
sudo paccache -r
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🚀 **Step 5: Reboot Your System**
|
||||||
|
|
||||||
|
If a kernel or other core system components were updated, reboot your system to apply the changes:
|
||||||
|
```bash
|
||||||
|
reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🌟 **Tips for Safe Updates**
|
||||||
|
|
||||||
|
1. **Use Snigdha OS's Snapshot Feature**:
|
||||||
|
- Snigdha OS uses **Btrfs** snapshots via **Timeshift**. If something goes wrong during an update, you can roll back to a previous working state.
|
||||||
|
- Before updating, create a manual snapshot:
|
||||||
|
```bash
|
||||||
|
sudo timeshift --create
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Check for Arch News**:
|
||||||
|
Before major updates, check the **Arch Linux News** page for important announcements:
|
||||||
|
- [Arch Linux News](https://archlinux.org/news/)
|
||||||
|
|
||||||
|
3. **Run Updates Regularly**:
|
||||||
|
Snigdha OS is a rolling release, so it's important to update frequently to avoid large, time-consuming updates and potential conflicts.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 💻 **Example Commands**
|
||||||
|
|
||||||
|
Here’s a single command for a complete update, including AUR packages and cleaning up:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Syu && yay -Syu && sudo pacman -Rns $(pacman -Qdtq)
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🎉 **Conclusion**
|
||||||
|
|
||||||
|
Keeping Snigdha OS updated is straightforward and ensures you always have the latest features and security patches. With tools like **Snigdha OS Assistant**, **Pacman**, and **Timeshift**, managing updates is efficient and safe. 🚀
|
@@ -0,0 +1,168 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
# Troubleshooting Display Issues
|
||||||
|
|
||||||
|
If you're facing display issues like screen resolution problems, black screens, or no display output on Snigdha OS, follow this guide to get everything back to normal. Let’s fix it step by step! 🔧
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 1. **Check Display Cable and Connection 🖥️🔌**
|
||||||
|
|
||||||
|
#### **Is Your Display Properly Connected?**
|
||||||
|
- Make sure your monitor or laptop screen is properly connected to the system.
|
||||||
|
- If using an external monitor, ensure that the display cable (HDMI, VGA, DisplayPort, etc.) is firmly connected.
|
||||||
|
- If applicable, check if the monitor is set to the correct input (HDMI1, HDMI2, etc.).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 2. **Check for External Display Detection 📺📱**
|
||||||
|
|
||||||
|
If you’re using multiple displays, your external monitor might not be recognized automatically.
|
||||||
|
|
||||||
|
- Open the terminal and run:
|
||||||
|
```bash
|
||||||
|
xrandr
|
||||||
|
```
|
||||||
|
This will list all connected displays. If your external monitor isn't showing, you might need to force detection.
|
||||||
|
|
||||||
|
- To detect the monitor manually:
|
||||||
|
```bash
|
||||||
|
xrandr --auto
|
||||||
|
```
|
||||||
|
|
||||||
|
- If the external monitor is still not detected, try to restart your system or use a different cable.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 3. **Set the Correct Display Resolution 🎨💻**
|
||||||
|
|
||||||
|
Sometimes, the wrong resolution can cause display issues. Use `xrandr` to set the correct resolution.
|
||||||
|
|
||||||
|
- List available display modes:
|
||||||
|
```bash
|
||||||
|
xrandr
|
||||||
|
```
|
||||||
|
|
||||||
|
- To change the resolution:
|
||||||
|
```bash
|
||||||
|
xrandr --output <DISPLAY_NAME> --mode <RESOLUTION>
|
||||||
|
```
|
||||||
|
Example:
|
||||||
|
```bash
|
||||||
|
xrandr --output HDMI-1 --mode 1920x1080
|
||||||
|
```
|
||||||
|
|
||||||
|
Replace `<DISPLAY_NAME>` and `<RESOLUTION>` with your actual display name and resolution.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 4. **Check Graphics Driver 🔧🖥️**
|
||||||
|
|
||||||
|
#### **Is Your Graphics Driver Installed?**
|
||||||
|
Make sure you have the correct drivers installed for your graphics card.
|
||||||
|
|
||||||
|
- For **Intel graphics**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S xf86-video-intel
|
||||||
|
```
|
||||||
|
|
||||||
|
- For **NVIDIA graphics**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S nvidia nvidia-utils
|
||||||
|
```
|
||||||
|
|
||||||
|
- For **AMD graphics**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S xf86-video-amdgpu
|
||||||
|
```
|
||||||
|
|
||||||
|
After installing the necessary driver, restart your system:
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 5. **Reconfigure Xorg 🎨🛠️**
|
||||||
|
|
||||||
|
Sometimes, Xorg (the display server) configuration might cause issues.
|
||||||
|
|
||||||
|
- Reconfigure Xorg by regenerating the configuration file:
|
||||||
|
```bash
|
||||||
|
sudo Xorg -configure
|
||||||
|
```
|
||||||
|
|
||||||
|
- Then restart the system:
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 6. **Check Logs for Errors 📝🔍**
|
||||||
|
|
||||||
|
Check the system logs to find any errors related to the display.
|
||||||
|
|
||||||
|
- View Xorg logs:
|
||||||
|
```bash
|
||||||
|
cat /var/log/Xorg.0.log
|
||||||
|
```
|
||||||
|
|
||||||
|
Look for error messages related to your graphics driver or display hardware.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 7. **Check Display Manager 🌐⚙️**
|
||||||
|
|
||||||
|
If you’re getting a black screen after logging in, it could be a problem with your display manager.
|
||||||
|
|
||||||
|
- If using **LightDM**, restart it:
|
||||||
|
```bash
|
||||||
|
sudo systemctl restart lightdm
|
||||||
|
```
|
||||||
|
|
||||||
|
- If using **GDM** (GNOME Display Manager), restart it:
|
||||||
|
```bash
|
||||||
|
sudo systemctl restart gdm
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 8. **Update System 💻🔄**
|
||||||
|
|
||||||
|
Make sure your system is up to date, as outdated packages may cause display issues.
|
||||||
|
|
||||||
|
- Update your system:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
This ensures all packages, including graphics drivers, are up to date.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 9. **Try Using a Different Display Server (Wayland vs Xorg) 🌙⚙️**
|
||||||
|
|
||||||
|
If you are facing issues with **Xorg**, try using **Wayland** instead, which is another display server protocol.
|
||||||
|
|
||||||
|
- On GNOME, you can choose Wayland or Xorg from the login screen (click the gear icon after selecting your user).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 10. **Reboot Your System 🔄💻**
|
||||||
|
|
||||||
|
Sometimes, a simple reboot can fix display issues:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Conclusion 🎉
|
||||||
|
|
||||||
|
Display issues on Snigdha OS can usually be fixed by ensuring proper cables, checking drivers, and configuring the display settings. If problems continue, check for hardware faults or consult the Snigdha OS or Arch community for further assistance.
|
||||||
|
|
||||||
|
Enjoy your display! 🖥️🎨
|
@@ -0,0 +1,189 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
# Troubleshooting NVIDIA Issues
|
||||||
|
|
||||||
|
If you're facing issues with NVIDIA graphics or the proprietary NVIDIA driver on Snigdha OS, follow these steps to properly install, configure, and troubleshoot your NVIDIA driver setup.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 1. **Ensure Your System is Updated 🖥️🔄**
|
||||||
|
|
||||||
|
Before installing or troubleshooting drivers, make sure your system is fully updated to avoid compatibility issues.
|
||||||
|
|
||||||
|
- Update your system:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
- Reboot your system after the update:
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 2. **Check for Existing NVIDIA Drivers 🕵️♂️**
|
||||||
|
|
||||||
|
First, verify if the NVIDIA driver is already installed or partially installed.
|
||||||
|
|
||||||
|
- Check for the installed NVIDIA package:
|
||||||
|
```bash
|
||||||
|
pacman -Qs nvidia
|
||||||
|
```
|
||||||
|
|
||||||
|
- If you see packages like `nvidia`, `nvidia-utils`, or `nvidia-dkms`, it indicates the driver is installed.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 3. **Install the Proprietary NVIDIA Driver 🖱️🖥️**
|
||||||
|
|
||||||
|
#### **Install NVIDIA Drivers on Snigdha OS**
|
||||||
|
Snigdha OS, being based on Arch Linux, supports the **proprietary NVIDIA drivers** provided by **nvidia** package, which provides full support for gaming, rendering, and GPU acceleration.
|
||||||
|
|
||||||
|
1. **For NVIDIA 390xx Legacy Cards** (older models):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S nvidia-390xx
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **For Latest NVIDIA Drivers (most common)**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S nvidia nvidia-utils
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **For the NVIDIA Optimus (Hybrid Graphics)**:
|
||||||
|
If you have a laptop with both Intel and NVIDIA graphics (Optimus), you may want to install the `bumblebee` or `nvidia-prime` package:
|
||||||
|
|
||||||
|
- For **Bumblebee** (for better battery life and automatic switching):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S bumblebee primus
|
||||||
|
sudo systemctl enable bumblebeed
|
||||||
|
sudo systemctl start bumblebeed
|
||||||
|
```
|
||||||
|
|
||||||
|
- For **NVIDIA Prime** (useful for newer systems):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S nvidia-prime
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 4. **Configure Xorg for NVIDIA 🖥️⚙️**
|
||||||
|
|
||||||
|
Snigdha OS should automatically configure Xorg to use the NVIDIA driver upon installation. If it doesn’t work, you can manually configure it by creating or modifying the Xorg configuration.
|
||||||
|
|
||||||
|
- Create the NVIDIA configuration file:
|
||||||
|
```bash
|
||||||
|
sudo nvidia-xconfig
|
||||||
|
```
|
||||||
|
|
||||||
|
- Restart the Xorg server or reboot the system:
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 5. **Verify the Installation ✅**
|
||||||
|
|
||||||
|
After installing or reconfiguring the NVIDIA drivers, verify the installation using the following commands:
|
||||||
|
|
||||||
|
- Check if NVIDIA modules are loaded correctly:
|
||||||
|
```bash
|
||||||
|
lsmod | grep nvidia
|
||||||
|
```
|
||||||
|
|
||||||
|
- Check the NVIDIA driver version:
|
||||||
|
```bash
|
||||||
|
nvidia-smi
|
||||||
|
```
|
||||||
|
|
||||||
|
This will show you information about the installed NVIDIA driver, including the GPU model, driver version, and usage statistics.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 6. **Troubleshooting Common Issues 🛠️**
|
||||||
|
|
||||||
|
#### **No Display / Blank Screen 💻❌**
|
||||||
|
|
||||||
|
1. Ensure that the driver is properly loaded by checking the Xorg log:
|
||||||
|
```bash
|
||||||
|
cat /var/log/Xorg.0.log | grep nvidia
|
||||||
|
```
|
||||||
|
|
||||||
|
2. If you still have no display, try booting into **recovery mode** and reinstall the drivers.
|
||||||
|
|
||||||
|
#### **Optimizing Hybrid Graphics (Optimus) 🖥️🔋**
|
||||||
|
|
||||||
|
If you're using an Optimus laptop with both Intel and NVIDIA, ensure that you're using either **Bumblebee** or **nvidia-prime** to manage the GPU switching.
|
||||||
|
|
||||||
|
- Test if Bumblebee is working with the `optirun` command:
|
||||||
|
```bash
|
||||||
|
optirun glxgears
|
||||||
|
```
|
||||||
|
|
||||||
|
- For **NVIDIA Prime**, you can switch between the Intel GPU and the NVIDIA GPU using:
|
||||||
|
```bash
|
||||||
|
sudo prime-select nvidia # To use the NVIDIA GPU
|
||||||
|
sudo prime-select intel # To switch back to the Intel GPU
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Black Screen After Boot 💻❌**
|
||||||
|
|
||||||
|
1. If the system boots into a black screen, try the following:
|
||||||
|
- Boot into a terminal or recovery mode and check the **Xorg logs** for errors.
|
||||||
|
- Check the logs at `/var/log/Xorg.0.log` or `dmesg` for NVIDIA driver-related errors.
|
||||||
|
|
||||||
|
2. If needed, you can remove the NVIDIA drivers:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Rns nvidia nvidia-utils
|
||||||
|
```
|
||||||
|
|
||||||
|
And then reinstall or switch to **nouveau** (open-source NVIDIA driver):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S xf86-video-nouveau
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 7. **Reinstall or Update NVIDIA Drivers 🔄**
|
||||||
|
|
||||||
|
If you encounter persistent issues, try reinstalling the drivers:
|
||||||
|
|
||||||
|
- Uninstall the NVIDIA drivers:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Rns nvidia nvidia-utils
|
||||||
|
```
|
||||||
|
|
||||||
|
- Reinstall the drivers:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S nvidia nvidia-utils
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 8. **Check for Kernel Compatibility 🐧🛠️**
|
||||||
|
|
||||||
|
The NVIDIA driver requires a compatible kernel. If you recently updated your kernel or switched to a custom one, you may need to install the correct kernel modules.
|
||||||
|
|
||||||
|
- For the **Zen Kernel** (often used in Snigdha OS):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S linux-zen
|
||||||
|
```
|
||||||
|
|
||||||
|
- For other kernel versions, such as **linux-lts** (Long Term Support):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S linux-lts
|
||||||
|
```
|
||||||
|
|
||||||
|
- After installing a new kernel, you will need to rebuild or reinstall the NVIDIA kernel module:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S nvidia-dkms
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Conclusion 🚀
|
||||||
|
|
||||||
|
By following these steps, you should be able to install, configure, and troubleshoot NVIDIA drivers on Snigdha OS. If you continue to experience issues, checking the **NVIDIA** and **Arch Wiki** documentation, as well as visiting Snigdha OS community forums, might help. Happy computing! 😄🎮
|
@@ -0,0 +1,190 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
# Troubleshooting Sound Issues
|
||||||
|
|
||||||
|
If you're having trouble with sound on Snigdha OS, follow these steps to diagnose and resolve the issue. Whether it's no sound, low volume, or distorted audio, let's get your audio working properly! 🔧🎶
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 1. **Check the Audio Output 🔌🔊**
|
||||||
|
|
||||||
|
#### **Ensure the Correct Output Device is Selected**
|
||||||
|
Sometimes, the wrong audio output device might be selected, especially if you have multiple devices (like speakers, headphones, or HDMI output).
|
||||||
|
|
||||||
|
- Open **PulseAudio Volume Control**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S pavucontrol
|
||||||
|
pavucontrol
|
||||||
|
```
|
||||||
|
|
||||||
|
- Go to the **Playback** tab and check that the audio is routed to the correct device.
|
||||||
|
- In the **Output Devices** tab, make sure the desired audio output (e.g., headphones, speakers) is selected and not muted.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 2. **Check Volume Levels 🔊🎛️**
|
||||||
|
|
||||||
|
#### **Ensure Volume is Turned Up**
|
||||||
|
- Make sure the system volume is not muted or set too low.
|
||||||
|
- You can adjust the volume with the sound settings in your desktop environment or use the command line:
|
||||||
|
|
||||||
|
- To check the volume with **`amixer`**:
|
||||||
|
```bash
|
||||||
|
amixer sget Master
|
||||||
|
```
|
||||||
|
|
||||||
|
- To increase the volume:
|
||||||
|
```bash
|
||||||
|
amixer sset Master 50%+
|
||||||
|
```
|
||||||
|
|
||||||
|
- To unmute:
|
||||||
|
```bash
|
||||||
|
amixer sset Master unmute
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 3. **Check Audio Driver Installation 🔧🎶**
|
||||||
|
|
||||||
|
#### **Is the Audio Driver Installed?**
|
||||||
|
Snigdha OS uses **ALSA** (Advanced Linux Sound Architecture) and **PulseAudio** to manage audio. Ensure that the correct drivers are installed for your sound card.
|
||||||
|
|
||||||
|
- For **Intel HD Audio**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S alsa-utils
|
||||||
|
sudo pacman -S alsa-firmware
|
||||||
|
```
|
||||||
|
|
||||||
|
- For **Realtek Audio** (often found on laptops):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S alsa-utils
|
||||||
|
```
|
||||||
|
|
||||||
|
- For **NVIDIA HDMI Audio**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S nvidia
|
||||||
|
```
|
||||||
|
|
||||||
|
- After installing, restart your system:
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 4. **Restart PulseAudio 🔄🔊**
|
||||||
|
|
||||||
|
Sometimes, restarting **PulseAudio** can resolve sound issues.
|
||||||
|
|
||||||
|
- To restart PulseAudio, run:
|
||||||
|
```bash
|
||||||
|
pulseaudio -k
|
||||||
|
pulseaudio --start
|
||||||
|
```
|
||||||
|
|
||||||
|
- You can also restart the service with:
|
||||||
|
```bash
|
||||||
|
sudo systemctl --user restart pulseaudio
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 5. **Check ALSA Mixer Levels 🎚️**
|
||||||
|
|
||||||
|
#### **Adjust ALSA Mixer Settings**
|
||||||
|
The ALSA mixer might have some channels muted or set to low levels, which can cause sound problems.
|
||||||
|
|
||||||
|
- Open the ALSA mixer:
|
||||||
|
```bash
|
||||||
|
alsamixer
|
||||||
|
```
|
||||||
|
|
||||||
|
- Use the arrow keys to navigate and adjust volume levels.
|
||||||
|
- Unmute any muted channels by pressing `M` (if they are muted).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 6. **Test Audio with `aplay` 🎧**
|
||||||
|
|
||||||
|
You can test if the system is producing audio by using `aplay`, a command-line sound player.
|
||||||
|
|
||||||
|
- Test the sound card with a sample sound:
|
||||||
|
```bash
|
||||||
|
aplay /usr/share/sounds/alsa/Front_Center.wav
|
||||||
|
```
|
||||||
|
|
||||||
|
- If you hear the sound, the audio system is working. If not, it might indicate a deeper issue with your audio configuration.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 7. **Check for Audio Errors in Logs 📝🔍**
|
||||||
|
|
||||||
|
Check the system logs to see if there are any relevant error messages related to sound.
|
||||||
|
|
||||||
|
- View PulseAudio logs:
|
||||||
|
```bash
|
||||||
|
journalctl --user -u pulseaudio
|
||||||
|
```
|
||||||
|
|
||||||
|
- View ALSA logs:
|
||||||
|
```bash
|
||||||
|
dmesg | grep -i audio
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 8. **Reconfigure Audio Settings 🔧🎶**
|
||||||
|
|
||||||
|
#### **Reconfigure ALSA and PulseAudio**
|
||||||
|
Sometimes, resetting the audio configuration can resolve conflicts:
|
||||||
|
|
||||||
|
- Delete the PulseAudio configuration:
|
||||||
|
```bash
|
||||||
|
rm -r ~/.config/pulse/
|
||||||
|
```
|
||||||
|
|
||||||
|
- Reset ALSA:
|
||||||
|
```bash
|
||||||
|
sudo alsactl restore
|
||||||
|
```
|
||||||
|
|
||||||
|
- Restart your system:
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 9. **Update Your System 💻🔄**
|
||||||
|
|
||||||
|
Ensure your system is up-to-date, as updates can fix bugs related to sound.
|
||||||
|
|
||||||
|
- Update your system:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 10. **Try Different Audio Tools 🎶🔊**
|
||||||
|
|
||||||
|
If the problem persists, consider trying different audio tools like **PipeWire** or **Jack**.
|
||||||
|
|
||||||
|
- For **PipeWire** (a modern audio server):
|
||||||
|
```bash
|
||||||
|
sudo pacman -S pipewire
|
||||||
|
```
|
||||||
|
|
||||||
|
- After installing, restart your system:
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Conclusion 🎉
|
||||||
|
|
||||||
|
Sound issues on Snigdha OS can be caused by many factors, such as incorrect drivers, muted settings, or configuration problems. Follow this guide step by step to resolve most common sound issues. If the problem persists, check the community forums or support channels for additional help. Enjoy your sound! 🔊🎶
|
@@ -0,0 +1,151 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# Troubleshooting Wi-Fi Issues
|
||||||
|
|
||||||
|
If you're facing Wi-Fi connectivity issues on Snigdha OS, don’t worry! Follow this guide to resolve the problem. It covers common issues and solutions. Let's get your Wi-Fi back up and running! 😄
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 1. **Check Wi-Fi Adapter 🏠🔍**
|
||||||
|
|
||||||
|
#### **Is Your Wi-Fi Adapter Recognized?**
|
||||||
|
First, check if Snigdha OS recognizes your Wi-Fi adapter.
|
||||||
|
|
||||||
|
- Open a terminal and run:
|
||||||
|
```bash
|
||||||
|
ip link
|
||||||
|
```
|
||||||
|
Look for your Wi-Fi interface (usually named `wlan0`, `wlp2s0`, or similar). If it’s not listed, your adapter might not be recognized or the driver may be missing.
|
||||||
|
|
||||||
|
#### **Install Drivers 🚗💨**
|
||||||
|
If your Wi-Fi adapter is not detected, you may need to install additional drivers.
|
||||||
|
|
||||||
|
- Check for available Wi-Fi drivers:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Ss wifi
|
||||||
|
```
|
||||||
|
Install the appropriate driver for your device:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S <driver-name>
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 2. **Check Wi-Fi Network Status 📶🔌**
|
||||||
|
|
||||||
|
#### **Make Sure Your Network is Active**
|
||||||
|
Ensure that the Wi-Fi network you're trying to connect to is functioning properly. Try connecting with another device to verify the network works.
|
||||||
|
|
||||||
|
#### **Restart Your Router 🔄**
|
||||||
|
If there are issues, try restarting your router by turning it off and on again.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 3. **NetworkManager Issues ⚙️**
|
||||||
|
|
||||||
|
Snigdha OS uses **NetworkManager** to manage network connections. If it’s causing issues, try restarting it.
|
||||||
|
|
||||||
|
- Restart NetworkManager:
|
||||||
|
```bash
|
||||||
|
sudo systemctl restart NetworkManager
|
||||||
|
```
|
||||||
|
|
||||||
|
Check the status of NetworkManager:
|
||||||
|
```bash
|
||||||
|
sudo systemctl status NetworkManager
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 4. **Verify Wireless Interface is Up 📡🆙**
|
||||||
|
|
||||||
|
Sometimes, the wireless interface might be down. Bring it up with this command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo ip link set wlan0 up
|
||||||
|
```
|
||||||
|
Replace `wlan0` with your correct interface name if it’s different.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 5. **Check Wi-Fi Configuration 🛠️**
|
||||||
|
|
||||||
|
#### **NetworkManager Configuration 🖧**
|
||||||
|
- Open **NetworkManager** and ensure your Wi-Fi network is listed. If it’s not, scan for networks again:
|
||||||
|
```bash
|
||||||
|
nmcli dev wifi rescan
|
||||||
|
```
|
||||||
|
|
||||||
|
To connect to a network:
|
||||||
|
```bash
|
||||||
|
nmcli dev wifi connect <SSID> password <password>
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 6. **Check for Conflicting Software ⚠️🛑**
|
||||||
|
|
||||||
|
Sometimes, software like `netctl` or `wpa_supplicant` can conflict with NetworkManager.
|
||||||
|
|
||||||
|
- Disable `netctl`:
|
||||||
|
```bash
|
||||||
|
sudo systemctl disable netctl
|
||||||
|
sudo systemctl stop netctl
|
||||||
|
```
|
||||||
|
|
||||||
|
- Disable `wpa_supplicant`:
|
||||||
|
```bash
|
||||||
|
sudo systemctl disable wpa_supplicant
|
||||||
|
sudo systemctl stop wpa_supplicant
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 7. **Check for IP Address Issues 🌐🛠️**
|
||||||
|
|
||||||
|
If Wi-Fi is connected but you have no internet access, there may be an IP address issue.
|
||||||
|
|
||||||
|
- To release and renew your IP address:
|
||||||
|
```bash
|
||||||
|
sudo dhclient -r
|
||||||
|
sudo dhclient
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 8. **Check Logs for Errors 📝🔍**
|
||||||
|
|
||||||
|
If the issue persists, checking the system logs might help.
|
||||||
|
|
||||||
|
- View `dmesg` logs related to Wi-Fi:
|
||||||
|
```bash
|
||||||
|
dmesg | grep wlan
|
||||||
|
```
|
||||||
|
|
||||||
|
Look for error messages related to your Wi-Fi device, such as missing firmware or drivers.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 9. **Test Using a Different Network 🌍📶**
|
||||||
|
|
||||||
|
If your Wi-Fi issue persists, try connecting to a different Wi-Fi network, like a mobile hotspot or another router, to see if the issue is with your device or the original network.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 10. **Reboot Your System 🔄💻**
|
||||||
|
|
||||||
|
Sometimes, a simple reboot can fix the problem:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo reboot
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Conclusion 🎉
|
||||||
|
|
||||||
|
Wi-Fi issues on Snigdha OS can usually be resolved by checking the adapter, ensuring drivers are installed, and troubleshooting with NetworkManager. If problems continue, check your hardware or consult the Snigdha OS or Arch community.
|
||||||
|
|
||||||
|
Happy browsing! 🌐🚀
|
@@ -0,0 +1,122 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
# Installing with AUR
|
||||||
|
|
||||||
|
|
||||||
|
### 🌟 **Installing Packages with an AUR Helper on Snigdha OS**
|
||||||
|
|
||||||
|
Snigdha OS is known for its powerful **Arch User Repository (AUR)**, which provides access to user-contributed packages that are not included in the official repositories. To simplify the process of building and installing packages from the AUR, many users rely on **AUR helpers** like `yay`, `paru`, or `trizen`.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🔧 **Step 1: Install an AUR Helper**
|
||||||
|
|
||||||
|
#### **Popular AUR Helpers**
|
||||||
|
|
||||||
|
1. **Yay (Yet Another Yaourt)**
|
||||||
|
Lightweight and popular among Arch users.
|
||||||
|
- Install:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S --needed git base-devel
|
||||||
|
git clone https://aur.archlinux.org/yay.git
|
||||||
|
cd yay
|
||||||
|
makepkg -si
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Paru**
|
||||||
|
A modern AUR helper written in Rust, which offers fast operations and is actively maintained.
|
||||||
|
- Install:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S --needed git base-devel
|
||||||
|
git clone https://aur.archlinux.org/paru.git
|
||||||
|
cd paru
|
||||||
|
makepkg -si
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Trizen**
|
||||||
|
Another reliable AUR helper that integrates with pacman and supports clean builds.
|
||||||
|
- Install:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S --needed git base-devel
|
||||||
|
git clone https://aur.archlinux.org/trizen.git
|
||||||
|
cd trizen
|
||||||
|
makepkg -si
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🌟 **Step 2: Search and Install AUR Packages**
|
||||||
|
|
||||||
|
Once your AUR helper is installed, you can easily search for and install AUR packages.
|
||||||
|
|
||||||
|
#### **Basic Commands**
|
||||||
|
| **Command** | **Description** |
|
||||||
|
|----------------------------------|------------------------------------------|
|
||||||
|
| `yay -S package-name` | Install a package from AUR. |
|
||||||
|
| `paru -S package-name` | Install a package from AUR. |
|
||||||
|
| `trizen -S package-name` | Install a package from AUR. |
|
||||||
|
| `yay -Ss package-name` | Search for a package in AUR. |
|
||||||
|
| `paru -Ss package-name` | Search for a package in AUR. |
|
||||||
|
| `trizen -Ss package-name` | Search for a package in AUR. |
|
||||||
|
| `yay -Syu` | Update all installed packages (including AUR). |
|
||||||
|
| `paru -Syu` | Update all installed packages (including AUR). |
|
||||||
|
| `trizen -Syu` | Update all installed packages (including AUR). |
|
||||||
|
| `yay -R package-name` | Remove a package. |
|
||||||
|
| `paru -R package-name` | Remove a package. |
|
||||||
|
| `trizen -R package-name` | Remove a package. |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🌐 **Step 3: Example Installations**
|
||||||
|
|
||||||
|
1. **Install `visual-studio-code-bin` (AUR package)**:
|
||||||
|
```bash
|
||||||
|
yay -S visual-studio-code-bin
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Search for a package (e.g., Brave Browser)**:
|
||||||
|
```bash
|
||||||
|
paru -Ss brave
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Update All Packages**:
|
||||||
|
```bash
|
||||||
|
yay -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
4. **Remove a Package (e.g., Discord)**:
|
||||||
|
```bash
|
||||||
|
paru -R discord
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### ⚠️ **Tips and Precautions**
|
||||||
|
|
||||||
|
1. **Enable Parallel Builds**: Speed up builds by editing `/etc/makepkg.conf` and setting:
|
||||||
|
```bash
|
||||||
|
MAKEFLAGS="-j$(nproc)"
|
||||||
|
```
|
||||||
|
This uses all available CPU cores for compiling.
|
||||||
|
|
||||||
|
2. **Check PKGBUILDs**: Always review the **PKGBUILD** file for security before installing a package:
|
||||||
|
```bash
|
||||||
|
yay -G package-name
|
||||||
|
cd package-name
|
||||||
|
cat PKGBUILD
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Use Trusted Helpers**: Stick to widely-used and actively maintained AUR helpers to minimize risks.
|
||||||
|
|
||||||
|
4. **Update Regularly**: Keep your system updated, as outdated packages can lead to dependency issues:
|
||||||
|
```bash
|
||||||
|
yay -Syu
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🚀 **Conclusion**
|
||||||
|
|
||||||
|
Using an AUR helper like `yay`, `paru`, or `trizen` streamlines the process of installing and managing AUR packages, making Snigdha OS even more powerful and user-friendly. Happy exploring! 😄
|
@@ -0,0 +1,89 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
# Chaotic AUR
|
||||||
|
|
||||||
|
### 🔧 **What is Chaotic-AUR?**
|
||||||
|
Chaotic-AUR is an unofficial **AUR (Arch User Repository)** repository that provides pre-built packages for **Arch Linux**, **Snigdha OS**, and **Manjaro** users. It hosts packages that are not included in the official repositories or AUR, allowing for quicker and easier installation of a variety of applications. Chaotic-AUR makes it easier for users to access a wide range of packages without the need to manually compile them.
|
||||||
|
|
||||||
|
### 🌟 **Key Features**
|
||||||
|
1. **Pre-built Packages**: Chaotic-AUR hosts pre-built packages, saving you time on compiling.
|
||||||
|
2. **Extensive Package Selection**: It includes a vast range of packages from AUR, even those with complex build processes.
|
||||||
|
3. **Up-to-date**: The repository is continuously updated, so packages stay current with the latest versions available in the AUR.
|
||||||
|
4. **AUR-based**: It is based entirely on the AUR, so it contains packages contributed by the Arch community.
|
||||||
|
5. **Available for Arch Linux, Snigdha OS, and Manjaro**: Chaotic-AUR is suitable for **Arch Linux**, **Snigdha OS**, and **Manjaro** users, making it a versatile option for multiple Linux distributions.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🌐 **Official Installation Documentation for Chaotic-AUR**
|
||||||
|
|
||||||
|
Follow the official steps below to install Chaotic-AUR on **Arch Linux**, **Snigdha OS**, or **Manjaro**:
|
||||||
|
|
||||||
|
#### **Step 1: Import the Chaotic-AUR Keyring**
|
||||||
|
The first step is to import the GPG key used to sign packages from Chaotic-AUR. Run the following command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
|
||||||
|
pacman-key --lsign-key 3056513887B78AEB
|
||||||
|
pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
|
||||||
|
pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Step 2: Add the Chaotic-AUR Repository to Your Pacman Configuration**
|
||||||
|
To enable Chaotic-AUR, you need to add the repository to the **pacman.conf** file.
|
||||||
|
|
||||||
|
1. Open **pacman.conf** using your favorite text editor (e.g., nano or vim):
|
||||||
|
```bash
|
||||||
|
sudo nano /etc/pacman.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Add the following lines at the end of the file:
|
||||||
|
```ini
|
||||||
|
[chaotic-aur]
|
||||||
|
Server = https://repo.archlinuxcn.org/$arch
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Save the file and close the editor.
|
||||||
|
|
||||||
|
#### **Step 3: Update Package Database**
|
||||||
|
After adding the repository, update your package database to fetch the latest list of packages:
|
||||||
|
```bash
|
||||||
|
sudo pacman -Sy
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Step 4: Install Packages from Chaotic-AUR**
|
||||||
|
Now you can install packages from the Chaotic-AUR repository using **pacman**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S package-name
|
||||||
|
```
|
||||||
|
For example, to install **Google Chrome**:
|
||||||
|
```bash
|
||||||
|
sudo pacman -S google-chrome
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🌐 **Advantages of Using Chaotic-AUR**
|
||||||
|
1. **Speed**: Pre-built binaries are much faster to install compared to building from source, especially for large or complex packages.
|
||||||
|
2. **Convenience**: It saves users the trouble of having to manually manage dependencies or deal with build failures.
|
||||||
|
3. **Large Package Selection**: Chaotic-AUR includes many packages that may not be available in the official Arch repositories.
|
||||||
|
4. **No Build Failures**: As the packages are pre-compiled, you don’t need to worry about running into build issues.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### ⚠️ **Precautions**
|
||||||
|
1. **Trust**: Since Chaotic-AUR is an unofficial repository, some users may have security concerns about trusting the source. Always review the packages you install and consider the risks.
|
||||||
|
2. **Stability**: Although Chaotic-AUR is frequently updated, it's still unofficial, so there may be occasional issues with certain packages.
|
||||||
|
3. **Package Availability**: While Chaotic-AUR offers many AUR packages, not every package may be available, and some packages might be outdated compared to those in the official AUR.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🛠️ **Chaotic-AUR vs AUR Helpers**
|
||||||
|
- **AUR Helpers**: Tools like `yay`, `paru`, and `trizen` allow users to build and install AUR packages from source. This provides more control over the installation but can be slower and prone to build errors.
|
||||||
|
- **Chaotic-AUR**: Provides pre-built binaries for faster installation but lacks the customization and flexibility of building from source. It's an excellent option for users looking for speed and ease of use.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 🚀 **Conclusion**
|
||||||
|
Chaotic-AUR is an excellent tool for **Arch Linux**, **Snigdha OS**, and **Manjaro** users who want the convenience of pre-built packages from the AUR without the hassle of compiling them. It provides faster installations and a vast selection of packages while being actively updated and maintained by the community. However, it's important to consider the potential security and stability trade-offs when using an unofficial repository.
|
@@ -0,0 +1,303 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
# Shortcut for Developers
|
||||||
|
|
||||||
|
### Git Commands & Aliases
|
||||||
|
Here are your Git aliases with explanations and emojis for easy reference:
|
||||||
|
|
||||||
|
|
||||||
|
- **`alias gs="git status"`** 📜:
|
||||||
|
Show the current status of the Git repository (modified files, untracked files, etc.).
|
||||||
|
|
||||||
|
- **`alias ga="git add"`** ➕:
|
||||||
|
Stage changes for commit (adds a file to the staging area).
|
||||||
|
|
||||||
|
- **`alias gaa="git add --all"`** 📥:
|
||||||
|
Stage all modified, deleted, and untracked files for commit.
|
||||||
|
|
||||||
|
- **`alias gc="git commit"`** ✏️:
|
||||||
|
Commit the staged changes to the repository.
|
||||||
|
|
||||||
|
- **`alias gca="git commit --amend"`** 🔄✏️:
|
||||||
|
Amend the last commit (useful for correcting commit messages or adding more changes).
|
||||||
|
|
||||||
|
- **`alias gcm="git commit -m"`** 📝💬:
|
||||||
|
Commit changes with a specific commit message.
|
||||||
|
|
||||||
|
- **`alias gco="git checkout"`** 🔀:
|
||||||
|
Switch branches or restore working directory files.
|
||||||
|
|
||||||
|
- **`alias gbr="git branch"`** 🌿:
|
||||||
|
List, create, or delete Git branches.
|
||||||
|
|
||||||
|
- **`alias gb="git branch"`** 🌱:
|
||||||
|
List all branches in the repository.
|
||||||
|
|
||||||
|
- **`alias gl="git log"`** 📖:
|
||||||
|
View the commit history with details like author and message.
|
||||||
|
|
||||||
|
- **`alias glg="git log --oneline --graph --all"`** 🗂️📊:
|
||||||
|
View a visualized, condensed commit history (one-line format with a graph showing branching and merging).
|
||||||
|
|
||||||
|
- **`alias gst="git stash"`** 🗂️🔒:
|
||||||
|
Temporarily save changes that are not ready for commit.
|
||||||
|
|
||||||
|
- **`alias gpo="git push origin"`** 🚀🌍:
|
||||||
|
Push your local commits to the remote repository on the `origin` remote.
|
||||||
|
|
||||||
|
- **`alias gpl="git pull"`** 🔄🔃:
|
||||||
|
Pull changes from the remote repository (fetch and merge).
|
||||||
|
|
||||||
|
- **`alias gup="git pull --rebase"`** 🔄📅:
|
||||||
|
Pull changes from the remote repository but rebase your local commits on top of the remote branch.
|
||||||
|
|
||||||
|
- **`alias gd="git diff"`** 🔍📝:
|
||||||
|
Show changes between commits, working directory, and staged changes.
|
||||||
|
|
||||||
|
- **`alias gds="git diff --staged"`** 📑:
|
||||||
|
Show the differences between the staged changes and the last commit.
|
||||||
|
|
||||||
|
- **`alias gls="git ls-files"`** 🗃️:
|
||||||
|
List all files currently tracked by Git in the repository.
|
||||||
|
|
||||||
|
- **`alias gcl="git clone"`** 🛠️:
|
||||||
|
Clone a Git repository into a new directory.
|
||||||
|
|
||||||
|
- **`alias gtag="git tag"`** 🏷️:
|
||||||
|
Create, list, or delete tags in the Git repository.
|
||||||
|
|
||||||
|
These Git aliases provide quick access to common Git operations, making version control more efficient and saving you time while working with Git repositories.
|
||||||
|
|
||||||
|
Here are the explanations for your aliases across various tools, with some added emojis to make them more visually engaging:
|
||||||
|
|
||||||
|
### npm Aliases
|
||||||
|
- **`ni="npm install"`** 🛠️:
|
||||||
|
Install dependencies for the project.
|
||||||
|
|
||||||
|
- **`nis="npm install --save"`** 💾:
|
||||||
|
Install and save the package in the `dependencies` section of `package.json`.
|
||||||
|
|
||||||
|
- **`nisdev="npm install --save-dev"`** 🛠️🔧:
|
||||||
|
Install and save the package as a development dependency.
|
||||||
|
|
||||||
|
- **`nup="npm update"`** 🔄:
|
||||||
|
Update all installed npm packages to their latest versions.
|
||||||
|
|
||||||
|
- **`nstart="npm start"`** ▶️:
|
||||||
|
Start the application (runs the start script).
|
||||||
|
|
||||||
|
- **`nrun="npm run"`** ▶️💻:
|
||||||
|
Run any custom npm script defined in `package.json`.
|
||||||
|
|
||||||
|
- **`ntest="npm test"`** 🧪:
|
||||||
|
Run tests defined in the `test` script.
|
||||||
|
|
||||||
|
- **`nls="npm ls"`** 📜:
|
||||||
|
List all installed packages in the current project.
|
||||||
|
|
||||||
|
- **`nci="npm ci"`** ⚡:
|
||||||
|
Perform a clean install (faster and more predictable than `npm install`).
|
||||||
|
|
||||||
|
- **`nfund="npm fund"`** 💰:
|
||||||
|
Show the funding information for your project's dependencies.
|
||||||
|
|
||||||
|
- **`npublish="npm publish"`** 📦:
|
||||||
|
Publish your package to the npm registry.
|
||||||
|
|
||||||
|
- **`nversion="npm version"`** 🔢:
|
||||||
|
View and manage versioning for your project.
|
||||||
|
|
||||||
|
- **`nrm="npm run"`** 🔄:
|
||||||
|
Run a specific npm script.
|
||||||
|
|
||||||
|
- **`nout="npm outdated"`** ⏳:
|
||||||
|
Check for outdated packages in your project.
|
||||||
|
|
||||||
|
### pnpm Aliases
|
||||||
|
- **`pni="pnpm install"`** 🛠️:
|
||||||
|
Install dependencies using pnpm.
|
||||||
|
|
||||||
|
- **`pnis="pnpm install --save"`** 💾:
|
||||||
|
Install and save the package in `dependencies`.
|
||||||
|
|
||||||
|
- **`pnisdev="pnpm install --save-dev"`** 🛠️🔧:
|
||||||
|
Install and save the package as a development dependency.
|
||||||
|
|
||||||
|
- **`pnm="pnpm manager"`** ⚙️:
|
||||||
|
Use pnpm as the package manager.
|
||||||
|
|
||||||
|
- **`pnup="pnpm update"`** 🔄:
|
||||||
|
Update all installed pnpm packages.
|
||||||
|
|
||||||
|
- **`pnstart="pnpm start"`** ▶️:
|
||||||
|
Start the application with pnpm.
|
||||||
|
|
||||||
|
- **`pnrun="pnpm run"`** ▶️💻:
|
||||||
|
Run any script defined in `package.json` using pnpm.
|
||||||
|
|
||||||
|
- **`pntest="pnpm test"`** 🧪:
|
||||||
|
Run tests defined in the `test` script using pnpm.
|
||||||
|
|
||||||
|
- **`pnls="pnpm list"`** 📜:
|
||||||
|
List all installed pnpm packages.
|
||||||
|
|
||||||
|
- **`pnci="pnpm ci"`** ⚡:
|
||||||
|
Perform a clean install with pnpm.
|
||||||
|
|
||||||
|
- **`pnpublish="pnpm publish"`** 📦:
|
||||||
|
Publish a package to the pnpm registry.
|
||||||
|
|
||||||
|
- **`pnversion="pnpm version"`** 🔢:
|
||||||
|
View and manage versioning for your pnpm project.
|
||||||
|
|
||||||
|
- **`pnout="pnpm outdated"`** ⏳:
|
||||||
|
Check for outdated pnpm packages.
|
||||||
|
|
||||||
|
### Python Aliases
|
||||||
|
- **`py="python"`** 🐍:
|
||||||
|
Shortcut for the Python interpreter.
|
||||||
|
|
||||||
|
- **`py3="python3"`** 🐍3:
|
||||||
|
Shortcut for Python 3 interpreter.
|
||||||
|
|
||||||
|
- **`pip="pip3"`** 📦:
|
||||||
|
Use `pip3` to manage Python packages.
|
||||||
|
|
||||||
|
- **`pipup="pip install --upgrade"`** ⬆️📦:
|
||||||
|
Upgrade pip packages.
|
||||||
|
|
||||||
|
- **`pyvenv="python3 -m venv"`** 🐍🧳:
|
||||||
|
Create a Python virtual environment.
|
||||||
|
|
||||||
|
- **`pyactivate="source venv/bin/activate"`** 🔑:
|
||||||
|
Activate a Python virtual environment.
|
||||||
|
|
||||||
|
- **`pydeactivate="deactivate"`** ❌:
|
||||||
|
Deactivate the current Python virtual environment.
|
||||||
|
|
||||||
|
- **`pyrun="python"`** 🐍🏃♂️:
|
||||||
|
Run a Python script.
|
||||||
|
|
||||||
|
- **`pycheck="python -m py_compile"`** 🔍📝:
|
||||||
|
Check Python script syntax without running it.
|
||||||
|
|
||||||
|
- **`pytest="python -m pytest"`** 🧪:
|
||||||
|
Run tests with pytest.
|
||||||
|
|
||||||
|
- **`pydoc="python -m pydoc"`** 📚:
|
||||||
|
Launch Python documentation server.
|
||||||
|
|
||||||
|
- **`pylist="pip list"`** 📜:
|
||||||
|
List installed Python packages.
|
||||||
|
|
||||||
|
- **`pyfreeze="pip freeze"`** ❄️:
|
||||||
|
List installed packages in `requirements.txt` format.
|
||||||
|
|
||||||
|
- **`pyinstall="pip install"`** 📦:
|
||||||
|
Install Python packages.
|
||||||
|
|
||||||
|
- **`pyuninstall="pip uninstall"`** ❌📦:
|
||||||
|
Uninstall Python packages.
|
||||||
|
|
||||||
|
### C++ Aliases
|
||||||
|
- **`cpp-compile="g++ -std=c++17 -Wall -Wextra -o output"`** ⚙️📦:
|
||||||
|
Compile C++ code with standard C++17 features and output as `output`.
|
||||||
|
|
||||||
|
- **`cpp-run="g++ -std=c++17 -Wall -Wextra -o output && ./output"`** ▶️:
|
||||||
|
Compile and run a C++ program.
|
||||||
|
|
||||||
|
- **`cpp-compile-opt="g++ -std=c++17 -O2 -Wall -Wextra -o output"`** ⚙️🔧:
|
||||||
|
Compile C++ code with optimizations (`-O2`).
|
||||||
|
|
||||||
|
- **`cpp-clean="rm -f output"`** 🧹:
|
||||||
|
Remove the compiled output file.
|
||||||
|
|
||||||
|
- **`cpp-build-all="g++ -std=c++17 -Wall -Wextra *.cpp -o output"`** 🔨:
|
||||||
|
Compile all `.cpp` files in the directory.
|
||||||
|
|
||||||
|
- **`cpp-edit="nano"`** ✏️:
|
||||||
|
Open the code in the `nano` text editor.
|
||||||
|
|
||||||
|
- **`cpp-exec="./output"`** ▶️💻:
|
||||||
|
Execute the compiled output.
|
||||||
|
|
||||||
|
### C Aliases
|
||||||
|
- **`c-compile="gcc -std=c11 -Wall -Wextra -o output"`** ⚙️📦:
|
||||||
|
Compile C code with standard C11 features and output as `output`.
|
||||||
|
|
||||||
|
- **`c-run="gcc -std=c11 -Wall -Wextra -o output && ./output"`** ▶️:
|
||||||
|
Compile and run a C program.
|
||||||
|
|
||||||
|
- **`c-compile-opt="gcc -std=c11 -O2 -Wall -Wextra -o output"`** ⚙️🔧:
|
||||||
|
Compile C code with optimizations (`-O2`).
|
||||||
|
|
||||||
|
- **`c-clean="rm -f output"`** 🧹:
|
||||||
|
Remove the compiled output file.
|
||||||
|
|
||||||
|
- **`c-build-all="gcc -std=c11 -Wall -Wextra *.c -o output"`** 🔨:
|
||||||
|
Compile all `.c` files in the directory.
|
||||||
|
|
||||||
|
- **`c-edit="nano"`** ✏️:
|
||||||
|
Open the code in the `nano` text editor.
|
||||||
|
|
||||||
|
- **`c-exec="./output"`** ▶️💻:
|
||||||
|
Execute the compiled output.
|
||||||
|
|
||||||
|
### Rust Aliases
|
||||||
|
- **`rustc="rustc"`** ⚙️:
|
||||||
|
Compile Rust programs using the `rustc` compiler.
|
||||||
|
|
||||||
|
- **`rust-run="cargo run"`** ▶️📦:
|
||||||
|
Run the current Rust project.
|
||||||
|
|
||||||
|
- **`rust-build="cargo build"`** 🏗️:
|
||||||
|
Build the current Rust project.
|
||||||
|
|
||||||
|
- **`rust-build-rel="cargo build --release"`** 🏗️🚀:
|
||||||
|
Build the project in release mode for optimizations.
|
||||||
|
|
||||||
|
- **`rust-test="cargo test"`** 🧪:
|
||||||
|
Run tests for the current project.
|
||||||
|
|
||||||
|
- **`rust-clean="cargo clean"`** 🧹:
|
||||||
|
Clean the build directory.
|
||||||
|
|
||||||
|
- **`rust-fmt="cargo fmt"`** 🔧📐:
|
||||||
|
Format the Rust code.
|
||||||
|
|
||||||
|
- **`rust-clippy="cargo clippy"`** 🔍:
|
||||||
|
Run Clippy to check the code for potential issues.
|
||||||
|
|
||||||
|
- **`rust-doc="cargo doc --open"`** 📚:
|
||||||
|
Generate and open Rust documentation.
|
||||||
|
|
||||||
|
- **`rust-new="cargo new"`** 🛠️📦:
|
||||||
|
Create a new Rust project.
|
||||||
|
|
||||||
|
- **`rust-init="cargo init"`** ⚙️:
|
||||||
|
Initialize a new Rust project in an existing directory.
|
||||||
|
|
||||||
|
- **`rust-add="cargo add"`** ➕:
|
||||||
|
Add a dependency to the Rust project.
|
||||||
|
|
||||||
|
- **`rust-upd="rustup update"`** 🔄:
|
||||||
|
Update the Rust toolchain.
|
||||||
|
|
||||||
|
- **`rust-ver="rustc --version"`** 📅:
|
||||||
|
Display the version of `rustc`.
|
||||||
|
|
||||||
|
- **`rust-watch="cargo watch -x run"`** 👀:
|
||||||
|
Watch for changes in the Rust project and run automatically.
|
||||||
|
|
||||||
|
- **`rust-deps="cargo tree"`** 🗂️:
|
||||||
|
Show the dependency tree of the Rust project.
|
||||||
|
|
||||||
|
- **`rust-check="cargo check"`** ✅:
|
||||||
|
Check the code for errors without building it.
|
||||||
|
|
||||||
|
- **`rust-ls="ls -alh --color=auto"`** 📂:
|
||||||
|
List the project directory contents with detailed info.
|
||||||
|
|
||||||
|
These aliases will help streamline your workflow in a variety of languages and package managers!
|
@@ -0,0 +1,135 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# Introduction to Terminal
|
||||||
|
|
||||||
|
## Launch Terminal
|
||||||
|
Here’s a list of common shortcuts to launch the terminal in various desktop environments and window managers on Snigdha OS, along with relevant emojis:
|
||||||
|
|
||||||
|
### 🌐 **Desktop Environments & Window Managers**
|
||||||
|
|
||||||
|
1. **KDE Plasma**
|
||||||
|
- Shortcut: `Ctrl + Alt + T`
|
||||||
|
|
||||||
|
|
||||||
|
2. **GNOME**
|
||||||
|
- Shortcut: `Super (Windows key) + T`
|
||||||
|
|
||||||
|
|
||||||
|
3. **XFCE**
|
||||||
|
- Shortcut: `Ctrl + Alt + T`
|
||||||
|
|
||||||
|
|
||||||
|
4. **LXQt**
|
||||||
|
- Shortcut: `Ctrl + Alt + T`
|
||||||
|
|
||||||
|
|
||||||
|
5. **Cinnamon**
|
||||||
|
- Shortcut: `Ctrl + Alt + T`
|
||||||
|
|
||||||
|
|
||||||
|
6. **MATE**
|
||||||
|
- Shortcut: `Ctrl + Alt + T`
|
||||||
|
|
||||||
|
|
||||||
|
7. **i3wm** (Tiling Window Manager)
|
||||||
|
- Shortcut: `Mod + Enter` (where "Mod" is usually the `Super` key or `Alt`)
|
||||||
|
|
||||||
|
|
||||||
|
8. **Sway** (Wayland-based i3-like WM)
|
||||||
|
- Shortcut: `Mod + Enter`
|
||||||
|
|
||||||
|
|
||||||
|
9. **Openbox**
|
||||||
|
- Shortcut: `Super + Enter` (or configure manually)
|
||||||
|
|
||||||
|
|
||||||
|
10. **AwesomeWM**
|
||||||
|
- Shortcut: `Mod + Return`
|
||||||
|
|
||||||
|
|
||||||
|
11. **Fluxbox**
|
||||||
|
- Shortcut: `Super + Return`
|
||||||
|
|
||||||
|
|
||||||
|
12. **Budgie**
|
||||||
|
- Shortcut: `Super + T`
|
||||||
|
|
||||||
|
|
||||||
|
13. **LXDE**
|
||||||
|
- Shortcut: `Ctrl + Alt + T`
|
||||||
|
|
||||||
|
|
||||||
|
14. **Herbstluftwm**
|
||||||
|
- Shortcut: `Mod + Return`
|
||||||
|
|
||||||
|
## Shortcodes(Regular)
|
||||||
|
|
||||||
|
Here’s the explanation of your aliases with relevant emojis:
|
||||||
|
|
||||||
|
### System and Package Management
|
||||||
|
|
||||||
|
- **`alias ls='ls -l --color=auto'`** 🖥️🌈:
|
||||||
|
List files in long format (`-l`) and colorize the output for better readability (`--color=auto`).
|
||||||
|
|
||||||
|
- **`alias grep='grep --color=auto'`** 🔍🌈:
|
||||||
|
Highlight matching text in color when using `grep` for easier identification of search results.
|
||||||
|
|
||||||
|
- **`alias rs="sudo pacman -Rs"`** 🚫📦:
|
||||||
|
Remove a package and its dependencies (`pacman -Rs`) with `sudo`.
|
||||||
|
|
||||||
|
- **`alias s="sudo pacman -S"`** 📦✨:
|
||||||
|
Install a package with `pacman` using the shortcut `s`, which runs `sudo pacman -S`.
|
||||||
|
|
||||||
|
- **`alias sy="sudo pacman -Syy"`** 🔄📦:
|
||||||
|
Force sync the package databases (`-Syy`) to fetch the latest information from mirrors.
|
||||||
|
|
||||||
|
- **`alias syyu="sudo pacman -Syyu"`** ⬆️📦💻:
|
||||||
|
Perform a system update by forcing a database refresh (`-Syy`) and upgrading all packages (`-u`).
|
||||||
|
|
||||||
|
- **`alias lck="sudo rm /var/lib/pacman/db.lck"`** 🔒🗑️:
|
||||||
|
Remove the lock file (`db.lck`) that may block `pacman` from functioning properly.
|
||||||
|
|
||||||
|
- **`alias vm="sudo systemctl enable --now vmtoolsd.service"`** 🖥️⚙️:
|
||||||
|
Enable and start the VMware Tools service (`vmtoolsd.service`) in a virtual machine.
|
||||||
|
|
||||||
|
- **`alias rip="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -200 | nl"`** 🕒📋:
|
||||||
|
List the most recent 200 installed packages, sorted by date, with numbered entries.
|
||||||
|
|
||||||
|
- **`alias ys="yay -S"`** 🚀📦:
|
||||||
|
Install packages from the AUR using `yay` with the `ys` shortcut.
|
||||||
|
|
||||||
|
- **`alias pas="paru -S"`** 🛠️📦:
|
||||||
|
Install packages from the AUR using `paru` with the `pas` shortcut.
|
||||||
|
|
||||||
|
- **`alias wget="wget -c"`** 🌐⬇️:
|
||||||
|
Resume interrupted downloads with the `-c` option for `wget`.
|
||||||
|
|
||||||
|
### Navigation
|
||||||
|
|
||||||
|
- **`alias ..="cd .."`** 🔼📁:
|
||||||
|
Move up one directory level using the shortcut `..` instead of typing `cd ..`.
|
||||||
|
|
||||||
|
- **`alias home="cd ~"`** 🏠💻:
|
||||||
|
Quickly go to your home directory with the `home` alias.
|
||||||
|
|
||||||
|
- **`alias docs="cd ~/Documents"`** 📂📝:
|
||||||
|
Navigate to your `Documents` folder with the `docs` alias.
|
||||||
|
|
||||||
|
- **`alias dl="cd ~/Downloads"`** 📥🗂️:
|
||||||
|
Go to the `Downloads` folder using the `dl` alias.
|
||||||
|
|
||||||
|
- **`alias music="cd ~/Music"`** 🎵🎶:
|
||||||
|
Navigate to your `Music` folder with the `music` alias.
|
||||||
|
|
||||||
|
- **`alias pics="cd ~/Pictures"`** 🖼️📸:
|
||||||
|
Quickly jump to the `Pictures` folder using the `pics` alias.
|
||||||
|
|
||||||
|
- **`alias vids="cd ~/Videos"`** 🎬📹:
|
||||||
|
Go to the `Videos` folder with the `vids` alias.
|
||||||
|
|
||||||
|
- **`alias desk="cd ~/Desktop"`** 🖥️💻:
|
||||||
|
Jump to the `Desktop` folder using the `desk` alias.
|
||||||
|
|
||||||
|
These aliases with emojis make it easy to remember their functions and provide a fun, visual way to enhance your terminal experience!
|
57
push.sh
57
push.sh
@@ -6,77 +6,72 @@
|
|||||||
# Define the conventional commit types with new emojis
|
# Define the conventional commit types with new emojis
|
||||||
TYPES=("🚀 feat" "🐛 fix" "📝 docs" "✨ style" "🛠 refactor" "⚡️ perf" "🔬 test" "🔧 build" "🤖 ci" "🧹 chore" "⏪ revert")
|
TYPES=("🚀 feat" "🐛 fix" "📝 docs" "✨ style" "🛠 refactor" "⚡️ perf" "🔬 test" "🔧 build" "🤖 ci" "🧹 chore" "⏪ revert")
|
||||||
|
|
||||||
# Function to display an error and exit
|
# Function to display an error and exit and
|
||||||
error_exit() {
|
error_exit() {
|
||||||
echo -e "\033[1;31m[ERROR]\033[0m $1" # Prints the error message in red color
|
echo -e "\033[1;31m[ERROR]\033[0m $1"
|
||||||
exit 1 # Exits the script with a non-zero status
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
# Ensure the script is run in a Git repository
|
# Ensure the script is run in a Git repository
|
||||||
git rev-parse --is-inside-work-tree > /dev/null 2>&1 || error_exit "This is not a Git repository."
|
git rev-parse --is-inside-work-tree > /dev/null 2>&1 || error_exit "This is not a Git repository."
|
||||||
|
|
||||||
# Get the current branch name using Git
|
# Get the current branch name
|
||||||
branch=$(git rev-parse --abbrev-ref HEAD)
|
branch=$(git rev-parse --abbrev-ref HEAD)
|
||||||
|
|
||||||
# Pull the latest changes from the remote repository to stay up-to-date
|
# Pull the latest changes from the remote repository
|
||||||
echo "Pulling latest changes from remote branch '$branch'..."
|
echo "Pulling latest changes from remote branch '$branch'..."
|
||||||
git pull origin "$branch" || error_exit "Failed to pull changes from the remote repository. Please resolve any conflicts manually."
|
git pull origin "$branch" || error_exit "Failed to pull changes from the remote repository. Please resolve any conflicts manually."
|
||||||
|
|
||||||
# Check if there are any changes to commit (both staged and unstaged)
|
# Prompt the user to select a commit type
|
||||||
if git diff --quiet && git diff --cached --quiet; then
|
|
||||||
error_exit "No changes detected to commit." # If no changes, exit the script
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Prompt the user to select a commit type from the predefined list of types
|
|
||||||
echo "Select a commit type:"
|
echo "Select a commit type:"
|
||||||
select type in "${TYPES[@]}"; do
|
select type in "${TYPES[@]}"; do
|
||||||
if [[ -n "$type" ]]; then # If a valid selection is made, break the loop
|
if [[ -n "$type" ]]; then
|
||||||
break
|
break
|
||||||
else
|
else
|
||||||
echo "Invalid selection. Please try again." # If invalid, prompt again
|
echo "Invalid selection. Please try again."
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Extract the commit type (e.g., "feat") and emoji (e.g., "🚀") from the selected type
|
# Extract the commit type and emoji from the selection
|
||||||
type_emoji=${type} # The full emoji and type (e.g., "🚀 feat")
|
type_emoji=${type}
|
||||||
type=${type_emoji#* } # Extract the commit type (e.g., "feat") by removing the emoji
|
type=${type_emoji#* }
|
||||||
emoji=${type_emoji% *} # Extract the emoji (e.g., "🚀") by removing the type
|
emoji=${type_emoji% *}
|
||||||
|
|
||||||
# Prompt the user to enter a short description for the commit
|
# Prompt the user to enter a short description
|
||||||
read -p "Enter a short description: " desc
|
read -p "Enter a short description: " desc
|
||||||
if [ -z "$desc" ]; then # If the description is empty, exit with an error
|
if [ -z "$desc" ]; then
|
||||||
error_exit "A short description is required!"
|
error_exit "A short description is required!"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Prompt the user to enter a longer description (optional)
|
# Prompt the user to enter a longer description (optional)
|
||||||
read -p "Enter a longer description (optional): " long_desc
|
read -p "Enter a longer description (optional): " long_desc
|
||||||
|
|
||||||
# Create the commit message using the emoji, type, and description
|
# Create the commit message
|
||||||
commit_msg="$emoji $type: $desc"
|
commit_msg="$emoji $type: $desc"
|
||||||
|
|
||||||
# If the user provided a longer description, append it to the commit message
|
# If a longer description was provided, add it to the commit message
|
||||||
if [ -n "$long_desc" ]; then
|
if [ -n "$long_desc" ]; then
|
||||||
commit_msg+="\n\n$long_desc" # Adds the longer description to the commit message
|
commit_msg+="\n\n$long_desc"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Print the commit message to the console for review
|
# Print the commit message to the console
|
||||||
echo -e "\nCommit message:"
|
echo -e "\nCommit message:"
|
||||||
echo -e "\033[1;36m$commit_msg\033[0m" # Prints the commit message in cyan color
|
echo -e "\033[1;36m$commit_msg\033[0m"
|
||||||
|
|
||||||
# Stage all changes for commit
|
# Stage all changes
|
||||||
git add .
|
git add .
|
||||||
|
|
||||||
# Commit the changes with the constructed commit message
|
# Commit the changes with the conventional commit message
|
||||||
if git commit -m "$commit_msg"; then
|
if git commit -m "$commit_msg"; then
|
||||||
echo -e "\033[1;32mCommit successful!\033[0m" # If commit is successful, print success message in green
|
echo -e "\033[1;32mCommit successful!\033[0m"
|
||||||
else
|
else
|
||||||
error_exit "Commit failed. Please check your changes and try again." # If commit fails, show error and exit
|
error_exit "Commit failed."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Push the changes to the remote repository
|
# Push the changes to the remote repository
|
||||||
echo "Pushing changes to remote branch '$branch'..."
|
echo "Pushing changes to remote branch '$branch'..."
|
||||||
if git push origin "$branch"; then
|
if git push origin "$branch"; then
|
||||||
echo -e "\033[1;32mChanges pushed to remote branch '$branch'.\033[0m" # If push is successful, print success message in green
|
echo -e "\033[1;32mChanges pushed to remote branch '$branch'.\033[0m"
|
||||||
else
|
else
|
||||||
error_exit "Push failed. Please check your connection or branch permissions." # If push fails, show error and exit
|
error_exit "Push failed. Please check your connection or branch permissions."
|
||||||
fi
|
fi
|
Reference in New Issue
Block a user