summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO15
-rw-r--r--Ldap_lic.pdfbin0 -> 20180 bytes
-rw-r--r--PKGBUILD51
-rwxr-xr-xlbe.sh45
4 files changed, 63 insertions, 48 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a5521476a3cf..cff689145c8c 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,18 +1,19 @@
pkgbase = lbe
- pkgdesc = Simple Java-based LDAP Browser/Editor (last freeware version)
+ pkgdesc = Jarek Gawor's LDAP Browser/Editor (last freeware version)
pkgver = 2.8.2
- pkgrel = 3
+ pkgrel = 12
url = http://web.archive.org/web/20090201080715/http://mcs.anl.gov/~gawor/ldap/
arch = any
license = custom
- depends = java-runtime
- noextract = ldapbrowser-2.8.2.zip
- source = http://nullroute.eu.org/mirrors/files/ldapbrowser-2.8.2.zip
+ depends = java-runtime>=8
+ depends = java-runtime<=11
+ source = https://nullroute.lt/mirrors/files/ldapbrowser-2.8.2.zip
+ source = Ldap_lic.pdf
source = lbe.desktop
source = lbe.sh
sha256sums = 6c1a1b80b81d83f005d4a006bc070b1b8f44f90151f7af6b14004c96e26687ec
+ sha256sums = 673f71a75aafb1c1367a9b7449a8a2da6cc96235c660bb940d26cd70dba6dabe
sha256sums = ccdc18f2879c6ab10aa0f3ad087a3aa225a6146340be7e2fb46302b961255972
- sha256sums = 2b1f6f498cc9a00a5b9392b5d162e5425ec63418d930a2e9d96c442f99ed3771
+ sha256sums = 74e216ae7034236520c5c16addb4371dccb0dbea573cf0d735348765346ccfb1
pkgname = lbe
-
diff --git a/Ldap_lic.pdf b/Ldap_lic.pdf
new file mode 100644
index 000000000000..1917d0a77444
--- /dev/null
+++ b/Ldap_lic.pdf
Binary files differ
diff --git a/PKGBUILD b/PKGBUILD
index 16a766a27ab4..1c18759eeda6 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,39 +2,56 @@
pkgname='lbe'
pkgver=2.8.2
-pkgrel=4
-pkgdesc="Simple Java-based LDAP Browser/Editor (last freeware version)"
+pkgrel=12
+pkgdesc="Jarek Gawor's LDAP Browser/Editor (last freeware version)"
arch=('any')
#url="http://www.openchannelsoftware.com/projects/LDAP_Browser_Editor"
url="http://web.archive.org/web/20090201080715/http://mcs.anl.gov/~gawor/ldap/"
license=('custom')
-depends=('java-runtime')
-source=("http://nullroute.eu.org/mirrors/files/ldapbrowser-$pkgver.zip"
+depends=('java-runtime>=8' 'java-runtime<=11')
+source=("https://nullroute.lt/mirrors/files/ldapbrowser-$pkgver.zip"
+ "Ldap_lic.pdf"
"lbe.desktop"
"lbe.sh")
-noextract=("ldapbrowser-$pkgver.zip")
sha256sums=('6c1a1b80b81d83f005d4a006bc070b1b8f44f90151f7af6b14004c96e26687ec'
+ '673f71a75aafb1c1367a9b7449a8a2da6cc96235c660bb940d26cd70dba6dabe'
'ccdc18f2879c6ab10aa0f3ad087a3aa225a6146340be7e2fb46302b961255972'
- '30576a49af65362a3de47e7636d02c7c4bf7528ba7dd02230bbe20de06d1fe50')
-
-prepare() {
- unzip -o -d "$srcdir/ldapbrowser-$pkgver" "$srcdir/ldapbrowser-$pkgver.zip"
-}
+ '74e216ae7034236520c5c16addb4371dccb0dbea573cf0d735348765346ccfb1')
package() {
- mkdir -p "$pkgdir/opt"
+ # Java program files
+ # (lib/*.jar only contains a copy of JNDI, not needed for any current JRE version)
+ mkdir -p "$pkgdir"/usr/lib/lbe
+ cp -a lbe.jar "$pkgdir"/usr/lib/lbe/
+
+ # Docs
+ mkdir -p "$pkgdir"/usr/share/doc/lbe
+ cp -a *.html help CHANGES.TXT "$pkgdir"/usr/share/doc/lbe/
- cp -a "$srcdir/ldapbrowser-$pkgver" "$pkgdir/opt/lbe"
+ # Initial config directory
+ mkdir -p "$pkgdir"/usr/share/lbe/skel
+ cp -a attributes.config templates "$pkgdir"/usr/share/lbe/skel/
+ cp -a help/uofmichigan.cfg.sample "$pkgdir"/usr/share/lbe/skel/'U of Michigan'.cfg
+ ln -s /usr/share/doc/lbe/help "$pkgdir"/usr/share/lbe/skel/help
+ ln -s /etc/ssl/certs/java/cacerts "$pkgdir"/usr/share/lbe/skel/lbecacerts
+ # Licenses (EULA link from readme.html)
+ # I guess even the "freeware" versions weren't really freeware, but it
+ # doesn't look like ANL ever cared.
+ mkdir -p "$pkgdir"/usr/share/licenses/lbe/
+ cp -p Ldap_lic.pdf LICENSE.ICONS "$pkgdir"/usr/share/licenses/lbe/
+
+ # Launcher
+ install -Dm755 lbe.desktop "$pkgdir"/usr/share/applications/lbe.desktop
+ install -Dm755 lbe.sh "$pkgdir"/usr/bin/lbe
+
+ # Customizations
{
echo
- echo "# added by packager"
+ echo "# Added by packager"
echo "krbextradata=binary"
echo "krbprincipalkey=binary"
- } >> "$pkgdir/opt/lbe/attributes.config"
-
- install -Dm755 "$srcdir/lbe.desktop" "$pkgdir/usr/share/applications/lbe.desktop"
- install -Dm755 "$srcdir/lbe.sh" "$pkgdir/usr/bin/lbe"
+ } >> "$pkgdir"/usr/share/lbe/skel/attributes.config
}
# vim: ts=2:sw=2:et
diff --git a/lbe.sh b/lbe.sh
index b7be2664c746..336ddaf158e9 100755
--- a/lbe.sh
+++ b/lbe.sh
@@ -1,35 +1,32 @@
#!/bin/sh -e
-: ${XDG_CONFIG_HOME:=~/.config}
-
-appdir="/opt/lbe"
-
-if [ -d "$HOME/.lbe" ]; then
- confdir="$HOME/.lbe"
+if [ -d ~/.lbe ]; then
+ confdir=~/.lbe
else
- confdir="$XDG_CONFIG_HOME/lbe"
+ confdir=${XDG_CONFIG_HOME:-~/.config}/lbe
fi
+# LBE tries to find everything in the current working directory (it pretty much
+# expects the user to double-click lbe.jar in their ~/Downloads/lbe), so for a
+# system-wide /usr installation we must manually set up a config directory and
+# chdir() into it.
if [ ! -d "$confdir" ]; then
- mkdir -pm0700 "$confdir"
-
- cat > "$confdir/lbe.properties" <<-EOF
- base=$confdir/
- session.dir=$confdir/
- cacert.file=$confdir/lbecacerts
- EOF
-
- cp -a "$appdir/help/uofmichigan.cfg.sample" "$confdir/U of Michigan.cfg"
-
- cp -a "$appdir/templates" "$confdir/"
+ mkdir -p -m 0700 "$confdir"
+ cp -a /usr/share/lbe/skel/. "$confdir"/
fi
-
-if [ ! -t "$appdir/attributes.config" ]; then
- cp -a "$appdir/attributes.config" "$confdir/"
+if [ ! -e "$confdir"/help ]; then
+ ln -nsf /usr/share/doc/lbe/help "$confdir"/help
fi
+cd "$confdir"
-cd "$confdir" # FIXME: if we do this, we can ditch lbe.properties; any disadvantages?
+# Protect session configuration files.
+umask 077
-umask 077 # protect session files
+for jvm in /usr/lib/jvm/java-{11-{openjdk,jdk},8-{openjdk,jre}/jre}; do
+ if [ -d "$jvm" ]; then
+ exec "$jvm"/bin/java -jar /usr/lib/lbe/lbe.jar "$@"
+ fi
+done
-exec java -jar "$appdir/lbe.jar" "$@"
+echo "error: could not find a compatible JRE" >&2
+exit 1