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
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=408301
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
|
||||
|
|
|
@ -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>
|
|
@ -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
|
|
@ -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"
|
|
@ -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
|
|
@ -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…
Reference in New Issue