forked from Lainports/freebsd-ports
New port: net/guacamole-server
The guacamole-server package is a set of software which forms the basis of the Guacamole stack. It consists of guacd, libguac, and several protocol support libraries. guacd is the Guacamole proxy daemon used by the Guacamole web application and framework. As JavaScript cannot handle binary protocols (like VNC and remote desktop) efficiently, a new test-based protocol was developed which would contain a common superset of the operations needed for efficient remote desktop access, but would be easy for JavaScript programs to process. guacd is the proxy which translates between arbitrary protocols and the Guacamole protocol. WWW: https://github.com/glyptodon/guacamole-server PR: 202754 Submitted by: Ultima1252@gmail.com
This commit is contained in:
parent
8d767d9eba
commit
02ff4e5f53
8 changed files with 196 additions and 0 deletions
1
GIDs
1
GIDs
|
|
@ -242,6 +242,7 @@ dahdi:*:843:asterisk
|
|||
subsonic:*:844:
|
||||
sogod:*:846:
|
||||
domoticz:*:847:
|
||||
guacamole:*:899:
|
||||
fossy:*:901:www
|
||||
scanlogd:*:902:
|
||||
_ocserv:*:903:
|
||||
|
|
|
|||
1
UIDs
1
UIDs
|
|
@ -253,6 +253,7 @@ munin:*:842:842::0:0:Munin:/var/munin:/usr/sbin/nologin
|
|||
subsonic:*:844:844::0:0:Subsonic standalone-server:/nonexistent:/usr/sbin/nologin
|
||||
sogod:*:846:846::0:0:SOGo groupware:/nonexistent:/usr/sbin/nologin
|
||||
domoticz:*:847:847::0:0:domoticz user:/nonexistent:/usr/sbin/nologin
|
||||
guacamole:*:899:899::0:0:Guacamole user:/nonexistent:/usr/sbin/nologin
|
||||
fossy:*:901:901::0:0:FOSSology user:/usr/local/share/fossology:/usr/local/bin/bash
|
||||
scanlogd:*:902:902::0:0:scanlogd user:/nonexistent:/usr/sbin/nologin
|
||||
_ocserv:*:903:903::0:0:ocserv user:/nonexistent:/usr/sbin/nologin
|
||||
|
|
|
|||
|
|
@ -189,6 +189,7 @@
|
|||
SUBDIR += gtic
|
||||
SUBDIR += gtk-vnc
|
||||
SUBDIR += gtknetcat
|
||||
SUBDIR += guacamole-server
|
||||
SUBDIR += gupnp
|
||||
SUBDIR += gupnp-av
|
||||
SUBDIR += gupnp-dlna
|
||||
|
|
|
|||
76
net/guacamole-server/Makefile
Normal file
76
net/guacamole-server/Makefile
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
# Created by: Ultima <ultima1252@gmail.com>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= guacamole-server
|
||||
PORTVERSION= 0.9.9
|
||||
CATEGORIES= net
|
||||
|
||||
MAINTAINER= ultima1252@gmail.com
|
||||
COMMENT= HTML5 Clientless Remote Desktop
|
||||
|
||||
LICENSE= MIT
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
LIB_DEPENDS= libuuid.so:${PORTSDIR}/misc/ossp-uuid \
|
||||
libpng.so:${PORTSDIR}/graphics/png \
|
||||
libcairo.so:${PORTSDIR}/graphics/cairo \
|
||||
libjpeg.so:${PORTSDIR}/graphics/jpeg-turbo
|
||||
|
||||
CONFLICTS_BUILD= e2fsprogs-libuuid-* pulseaudio-*+jack_* \
|
||||
ffmpeg-*+jack_*
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= glyptodon
|
||||
GH_TAGNAME= ${PORTVERSION}
|
||||
|
||||
USES= autoreconf libtool localbase pkgconfig shebangfix
|
||||
SHEBANG_FILES= ${WRKSRC}/src/protocols/rdp/keymaps/generate.pl
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
CONFIGURE_ARGS+= --with-guacd-conf=${PREFIX}/etc/guacd/guacd.conf
|
||||
USE_LDCONFIG= yes
|
||||
MAKE_JOBS_UNSAFE= yes
|
||||
USERS= guacamole
|
||||
GROUPS= guacamole
|
||||
|
||||
USE_RC_SUBR= guacd
|
||||
SUB_LIST+= GUACD_USER=${USERS} \
|
||||
GUACD_GROUP=${GROUPS}
|
||||
|
||||
OPTIONS_DEFINE= RDP SSH VNC VORBIS PULSEAUDIO
|
||||
OPTIONS_DEFAULT= SSH
|
||||
OPTIONS_SUB= yes
|
||||
PULSEAUDIO_LIB_DEPENDS= libpulse.so:${PORTSDIR}/audio/pulseaudio
|
||||
PULSEAUDIO_DESC?= VNC audio support (Experimental)
|
||||
RDP_LIB_DEPENDS= libfreerdp.so:${PORTSDIR}/net/freerdp
|
||||
RDP_DESC?= RDP Protocal Support
|
||||
SSH_LIB_DEPENDS= libpango-1.0.so:${PORTSDIR}/x11-toolkits/pango \
|
||||
libssh2.so:${PORTSDIR}/security/libssh2
|
||||
SSH_DESC?= SSH Support
|
||||
VNC_LIB_DEPENDS= libvncserver.so:${PORTSDIR}/net/libvncserver
|
||||
VNC_DESC?= VNC Protocol Support
|
||||
VORBIS_LIB_DEPENDS= libvorbis.so:${PORTSDIR}/audio/libvorbis
|
||||
VORBIS_DESC?= Ogg Vorbis for compression
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} 's|/etc/ssl|${PREFIX}/etc/ssl|g ; \
|
||||
s|/etc/guacamole|${PREFIX}/etc/guacd|g' \
|
||||
${WRKSRC}/src/guacd/man/guacd.conf.5
|
||||
post-install:
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libguac.so.*
|
||||
.if ${PORT_OPTIONS:MSSH}
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libguac-client-ssh.so.*
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MRDP}
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/freerdp/guacsnd-client.so
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/freerdp/guacdr-client.so
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/freerdp/guacsvc-client.so
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libguac-client-rdp.so.*
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MVNC}
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libguac-client-vnc.so.*
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
2
net/guacamole-server/distinfo
Normal file
2
net/guacamole-server/distinfo
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
SHA256 (glyptodon-guacamole-server-0.9.9_GH0.tar.gz) = 53d26e2e7e028b0d9fbc502b94acd02e2d04e3a491c8be4a3e16290c2ec58321
|
||||
SIZE (glyptodon-guacamole-server-0.9.9_GH0.tar.gz) = 265031
|
||||
47
net/guacamole-server/files/guacd.in
Normal file
47
net/guacamole-server/files/guacd.in
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
#!/bin/sh
|
||||
|
||||
# $FreeBSD$
|
||||
#
|
||||
# PROVIDE: guacd
|
||||
# REQUIRE: LOGIN
|
||||
#
|
||||
# Add these lines to /etc/rc.conf.local or /etc/rc.conf
|
||||
# to enable this service:
|
||||
#
|
||||
# guacd_enable (bool): Set to "NO" by default.
|
||||
# Set it to "YES" to enable guacd.
|
||||
# guacd_user (str): User to run guacd as
|
||||
# Default to "%%GUACD_USER%%" created by the port
|
||||
# guacd_group (str): Group to run guacd as
|
||||
# Default to "%%GUACD_GROUP%%" created by the port
|
||||
# guacd_pidfile (str): Set to "" by default will use the path
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=guacd
|
||||
rcvar=${name}_enable
|
||||
|
||||
load_rc_config ${name}
|
||||
|
||||
: ${guacd_enable:="NO"}
|
||||
: ${guacd_user:="%%GUACD_USER%%"}
|
||||
: ${guacd_group:="%%GUACD_GROUP%%"}
|
||||
: ${guacd_pidfile:="/var/run/${name}/${name}.pid"}
|
||||
|
||||
command=%%PREFIX%%/sbin/guacd
|
||||
pidfile=${guacd_pidfile}
|
||||
|
||||
command_args="-p ${pidfile}"
|
||||
|
||||
start_precmd="guacd_prestart"
|
||||
guacd_prestart() {
|
||||
if [ -f ${pidfile} ]; then
|
||||
rm -f ${pidfile}
|
||||
echo "Removing stale pidfile."
|
||||
elif [ ! -d ${pidfile%/*} ]; then
|
||||
install -d -o ${guacd_user} -g ${guacd_group} ${pidfile%/*}
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
run_rc_command "$1"
|
||||
13
net/guacamole-server/pkg-descr
Normal file
13
net/guacamole-server/pkg-descr
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
The guacamole-server package is a set of software which forms the
|
||||
basis of the Guacamole stack. It consists of guacd, libguac, and
|
||||
several protocol support libraries.
|
||||
|
||||
guacd is the Guacamole proxy daemon used by the Guacamole web
|
||||
application and framework. As JavaScript cannot handle binary
|
||||
protocols (like VNC and remote desktop) efficiently, a new test-based
|
||||
protocol was developed which would contain a common superset of the
|
||||
operations needed for efficient remote desktop access, but would
|
||||
be easy for JavaScript programs to process. guacd is the proxy which
|
||||
translates between arbitrary protocols and the Guacamole protocol.
|
||||
|
||||
WWW: https://github.com/glyptodon/guacamole-server
|
||||
55
net/guacamole-server/pkg-plist
Normal file
55
net/guacamole-server/pkg-plist
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
include/guacamole/audio-fntypes.h
|
||||
include/guacamole/audio-types.h
|
||||
include/guacamole/audio.h
|
||||
include/guacamole/client-constants.h
|
||||
include/guacamole/client-fntypes.h
|
||||
include/guacamole/client-types.h
|
||||
include/guacamole/client.h
|
||||
include/guacamole/error-types.h
|
||||
include/guacamole/error.h
|
||||
include/guacamole/hash.h
|
||||
include/guacamole/instruction-constants.h
|
||||
include/guacamole/instruction-types.h
|
||||
include/guacamole/instruction.h
|
||||
include/guacamole/layer-types.h
|
||||
include/guacamole/layer.h
|
||||
include/guacamole/object-types.h
|
||||
include/guacamole/object.h
|
||||
include/guacamole/plugin-constants.h
|
||||
include/guacamole/plugin-types.h
|
||||
include/guacamole/plugin.h
|
||||
include/guacamole/pool-types.h
|
||||
include/guacamole/pool.h
|
||||
include/guacamole/protocol-types.h
|
||||
include/guacamole/protocol.h
|
||||
include/guacamole/socket-constants.h
|
||||
include/guacamole/socket-fntypes.h
|
||||
include/guacamole/socket-types.h
|
||||
include/guacamole/socket.h
|
||||
include/guacamole/stream-types.h
|
||||
include/guacamole/stream.h
|
||||
include/guacamole/timestamp-types.h
|
||||
include/guacamole/timestamp.h
|
||||
include/guacamole/unicode.h
|
||||
%%RDP%%lib/freerdp/guacdr-client.so
|
||||
%%RDP%%lib/freerdp/guacsnd-client.so
|
||||
%%RDP%%lib/freerdp/guacsvc-client.so
|
||||
%%RDP%%lib/libguac-client-rdp.a
|
||||
%%RDP%%lib/libguac-client-rdp.so
|
||||
%%RDP%%lib/libguac-client-rdp.so.0
|
||||
%%RDP%%lib/libguac-client-rdp.so.0.0.0
|
||||
%%SSH%%lib/libguac-client-ssh.a
|
||||
%%SSH%%lib/libguac-client-ssh.so
|
||||
%%SSH%%lib/libguac-client-ssh.so.0
|
||||
%%SSH%%lib/libguac-client-ssh.so.0.0.0
|
||||
%%VNC%%lib/libguac-client-vnc.a
|
||||
%%VNC%%lib/libguac-client-vnc.so
|
||||
%%VNC%%lib/libguac-client-vnc.so.0
|
||||
%%VNC%%lib/libguac-client-vnc.so.0.0.0
|
||||
lib/libguac.a
|
||||
lib/libguac.so
|
||||
lib/libguac.so.11
|
||||
lib/libguac.so.11.0.0
|
||||
man/man5/guacd.conf.5.gz
|
||||
man/man8/guacd.8.gz
|
||||
sbin/guacd
|
||||
Loading…
Add table
Reference in a new issue