[feat] use squircle icons

This commit is contained in:
dijunkun
2025-08-29 17:53:47 +08:00
parent 01ae299cde
commit d5457373f4
13 changed files with 62 additions and 7 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 648 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 927 B

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 35 KiB

View File

@@ -21,7 +21,7 @@ mkdir -p "$DEBIAN_DIR" "$BIN_DIR" "$CERT_SRC_DIR" "$DESKTOP_DIR"
cp build/linux/arm64/release/crossdesk "$BIN_DIR" cp build/linux/arm64/release/crossdesk "$BIN_DIR"
cp certs/crossdesk.cn_root.crt "$CERT_SRC_DIR/crossdesk.cn_root.crt" cp certs/crossdesk.cn_root.crt "$CERT_SRC_DIR/crossdesk.cn_root.crt"
for size in 16 24 48 128 256; do for size in 16 24 32 48 128 256 1024; do
mkdir -p "$ICON_BASE_DIR/${size}x${size}/apps" mkdir -p "$ICON_BASE_DIR/${size}x${size}/apps"
cp "icons/linux/crossdesk_${size}x${size}.png" \ cp "icons/linux/crossdesk_${size}x${size}.png" \
"$ICON_BASE_DIR/${size}x${size}/apps/crossdesk.png" "$ICON_BASE_DIR/${size}x${size}/apps/crossdesk.png"
@@ -65,7 +65,7 @@ if [ "\$1" = "remove" ] || [ "\$1" = "purge" ]; then
rm -f /usr/local/bin/crossdesk rm -f /usr/local/bin/crossdesk
rm -f /usr/share/applications/$APP_NAME.desktop rm -f /usr/share/applications/$APP_NAME.desktop
rm -rf /opt/$APP_NAME rm -rf /opt/$APP_NAME
for size in 16 24 48 128 256; do for size in 16 24 32 48 128 256 1024; do
rm -f /usr/share/icons/hicolor/\${size}x\${size}/apps/crossdesk.png rm -f /usr/share/icons/hicolor/\${size}x\${size}/apps/crossdesk.png
done done
fi fi

View File

@@ -21,7 +21,7 @@ mkdir -p "$DEBIAN_DIR" "$BIN_DIR" "$CERT_SRC_DIR" "$DESKTOP_DIR"
cp build/linux/x86_64/release/crossdesk "$BIN_DIR" cp build/linux/x86_64/release/crossdesk "$BIN_DIR"
cp certs/crossdesk.cn_root.crt "$CERT_SRC_DIR/crossdesk.cn_root.crt" cp certs/crossdesk.cn_root.crt "$CERT_SRC_DIR/crossdesk.cn_root.crt"
for size in 16 24 48 128 256; do for size in 16 24 32 48 128 256 1024; do
mkdir -p "$ICON_BASE_DIR/${size}x${size}/apps" mkdir -p "$ICON_BASE_DIR/${size}x${size}/apps"
cp "icons/linux/crossdesk_${size}x${size}.png" \ cp "icons/linux/crossdesk_${size}x${size}.png" \
"$ICON_BASE_DIR/${size}x${size}/apps/crossdesk.png" "$ICON_BASE_DIR/${size}x${size}/apps/crossdesk.png"
@@ -65,7 +65,7 @@ if [ "\$1" = "remove" ] || [ "\$1" = "purge" ]; then
rm -f /usr/local/bin/crossdesk rm -f /usr/local/bin/crossdesk
rm -f /usr/share/applications/$APP_NAME.desktop rm -f /usr/share/applications/$APP_NAME.desktop
rm -rf /opt/$APP_NAME rm -rf /opt/$APP_NAME
for size in 16 24 48 128 256; do for size in 16 24 32 48 128 256 1024; do
rm -f /usr/share/icons/hicolor/\${size}x\${size}/apps/crossdesk.png rm -f /usr/share/icons/hicolor/\${size}x\${size}/apps/crossdesk.png
done done
fi fi

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<!-- 应用程序标识 -->
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="*"
name="CrossDesk"
type="win32" />
<!-- 描述信息 -->
<description>CrossDesk Application</description>
<!-- 权限:要求管理员运行 -->
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<!-- DPI 感知设置:支持高分屏 -->
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<!-- Windows Vista/7 风格 DPI 感知 -->
<dpiAware>true/pm</dpiAware>
<!-- Windows 10/11 高级 DPI 感知 -->
<dpiAwareness>PerMonitorV2</dpiAwareness>
</windowsSettings>
</application>
<!-- Windows 兼容性声明 -->
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!-- 支持 Windows 10 -->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
<!-- 支持 Windows 11向下兼容 Win10 GUID -->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
</application>
</compatibility>
</assembly>

View File

@@ -15,6 +15,10 @@
; <20><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>·<EFBFBD><C2B7> ; <20><><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>·<EFBFBD><C2B7>
!define CERT_FILE "${__FILEDIR__}\..\..\certs\crossdesk.cn_root.crt" !define CERT_FILE "${__FILEDIR__}\..\..\certs\crossdesk.cn_root.crt"
; <20><>װ<EFBFBD><D7B0><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ѡ<EFBFBD><D1A1>
!define MUI_FINISHPAGE_RUN "crossdesk.exe" ; Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>
!define MUI_FINISHPAGE_TEXT "<EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CrossDesk?"
; ѹ<><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ; ѹ<><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SetCompressor /FINAL lzma SetCompressor /FINAL lzma
@@ -44,7 +48,7 @@ Section "MainSection"
; <20><><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>·<EFBFBD><C2B7> ; <20><><EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>·<EFBFBD><C2B7>
File /oname=crossdesk.exe "..\..\build\windows\x64\release\crossdesk.exe" File /oname=crossdesk.exe "..\..\build\windows\x64\release\crossdesk.exe"
; ? <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>װĿ¼ ; ? <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>װĿ¼
File "${MUI_ICON}" File "${MUI_ICON}"
; д<><D0B4>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ϣ ; д<><D0B4>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ϣ
@@ -55,11 +59,19 @@ Section "MainSection"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "DisplayIcon" "$INSTDIR\crossdesk.ico" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "DisplayIcon" "$INSTDIR\crossdesk.ico"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "NoModify" 1 WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "NoModify" 1
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "NoRepair" 1 WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINSTALL_REG_KEY}" "NoRepair" 1
SectionEnd SectionEnd
; <20><>װ<EFBFBD><D7B0><EFBFBD>ɺ<EFBFBD>
Section -Post
ExecWait '"C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\mt.exe" -manifest "$INSTDIR\crossdesk.manifest" -outputresource:"$INSTDIR\crossdesk.exe";1'
; <20><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
StrCmp $INSTDIR\crossdesk.exe "" 0 +2
Exec "$INSTDIR\crossdesk.exe"
SectionEnd
Section "Cert" Section "Cert"
SetOutPath "$APPDATA\CrossDesk\certs" SetOutPath "$APPDATA\CrossDesk\certs"
File /r "${CERT_FILE}" File /r "${CERT_FILE}"