mirror of
https://github.com/Snigdha-OS/snigdhaos-welcome.git
synced 2025-09-05 08:46:37 +02:00
🚀 feat(_): v2.1
This commit is contained in:
110
README.md
110
README.md
@@ -1,19 +1,97 @@
|
||||
<h1 align="center" id="title">SNIGDHA OS WELCOME</h1>
|
||||
# Snigdha OS Welcome
|
||||
|
||||
>You must follow the commit types with commitizen.
|
||||
The **Snigdha OS Welcome** application is your first step into the world of **Snigdha OS**. It provides a smooth onboarding experience, introducing users to key features and settings while guiding them through the initial setup of their new **Snigdha OS** installation.
|
||||
|
||||
## Commit types
|
||||
## Features 🌟
|
||||
|
||||
| Commit Type | Title | Description | Emoji |
|
||||
| ----------- | ------------------------ | ----------------------------------------------------------------------------------------------------------- |:------:|
|
||||
| `feat` | Features | A new feature | ✨ |
|
||||
| `fix` | Bug Fixes | A bug Fix | 🐛 |
|
||||
| `docs` | Documentation | Documentation only changes | 📚 |
|
||||
| `style` | Styles | Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc) | 💎 |
|
||||
| `refactor` | Code Refactoring | A code change that neither fixes a bug nor adds a feature | 📦 |
|
||||
| `perf` | Performance Improvements | A code change that improves performance | 🚀 |
|
||||
| `test` | Tests | Adding missing tests or correcting existing tests | 🚨 |
|
||||
| `build` | Builds | Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm) | 🛠 |
|
||||
| `ci` | Continuous Integrations | Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs) | ⚙️ |
|
||||
| `chore` | Chores | Other changes that don't modify src or test files | ♻️ |
|
||||
| `revert` | Reverts | Reverts a previous commit | 🗑 |
|
||||
- **Interactive Onboarding**: A guided walkthrough that introduces Snigdha OS features and customization options. 🚶♂️
|
||||
- **Quick Setup**: Configure essential system settings for a smooth start. ⚙️
|
||||
- **Snigdha OS Customization**: Easily apply customizations, themes, and configurations. 🎨
|
||||
- **Useful Links**: Direct access to documentation, community channels, and resources. 📚
|
||||
- **System Information**: Displays system info and hardware details for user reference. 🖥️
|
||||
|
||||
## Installation 🛠️
|
||||
|
||||
To install **Snigdha OS Welcome**, follow these steps:
|
||||
|
||||
1. Clone the repository:
|
||||
```bash
|
||||
git clone https://github.com/Snigdha-OS/snigdhaos-welcome.git
|
||||
```
|
||||
|
||||
2. Navigate to the directory:
|
||||
```bash
|
||||
cd snigdhaos-welcome
|
||||
```
|
||||
|
||||
3. Install the required dependencies:
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
This will install all the necessary Python packages.
|
||||
|
||||
## Usage 🚀
|
||||
|
||||
Once installed, you can launch **Snigdha OS Welcome** by running:
|
||||
|
||||
```bash
|
||||
python3 snigdhaos_welcome.py
|
||||
```
|
||||
|
||||
The welcome window will guide you through essential steps, such as:
|
||||
|
||||
- Choosing your preferred desktop settings 🖥️
|
||||
- Enabling additional features 🔧
|
||||
- Accessing documentation and community support 📑
|
||||
|
||||
## Customization 🎛️
|
||||
|
||||
You can easily configure **Snigdha OS Welcome** by editing the configuration files located in:
|
||||
|
||||
```bash
|
||||
~/.config/snigdhaos-welcome/
|
||||
```
|
||||
|
||||
## Developers 👨💻
|
||||
|
||||
- **d3v1l0n**: Primary developer and maintainer of Snigdha OS Welcome.
|
||||
- **Snigdha OS Team**: Contributions to development, design, and testing.
|
||||
|
||||
## Contributing 🤝
|
||||
|
||||
We welcome contributions to improve **Snigdha OS Welcome**. To contribute:
|
||||
|
||||
1. Fork the repository.
|
||||
2. Create a feature branch:
|
||||
```bash
|
||||
git checkout -b feature/your-feature
|
||||
```
|
||||
3. Commit your changes:
|
||||
```bash
|
||||
git commit -m "Add your feature description"
|
||||
```
|
||||
4. Push your branch:
|
||||
```bash
|
||||
git push origin feature/your-feature
|
||||
```
|
||||
5. Create a Pull Request.
|
||||
|
||||
## License 📜
|
||||
|
||||
This project is licensed under the [MIT License](LICENSE).
|
||||
|
||||
## Credits 🎉
|
||||
|
||||
- **Snigdha OS Team** for their dedication to creating a superior Linux experience. 🌍
|
||||
- Powered by **[TONMOY INFRASTRUCTURE](https://www.tonmoy.com)**. 🏗️
|
||||
|
||||
## Feedback and Support 📬
|
||||
|
||||
If you encounter issues or have suggestions for improvement, please open an [issue](https://github.com/Snigdha-OS/snigdhaos-welcome/issues) or contact us through our [community channels](https://forum.snigdhaos.org/).
|
||||
|
||||
|
||||
|
||||
<p align="center">
|
||||
<b>Snigdha OS - Your Gateway to a Minimal and Powerful Linux Experience</b> 🚪💻
|
||||
</p>
|
104
push.sh
104
push.sh
@@ -1,32 +1,88 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Author : Eshan Roy
|
||||
# URI : https://eshanized.github.io
|
||||
# Author : ESHAN ROY
|
||||
# Author URI : https://eshanized.github.io
|
||||
|
||||
# NOTE: If you are on Snigdha OS,
|
||||
# you can install commitizen-go with `sudo pacman -S commitizen-go`
|
||||
# or `s commitizen-go`. Else you need to install `yay` or `yay-bin`
|
||||
# to install commitizen. I have written this script only for *Arch Linux.
|
||||
# NOTE : Run at your own risk!
|
||||
|
||||
# Function to check if Commitizen is installed
|
||||
check_commitizen() {
|
||||
if ! pacman -Qq commitizen-go &> /dev/null; then
|
||||
echo "Commitizen is not installed. Please install it using 'yay -S commitizen-go'." >&2
|
||||
exit 1
|
||||
# Define the conventional commit types with new emojis
|
||||
TYPES=("🚀 feat" "🐛 fix" "📝 docs" "✨ style" "🛠 refactor" "⚡️ perf" "🔬 test" "🔧 build" "🤖 ci" "🧹 chore" "⏪ revert")
|
||||
|
||||
# Function to display an error and exit
|
||||
error_exit() {
|
||||
echo -e "\033[1;31m[ERROR]\033[0m $1"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# 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."
|
||||
|
||||
# Prompt the user to select a commit type
|
||||
echo "Select a commit type:"
|
||||
select type in "${TYPES[@]}"; do
|
||||
if [[ -n "$type" ]]; then
|
||||
break
|
||||
else
|
||||
echo "Invalid selection. Please try again."
|
||||
fi
|
||||
}
|
||||
done
|
||||
|
||||
# Function to stage, commit, and push changes
|
||||
push_to_github() {
|
||||
git add .
|
||||
git cz
|
||||
git push origin master
|
||||
}
|
||||
# Extract the commit type and emoji from the selection
|
||||
type_emoji=${type}
|
||||
type=${type_emoji#* }
|
||||
emoji=${type_emoji% *}
|
||||
|
||||
# Main Function
|
||||
main() {
|
||||
check_commitizen
|
||||
push_to_github
|
||||
}
|
||||
# Prompt the user to enter a scope (optional)
|
||||
read -p "Enter a scope (optional): " scope
|
||||
scope_part=""
|
||||
if [ -n "$scope" ]; then
|
||||
scope_part="($scope)"
|
||||
fi
|
||||
|
||||
main
|
||||
# Prompt the user to enter a short description
|
||||
read -p "Enter a short description: " desc
|
||||
if [ -z "$desc" ]; then
|
||||
error_exit "A short description is required!"
|
||||
fi
|
||||
|
||||
# Prompt the user to enter a longer description (optional)
|
||||
read -p "Enter a longer description (optional): " long_desc
|
||||
|
||||
# Create the commit message
|
||||
commit_msg="$emoji $type$scope_part: $desc"
|
||||
|
||||
# If a longer description was provided, add it to the commit message
|
||||
if [ -n "$long_desc" ]; then
|
||||
commit_msg+="
|
||||
|
||||
$long_desc"
|
||||
fi
|
||||
|
||||
# Print the commit message to the console
|
||||
echo -e "\nCommit message:"
|
||||
echo -e "\033[1;36m$commit_msg\033[0m"
|
||||
|
||||
# Confirm before committing
|
||||
read -p "Do you want to proceed with this commit? (y/n): " confirm
|
||||
if [[ "$confirm" != "y" && "$confirm" != "Y" ]]; then
|
||||
echo "Commit aborted."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Stage all changes
|
||||
git add .
|
||||
|
||||
# Commit the changes with the conventional commit message
|
||||
if git commit -m "$commit_msg"; then
|
||||
echo -e "\033[1;32mCommit successful!\033[0m"
|
||||
else
|
||||
error_exit "Commit failed."
|
||||
fi
|
||||
|
||||
# Push the changes to the remote repository
|
||||
branch=$(git rev-parse --abbrev-ref HEAD)
|
||||
if git push origin "$branch"; then
|
||||
echo -e "\033[1;32mChanges pushed to remote branch '$branch'.\033[0m"
|
||||
else
|
||||
error_exit "Push failed. Please check your connection or branch permissions."
|
||||
fi
|
Reference in New Issue
Block a user