Compare commits

...

3 Commits

Author SHA1 Message Date
gitea-action
fe4743c770 openlist: bump to v4.0.2 2025-06-24 06:53:42 +08:00
sbwml
dcdb24e7a2 luci-app-openlist: "Open Web Interface" button uses site_url if available
* fallback to protocol/hostname/port

Signed-off-by: sbwml <admin@cooluc.com>
2025-06-23 21:32:05 +08:00
sbwml
632788cf4b install.sh: fix package manager compatibility
Signed-off-by: sbwml <admin@cooluc.com>
2025-06-22 20:21:27 +08:00
5 changed files with 42 additions and 16 deletions

View File

@ -47,8 +47,13 @@
- Install `curl` package
```shell
# for opkg package manager (openwrt 21.02 ~ 24.10)
opkg update
opkg install curl
# for apk package manager
apk update
apk add curl
```
- Execute install script (Multi-architecture support)
@ -63,4 +68,4 @@
--------------
![luci-app-openlist](https://github.com/user-attachments/assets/80593704-1e02-4bcf-8290-a0c7c37012f4)
![luci-app-openlist](https://github.com/user-attachments/assets/50d8ee3a-e589-4285-922a-40c82f96b9f5)

View File

@ -1,4 +1,5 @@
#!/bin/sh
set -e
# Define color codes and output functions
@ -37,9 +38,11 @@ DISTRIB_ARCH="${DISTRIB_ARCH:-unknown}"
# Detect package manager and set SDK version
if [ -x "/usr/bin/apk" ]; then
PKG_MANAGER="apk"
PKG_OPT="add --allow-untrusted"
SDK="SNAPSHOT"
elif command -v opkg >/dev/null 2>&1; then
PKG_MANAGER="opkg"
PKG_OPT="install --force-downgrade"
SDK="openwrt-24.10"
else
msg_red "No supported package manager found."
@ -129,15 +132,26 @@ if ! curl --connect-timeout 5 -m 300 -kLo "$TEMP_DIR/$PKG_FILE" "$PKG_URL"; then
exit 1
fi
# Stop openlist service
if [ -x "/etc/init.d/openlist" ]; then
/etc/init.d/openlist stop || true
fi
# Extract and install packages
msg_green "Installing Packages ..."
tar -zxf "$TEMP_DIR/$PKG_FILE" -C "$TEMP_DIR/"
for pkg in "$TEMP_DIR"/packages_ci/openlist*.ipk \
"$TEMP_DIR"/packages_ci/luci-app-openlist*.ipk \
"$TEMP_DIR"/packages_ci/luci-i18n-openlist-zh-cn*.ipk; do
[ -f "$pkg" ] && $PKG_MANAGER install "$pkg"
for pkg in "$TEMP_DIR"/packages_ci/openlist*.* \
"$TEMP_DIR"/packages_ci/luci-app-openlist*.* \
"$TEMP_DIR"/packages_ci/luci-i18n-openlist-zh-cn*.*; do
[ -f "$pkg" ] && $PKG_MANAGER $PKG_OPT $pkg
done
# Clean up temporary files and finish
rm -rf /tmp/luci-*
# Start openlist service
if [ -x "/etc/init.d/openlist" ]; then
/etc/init.d/openlist start || true
fi
msg_green "Done!"

View File

@ -6,7 +6,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-openlist
PKG_VERSION:=1.0.0
PKG_VERSION:=1.0.1
PKG_RELEASE:=1
LUCI_TITLE:=LuCI support for openlist

View File

@ -23,12 +23,18 @@ function getServiceStatus() {
});
}
function renderStatus(isRunning, protocol, webport) {
function renderStatus(isRunning, protocol, webport, site_url) {
var spanTemp = '<em><span style="color:%s"><strong>%s %s</strong></span></em>';
var renderHTML;
if (isRunning) {
var button = String.format('<input class="cbi-button-reload" type="button" style="margin-left: 50px" value="%s" onclick="window.open(\'%s//%s:%s/\')">',
_('Open Web Interface'), protocol, window.location.hostname, webport);
var buttonUrl = '';
if (site_url && site_url.trim() !== '') {
buttonUrl = site_url;
} else {
buttonUrl = String.format('%s//%s:%s/', protocol, window.location.hostname, webport);
}
var button = String.format('<input class="cbi-button-reload" type="button" style="margin-left: 50px" value="%s" onclick="window.open(\'%s\')">',
_('Open Web Interface'), buttonUrl);
renderHTML = spanTemp.format('green', 'OpenList', _('RUNNING')) + button;
} else {
renderHTML = spanTemp.format('red', 'OpenList', _('NOT RUNNING'));
@ -71,6 +77,7 @@ return view.extend({
} else if (ssl === '1') {
protocol = 'https:';
}
var site_url = uci.get(data[0], '@openlist[0]', 'site_url') || '';
m = new form.Map('openlist', _('OpenList'),
_('A file list program that supports multiple storage.'));
@ -83,7 +90,7 @@ return view.extend({
poll.add(function () {
return L.resolveDefault(getServiceStatus()).then(function (res) {
var view = document.getElementById('service_status');
view.innerHTML = renderStatus(res, protocol, webport);
view.innerHTML = renderStatus(res, protocol, webport, site_url);
});
});

View File

@ -7,13 +7,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=openlist
PKG_VERSION:=4.0.1
PKG_WEB_VERSION:=4.0.1
PKG_RELEASE:=2
PKG_VERSION:=4.0.2
PKG_WEB_VERSION:=4.0.2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/OpenListTeam/OpenList/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=a41798e4fcd56b6fa500e22558908de1cd1a4db6344170c933ecac803b81b4a5
PKG_HASH:=d6e7ca46748b1b1d21ff28850f5b25112930d3d2c211e8b9cec1041cbd3523d5
PKG_BUILD_DIR:=$(BUILD_DIR)/OpenList-$(PKG_VERSION)
@ -24,7 +24,7 @@ PKG_MAINTAINER:=sbwml <admin@cooluc.com>
define Download/openlist-frontend
FILE:=openlist-frontend-dist-v$(PKG_WEB_VERSION).tar.gz
URL:=https://github.com/OpenListTeam/OpenList-Frontend/releases/download/v$(PKG_WEB_VERSION)/
HASH:=0d52781014d01697e3f5af0131ae6f87124f06786188e543fe8b8a12bbeae7bd
HASH:=f28d15059918dbaf4a0da2f2d92b4a956b46019d321f567217ad4318076c2462
endef
PKG_BUILD_DEPENDS:=golang/host
@ -38,7 +38,7 @@ GO_PKG_LDFLAGS:= \
-X '$(GO_PKG)/internal/conf.GoVersion=$(shell $(STAGING_DIR_HOSTPKG)/bin/go version | sed 's/go version //')' \
-X '$(GO_PKG)/internal/conf.GitAuthor=The OpenList Projects Contributors <noreply@openlist.team>' \
-X '$(GO_PKG)/internal/conf.GitCommit=tarball/$(shell echo $(PKG_HASH) | cut -c 1-7)' \
-X '$(GO_PKG)/internal/conf.Version=$(PKG_VERSION) (OpenWrt $(ARCH_PACKAGES))' \
-X '$(GO_PKG)/internal/conf.Version=v$(PKG_VERSION) (OpenWrt $(ARCH_PACKAGES))' \
-X '$(GO_PKG)/internal/conf.WebVersion=v$(PKG_WEB_VERSION)'
ifneq ($(CONFIG_ARCH_64BIT),y)
GO_PKG_EXCLUDES:=drivers/lark