forked from colin/resume
2
0
Fork 0
lucky-ddg/docker/resume/convert-favicon.sh

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"