From 02e8433d3851d90a99f24cde88b24c7dcda4a044 Mon Sep 17 00:00:00 2001 From: Eshan Roy Date: Tue, 17 Dec 2024 12:44:24 +0530 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20docs(more=5F=5F):=20details=20an?= =?UTF-8?q?d=20clearity?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 187 +++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 130 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index e028199..5009bcd 100644 --- a/README.md +++ b/README.md @@ -1,91 +1,164 @@ +# Snigdha OS System Config βš™οΈπŸš€ -# 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. -Welcome to the Snigdha OS System Config repository! This repository contains the configuration files and scripts that manage and configure the underlying system settings for Snigdha OS. -## Table of Contents -- [Overview](#overview) -- [Developers](#developers) -- [Development Guide](#development-guide) -- [Contributing](#contributing) -- [License](#license) +## Table of Contents πŸ“‘ -## Overview +- [Overview](#overview) 🌟 +- [Features](#features) ✨ +- [Technologies Used](#technologies-used) βš™οΈ +- [Repository Structure](#repository-structure) πŸ“‚ +- [Development Guide](#development-guide) πŸ› οΈ +- [Contributing](#contributing) 🀝 +- [Developers](#developers) πŸ‘¨β€πŸ’»πŸ‘©β€πŸ’» +- [License](#license) πŸ“œ -Snigdha OS System Config is part of the Snigdha OS ecosystem, providing essential configuration files, scripts, and system settings that ensure a smooth and optimized user experience on Snigdha OS. This repository is intended for managing the system-level configurations of Snigdha OS and is crucial for both development and deployment processes. -## Developers -Below is the list of developers currently working on the Snigdha OS System Config: +## Overview 🌟 -- **Eshan Roy(eshanized)** - Lead Developer, System Architect +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: -If you would like to contribute or join the team, feel free to reach out! +- 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. -## Development Guide +Whether you're a developer or a user looking to understand Snigdha OS's inner workings, this repository is your guide! 🌐 -### Prerequisites -Before contributing, make sure you have the following: -- A working environment with Snigdha OS installed. -- A code editor (VSCode, Sublime Text, etc.). -- Familiarity with shell scripting, configuration files, and Arch-based distributions. -- Git for version control. +## Features ✨ -### Setting Up the Development Environment +- **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. ⚑ -1. Clone the repository: - ```bash - git clone https://github.com/Snigdha-OS/Snigdha OS-system-config.git - cd Snigdha OS-system-config - ``` -2. Ensure all dependencies are installed: - - Make sure you have access to Snigdha OS packages and configuration tools. - - You may need to install any required dependencies for testing scripts. -3. Review and modify the configuration files as needed. Make sure you follow the configuration standards and best practices used in the project. +## Technologies Used βš™οΈ -### Contribution Guidelines +The repository leverages a combination of technologies and tools to manage system configurations: -- **Fork the repository** and clone your fork locally. -- Create a new branch for each feature or bug fix: - ```bash - git checkout -b feature-name - ``` -- Make the necessary changes, test them locally, and commit them with meaningful commit messages. -- Push your changes to your fork and create a pull request to the `main` branch. +- **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. -### Testing Changes -Whenever you make changes to configuration scripts or system files, it’s important to test those changes. You can do this by: -1. Applying the configuration changes locally. -2. Ensuring the system boots and operates correctly with the new configurations. -3. Running tests or checks based on the components you are modifying. +## Repository Structure πŸ“‚ -### Code Style and Naming Conventions +The repository is structured for clarity and modularity: -Please follow these guidelines to keep the codebase clean: +``` +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 +``` -- Use clear and descriptive names for scripts and variables. -- Ensure comments are clear, especially for complex logic. -- Use consistent formatting and indentation (2 spaces recommended). +### Explanation of Key Folders -## Contributing +- **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. -We welcome contributions! Whether you're fixing a bug, adding a feature, or improving documentation, please follow these steps to contribute: -1. Fork the repository and clone it locally. -2. Create a branch for your changes. -3. Submit a pull request with a clear description of the changes you’ve made. -## License +## Development Guide πŸ› οΈ -This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more information. +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. πŸ“š -Thanks for contributing to Snigdha OS System Config! +### 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. 🌈