Compare commits

..

No commits in common. "rawhide" and "f38" have entirely different histories.

10 changed files with 98 additions and 231 deletions

View file

@ -1 +0,0 @@
1

View file

@ -0,0 +1,13 @@
diff --git a/Drivers/Speech/SpeechDispatcher/speech.c b/Drivers/Speech/SpeechDispatcher/speech.c
index cc55007..a2fcc0d 100644
--- a/Drivers/Speech/SpeechDispatcher/speech.c
+++ b/Drivers/Speech/SpeechDispatcher/speech.c
@@ -35,7 +35,7 @@ typedef enum {
#include "spk_driver.h"
-#include <libspeechd.h>
+#include <speech-dispatcher/libspeechd.h>
static SPDConnection *connectionHandle = NULL;
static const char *moduleName;

View file

@ -1,11 +0,0 @@
--- a/Drivers/Speech/SpeechDispatcher/speech.c~ 2025-05-25 03:58:25.000000000 -0500
+++ b/Drivers/Speech/SpeechDispatcher/speech.c 2025-07-07 08:58:19.519919859 -0500
@@ -36,7 +36,7 @@
#include "spk_driver.h"
-#include <libspeechd.h>
+#include <speech-dispatcher/libspeechd.h>
static SPDConnection *connectionHandle = NULL;
static unsigned int autospawn;

View file

@ -1,33 +1,41 @@
%define pkg_version 6.8
%define api_version 0.8.7
%undefine _package_note_flags
%define pkg_version 6.5
%define api_version 0.8.4
# minimal means brltty-minimal subpackage with minimal deps for
# braille support in Anaconda installer
# https://bugzilla.redhat.com/show_bug.cgi?id=1584679
%bcond minimal 1
%bcond_without minimal
# enable python3 by default
%bcond python3 1
%if 0%{?rhel} && 0%{?rhel} <= 7
# disable python3 by default
%bcond_with python3
%else
%bcond_without python3
%endif
%if 0%{?rhel} > 7 || 0%{?fedora} > 28
# disable python2 by default
%bcond python2 0
%bcond_with python2
%else
%bcond_without python2
%endif
%{!?tcl_version: %global tcl_version %(echo 'puts $tcl_version' | tclsh)}
%{!?tcl_sitearch: %global tcl_sitearch %{_prefix}/%{_lib}/tcl%{tcl_version}}
# with speech dispatcher iff on Fedora:
%bcond speech_dispatcher %{defined fedora}
%define with_speech_dispatcher 0%{?fedora}
# with espeak support iff on Fedora:
%bcond espeak %{defined fedora}
%define with_espeak 0%{?fedora}
# OCaml packages not built on i686 since OCaml 5 / Fedora 39.
%ifnarch %{ix86}
%bcond ocaml %{defined fedora}
%endif
%global with_ocaml 1
%ifarch %{java_arches}
%bcond java %{defined fedora}
%global JAVA 1
%else
%global JAVA 0
%endif
# Filter private libraries
@ -36,30 +44,26 @@
%global __requires_exclude ^(%{_privatelibs})$
Name: brltty
Version: 6.8
Release: 6%{?dist}
License: LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
Version: %{pkg_version}
Release: 10%{?dist}
License: LGPLv2+
URL: http://brltty.app/
Source0: http://brltty.app/archive/%{name}-%{version}.tar.xz
Source1: brltty.service
Source2: brlapi-config.h
Source3: brlapi-forbuild.h
Source4: brltty.sysusers
Patch1: brltty-6.3-loadLibrary.patch
# libspeechd.h moved in latest speech-dispatch (NOT sent upstream)
Patch2: brltty-6.8-libspeechd.patch
Patch2: brltty-6.3-libspeechd.patch
Summary: Braille display driver for Linux/Unix
BuildRequires: byacc
BuildRequires: glibc-kernheaders
BuildRequires: gcc
BuildRequires: bluez-libs-devel
BuildRequires: systemd
BuildRequires: systemd-rpm-macros
BuildRequires: lua-devel
BuildRequires: gettext
BuildRequires: at-spi2-core-devel
BuildRequires: alsa-lib-devel
%if %{with espeak}
%if %{with_espeak}
BuildRequires: espeak-devel
%endif
BuildRequires: espeak-ng-devel
@ -69,7 +73,6 @@ BuildRequires: polkit-devel
BuildRequires: libicu-devel
BuildRequires: doxygen
BuildRequires: linuxdoc-tools
BuildRequires: ncurses-devel
%if %{with python2}
BuildRequires: python2-docutils
BuildRequires: python2-setuptools
@ -92,12 +95,13 @@ access to the Linux/Unix console (when in text mode)
for a blind person using a refreshable braille display.
It drives the braille display and provides complete
screen review functionality.
%if %{with speech_dispatcher}
%if %{with_speech_dispatcher}
BRLTTY can also work with speech synthesizers; if you want to use it with
Speech Dispatcher, please install also package %{name}-speech-dispatcher.
%package speech-dispatcher
Summary: Speech Dispatcher driver for BRLTTY
License: LGPLv2+
BuildRequires: speech-dispatcher-devel
Requires: %{name}%{?_isa} = %{pkg_version}-%{release}
%description speech-dispatcher
@ -106,27 +110,32 @@ This package provides the Speech Dispatcher driver for BRLTTY.
%package docs
Summary: Documentation for BRLTTY
License: LGPLv2+
Requires: %{name} = %{pkg_version}-%{release}
BuildArch: noarch
%description docs
This package provides the documentation for BRLTTY.
%package xw
Summary: XWindow driver for BRLTTY
License: LGPLv2+
BuildRequires: libSM-devel libICE-devel libX11-devel libXaw-devel libXext-devel libXt-devel libXtst-devel
Requires: %{name}%{?_isa} = %{pkg_version}-%{release}
Requires: xorg-x11-fonts-misc
Requires: xorg-x11-fonts-misc, ucs-miscfixed-fonts
%description xw
This package provides the XWindow driver for BRLTTY.
%package at-spi2
Summary: AtSpi2 driver for BRLTTY
License: LGPLv2+
Requires: %{name}%{?_isa} = %{pkg_version}-%{release}
%description at-spi2
This package provides the AtSpi2 driver for BRLTTY.
%if %{with espeak}
%if %{with_espeak}
%package espeak
Summary: eSpeak driver for BRLTTY
License: LGPLv2+
Requires: %{name}%{?_isa} = %{pkg_version}-%{release}
%description espeak
This package provides the eSpeak driver for BRLTTY.
@ -134,8 +143,9 @@ This package provides the eSpeak driver for BRLTTY.
%package espeak-ng
Summary: eSpeak-NG driver for BRLTTY
License: LGPLv2+
Requires: %{name}%{?_isa} = %{pkg_version}-%{release}
%if %{without espeak}
%if ! %{with_espeak}
Obsoletes: brltty-espeak <= 5.6-5
%endif
%description espeak-ng
@ -143,8 +153,10 @@ This package provides the eSpeak-NG driver for BRLTTY.
%package -n brlapi
Version: %{api_version}
License: LGPLv2+
Summary: Application Programming Interface for BRLTTY
Requires(pre): glibc-common
Recommends: %{name} = %{pkg_version}-%{release}
Requires(pre): glibc-common, shadow-utils
Requires(post): coreutils, util-linux
%description -n brlapi
This package provides the run-time support for the Application
@ -155,6 +167,7 @@ a refreshable braille display.
%package -n brlapi-devel
Version: %{api_version}
License: LGPLv2+
Requires: brlapi%{?_isa} = %{api_version}-%{release}
Summary: Headers, static archive, and documentation for BrlAPI
@ -172,6 +185,7 @@ which directly accesses a refreshable braille display.
%package -n tcl-brlapi
Version: %{api_version}
License: LGPLv2+
Requires: brlapi%{?_isa} = %{api_version}-%{release}
BuildRequires: tcl-devel
Summary: Tcl binding for BrlAPI
@ -182,6 +196,7 @@ This package provides the Tcl binding for BrlAPI.
%package -n python2-brlapi
%{?python_provide:%python_provide python2-brlapi}
Version: %{api_version}
License: LGPLv2+
Requires: brlapi%{?_isa} = %{api_version}-%{release}
BuildRequires: Cython
BuildRequires: python2-devel
@ -195,6 +210,7 @@ This package provides the Python 2 binding for BrlAPI.
%package -n python3-brlapi
%{?python_provide:%python_provide python3-brlapi}
Version: %{api_version}
License: LGPLv2+
Requires: brlapi%{?_isa} = %{api_version}-%{release}
BuildRequires: python3-Cython
BuildRequires: python3-devel
@ -207,9 +223,10 @@ Summary: Python 3 binding for BrlAPI
This package provides the Python 3 binding for BrlAPI.
%endif
%if %{with java}
%if %{JAVA}
%package -n brlapi-java
Version: %{api_version}
License: LGPLv2+
Requires: brlapi%{?_isa} = %{api_version}-%{release}
BuildRequires: jpackage-utils
BuildRequires: java-devel
@ -218,12 +235,12 @@ Summary: Java binding for BrlAPI
This package provides the Java binding for BrlAPI.
%endif
%if %{with ocaml}
%if 0%{?with_ocaml}
%package -n ocaml-brlapi
Version: %{api_version}
License: LGPLv2+
Requires: brlapi%{?_isa} = %{api_version}-%{release}
BuildRequires: ocaml
BuildRequires: ocaml-findlib
BuildRequires: make
Summary: OCaml binding for BrlAPI
%description -n ocaml-brlapi
@ -253,14 +270,11 @@ installer.
mv %{name}-%{version} python2
pushd python2
%autopatch -p1
%patch1 -p1 -b .loadLibrary
%patch2 -p1 -b .libspeechd
# remove packaged binary file
rm -f Programs/brltty-ktb
# produce debuginfo for the OCaml interface
sed -i 's/@OCAMLC@/& -g/;s/@OCAMLOPT@/& -g/;s/@OCAMLMKLIB@/& -g/' \
Bindings/OCaml/Makefile.in
popd
# Make a copy of the source tree for building the Python 3 module
@ -271,11 +285,12 @@ cp -a python2 python3
cp -a python2 minimal
%endif
%build
# If MAKEFLAGS=-jN is set it would break local builds.
unset MAKEFLAGS
%if %{with java}
%if %{JAVA}
# Add the openjdk include directories to CPPFLAGS
for i in -I/usr/lib/jvm/java/include{,/linux}; do
java_inc="$java_inc $i"
@ -292,13 +307,13 @@ export CXXFLAGS="%{optflags} -fno-strict-aliasing $LDFLAGS"
configure_opts=" \
--disable-stripping \
--without-curses \
%if %{with speech_dispatcher}
%if %{with_speech_dispatcher}
--with-speechd=%{_prefix} \
%endif
%if %{without espeak}
%if ! %{with_espeak}
--without-espeak \
%endif
%if %{with java}
%if %{JAVA}
--with-install-root=%{buildroot} \
JAVA_JAR_DIR=%{_jnidir} \
JAVA_JNI_DIR=%{_libdir}/brltty \
@ -403,7 +418,7 @@ for python in $PYTHONS
done
%install
%if %{with ocaml}
%if 0%{?with_ocaml}
mkdir -p %{buildroot}%{_libdir}/ocaml/stublibs
%endif
@ -521,10 +536,8 @@ popd
rm -f doc/Initramfs/Dracut/README*
rmdir doc/Initramfs/Dracut doc/Initramfs
# Install group creation file
install -p -D -m 0644 %{SOURCE4} %{buildroot}%{_sysusersdir}/brltty.conf
%if %{without java}
%if %{!JAVA}
find . -type d -name 'Java' | xargs rm -rf
find %{buildroot}%{_datadir} -type d -name 'Java' | xargs rm -rf
%endif
@ -538,6 +551,8 @@ find %{buildroot}%{_datadir} -type d -name 'Java' | xargs rm -rf
%postun
%systemd_postun_with_restart brltty.service
%pre -n brlapi
getent group brlapi >/dev/null || groupadd -r brlapi >/dev/null
%post -n brlapi
if [ ! -e %{_sysconfdir}/brlapi.key ]; then
@ -559,23 +574,17 @@ fi
%{_bindir}/brltty-*
%exclude %{_bindir}/brltty-minimal
%{_libdir}/brltty/
%if %{with java}
%exclude %{_libdir}/brltty/libbrlapi_java.so
%endif
# brlapi subpackage
%if %{!JAVA}
%exclude %{_libdir}/brltty/libbrlttybba.so
# xw subpackage
%exclude %{_libdir}/brltty/libbrlttybxw.so
# at-spi2 subpackage
%exclude %{_libdir}/brltty/libbrlttyxa2.so
# espeak-ng subpackage
%exclude %{_libdir}/brltty/libbrlttysen.so
%if %{with espeak}
%exclude %{_libdir}/brltty/libbrlttyses.so
%endif
%if %{with speech_dispatcher}
%exclude %{_libdir}/brltty/libbrlapi_java.so
%if %{with_speech_dispatcher}
%exclude %{_libdir}/brltty/libbrlttyssd.so
%endif
%endif
%license LICENSE-LGPL
%doc %{_mandir}/man[15]/brltty.*
%{_sysconfdir}/X11/Xsession.d/90xbrlapi
@ -591,7 +600,7 @@ fi
%license LICENSE-LGPL
%endif
%if %{with speech_dispatcher}
%if %{with_speech_dispatcher}
%files speech-dispatcher
%doc Drivers/Speech/SpeechDispatcher/README
%{_libdir}/brltty/libbrlttyssd.so
@ -609,7 +618,7 @@ fi
%files at-spi2
%{_libdir}/brltty/libbrlttyxa2.so
%if %{with espeak}
%if %{with_espeak}
%files espeak
%{_libdir}/brltty/libbrlttyses.so
%endif
@ -621,7 +630,6 @@ fi
%{_bindir}/vstp
%{_bindir}/eutp
%{_bindir}/xbrlapi
%dir %{_libdir}/brltty
%{_libdir}/brltty/libbrlttybba.so
%{_libdir}/libbrlapi.so.*
%ghost %verify(not group) %{_sysconfdir}/brlapi.key
@ -630,8 +638,6 @@ fi
%doc %{_mandir}/man1/xbrlapi.*
%doc %{_mandir}/man1/vstp.*
%doc %{_mandir}/man1/eutp.*
%{_sysusersdir}/brltty.conf
%{lua_libdir}/brlapi.so
%files -n brlapi-devel
%{_libdir}/libbrlapi.so
@ -656,13 +662,13 @@ fi
%{python3_sitearch}/Brlapi-%{api_version}-*.egg-info
%endif
%if %{with java}
%if %{JAVA}
%files -n brlapi-java
%{_libdir}/brltty/libbrlapi_java.so
%{_jnidir}/brlapi.jar
%endif
%if %{with ocaml}
%if 0%{?with_ocaml}
%files -n ocaml-brlapi
%{_libdir}/ocaml/brlapi/
%{_libdir}/ocaml/stublibs/
@ -675,150 +681,6 @@ fi
%config(noreplace) %verify(not size md5 mtime) %{_sysconfdir}/brltty/Initramfs/cmdline
%changelog
* Mon Oct 13 2025 Richard W.M. Jones <rjones@redhat.com> - 6.8-6
- OCaml 5.4.0 rebuild
* Wed Oct 08 2025 Dominik Mierzejewski <dominik@greysector.net> - 6.8-5
- own _libdir/brltty directory in brlapi
* Wed Aug 06 2025 František Zatloukal <fzatlouk@redhat.com> - 6.8-4
- Rebuilt for icu 77.1
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 6.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Fri Jul 11 2025 Jerry James <loganjerry@gmail.com> - 6.8-2
- Rebuild to fix OCaml dependencies
* Mon Jul 07 2025 Gwyn Ciesla <gwync@protonmail.com> - 6.8-1
- 6.8
* Mon Jun 02 2025 Python Maint <python-maint@redhat.com> - 6.7-11
- Rebuilt for Python 3.14
* Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 6.7-10
- Drop call to %sysusers_create_compat
* Tue Feb 11 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 6.7-9
- Built for tcl 9.0
Related: rhbz#2337691
* Mon Feb 3 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 6.7-8
- Rebuilt for tcl/tk change
Related: rhbz#2337691
* Fri Jan 31 2025 Yaakov Selkowitz <yselkowi@redhat.com> - 6.7-7
- Fix exclusions from main package
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 6.7-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Tue Jan 14 2025 Gwyn Ciesla <gwync@protonmail.com> - 6.7-5
- Update to use tcl8 compat.
* Fri Jan 10 2025 Jerry James <loganjerry@gmail.com> - 6.7-4
- OCaml 5.3.0 rebuild for Fedora 42
* Tue Dec 10 2024 Jaroslav Škarvada <jskarvad@redhat.com> - 6.7-3
- Switched to upstream patch
Related: rhbz#2328699
* Mon Dec 9 2024 Jaroslav Škarvada <jskarvad@redhat.com> - 6.7-2
- Resolves: rhbz#2328699
* Tue Oct 15 2024 Gwyn Ciesla <gwync@protonmail.com> - 6.7-1
- 6.7
* Mon Aug 05 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 6.6-20
- Use bcond consistently
- Disable java and ocaml bindings in RHEL
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.6-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Thu Jul 4 2024 Jaroslav Škarvada <jskarvad@redhat.com> - 6.6-18
- Dropped ucs-miscfixed-fonts requirement, xorg-x11-fonts-misc is enough
* Wed Jun 19 2024 Richard W.M. Jones <rjones@redhat.com> - 6.6-17
- OCaml 5.2.0 ppc64le fix
* Tue Jun 18 2024 Paolo Bonzini <pbonzini@redhat.com> - 6.6-16
- Remove unnecessary dependency from brlapi and brltty-docs to brltty
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 6.6-15
- Rebuilt for Python 3.13
* Wed May 29 2024 Richard W.M. Jones <rjones@redhat.com> - 6.6-14
- OCaml 5.2.0 for Fedora 41
* Wed Jan 31 2024 Pete Walter <pwalter@fedoraproject.org> - 6.6-13
- Rebuild for ICU 74
* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.6-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.6-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jan 17 2024 Jaroslav Škarvada <jskarvad@redhat.com> - 6.6-10
- Added SPDX licenses found by ScanCode
- Dropped redundant license tags from subpackages
* Wed Dec 20 2023 Gwyn Ciesla <gwync@protonmail.com> - 6.6-9
- Migrate group creation to sysusers
* Mon Dec 18 2023 Richard W.M. Jones <rjones@redhat.com> - 6.6-8
- Bump release and rebuild
* Mon Dec 18 2023 Richard W.M. Jones <rjones@redhat.com> - 6.6-7
- OCaml 5.1.1 + s390x code gen fix for Fedora 40
* Tue Dec 12 2023 Richard W.M. Jones <rjones@redhat.com> - 6.6-6
- OCaml 5.1.1 rebuild for Fedora 40
* Thu Oct 05 2023 Richard W.M. Jones <rjones@redhat.com> - 6.6-5
- OCaml 5.1 rebuild for Fedora 40
* Tue Aug 15 2023 Adam Williamson <awilliam@redhat.com> - 6.6-4
- Fix the Cython 3 crash and build with Cython 3 again
* Mon Aug 14 2023 Adam Williamson <awilliam@redhat.com> - 6.6-3
- Build with Cython 0.29, it crashes when built with Cython 3 (#2231865)
* Tue Jul 25 2023 Gwyn Ciesla <gwync@protonmail.com> - 6.6-2
- Correct apiversioning
* Mon Jul 24 2023 Gwyn Ciesla <gwync@protonmail.com> - 6.6-1
- 6.6
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.5-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jul 13 2023 František Zatloukal <fzatlouk@redhat.com> - 6.5-19
- Rebuilt for ICU 73.2
* Wed Jul 12 2023 Richard W.M. Jones <rjones@redhat.com> - 6.5-18
- OCaml 5.0 rebuild for Fedora 39
* Wed Jul 12 2023 Frantisek Zatloukal <fzatlouk@redhat.com> - 6.5-17
- Add BR: gcc (ocaml no longer pulls it indirectly on i686)
* Tue Jul 11 2023 František Zatloukal <fzatlouk@redhat.com> - 6.5-15
- Rebuilt for ICU 73.2
* Mon Jul 10 2023 Jerry James <loganjerry@gmail.com> - 6.5-14
- OCaml 5.0.0 rebuild
- Produce debuginfo for the OCaml interface
* Tue Jun 27 2023 Gwyn Ciesla <gwync@protonmail.com> - 6.5-13
- Fix build with gettext-0.22 (yselkowitz)
* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 6.5-12
- Rebuilt for Python 3.12
* Wed Mar 08 2023 Gwyn Ciesla <gwync@protonmail.com> - 6.5-11
- migrated to SPDX license
* Tue Jan 24 2023 Richard W.M. Jones <rjones@redhat.com> - 6.5-10
- Rebuild OCaml packages for F38

View file

@ -1,2 +0,0 @@
#Type Name ID GECOS Home directory Shell
g brlapi -

View file

@ -1,5 +0,0 @@
summary: Run all smoke tests
discover:
how: fmf
execute:
how: tmt

View file

@ -1 +1 @@
SHA512 (brltty-6.8.tar.xz) = 08540cdf09eaa1caabd8400cb6e589f99f5f2b8aaaf8c031e5165e9b0605858e90dc9dd72f2095347f4860714214ecf184e3675422df880f1bf06bb4cc6f42ee
SHA512 (brltty-6.5.tar.xz) = bbfbb89b1c3ba5063ad3bc0aa97b859dd23acea1feb79dab20c57dc74ff2f26649942fcecc7030a3f70555596f4d9d35cd05616af2a8e101d4d56b4c471a6ad3

View file

@ -1,2 +0,0 @@
summary: Smoke test
test: ./run_tests.sh

View file

@ -1,4 +0,0 @@
#!/bin/bash
pushd sanity-test || exit
./runtest.sh
popd || exit

17
tests/tests.yml Normal file
View file

@ -0,0 +1,17 @@
- hosts: localhost
tags:
- classic
- container
roles:
- role: standard-test-beakerlib
tests:
- sanity-test
required_packages:
- ImageMagick
- Xvfb
- brltty
- nc
- orca
- psmisc
- xorg-x11-utils