Skip to content

Commit

Permalink
📝 docs(more__): details and clearity
Browse files Browse the repository at this point in the history
  • Loading branch information
eshanized committed Dec 17, 2024
1 parent 5e3b9d0 commit 02e8433
Showing 1 changed file with 130 additions and 57 deletions.
187 changes: 130 additions & 57 deletions README.md
Original file line number Diff line number Diff line change
@@ -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. 🌈

0 comments on commit 02e8433

Please sign in to comment.