mirror of
https://github.com/Snigdha-OS/snigdhaos-core.git
synced 2025-09-05 20:26:40 +02:00
🚀 feat: initiate the repository
This commit is contained in:
77
push.sh
Executable file
77
push.sh
Executable file
@@ -0,0 +1,77 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Author : ESHAN ROY
|
||||
# Author URI : https://eshanized.github.io
|
||||
|
||||
# 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 and
|
||||
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."
|
||||
|
||||
# Get the current branch name
|
||||
branch=$(git rev-parse --abbrev-ref HEAD)
|
||||
|
||||
# Pull the latest changes from the remote repository
|
||||
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."
|
||||
|
||||
# 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
|
||||
|
||||
# Extract the commit type and emoji from the selection
|
||||
type_emoji=${type}
|
||||
type=${type_emoji#* }
|
||||
emoji=${type_emoji% *}
|
||||
|
||||
# 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: $desc"
|
||||
|
||||
# If a longer description was provided, add it to the commit message
|
||||
if [ -n "$long_desc" ]; then
|
||||
commit_msg+="\n\n$long_desc"
|
||||
fi
|
||||
|
||||
# Print the commit message to the console
|
||||
echo -e "\nCommit message:"
|
||||
echo -e "\033[1;36m$commit_msg\033[0m"
|
||||
|
||||
# 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
|
||||
echo "Pushing changes to remote branch '$branch'..."
|
||||
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
|
49
x86_64/repo-updater.sh
Executable file
49
x86_64/repo-updater.sh
Executable file
@@ -0,0 +1,49 @@
|
||||
#!/bin/bash
|
||||
|
||||
#-----------------------------------------------------------
|
||||
# Script to update Snigdha OS Core repository
|
||||
# Author : Eshan Roy
|
||||
# Author URI : https://eshanized.github.io
|
||||
# Contributor : RiO
|
||||
# Contributor URI : https://d3v1l0n.github.io
|
||||
# Date : 2024-12-27
|
||||
# Description : This script updates the Snigdha OS Core repository
|
||||
# by adding new package files and updating the database files.
|
||||
#-----------------------------------------------------------
|
||||
|
||||
# Set the name for the repository database
|
||||
repo_name="snigdhaos-core"
|
||||
|
||||
# Function to handle errors
|
||||
handle_error() {
|
||||
echo "Error: $1"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Step 1: Remove old packages and database files
|
||||
echo "Cleaning up old package and database files..."
|
||||
rm -f "${repo_name}"* || handle_error "Failed to remove old packages."
|
||||
|
||||
# Step 2: Adding new packages to the repository
|
||||
echo "Adding new packages to the repository..."
|
||||
repo-add -s -n -R "${repo_name}.db.tar.gz" *.pkg.tar.zst || handle_error "Failed to add packages."
|
||||
|
||||
# Sleep to ensure all files are processed
|
||||
sleep 1
|
||||
|
||||
# Step 3: Remove old database and files
|
||||
echo "Cleaning up old database and files..."
|
||||
rm -f "${repo_name}.db" "${repo_name}.db.sig" "${repo_name}.files" "${repo_name}.files.sig" || handle_error "Failed to remove old database files."
|
||||
|
||||
# Step 4: Move new files into place
|
||||
echo "Moving new database and file archive..."
|
||||
mv -f "${repo_name}.db.tar.gz" "${repo_name}.db" || handle_error "Failed to move database file."
|
||||
mv -f "${repo_name}.db.tar.gz.sig" "${repo_name}.db.sig" || handle_error "Failed to move database signature file."
|
||||
mv -f "${repo_name}.files.tar.gz" "${repo_name}.files" || handle_error "Failed to move files archive."
|
||||
mv -f "${repo_name}.files.tar.gz.sig" "${repo_name}.files.sig" || handle_error "Failed to move files signature."
|
||||
|
||||
# Step 5: Confirmation
|
||||
echo "Repository updated successfully!"
|
||||
echo "*******************************************************************************"
|
||||
echo "You can now sync the repository with 'pacman -Sy' to fetch the latest packages."
|
||||
echo "*******************************************************************************"
|
Reference in New Issue
Block a user