From: Christian Weisgerber Subject: Remove misc/brltty? To: ports@openbsd.org Date: Fri, 12 Jun 2026 18:45:53 +0200 Is it time to remove misc/brltty (and misc/screen-shm)? I'm not taking this lightly. If you need a braille display, you really need it. But the brltty port hasn't been updated in over twenty years, despite an active upstream. Everytime something broke, we fixed it, added a workaround, even kept a separate port with an obsolete version of screen around. Below is another set of fixes to actual bugs that have kept LLVM 22 from compiling it. I very much doubt that we have any users of brltty. ----------------------------------------------- commit 489a1f071d5f6891a5cae480666c2dbf63dfb49b (mystuff) from: Christian Weisgerber date: Fri Jun 12 16:43:45 2026 UTC misc/brltty: make C types coherent to appease llvm22 diff 6549986ddeeb2d6099213e050720776d4421d835 489a1f071d5f6891a5cae480666c2dbf63dfb49b commit - 6549986ddeeb2d6099213e050720776d4421d835 commit + 489a1f071d5f6891a5cae480666c2dbf63dfb49b blob - 99ed662a7ccaad4b7d57dd1488b94a74d26f3f3d blob + 309f2187d3896caaf0ad6f18a1a27415ec77645f --- misc/brltty/Makefile +++ misc/brltty/Makefile @@ -1,7 +1,7 @@ COMMENT= access software for a blind person using a braille terminal DISTNAME= brltty-3.6 -REVISION= 7 +REVISION= 8 CATEGORIES= misc HOMEPAGE= https://brltty.app SITES= https://brltty.app/archive/ blob - /dev/null blob + 912d73fc5eb03bd41bf1ec764e73f6de9287e920 (mode 644) --- /dev/null +++ misc/brltty/patches/patch-Drivers_Papenmeier_braille_c @@ -0,0 +1,48 @@ +Index: Drivers/Papenmeier/braille.c +--- Drivers/Papenmeier/braille.c.orig ++++ Drivers/Papenmeier/braille.c +@@ -299,7 +299,7 @@ typedef struct { + void (*closePort) (void); + void (*flushPort) (BrailleDisplay *brl); + int (*awaitInput) (int milliseconds); +- int (*readBytes) (void *buffer, int *offset, int length, int timeout); ++ int (*readBytes) (void *buffer, size_t *offset, int length, int timeout); + int (*writeBytes) (const void *buffer, int length); + } InputOutputOperations; + +@@ -350,7 +350,7 @@ awaitSerialInput (int milliseconds) { + } + + static int +-readSerialBytes (void *buffer, int *offset, int length, int timeout) { ++readSerialBytes (void *buffer, size_t *offset, int length, int timeout) { + return serialReadChunk(serialDevice, buffer, offset, length, 0, timeout); + } + +@@ -409,7 +409,7 @@ awaitUsbInput (int milliseconds) { + } + + static int +-readUsbBytes (void *buffer, int *offset, int length, int timeout) { ++readUsbBytes (void *buffer, size_t *offset, int length, int timeout) { + int count = usbReapInput(usb->device, usb->definition.inputEndpoint, buffer+*offset, length, + (*offset? timeout: 0), timeout); + if (count == -1) return 0; +@@ -550,7 +550,7 @@ resetTerminal1 (BrailleDisplay *brl) { + #define RBF_ETX 1 + #define RBF_RESET 2 + static int +-readBytes1 (BrailleDisplay *brl, unsigned char *buffer, int offset, int count, int flags) { ++readBytes1 (BrailleDisplay *brl, unsigned char *buffer, size_t offset, int count, int flags) { + if (io->readBytes(buffer, &offset, count, 1000)) { + if (!(flags & RBF_ETX)) return 1; + if (*(buffer+offset-1) == cETX) return 1; +@@ -910,7 +910,7 @@ static int refreshRequired2; + static int + readPacket2 (BrailleDisplay *brl, Packet2 *packet) { + char buffer[0X203]; +- int offset = 0; ++ size_t offset = 0; + int size; + int identity; + blob - /dev/null blob + 8fcd5e02dc391d6a976fbff4f1f4ab684f6053cc (mode 644) --- /dev/null +++ misc/brltty/patches/patch-Drivers_VisioBraille_braille_c @@ -0,0 +1,12 @@ +Index: Drivers/VisioBraille/braille.c +--- Drivers/VisioBraille/braille.c.orig ++++ Drivers/VisioBraille/braille.c +@@ -109,7 +109,7 @@ static ssize_t brl_writePacket(BrailleDisplay *brl, co + /* "+" packets are silently discarded, since they are only disturbing us */ + static ssize_t brl_readPacket(BrailleDisplay *brl, unsigned char *p, size_t size) + { +- int tmp = 0; ++ size_t tmp = 0; + static unsigned char ack = 04; + static unsigned char nack = 05; + static int apacket = 0; blob - /dev/null blob + f8d0d2a966569ea4cd2c18d6665036717317e742 (mode 644) --- /dev/null +++ misc/brltty/patches/patch-Drivers_Voyager_braille_c @@ -0,0 +1,12 @@ +Index: Drivers/Voyager/braille.c +--- Drivers/Voyager/braille.c.orig ++++ Drivers/Voyager/braille.c +@@ -108,7 +108,7 @@ writeSerialPacket (unsigned char code, unsigned char * + + static int + readSerialPacket (char *buffer, int size) { +- int offset = 0; ++ size_t offset = 0; + int escape = 0; + int length = -1; + -- Christian "naddy" Weisgerber naddy@mips.inka.de