diff --git a/.gitignore b/.gitignore
index 401262a..a34da1e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,6 @@ publish/
riderModule.iml
/_ReSharper.Caches/
poetry.lock
+
+# ImageMagick artifacts
+!_*
diff --git a/NotePad/NotePad.csproj b/NotePad/NotePad.csproj
index 68d7048..d13cd15 100644
--- a/NotePad/NotePad.csproj
+++ b/NotePad/NotePad.csproj
@@ -5,6 +5,7 @@
enable
app.manifest
true
+ img\notepad-icon.ico
diff --git a/NotePad/build-appimage.sh b/NotePad/build-appimage.sh
index 4d8ad6b..303a92a 100755
--- a/NotePad/build-appimage.sh
+++ b/NotePad/build-appimage.sh
@@ -12,6 +12,7 @@ ARCH="x86_64"
PUBLISH_DIR="../publish/linux-x64"
APPDIR="NotePad.AppDir"
OUTPUT_DIR="../publish/appimage"
+ICON_SOURCE="img/notepad-icon.svg"
echo "============================================================"
echo "Building AppImage for $APP_NAME v$VERSION"
@@ -47,15 +48,14 @@ Categories=Utility;TextEditor;
Terminal=false
EOF
-# Create a simple icon (using text as placeholder - replace with actual icon)
-echo "Creating icon placeholder..."
-# This creates a simple SVG icon - you should replace with an actual icon
-cat > "$APPDIR/usr/share/icons/hicolor/256x256/apps/notepad.svg" << EOF
-
-EOF
+# Copy application icon
+echo "Copying application icon..."
+if [ ! -f "$ICON_SOURCE" ]; then
+ echo "❌ ERROR: Icon not found at $ICON_SOURCE"
+ exit 1
+fi
+mkdir -p "$APPDIR/usr/share/icons/hicolor/scalable/apps"
+cp "$ICON_SOURCE" "$APPDIR/usr/share/icons/hicolor/scalable/apps/notepad.svg"
# Create AppRun script
echo "Creating AppRun script..."
@@ -71,7 +71,7 @@ chmod +x "$APPDIR/AppRun"
# Copy desktop file and icon to root of AppDir
cp "$APPDIR/usr/share/applications/notepad.desktop" "$APPDIR/"
-cp "$APPDIR/usr/share/icons/hicolor/256x256/apps/notepad.svg" "$APPDIR/notepad.svg"
+cp "$APPDIR/usr/share/icons/hicolor/scalable/apps/notepad.svg" "$APPDIR/notepad.svg"
# Check for appimagetool
if ! command -v appimagetool &> /dev/null; then
diff --git a/NotePad/img/notepad-icon.ico b/NotePad/img/notepad-icon.ico
new file mode 100644
index 0000000..fdc201b
Binary files /dev/null and b/NotePad/img/notepad-icon.ico differ
diff --git a/NotePad/install.sh b/NotePad/install.sh
index 302d9ae..554ea06 100755
--- a/NotePad/install.sh
+++ b/NotePad/install.sh
@@ -8,6 +8,8 @@ APP_NAME="NotePad"
INSTALL_DIR="/opt/notepad"
BIN_LINK="/usr/local/bin/notepad"
DESKTOP_FILE="/usr/share/applications/notepad.desktop"
+ICON_DIR="/usr/share/icons/hicolor/scalable/apps"
+ICON_FILE="$ICON_DIR/notepad.svg"
echo "============================================================"
echo "$APP_NAME Installer"
@@ -41,6 +43,11 @@ chmod +x "$INSTALL_DIR/NotePad"
echo "→ Creating symlink: $BIN_LINK"
ln -sf "$INSTALL_DIR/NotePad" "$BIN_LINK"
+# Install icon
+echo "→ Installing application icon..."
+mkdir -p "$ICON_DIR"
+cp "$SCRIPT_DIR/img/notepad-icon.svg" "$ICON_FILE"
+
# Create desktop entry
echo "→ Creating desktop entry..."
cat > "$DESKTOP_FILE" << EOF
@@ -48,13 +55,19 @@ cat > "$DESKTOP_FILE" << EOF
Name=NotePad
Comment=Simple text editor
Exec=notepad %F
-Icon=text-editor
+Icon=notepad
Type=Application
Categories=Utility;TextEditor;
Terminal=false
MimeType=text/plain;
EOF
+# Update icon cache if available
+if command -v gtk-update-icon-cache &> /dev/null; then
+ echo "→ Updating icon cache..."
+ gtk-update-icon-cache -f -t /usr/share/icons/hicolor 2>/dev/null || true
+fi
+
# Update desktop database if available
if command -v update-desktop-database &> /dev/null; then
echo "→ Updating desktop database..."