Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Dear Ajith, I uploaded a fixed package to Debian, just before Jithin proposed an even better fix (more general for various hardware related to Phoenix project). We must let some time to developers of the release.debian.org to manage the current "unblock request". If they agree with the unblock request, expeyes will be part of the next Debian/stable distribution. I shall try to upload Jithin's better fix later: maybe some member of release.debian.org will be able to take it in consideration, as a second (and lighter) change to this package. Best regards, Georges. Ajith Kumar a écrit : > Dear Georges, > I think a message may be displayed during the installation of eyes17 > instructing to remove the modem manager in case of any trouble > communicating with eyes17. It is left to the user instead of a forced > removal. It is important to have it in the Distro. The users in Kerala is a > closed community and we can instruct them. Jithin may consider it. signature.asc Description: PGP signature
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Dear Georges, I think a message may be displayed during the installation of eyes17 instructing to remove the modem manager in case of any trouble communicating with eyes17. It is left to the user instead of a forced removal. It is important to have it in the Distro. The users in Kerala is a closed community and we can instruct them. Jithin may consider it. Regards. On Wed, Jun 30, 2021 at 9:36 PM Georges Khaznadar wrote: > Dear Andreas, > > I added in Cc: the authors of Expeyes hardware and software. > > Hello Jithin, Ajith! the context about the bug report with serious > severity is below. > > > > I ignored that a statement like "Conflicts: modemmanager" would create > problems with buster->bullseye upgrades. Currently, binary packages > conflicting with modemmanager are: eyes17, python3-expeyes, > firm-phoenix-ware. The first one, eyes17, will be the most used. > > This statement was added because boxes of the Expeyes family do not > communicate correctly by their serial link when modemmanager is > installed. I did not investigate further, to know the precise reason of > the incompatibility. > > I got e-mails of some users of previous versions of expeyes packages, > who could not activate their boxes, and my reply was to uninstall > modemmanager or upgrade to the new version of eyes17 package. > > The number of Expeyes users is currently growing in Kerala (a southern > state of India), and they rely on *eyes17* package, some with a Debian > machine, most with an Ubuntu machine. This community is growing since > Eyes17 box has become an officially encouraged scientific device, to be > distributed to all high schools in the state, together with training. > > I cannot withdraw the confict statement without damaging this user > community in the future. > > Hence the next question: > > > How would it be possible to keep expeyes packages in the soon-to-come > Debian/Stable distribution? > > The package modemmanager is recommended by widely used packages, like > network-manager, while eyes17 is recommended by no package. > > I do not know how many users do really need modemmanager, or use modems. > > However I know better the profile of users who use eyes17: they are > students and teachers, wo interact inside a high school. Then, the link > with Internet is generally provided by some router or some wireless box, > and no modem is used. > > @Jitin, @Ajith: > can you give please an estimate of the user community for eyes17 now, > and in a near future? > > Best regards, Georges. > > Andreas Beckmann a écrit : > > Package: python3-expeyes > > Version: 4.8.7+repack-4 > > Severity: serious > > User: debian...@lists.debian.org > > Usertags: piuparts > > Control: affects -1 + eyes17 > > > > Hi Georges, > > > > while investigating incomplete buster->bullseye upgrades, I came across > > the Conflicts: modemmanager in python3-expeyes. Why was that added? > > It is not mentioned in the changelog and the git commit introducing it > > doesn't explain it either. > > Should this have been a versioned Breaks instead? > > > > The modemmanager package still exists in bullseye, so what should be the > > desired buster->bullseye upgrade outcome for buster systems with both > > modemmanager and python3-expeyes installed (that happens e.g. when > > installing eyes17/buster with --install-recommends)? > > > > > > Andreas > > -- > Georges KHAZNADAR et Jocelyne FOURNIER > 22 rue des mouettes, 59240 Dunkerque France. > Téléphone +33 (0)3 28 29 17 70 > > -- Dr. Ajith Kumar B.P. https://scischool.in/ Ph: +91 9643258320 , 9868150852
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Dear Andreas, thank you for the hint about post-installation scripts. The colleague whom I lended my Eyes17 box could check the compatibility of expeyes software vs. modemmanager with success: this validates the udev rules file. I uploaded a fixed package to unstable, anf filed an unblock request to release.debian.org people. The debdiff file is rather big, because a new version (4.8.8) had been uploaded prevously to unstable, which features some ironing of documentation files, and removes many useless files in the binary package eyes17. Best regards, Georges. Andreas Beckmann a écrit : > Control: retitle -1 python3-expeyes: superfluous Conflicts: modemmanager > causes problems on buster->bullseye upgrades > > On 30/06/2021 18.55, Georges Khaznadar wrote: > > I attach the file eyes_udev.sh, which is called upon eyes17's > > post-installation, as "eyes_udev.sh enable", thus creating or keeping > > the file /lib/udev/rules.d/99-phoenix.rules, with this content: > > Great, the fix seems to be already included in the package. > So maybe it's sufficient to just drop all the Conflicts on modemmanager > to fix this bug ;-) > > In all the maintainer scripts, please use > invoke-rc.d udev > instead of > service udev > s.t. this gets properly filtered via policy-rc.d > (an RC bug on its own, not filing it separately because we already have > this one) > > Lintian says this: > > E: maintainer-script-calls-service > N: > N: The maintainer script apparently runs the service command. This > N: command is reserved for local administrators and must never be used by > N: a Debian package. > N: > N: Please replace with calls to update-rc.d(8) and invoke-rc.d(8). If > N: your package installs this service, this can be automated using > N: dh_installinit(1) or dh_installsystemd(1). > N: > N: Refer to Debian Policy Manual section 9.3.3 (Interfacing with init > N: systems) for details. > > > Andreas -- Georges KHAZNADAR et Jocelyne FOURNIER 22 rue des mouettes, 59240 Dunkerque France. Téléphone +33 (0)3 28 29 17 70 signature.asc Description: PGP signature
Processed: Re: Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Processing control commands: > retitle -1 python3-expeyes: superfluous Conflicts: modemmanager causes > problems on buster->bullseye upgrades Bug #990489 [python3-expeyes] python3-expeyes: why is there a Conflicts: modemmanager ? Changed Bug title to 'python3-expeyes: superfluous Conflicts: modemmanager causes problems on buster->bullseye upgrades' from 'python3-expeyes: why is there a Conflicts: modemmanager ?'. -- 990489: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=990489 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Control: retitle -1 python3-expeyes: superfluous Conflicts: modemmanager causes problems on buster->bullseye upgrades On 30/06/2021 18.55, Georges Khaznadar wrote: I attach the file eyes_udev.sh, which is called upon eyes17's post-installation, as "eyes_udev.sh enable", thus creating or keeping the file /lib/udev/rules.d/99-phoenix.rules, with this content: Great, the fix seems to be already included in the package. So maybe it's sufficient to just drop all the Conflicts on modemmanager to fix this bug ;-) In all the maintainer scripts, please use invoke-rc.d udev instead of service udev s.t. this gets properly filtered via policy-rc.d (an RC bug on its own, not filing it separately because we already have this one) Lintian says this: E: maintainer-script-calls-service N: N: The maintainer script apparently runs the service command. This N: command is reserved for local administrators and must never be used by N: a Debian package. N: N: Please replace with calls to update-rc.d(8) and invoke-rc.d(8). If N: your package installs this service, this can be automated using N: dh_installinit(1) or dh_installsystemd(1). N: N: Refer to Debian Policy Manual section 9.3.3 (Interfacing with init N: systems) for details. Andreas
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
On 30/06/2021 18.22, jithin bp wrote: One suggestion that needs to be rigorously tested is to blacklist the serial device of ExpEYES(VendorID:ProductID) for Modem Manager so that it will ignore it. https://askubuntu.com/questions/1231894/modemmanager-conflicts-with-arduino That sounds very promising. Corresponding ModemManager documentation is https://www.freedesktop.org/software/ModemManager/api/latest/ref-overview-modem-filter.html So maybe the solution is shipping in eyes17 (or a better fitting package?) /lib/udev/rules.d/78-mm-blacklist-expeyes.rules with this content: = 8< = ACTION!="add|change|move", GOTO="mm_blacklist_expeyes_end" ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="00df", ENV{ID_MM_DEVICE_IGNORE}="1" LABEL="mm_blacklist_expeyes_end" = >8 = (Repeat the middle line if you have multiple IDs) Needs to be tested by someone having an expeyes board ;-) As modemmanager already has several blacklists: /lib/udev/rules.d/77-mm-pcmcia-device-blacklist.rules /lib/udev/rules.d/77-mm-qdl-device-blacklist.rules /lib/udev/rules.d/77-mm-usb-device-blacklist.rules perhaps your device should rather be added there? Some blacklists also set the ID_MM_TTY_BLACKLIST variable instead of ID_MM_DEVICE_IGNORE Andreas
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Sorry, here is the forgotten attachment, on e-mail later as usual. eyes_udev.sh Description: Bourne shell script signature.asc Description: PGP signature
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Dear Jithin, thank you for your very fast response. I attach the file eyes_udev.sh, which is called upon eyes17's post-installation, as "eyes_udev.sh enable", thus creating or keeping the file /lib/udev/rules.d/99-phoenix.rules, with this content: ---8<- /lib/udev/rules.d/99-phoenix.rules -- # udev rules for expEYES interface: AVR, FT232, MCP2200 and CH340 SUBSYSTEM=="usb",ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="21ff", MODE="666" SUBSYSTEM=="tty",ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="666" SUBSYSTEM=="tty",ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="00df", MODE="666" SUBSYSTEM=="tty",ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", MODE="666" ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="21ff", ENV{ID_MM_DEVICE_IGNORE}="1" ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ENV{ID_MM_DEVICE_IGNORE}="1" ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="00df", ENV{ID_MM_DEVICE_IGNORE}="1" ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", ENV{ID_MM_DEVICE_IGNORE}="1" # interest_eyes17 ---8<- Please can you check whether ATTRS{idVendor}=="03eb", ... "0403", "04d8", ... "1a86" will be enough to blacklist our boxes' interfaces for modemmanager, and eventually the interface of eyes17? Then, please can you check that installing modemmanager will let Eyes17 boxes in peace, when such a rule is activated for udev? Currently, my Eyes17 box is lended to a colleague who is trying the complete list of experiments of the User Manual, while reviewing the Spanish version, and might want to buy such boxes, for his technical school. I can ask him to give it back, and he would do it shortly, but he asked me two days ago whether I could lend the box some longer; I did not know that I would get a bug report today :) Best regards, Georges. jithin bp a écrit : > Dear Georges, > > The modem-manager probes serial ports with random AT commands causing > communication errors in a wide range of devices which use the serial port, > most common ones being embedded development tools such as for the Arduino , > PIC etc. > This issue has been reported in many forums > - > https://mail.gnome.org/archives/networkmanager-list/2013-October/msg00038.html > - > https://askubuntu.com/questions/1231894/modemmanager-conflicts-with-arduino > - https://github.com/ubuntu/ubuntu-make/issues/4 > > In case of ExpEYES, random communication errors, and subsequent data loss > occurs during data acquisition tasks if Modem Manager is running in the > background. Perhaps there is some way to place a lock on the active serial > port to prevent MM from probing it. > > One suggestion that needs to be rigorously tested is to blacklist the > serial device of ExpEYES(VendorID:ProductID) for Modem Manager so that it > will ignore it. > https://askubuntu.com/questions/1231894/modemmanager-conflicts-with-arduino > > The user community is currently in the range of a few thousands, and is > expected to grow, so a solution must be quickly resolved after studying > which serial devices Modem-Manager automatically likes to probe, and to > keep ExpEYES ( ID 04d8:00df Microchip Technology, Inc.) out of that list. > > > More about ExpEYES > - https://expeyes.in/ > - https://csparkresearch.in/expeyes17/ > - https://csparkresearch.in/expeyes17/blog > > Regards, > Jithin > > On Wed, Jun 30, 2021 at 9:36 PM Georges Khaznadar > wrote: > > > Dear Andreas, > > > > I added in Cc: the authors of Expeyes hardware and software. > > > > Hello Jithin, Ajith! the context about the bug report with serious > > severity is below. > > > > > > > > I ignored that a statement like "Conflicts: modemmanager" would create > > problems with buster->bullseye upgrades. Currently, binary packages > > conflicting with modemmanager are: eyes17, python3-expeyes, > > firm-phoenix-ware. The first one, eyes17, will be the most used. > > > > This statement was added because boxes of the Expeyes family do not > > communicate correctly by their serial link when modemmanager is > > installed. I did not investigate further, to know the precise reason of > > the incompatibility. > > > > I got e-mails of some users of previous versions of expeyes packages, > > who could not activate their boxes, and my reply was to uninstall > > modemmanager or upgrade to the new version of eyes17 package. > > > > The number of Expeyes users is currently growing in Kerala (a southern > > state of India), and they rely on *eyes17* package, some with a Debian > > machine, most with an Ubuntu machine. This community is growing since > > Eyes17 box has become an officially encouraged scientific device, to be > > distributed to all high schools in the state, together with training. > > > > I cannot withdraw the confict statement without damaging this user > > community in the future. > > > > Hence the next question: > > > > > > How would it be possible to keep
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
On 30/06/2021 18.06, Georges Khaznadar wrote: I ignored that a statement like "Conflicts: modemmanager" would create problems with buster->bullseye upgrades. Currently, binary packages conflicting with modemmanager are: eyes17, python3-expeyes, firm-phoenix-ware. The first one, eyes17, will be the most used. So the current buster->bullseye upgrade outcome is not what you would desire: * eyes17 removed * modemmanager still installed * python3-expexes kept at the buster version This statement was added because boxes of the Expeyes family do not communicate correctly by their serial link when modemmanager is installed. I did not investigate further, to know the precise reason of the incompatibility. Is this incompatibility still the case with current modemmanager (1.14) in buster? The number of Expeyes users is currently growing in Kerala (a southern state of India), and they rely on *eyes17* package, some with a Debian machine, most with an Ubuntu machine. This community is growing since Eyes17 box has become an officially encouraged scientific device, to be distributed to all high schools in the state, together with training. That's a nice piece of hardware you have there ;-) However I know better the profile of users who use eyes17: they are students and teachers, wo interact inside a high school. Then, the link with Internet is generally provided by some router or some wireless box, and no modem is used. I haven't looked into modemmanager at all ... is it possible to "disable" it from the eyes17 side? Deactivating the service might be sufficient? Dropping a conffile somewhere to block it from using certain devices? Diverting the binary away? Andreas
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Dear Georges, The modem-manager probes serial ports with random AT commands causing communication errors in a wide range of devices which use the serial port, most common ones being embedded development tools such as for the Arduino , PIC etc. This issue has been reported in many forums - https://mail.gnome.org/archives/networkmanager-list/2013-October/msg00038.html - https://askubuntu.com/questions/1231894/modemmanager-conflicts-with-arduino - https://github.com/ubuntu/ubuntu-make/issues/4 In case of ExpEYES, random communication errors, and subsequent data loss occurs during data acquisition tasks if Modem Manager is running in the background. Perhaps there is some way to place a lock on the active serial port to prevent MM from probing it. One suggestion that needs to be rigorously tested is to blacklist the serial device of ExpEYES(VendorID:ProductID) for Modem Manager so that it will ignore it. https://askubuntu.com/questions/1231894/modemmanager-conflicts-with-arduino The user community is currently in the range of a few thousands, and is expected to grow, so a solution must be quickly resolved after studying which serial devices Modem-Manager automatically likes to probe, and to keep ExpEYES ( ID 04d8:00df Microchip Technology, Inc.) out of that list. More about ExpEYES - https://expeyes.in/ - https://csparkresearch.in/expeyes17/ - https://csparkresearch.in/expeyes17/blog Regards, Jithin On Wed, Jun 30, 2021 at 9:36 PM Georges Khaznadar wrote: > Dear Andreas, > > I added in Cc: the authors of Expeyes hardware and software. > > Hello Jithin, Ajith! the context about the bug report with serious > severity is below. > > > > I ignored that a statement like "Conflicts: modemmanager" would create > problems with buster->bullseye upgrades. Currently, binary packages > conflicting with modemmanager are: eyes17, python3-expeyes, > firm-phoenix-ware. The first one, eyes17, will be the most used. > > This statement was added because boxes of the Expeyes family do not > communicate correctly by their serial link when modemmanager is > installed. I did not investigate further, to know the precise reason of > the incompatibility. > > I got e-mails of some users of previous versions of expeyes packages, > who could not activate their boxes, and my reply was to uninstall > modemmanager or upgrade to the new version of eyes17 package. > > The number of Expeyes users is currently growing in Kerala (a southern > state of India), and they rely on *eyes17* package, some with a Debian > machine, most with an Ubuntu machine. This community is growing since > Eyes17 box has become an officially encouraged scientific device, to be > distributed to all high schools in the state, together with training. > > I cannot withdraw the confict statement without damaging this user > community in the future. > > Hence the next question: > > > How would it be possible to keep expeyes packages in the soon-to-come > Debian/Stable distribution? > > The package modemmanager is recommended by widely used packages, like > network-manager, while eyes17 is recommended by no package. > > I do not know how many users do really need modemmanager, or use modems. > > However I know better the profile of users who use eyes17: they are > students and teachers, wo interact inside a high school. Then, the link > with Internet is generally provided by some router or some wireless box, > and no modem is used. > > @Jitin, @Ajith: > can you give please an estimate of the user community for eyes17 now, > and in a near future? > > Best regards, Georges. > > Andreas Beckmann a écrit : > > Package: python3-expeyes > > Version: 4.8.7+repack-4 > > Severity: serious > > User: debian...@lists.debian.org > > Usertags: piuparts > > Control: affects -1 + eyes17 > > > > Hi Georges, > > > > while investigating incomplete buster->bullseye upgrades, I came across > > the Conflicts: modemmanager in python3-expeyes. Why was that added? > > It is not mentioned in the changelog and the git commit introducing it > > doesn't explain it either. > > Should this have been a versioned Breaks instead? > > > > The modemmanager package still exists in bullseye, so what should be the > > desired buster->bullseye upgrade outcome for buster systems with both > > modemmanager and python3-expeyes installed (that happens e.g. when > > installing eyes17/buster with --install-recommends)? > > > > > > Andreas > > -- > Georges KHAZNADAR et Jocelyne FOURNIER > 22 rue des mouettes, 59240 Dunkerque France. > Téléphone +33 (0)3 28 29 17 70 > > -- jithin
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Dear Andreas, I added in Cc: the authors of Expeyes hardware and software. Hello Jithin, Ajith! the context about the bug report with serious severity is below. I ignored that a statement like "Conflicts: modemmanager" would create problems with buster->bullseye upgrades. Currently, binary packages conflicting with modemmanager are: eyes17, python3-expeyes, firm-phoenix-ware. The first one, eyes17, will be the most used. This statement was added because boxes of the Expeyes family do not communicate correctly by their serial link when modemmanager is installed. I did not investigate further, to know the precise reason of the incompatibility. I got e-mails of some users of previous versions of expeyes packages, who could not activate their boxes, and my reply was to uninstall modemmanager or upgrade to the new version of eyes17 package. The number of Expeyes users is currently growing in Kerala (a southern state of India), and they rely on *eyes17* package, some with a Debian machine, most with an Ubuntu machine. This community is growing since Eyes17 box has become an officially encouraged scientific device, to be distributed to all high schools in the state, together with training. I cannot withdraw the confict statement without damaging this user community in the future. Hence the next question: How would it be possible to keep expeyes packages in the soon-to-come Debian/Stable distribution? The package modemmanager is recommended by widely used packages, like network-manager, while eyes17 is recommended by no package. I do not know how many users do really need modemmanager, or use modems. However I know better the profile of users who use eyes17: they are students and teachers, wo interact inside a high school. Then, the link with Internet is generally provided by some router or some wireless box, and no modem is used. @Jitin, @Ajith: can you give please an estimate of the user community for eyes17 now, and in a near future? Best regards, Georges. Andreas Beckmann a écrit : > Package: python3-expeyes > Version: 4.8.7+repack-4 > Severity: serious > User: debian...@lists.debian.org > Usertags: piuparts > Control: affects -1 + eyes17 > > Hi Georges, > > while investigating incomplete buster->bullseye upgrades, I came across > the Conflicts: modemmanager in python3-expeyes. Why was that added? > It is not mentioned in the changelog and the git commit introducing it > doesn't explain it either. > Should this have been a versioned Breaks instead? > > The modemmanager package still exists in bullseye, so what should be the > desired buster->bullseye upgrade outcome for buster systems with both > modemmanager and python3-expeyes installed (that happens e.g. when > installing eyes17/buster with --install-recommends)? > > > Andreas -- Georges KHAZNADAR et Jocelyne FOURNIER 22 rue des mouettes, 59240 Dunkerque France. Téléphone +33 (0)3 28 29 17 70 signature.asc Description: PGP signature
Bug#990489: python3-expeyes: why is there a Conflicts: modemmanager ?
Package: python3-expeyes Version: 4.8.7+repack-4 Severity: serious User: debian...@lists.debian.org Usertags: piuparts Control: affects -1 + eyes17 Hi Georges, while investigating incomplete buster->bullseye upgrades, I came across the Conflicts: modemmanager in python3-expeyes. Why was that added? It is not mentioned in the changelog and the git commit introducing it doesn't explain it either. Should this have been a versioned Breaks instead? The modemmanager package still exists in bullseye, so what should be the desired buster->bullseye upgrade outcome for buster systems with both modemmanager and python3-expeyes installed (that happens e.g. when installing eyes17/buster with --install-recommends)? Andreas