forked from colin/resume
51 lines
1.6 KiB
Bash
Executable File
51 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Generate the SVG favicon
|
|
echo "Generating SVG favicon..."
|
|
node generate-favicon.js
|
|
|
|
# Check if the SVG was generated
|
|
if [ ! -f "favicon.svg" ]; then
|
|
echo "Error: favicon.svg was not generated."
|
|
exit 1
|
|
fi
|
|
|
|
# Create a temporary directory for favicon files
|
|
mkdir -p favicon_tmp
|
|
|
|
# Convert SVG to PNG files of different sizes
|
|
echo "Converting SVG to PNG files of various sizes..."
|
|
for size in 16 32 48 64 128 256; do
|
|
# Using ImageMagick's convert command if available
|
|
if command -v convert > /dev/null; then
|
|
convert -background none -size ${size}x${size} favicon.svg favicon_tmp/favicon-${size}.png
|
|
else
|
|
echo "ImageMagick not found. Please install it to convert SVG to PNG."
|
|
exit 1
|
|
fi
|
|
done
|
|
|
|
# Create favicon.ico from the PNG files
|
|
echo "Creating favicon.ico..."
|
|
if command -v convert > /dev/null; then
|
|
convert favicon_tmp/favicon-16.png favicon_tmp/favicon-32.png favicon_tmp/favicon-48.png favicon.ico
|
|
else
|
|
echo "ImageMagick not found. Please install it to create favicon.ico."
|
|
exit 1
|
|
fi
|
|
|
|
# Create apple-touch-icon.png (for iOS)
|
|
echo "Creating apple-touch-icon.png..."
|
|
cp favicon_tmp/favicon-128.png apple-touch-icon.png
|
|
|
|
# Create favicon-32x32.png and favicon-16x16.png (for modern browsers)
|
|
echo "Creating standard browser favicons..."
|
|
cp favicon_tmp/favicon-32.png favicon-32x32.png
|
|
cp favicon_tmp/favicon-16.png favicon-16x16.png
|
|
|
|
# Clean up temporary directory
|
|
echo "Cleaning up temporary files..."
|
|
rm -rf favicon_tmp
|
|
|
|
echo "Favicon generation complete!"
|
|
echo "Created: favicon.ico, favicon-16x16.png, favicon-32x32.png, apple-touch-icon.png" |