Use system ICU module and remove local build
Stop backing up and restoring a locally built libicu and instead symlink the distribution ICU module (/usr/lib/x86_64-linux-gnu/mod_icu.so) into /opt/linkding/libicu.so. Add libsqlite3-mod-icu to dependencies and create the symlink after building the frontend. Remove the entire manual download/compile flow for the SQLite ICU extension and its related backups, simplifying installation and relying on the system-provided ICU extension.
This commit is contained in:
parent
d2bbeed04d
commit
1eb0cc55ff
@ -37,7 +37,6 @@ function update_script() {
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/linkding/data /opt/linkding_data_backup
|
||||
cp /opt/linkding/.env /opt/linkding_env_backup
|
||||
cp /opt/linkding/libicu.so /opt/linkding_libicu_backup
|
||||
msg_ok "Backed up Data"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "linkding" "sissbruecker/linkding"
|
||||
@ -45,8 +44,8 @@ function update_script() {
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/linkding_data_backup/. /opt/linkding/data
|
||||
cp /opt/linkding_env_backup /opt/linkding/.env
|
||||
cp /opt/linkding_libicu_backup /opt/linkding/libicu.so
|
||||
rm -rf /opt/linkding_data_backup /opt/linkding_env_backup /opt/linkding_libicu_backup
|
||||
rm -rf /opt/linkding_data_backup /opt/linkding_env_backup
|
||||
ln -sf /usr/lib/x86_64-linux-gnu/mod_icu.so /opt/linkding/libicu.so
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
|
||||
@ -22,6 +22,7 @@ $STD apt-get install -y \
|
||||
libpq-dev \
|
||||
libicu-dev \
|
||||
libsqlite3-dev \
|
||||
libsqlite3-mod-icu \
|
||||
libffi-dev
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
@ -33,22 +34,9 @@ msg_info "Building Frontend"
|
||||
cd /opt/linkding
|
||||
$STD npm ci
|
||||
$STD npm run build
|
||||
ln -sf /usr/lib/x86_64-linux-gnu/mod_icu.so /opt/linkding/libicu.so
|
||||
msg_ok "Built Frontend"
|
||||
|
||||
msg_info "Compiling SQLite ICU Extension"
|
||||
cd /tmp
|
||||
SQLITE_RELEASE_YEAR=2023
|
||||
SQLITE_RELEASE=3430000
|
||||
$STD wget https://www.sqlite.org/${SQLITE_RELEASE_YEAR}/sqlite-amalgamation-${SQLITE_RELEASE}.zip
|
||||
$STD unzip -o sqlite-amalgamation-${SQLITE_RELEASE}.zip
|
||||
cp sqlite-amalgamation-${SQLITE_RELEASE}/sqlite3.h .
|
||||
cp sqlite-amalgamation-${SQLITE_RELEASE}/sqlite3ext.h .
|
||||
$STD wget "https://www.sqlite.org/src/raw/ext/icu/icu.c?name=91c021c7e3e8bbba286960810fa303295c622e323567b2e6def4ce58e4466e60" -O icu.c
|
||||
$STD gcc -fPIC -shared icu.c $(pkg-config --libs --cflags icu-uc icu-io) -o /opt/linkding/libicu.so
|
||||
rm -rf sqlite-amalgamation-${SQLITE_RELEASE}* icu.c sqlite3.h sqlite3ext.h
|
||||
cd /opt/linkding
|
||||
msg_ok "Compiled SQLite ICU Extension"
|
||||
|
||||
msg_info "Setting up linkding"
|
||||
rm -f bookmarks/settings/dev.py
|
||||
touch bookmarks/settings/custom.py
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user