diff options
author | Gergely Kiss <mail.gery@gmail.com> | 2015-11-01 00:45:12 +0100 |
---|---|---|
committer | Gergely Kiss <mail.gery@gmail.com> | 2015-11-01 00:45:12 +0100 |
commit | c2393dd796ce400a0d7e7d7140c30b9970cfc6b0 (patch) | |
tree | 9366db4baaf8fef33ff01008735bcbdb4177b148 /net/seafile-server | |
parent | cd3e8088fbf07f3a4cbd629d82eb1acdb5b4fce1 (diff) |
seafile-server: make postinst script work with Image Generator
Signed-off-by: Gergely Kiss <mail.gery@gmail.com>
Diffstat (limited to 'net/seafile-server')
-rw-r--r-- | net/seafile-server/Makefile | 65 |
1 files changed, 36 insertions, 29 deletions
diff --git a/net/seafile-server/Makefile b/net/seafile-server/Makefile index f4dd30fd1..949345d8a 100644 --- a/net/seafile-server/Makefile +++ b/net/seafile-server/Makefile @@ -31,7 +31,7 @@ define Package/seafile-server TITLE:=Seafile server MAINTAINER:=Gergely Kiss <mail.gery@gmail.com> URL:=http://seafile.com/ - DEPENDS:=+shadow-useradd +libarchive +libopenssl +glib2 +libsearpc +seafile-ccnet +seafile-seahub \ + DEPENDS:=+libarchive +libopenssl +glib2 +libsearpc +seafile-ccnet +seafile-seahub \ +sqlite3-cli +python-mysql +jansson +libevent2 +libevent2-openssl +zlib +libzdb +libsqlite3 \ +libmysqlclient +libpthread +libuuid \ +bash +sudo +procps-ng +procps-ng-pkill $(ICONV_DEPENDS) @@ -93,43 +93,50 @@ endef define Package/seafile-server/postinst #!/bin/sh -if ! id -u seafile >/dev/null 2>&1; then - useradd seafile -d "/usr/share/seafile" -s /bin/sh; fi +if ! group_exists seafile; then + group_add_next seafile; fi -chown -R seafile:seafile /usr/share/seafile/ -chmod -R o-rwx /usr/share/seafile/ +SEAFILE_GID=$$(grep -s '^seafile:' "$${IPKG_INSTROOT}/etc/group" | cut -d: -f3) -if [ ! -d "/usr/share/seafile/seafile-data" ] +if ! user_exists seafile; then + user_add seafile "" "$${SEAFILE_GID}" seafile /usr/share/seafile /bin/sh; fi + +if [ -z "$${IPKG_INSTROOT}" ] then - echo "*** Installation completed, running configuration script..." - /etc/init.d/seafile setup + chown -R seafile:seafile /usr/share/seafile/ + chmod -R o-rwx /usr/share/seafile/ - if [ $$? -ne 0 ] + if [ ! -d /usr/share/seafile/seafile-data ] then + echo "*** Installation completed, running configuration script..." + /etc/init.d/seafile setup + + if [ $$? -ne 0 ] + then + echo + echo "*** ERROR: Configuration failed. Please fix the issues if any and re-run the script using the command below:" + echo "*** \"/etc/init.d/seafile setup\"" + fi + + echo + echo "*** NOTE: you need to create an admin account before using Seafile." + echo "*** Please run \"/etc/init.d/seafile create_admin\" to do so." + else + echo "*** It seems you are upgrading from an older version." + echo "*** If so, please run the appropriate upgrade scripts before using the new version of Seafile." + echo "*** Upgrade scripts are located at \"/usr/share/seafile/seafile-server/upgrade\"" echo - echo "*** ERROR: Configuration failed. Please fix the issues if any and re-run the script using the command below:" - echo "*** \"/etc/init.d/seafile setup\"" + echo "*** For more information, please read http://manual.seafile.com/deploy/upgrade.html" fi - - echo - echo "*** NOTE: you need to create an admin account before using Seafile." - echo "*** Please run \"/etc/init.d/seafile create_admin\" to do so." else - echo "*** WARNING: it seems you are upgrading from an older version." - echo "*** If so, please run the appropriate upgrade script before using the new version of Seafile." - echo "*** Upgrade scripts are located at \"/usr/share/seafile/seafile-server/upgrade\"" - echo - echo "*** For more information, please read http://manual.seafile.com/deploy/upgrade.html" - exit -fi - -/etc/init.d/seafile enable -/etc/init.d/seafile restart -endef - -define Package/seafile-server/prerm + cat > "$${IPKG_INSTROOT}/etc/uci-defaults/99_seafile-server" << EOF #!/bin/sh -/etc/init.d/seafile stop + +chown -R seafile:seafile /usr/share/seafile/ +chmod -R o-rwx /usr/share/seafile/ +exit 0 +EOF +fi endef $(eval $(call BuildPackage,seafile-server)) |