Browse Source

Merge pull request #64 from matt335672/instfiles

Add install files to the build
pull/68/head
matt335672 2 years ago
committed by GitHub
parent
commit
6ac122ac48
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 105 additions and 2 deletions
  1. +1
    -1
      Makefile.am
  2. +12
    -1
      configure.ac
  3. +29
    -0
      instfiles/Makefile.am
  4. +54
    -0
      instfiles/load_pa_modules.sh
  5. +9
    -0
      instfiles/pulseaudio-xrdp.desktop.in

+ 1
- 1
Makefile.am View File

@ -1,4 +1,4 @@
ACLOCAL_AMFLAGS = -I m4 ACLOCAL_AMFLAGS = -I m4
SUBDIRS = src
SUBDIRS = src instfiles
EXTRA_DIST = bootstrap.sh EXTRA_DIST = bootstrap.sh

+ 12
- 1
configure.ac View File

@ -28,6 +28,9 @@ PA_LIBDIR=`$PKG_CONFIG --variable=libdir libpulse`
PA_MODDIR=`$PKG_CONFIG --variable=modlibexecdir libpulse` PA_MODDIR=`$PKG_CONFIG --variable=modlibexecdir libpulse`
PA_PREFIX=`$PKG_CONFIG --variable=prefix libpulse` PA_PREFIX=`$PKG_CONFIG --variable=prefix libpulse`
# Default system-wide autostart directory from XDG autostart specification
m4_define([XDG_AUTOSTART_DIR], /etc/xdg/autostart)
AC_SUBST([PA_MAJOR], [pa_major]) AC_SUBST([PA_MAJOR], [pa_major])
AC_SUBST([PA_MINOR], [pa_minor]) AC_SUBST([PA_MINOR], [pa_minor])
AC_SUBST([PA_MAJORMINOR], [pa_major].[pa_minor]) AC_SUBST([PA_MAJORMINOR], [pa_major].[pa_minor])
@ -68,6 +71,13 @@ AC_ARG_WITH(
[modlibexecdir=$withval], [modlibexecdir="${PA_MODDIR}"]) [modlibexecdir=$withval], [modlibexecdir="${PA_MODDIR}"])
AC_SUBST(modlibexecdir) AC_SUBST(modlibexecdir)
AC_ARG_WITH(
[xdgautostart-dir],
[AS_HELP_STRING([--with-xdgautostart-dir],
Directory to install the desktop file (defaults to XDG_AUTOSTART_DIR))],
[xdgautostartdir=$withval], [xdgautostartdir=XDG_AUTOSTART_DIR])
AC_SUBST(xdgautostartdir)
# Checks for header files. # Checks for header files.
AC_CHECK_HEADERS([fcntl.h limits.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h unistd.h]) AC_CHECK_HEADERS([fcntl.h limits.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h unistd.h])
@ -80,5 +90,6 @@ AC_TYPE_UINT32_T
AC_CHECK_FUNCS([memset socket]) AC_CHECK_FUNCS([memset socket])
AC_CONFIG_FILES([Makefile AC_CONFIG_FILES([Makefile
src/Makefile])
src/Makefile
instfiles/Makefile])
AC_OUTPUT AC_OUTPUT

+ 29
- 0
instfiles/Makefile.am View File

@ -0,0 +1,29 @@
EXTRA_DIST = \
load_pa_modules.sh \
pulseaudio-xrdp.desktop.in
#
# substitute directories in service file
#
CLEANFILES= \
pulseaudio-xrdp.desktop
SUBST_VARS = sed \
-e 's|@pkglibexecdir[@]|$(pkglibexecdir)|g'
subst_verbose = $(subst_verbose_@AM_V@)
subst_verbose_ = $(subst_verbose_@AM_DEFAULT_V@)
subst_verbose_0 = @echo " SUBST $@";
SUFFIXES = .in
.in:
$(subst_verbose)$(SUBST_VARS) $< > $@
#
# files for all platforms
#
xdgautostart_DATA = \
pulseaudio-xrdp.desktop
pkglibexec_SCRIPTS = \
load_pa_modules.sh

+ 54
- 0
instfiles/load_pa_modules.sh View File

@ -0,0 +1,54 @@
#!/bin/sh
status=0
if [ -n "$XRDP_SESSION" -a -n "$XRDP_SOCKET_PATH" ]; then
# These values are not present on xrdp versions before v0.9.8
if [ -z "$XRDP_PULSE_SINK_SOCKET" -o \
-z "$XRDP_PULSE_SOURCE_SOCKET" ]; then
displaynum=${DISPLAY##*:}
displaynum=${displaynum%.*}
XRDP_PULSE_SINK_SOCKET=xrdp_chansrv_audio_out_socket_$displaynum
XRDP_PULSE_SOURCE_SOCKET=xrdp_chansrv_audio_in_socket_$displaynum
fi
# Don't check for the presence of the sockets, as if the modules
# are loaded they won't be there
# Unload modules
pactl unload-module module-xrdp-sink >/dev/null 2>&1
pactl unload-module module-xrdp-source >/dev/null 2>&1
# Reload modules
if pactl load-module module-xrdp-sink \
xrdp_socket_path=$XRDP_SOCKET_PATH \
xrdp_pulse_sink_socket=$XRDP_PULSE_SINK_SOCKET
then
echo "- pulseaudio xrdp-sink loaded"
if pacmd set-default-sink xrdp-sink; then
echo "- pulseaudio xrdp-sink set as default"
else
echo "? Can't set pulseaudio xrdp-sink as default"
fi
else
echo "? Can't load pulseaudio xrdp-sink"
status=1
fi
if pactl load-module module-xrdp-source \
xrdp_socket_path=$XRDP_SOCKET_PATH \
xrdp_pulse_source_socket=$XRDP_PULSE_SOURCE_SOCKET
then
echo "- pulseaudio xrdp-source loaded"
if pacmd set-default-source xrdp-source; then
echo "- pulseaudio xrdp-source set as default"
else
echo "? Can't set pulseaudio xrdp-source as default"
fi
else
echo "? Can't load pulseaudio xrdp-source"
status=1
fi
fi
exit $status

+ 9
- 0
instfiles/pulseaudio-xrdp.desktop.in View File

@ -0,0 +1,9 @@
[Desktop Entry]
Version=1.0
Name=PulseAudio xrdp modules
Comment=Load PulseAudio Modules for xrdp
Exec=@pkglibexecdir@/load_pa_modules.sh
Terminal=false
Type=Application
Categories=
GenericName=

Loading…
Cancel
Save