86
script/build.sh
vendored
86
script/build.sh
vendored
@@ -23,16 +23,17 @@ if [[ "$OSTYPE" =~ ^darwin ]]; then
|
||||
fi
|
||||
|
||||
SHELL_FOLDER=$(cd "$(dirname "$0")" || exit 1; pwd)
|
||||
PROJECT_FOLDER=`dirname ${SHELL_FOLDER}`
|
||||
echo "shell folder is ${SHELL_FOLDER}"
|
||||
echo "project folder is ${PROJECT_FOLDER}"
|
||||
|
||||
# total app number, ignore first line
|
||||
total=$(sed -n '$=' app.csv)
|
||||
export total=$((total-1))
|
||||
export index=1
|
||||
|
||||
export old_name="weread"
|
||||
export old_title="WeRead"
|
||||
export old_zh_name="微信阅读"
|
||||
export old_url="https://weread.qq.com/"
|
||||
export package_prefix="com-tw93"
|
||||
export identifier_prefix="com.tw93"
|
||||
|
||||
|
||||
|
||||
@@ -42,10 +43,7 @@ if [[ "$OSTYPE" =~ ^linux ]]; then
|
||||
echo "==============="
|
||||
export sd=${SHELL_FOLDER}/sd-linux-`arch`
|
||||
chmod +x "$sd"
|
||||
# for linux, package name may be com.xxx.xxx
|
||||
echo "rename package name"
|
||||
export desktop_file="src-tauri/assets/${package_prefix}.weread.desktop"
|
||||
$sd "\"productName\": \"WeRead\"" "\"productName\": \"${package_prefix}-weread\"" src-tauri/tauri.conf.json
|
||||
export desktop_file="src-tauri/assets/*.desktop"
|
||||
fi
|
||||
|
||||
if [[ "$OSTYPE" =~ ^darwin ]]; then
|
||||
@@ -55,8 +53,6 @@ if [[ "$OSTYPE" =~ ^darwin ]]; then
|
||||
|
||||
export sd=${SHELL_FOLDER}/sd-apple-x64
|
||||
chmod +x "$sd"
|
||||
echo "rename package name"
|
||||
$sd "\"productName\": \"weread\"" "\"productName\": \"WeRead\"" src-tauri/tauri.conf.json
|
||||
fi
|
||||
|
||||
tail -n +2 app.csv | while IFS=, read -r -a arr;
|
||||
@@ -65,11 +61,12 @@ do
|
||||
package_title=${arr[1]}
|
||||
package_zh_name=${arr[2]}
|
||||
url=${arr[3]}
|
||||
|
||||
# replace package info
|
||||
$sd -s "${old_url}" "${url}" src-tauri/tauri.conf.json
|
||||
$sd -s "${old_name}" "${package_name}" src-tauri/tauri.conf.json
|
||||
# echo "update ico with 32x32 picture"
|
||||
# $sd "${old_name}" "${package_name}" src-tauri/src/main.rs
|
||||
# clear url with regex
|
||||
$sd "\"url\": \"(.*?)\"," "\"url\": \"\"," src-tauri/tauri.conf.json
|
||||
# replace url with no regex
|
||||
$sd -s "\"url\": \"\"," "\"url\": \"${url}\"," src-tauri/tauri.conf.json
|
||||
|
||||
# for apple, need replace title
|
||||
if [[ "$OSTYPE" =~ ^darwin ]]; then
|
||||
@@ -82,8 +79,18 @@ do
|
||||
echo "warning"
|
||||
cp "src-tauri/icons/icon.icns" "src-tauri/icons/${package_name}.icns"
|
||||
fi
|
||||
$sd -s "${old_name}" "${package_name}" src-tauri/tauri.macos.conf.json
|
||||
$sd -s "${old_title}" "${package_title}" src-tauri/tauri.conf.json
|
||||
# clear package_name with regex
|
||||
$sd "\"productName\": \"(.*?)\"," "\"productName\": \"\"," src-tauri/tauri.conf.json
|
||||
# replace package_name with no regex
|
||||
$sd -s "\"productName\": \"\"," "\"productName\": \"${package_title}\"," src-tauri/tauri.conf.json
|
||||
# clear icon path with regex
|
||||
$sd "\"icon\": \[\"(.*?)\"\]," "\"icon\": \[\"\"\]," src-tauri/tauri.macos.conf.json
|
||||
# replace icon path with no regex
|
||||
$sd -s "\"icon\": [\"\"]," "\"icon\": [\"icons/${package_name}.icns\"]," src-tauri/tauri.macos.conf.json
|
||||
# clear identifier with regex
|
||||
$sd "\"identifier\": \"(.*?)\"," "\"identifier\": \"\"," src-tauri/tauri.macos.conf.json
|
||||
# replace identifier with not regex
|
||||
$sd -s "\"identifier\": \"(.*?)\"," "\"identifier\": \"${identifier_prefix}.${package_name}\"," src-tauri/tauri.macos.conf.json
|
||||
fi
|
||||
|
||||
# echo "update ico with 32x32 picture"
|
||||
@@ -97,23 +104,44 @@ do
|
||||
echo "warning"
|
||||
echo "icon for linux not exist, will use default icon to replace it"
|
||||
echo "warning"
|
||||
cp "src-tauri/png/icon_256.ico" "src-tauri/png/${package_name}_256.ico"
|
||||
cp "src-tauri/png/icon_512.png" "src-tauri/png/${package_name}_512.png"
|
||||
fi
|
||||
$sd "${old_name}" "${package_name}" src-tauri/tauri.linux.conf.json
|
||||
# clear package_name with regex
|
||||
$sd "\"productName\": \"(.*?)\"," "\"productName\": \"\"," src-tauri/tauri.conf.json
|
||||
# replace package_name with no regex
|
||||
$sd -s "\"productName\": \"\"," "\"productName\": \"${package_prefix}-${package_name}\"," src-tauri/tauri.conf.json
|
||||
# clear icon path with regex
|
||||
$sd "\"icon\": \[\"(.*?)\"\]," "\"icon\": [\"\"]," src-tauri/tauri.linux.conf.json
|
||||
# replace icon path with no regex
|
||||
$sd -s "\"icon\": [\"\"]," "\"icon\": [\"png/${package_name}_512.png\"]," src-tauri/tauri.linux.conf.json
|
||||
# clear identifier with regex
|
||||
$sd "\"identifier\": \"(.*?)\"," "\"identifier\": \"\"," src-tauri/tauri.linux.conf.json
|
||||
# replace identifier with not regex
|
||||
$sd -s "\"identifier\": \"\"," "\"identifier\": \"${identifier_prefix}.${package_name}\"," src-tauri/tauri.linux.conf.json
|
||||
echo "update desktop"
|
||||
old_desktop="src-tauri/assets/${package_prefix}-${old_name}.desktop"
|
||||
new_desktop="src-tauri/assets/${package_prefix}-${package_name}.desktop"
|
||||
mv "${old_desktop}" "${new_desktop}"
|
||||
$sd -s "${old_zh_name}" "${package_zh_name}" "${new_desktop}"
|
||||
$sd -s "${old_name}" "${package_name}" "${new_desktop}"
|
||||
fi
|
||||
|
||||
# update package info
|
||||
old_name=${package_name}
|
||||
old_title=${package_title}
|
||||
old_zh_name=${package_zh_name}
|
||||
old_url=${url}
|
||||
new_desktop="${PROJECT_FOLDER}/src-tauri/assets/${package_prefix}-${package_name}.desktop"
|
||||
new_desktop_map_path="/usr/share/applications/${package_prefix}-${package_name}.desktop"
|
||||
for file in `ls ${PROJECT_FOLDER}/src-tauri/assets/`
|
||||
do
|
||||
mv "${PROJECT_FOLDER}/src-tauri/assets/${file}" "${new_desktop}"
|
||||
echo mv "${PROJECT_FOLDER}/src-tauri/assets/${file}" "${new_desktop}"
|
||||
done
|
||||
# clear desktop file with regex
|
||||
$sd "\"files\": \{\"(.*)\"\}" "\"files\": \{\"\"\}" src-tauri/tauri.linux.conf.json
|
||||
# replace desktop file with no regex
|
||||
$sd -s "\"files\": \{\"\"\}" "\"files\": {\"${new_desktop_map_path}\": \"${new_desktop}\"}" src-tauri/tauri.linux.conf.json
|
||||
# clear desktop content with regex
|
||||
$sd "Exec=.*" "Exec=" "${new_desktop}"
|
||||
$sd "Icon=.*" "Icon=" "${new_desktop}"
|
||||
$sd "Name=.*" "Name=" "${new_desktop}"
|
||||
$sd "Name\[zh_CN\]=.*" "Name[zh_CN]=" "${new_desktop}"
|
||||
# repleace dekstop content with no reg
|
||||
$sd -s "Exec=" "Exec=${package_prefix}-${package_name}" "${new_desktop}"
|
||||
$sd -s "Icon=" "Icon=${package_prefix}-${package_name}" "${new_desktop}"
|
||||
$sd -s "Name=" "Name=${package_title}" "${new_desktop}"
|
||||
$sd -s "Name[zh_CN]=" "Name[zh_CN]=${package_zh_name}" "${new_desktop}"
|
||||
fi
|
||||
|
||||
echo "building package ${index}/${total}"
|
||||
echo "package name is ${package_name} (${package_zh_name})"
|
||||
|
||||
Reference in New Issue
Block a user