@Dieter9,
thanks for the patch. I have added it.
It breaks compilation for 6.0 kernels, though.
Can you provide a patch that works for older and newer kernels? (There are still up to date kernels < 6.1 around, e.g. some -lts kernels.)
Git Clone URL: | https://aur.archlinux.org/tty0tty-dkms-git.git (read-only, click to copy) |
---|---|
Package Base: | tty0tty-dkms-git |
Description: | tty0tty Virtual Serial Cable (DKMS and userspace variant). |
Upstream URL: | https://github.com/freemed/tty0tty |
Licenses: | GPL-2.0-only |
Conflicts: | tty0tty, tty0tty-pts |
Provides: | tty0tty, tty0tty-doc, tty0tty-pts |
Submitter: | dreieck |
Maintainer: | dreieck |
Last Packager: | dreieck |
Votes: | 4 |
Popularity: | 0.000000 |
First Submitted: | 2022-06-14 11:09 (UTC) |
Last Updated: | 2024-10-10 09:45 (UTC) |
@Dieter9,
thanks for the patch. I have added it.
It breaks compilation for 6.0 kernels, though.
Can you provide a patch that works for older and newer kernels? (There are still up to date kernels < 6.1 around, e.g. some -lts kernels.)
Here is a patch, that makes tty0tty compile and running again on linux 6.1.
diff -ur tty0tty-org/module/tty0tty.c tty0tty-master/module/tty0tty.c
--- tty0tty-org/module/tty0tty.c 2022-12-24 10:24:40.149392717 +0100
+++ tty0tty-master/module/tty0tty.c 2022-12-28 20:57:06.306970029 +0100
@@ -288,7 +288,7 @@
#define RELEVANT_IFLAG(iflag) ((iflag) & (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK))
static void tty0tty_set_termios(struct tty_struct *tty,
- struct ktermios *old_termios)
+ const struct ktermios *old_termios)
{
unsigned int cflag;
unsigned int iflag;
After update to Linux 6.1.1, tty0tty does nocht compile any more.
DKMS make.log for tty0tty-1.2+46.r62.20221025.81f8aa2 for kernel 6.1.1-arch1-1 (x86_64)
Fr 23. Dez 17:36:32 CET 2022
make: Verzeichnis „/usr/lib/modules/6.1.1-arch1-1/build“ wird betreten
CC [M] /var/lib/dkms/tty0tty/1.2+46.r62.20221025.81f8aa2/build/tty0tty.o
/var/lib/dkms/tty0tty/1.2+46.r62.20221025.81f8aa2/build/tty0tty.c:608:24: Fehler: Initialisierung von »void (*)(struct tty_struct *, const struct ktermios *)« von inkompatiblem Zeigertyp »void (*)(struct tty_struct *, struct ktermios *)« [-Werror=incompatible-pointer-types]
608 | .set_termios = tty0tty_set_termios,
| ^~~~~~~~~~~~~~~~~~~
This package has adopted tty0tty-git
, the comments up to tthis point came from tty0tty-git
.
I have made a proper package tty0tty-dkms-git
wich addresses the issues mentioned here so far. And I submit a merge request here.
I don't see where it uses an Apache license. The COPYING
file is GPL2.
Why do you use GPL2/Apache2
as license?
Please make a proper "pkgver()" function that creates proper version numbers, e.g. git commit count based if there is no proper release version.
A pkgver()
which currently produces 1.2+41.r57.20220526.c0e85cf
is:
pkgver() {
cd "${srcdir}/${_pkgname}"
_ver="$(git describe --tags | sed 's|^[vV]||' | sed 's|-[^-]*$||' | tr '-' '+')"
_rev="$(git rev-list --count HEAD)"
_date="$(git log -1 --date=format:"%Y%m%d" --format="%ad")"
_hash="$(git rev-parse --short HEAD)"
if [ -z "${_ver}" ]; then
error "Version could not be determined."
return 1
else
printf '%s' "${_ver}.r${_rev}.${_date}.${_hash}"
fi
}
Please rename your package to tty0tty-dkms-git
(i.e. add -dkms
), and add "tty0tty=${pkgver}"
to the provides
array.
Thanks for maintaining!
GPL2/Apache2
is no a license at /usr/share/licenses/common
. Please use license=('GPL2' 'Apache')
if you want to say it has both.
Pinned Comments
dreieck commented on 2024-01-11 19:19 (UTC)
I like to disown since I do not actively use it and I am not familiar with kernel code. @ozz seems to be more familiar.
Anyone wanting to adopt? Please drop me an email and I will transfer ownership to you.
Regards!