# Snigdha OS System Config βš™οΈπŸš€ Welcome to the **Snigdha OS System Config** repository! πŸŽ‰ This is the central hub for all configuration files and system-level setup scripts that power the smooth and customizable experience of **Snigdha OS**β€”a lightweight Arch-based Linux distribution. ## Table of Contents πŸ“‘ - [Overview](#overview) 🌟 - [Features](#features) ✨ - [Technologies Used](#technologies-used) βš™οΈ - [Repository Structure](#repository-structure) πŸ“‚ - [Development Guide](#development-guide) πŸ› οΈ - [Contributing](#contributing) 🀝 - [Developers](#developers) πŸ‘¨β€πŸ’»πŸ‘©β€πŸ’» - [License](#license) πŸ“œ ## Overview 🌟 The **Snigdha OS System Config** repository contains all the configuration files, scripts, and utilities needed to ensure a seamless user experience on **Snigdha OS**. This includes: - Essential system configuration files. - Bootstrapping scripts for new installs. - Custom tweaks for the Linux Zen Kernel. - Automated scripts to configure Snigdha OS’s unique features. Whether you're a developer or a user looking to understand Snigdha OS's inner workings, this repository is your guide! 🌐 ## Features ✨ - **Custom Configuration**: Fine-tuned settings for optimal performance and usability. πŸ› οΈ - **Modular Design**: Configuration files are categorized for easy maintenance and customization. πŸ“¦ - **Arch Compatibility**: Fully compatible with Arch Linux, ensuring reliability and flexibility. πŸ”— - **Zen Kernel Support**: Pre-configured settings to maximize the performance of the Linux Zen Kernel. πŸš€ - **Automation**: Scripts for setting up new installations and managing system updates efficiently. ⚑ ## Technologies Used βš™οΈ The repository leverages a combination of technologies and tools to manage system configurations: - **Bash Scripts** 🐚: Used for system automation and configurations. - **Systemd** πŸ”§: For managing services and system processes. - **Git** πŸ”„: Version control for tracking changes in configuration files. - **Arch Linux Ecosystem** πŸ–₯️: Core base for configurations tailored to Arch and its derivatives. - **Linux Zen Kernel** 🧘: Optimized kernel for Snigdha OS. ## Repository Structure πŸ“‚ The repository is structured for clarity and modularity: ``` snigdhaos-system-config/ β”œβ”€β”€ configs/ # System configuration files β”‚ β”œβ”€β”€ systemd/ # systemd service files β”‚ β”œβ”€β”€ bashrc/ # Custom bash configurations β”‚ β”œβ”€β”€ vim/ # vim editor configurations β”‚ └── ... β”œβ”€β”€ scripts/ # Automation and helper scripts β”‚ β”œβ”€β”€ install.sh # Bootstrap script for new installations β”‚ β”œβ”€β”€ update.sh # System update script β”‚ └── cleanup.sh # Cleanup and maintenance script β”œβ”€β”€ docs/ # Documentation β”‚ └── usage.md # Detailed usage guide β”œβ”€β”€ LICENSE # License file └── README.md # This README file ``` ### Explanation of Key Folders - **configs/**: Houses configuration files for system-level customization. - **scripts/**: Contains automation scripts to ease system setup and maintenance. - **docs/**: Includes additional documentation for developers and users. - **LICENSE**: License information for this project. ## Development Guide πŸ› οΈ Follow these steps to contribute or set up your development environment: ### Prerequisites ⚑ Make sure you have the following installed: - **Arch Linux** or an Arch-based system. πŸ–₯️ - **Git** for version control. πŸ”„ - **Bash** for running scripts. 🐚 - Basic knowledge of Linux systems. πŸ“š ### Setting Up the Repository πŸš€ 1. **Clone the repository**: ```bash git clone https://github.com/Snigdha-OS/snigdhaos-system-config.git cd snigdhaos-system-config ``` 2. **Create a new branch** for your changes: ```bash git checkout -b my-feature-branch ``` 3. **Install dependencies** (if applicable): ```bash sudo pacman -S base-devel ``` 4. **Make your changes**: - Modify configuration files under `configs/`. - Add new scripts to `scripts/`. 5. **Test your changes**: - Run any modified scripts to verify functionality: ```bash bash scripts/install.sh ``` 6. **Commit and push your changes**: ```bash git add . git commit -m "Added new feature or fixed bug" git push origin my-feature-branch ``` 7. **Create a pull request** to the main branch. ## Contributing 🀝 We welcome contributions of all kinds! Whether you’re fixing a typo, optimizing a script, or adding new features, you can help improve Snigdha OS. ### Steps to Contribute 1. Fork the repository. 🍴 2. Create a branch for your feature or fix. πŸ”„ 3. Commit your changes with a meaningful message. ✍️ 4. Push your branch and submit a pull request. πŸ“₯ For major changes, please open an issue first to discuss your idea! ## Developers πŸ‘¨β€πŸ’»πŸ‘©β€πŸ’» Meet the team behind SnigdhaOS System Config: - **[eshanized](https://github.com/eshanized/)** - Lead Developer, System Architect πŸ› οΈ If you’d like to join our team, feel free to reach out! πŸ’Œ ## License πŸ“œ This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. Thanks for checking out SnigdhaOS System Config! πŸ’– Your contributions and feedback help us improve every day. 🌈