Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#76 Le 13/02/2023, à 17:52

ylag

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

@eric63 :

Bonjour,

Pour voir le résultat de la commande de copie du fichier, utiliser l'option -v :

sudo cp -v /lib/udev/rules.d/60-libsane.rules  /lib/udev/rules.d/60-libsane1.rules

Utiliser «sudo mv ...» va supprimer le fichier /lib/udev/rules.d/60-libsane.rules, ce que l'on ne souhaite pas nécessairement faire ?

A+

Dernière modification par ylag (Le 13/02/2023, à 18:26)

Hors ligne

#77 Le 13/02/2023, à 18:24

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

ah ben zut quand je disais ne pas maîtriser les commandes j’aurais du m’abstenir pour celle ci sad
et mon but est bien de copier et renommer la libsane en libsane1 dans le même dossier mais pas de supprimer la libsane
je n‘avais pas vu les explications comme cela https://www.hostinger.fr/tutoriels/reno … hier-linux
effectivement il parle bien de déplacer et renommer et pas de copier et renommer ou renommer tout court


Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#78 Le 13/02/2023, à 18:29

ylag

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Re,

Pas grave en soi, on pourrait recréer le fichier /lib/udev/rules.d/60-libsane.rules de cette façon si la commande mv a été utilisée :

cd /lib/udev/rules.d && sudo cp -v 60-libsane1.rules 60-libsane.rules ; cd

A+

Dernière modification par ylag (Le 13/02/2023, à 18:32)

Hors ligne

#79 Le 13/02/2023, à 18:37

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

j'espère que l’on ne va pas perdre Dilem dans ces explications


Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#80 Le 13/02/2023, à 18:53

ylag

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

@eric63 :

Oui, désolé ; je vais m'abstenir d'en rajouter ...

A+

Hors ligne

#81 Le 13/02/2023, à 19:14

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

ne t’abstient pas elles sont très utiles tes explications et c’est moi qui ne fait pas ce qu’il faut


Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#82 Le 13/02/2023, à 19:59

arverne73

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Pour essayer de comprendre, sur une machine virtuelle, mais en 18.04, je viens de faire les 2 types d'installation pour cette même machine MFC-J4335DW (que je n'ai pas, bien-sûr) :

1 - script de Brother : il s'installe sans dire grand chose et j'ai exactement les mêmes messages que ce qu'a indiqué Dilem en #72. Il n'y a pas de blocage. Le script se termine sans message d'alerte.
2 - avec le script demonipuch : l'installation se passe mais se termine avec :

Configuration du scanner
* Copie des librairies nécessaires...                 [fail]
No config binary found.

@Dilem : suite à l'installation faite en #72, avez-vous essayé le scanner à nouveau ?

Ensuite, sur le site de Brother, pour compliquer un peu, je suis tombé sur cette page qui indique qu'il peut y avoir problème avec l'imprimante ou le scanner en USB sur 20.04+ : https://www.brother.fr/services-et-supp … 100713_000
Si l'impression marche, je ne pense pas qu'il faille en tenir compte. Il y a un long script sur l'USB mais non spécifique au scanner.

Dernière modification par arverne73 (Le 13/02/2023, à 20:00)


J-Paul - Utilisateur Ubuntu depuis 2006
Mantic 23.10 AMD FX et carte graphique AMD Radeon HD 6850

Hors ligne

#83 Le 13/02/2023, à 21:42

Dilem

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

J'ai ça :

ubuntu@ubuntu-SG3-130FR:~$ sudo mv /lib/udev/rules.d/60-libsane.rules  /lib/udev/rules.d/60-libsane1.rules
[sudo] Mot de passe de ubuntu : 
ubuntu@ubuntu-SG3-130FR:~$ ls /lib/udev/rules.d/
39-usbmuxd.rules                       75-probe_mtd.rules
40-usb-media-players.rules             77-mm-broadmobi-port-types.rules
40-usb_modeswitch.rules                77-mm-cinterion-port-types.rules
40-vm-hotadd.rules                     77-mm-dell-port-types.rules
50-apport.rules                        77-mm-dlink-port-types.rules
50-firmware.rules                      77-mm-ericsson-mbm.rules
50-udev-default.rules                  77-mm-fibocom-port-types.rules
55-dm.rules                            77-mm-foxconn-port-types.rules
55-ippusbxd.rules                      77-mm-gosuncn-port-types.rules
56-hpmud.rules                         77-mm-haier-port-types.rules
60-autosuspend-chromiumos.rules        77-mm-huawei-net-port-types.rules
60-block.rules                         77-mm-longcheer-port-types.rules
60-cdrom_id.rules                      77-mm-mtk-port-types.rules
60-crda.rules                          77-mm-nokia-port-types.rules
60-drm.rules                           77-mm-qcom-soc.rules
60-evdev.rules                         77-mm-qdl-device-blacklist.rules
60-fido-id.rules                       77-mm-quectel-port-types.rules
60-inputattach.rules                   77-mm-sierra.rules
60-input-id.rules                      77-mm-simtech-port-types.rules
60-libfprint-2.rules                   77-mm-telit-port-types.rules
60-libgphoto2-6.rules                  77-mm-tplink-port-types.rules
60-libsane1.rules                      77-mm-ublox-port-types.rules
60-pcmcia.rules                        77-mm-x22x-port-types.rules
60-persistent-alsa.rules               77-mm-zte-port-types.rules
60-persistent-input.rules              78-graphics-card.rules
60-persistent-storage-dm.rules         78-sound-card.rules
60-persistent-storage.rules            80-debian-compat.rules
60-persistent-storage-tape.rules       80-drivers.rules
60-persistent-v4l.rules                80-iio-sensor-proxy.rules
60-sensor.rules                        80-libinput-device-groups.rules
60-serial.rules                        80-mm-candidate.rules
60-tpm-udev.rules                      80-net-setup-link.rules
61-autosuspend-manual.rules            80-udisks2.rules
61-gdm.rules                           81-net-dhcp.rules
61-gnome-settings-daemon-rfkill.rules  84-nm-drivers.rules
61-persistent-storage-android.rules    85-brltty.rules
64-btrfs.rules                         85-hdparm.rules
64-xorg-xkb.rules                      85-hplj10xx.rules
65-libwacom.rules                      85-nm-unmanaged.rules
66-snapd-autoimport.rules              85-regulatory.rules
69-cd-sensors.rules                    90-alsa-restore.rules
69-libmtp.rules                        90-bolt.rules
69-wacom.rules                         90-console-setup.rules
70-joystick.rules                      90-fwupd-devices.rules
70-mouse.rules                         90-libinput-fuzz-override.rules
70-power-switch.rules                  90-nm-thunderbolt.rules
70-printers.rules                      90-pulseaudio.rules
70-spice-vdagentd.rules                95-cd-devices.rules
70-touchpad.rules                      95-dm-notify.rules
70-u2f.rules                           95-upower-csr.rules
70-uaccess.rules                       95-upower-hidpp.rules
71-power-switch-proliant.rules         95-upower-hid.rules
71-seat.rules                          95-upower-wup.rules
71-u-d-c-gpu-detection.rules           96-e2scrub.rules
73-seat-late.rules                     97-hid2hci.rules
73-special-net-names.rules             99-systemd.rules
75-net-description.rules
ubuntu@ubuntu-SG3-130FR:~$ 

Hors ligne

#84 Le 13/02/2023, à 21:44

Dilem

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Puis ça :

ubuntu@ubuntu-SG3-130FR:~$ sudo cp -v /lib/udev/rules.d/60-libsane.rules  /lib/udev/rules.d/60-libsane1.rules
[sudo] Mot de passe de ubuntu : 
cp: impossible d'évaluer '/lib/udev/rules.d/60-libsane.rules': Aucun fichier ou dossier de ce type
ubuntu@ubuntu-SG3-130FR:~$ 

Hors ligne

#85 Le 13/02/2023, à 21:49

Dilem

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

... et toujours rien au scan coté imprimante... je na-ge na-ge na-ge...
Je pense que je vais tenter la mise à jour vers la dernière version d'Ubuntu.

Hors ligne

#86 Le 13/02/2023, à 21:50

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

ce foutu fichier n’est sans doute pas au bon endroit
essaye

sudo cp -v /usr/lib/udev/rules.d/60-libsane.rules  /usr/lib/udev/rules.d/60-libsane1.rules

et

ls  /usr/lib/udev/rules.d/

Dernière modification par eric63 (Le 13/02/2023, à 21:51)


Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#87 Le 13/02/2023, à 22:11

Dilem

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

ubuntu@ubuntu-SG3-130FR:~$ sudo cp -v /usr/lib/udev/rules.d/60-libsane.rules  /usr/lib/udev/rules.d/60-libsane1.rules
[sudo] Mot de passe de ubuntu : 
cp: impossible d'évaluer '/usr/lib/udev/rules.d/60-libsane.rules': Aucun fichier ou dossier de ce type
ubuntu@ubuntu-SG3-130FR:~$ ls  /usr/lib/udev/rules.d/
39-usbmuxd.rules                       75-probe_mtd.rules
40-usb-media-players.rules             77-mm-broadmobi-port-types.rules
40-usb_modeswitch.rules                77-mm-cinterion-port-types.rules
40-vm-hotadd.rules                     77-mm-dell-port-types.rules
50-apport.rules                        77-mm-dlink-port-types.rules
50-firmware.rules                      77-mm-ericsson-mbm.rules
50-udev-default.rules                  77-mm-fibocom-port-types.rules
55-dm.rules                            77-mm-foxconn-port-types.rules
55-ippusbxd.rules                      77-mm-gosuncn-port-types.rules
56-hpmud.rules                         77-mm-haier-port-types.rules
60-autosuspend-chromiumos.rules        77-mm-huawei-net-port-types.rules
60-block.rules                         77-mm-longcheer-port-types.rules
60-cdrom_id.rules                      77-mm-mtk-port-types.rules
60-crda.rules                          77-mm-nokia-port-types.rules
60-drm.rules                           77-mm-qcom-soc.rules
60-evdev.rules                         77-mm-qdl-device-blacklist.rules
60-fido-id.rules                       77-mm-quectel-port-types.rules
60-inputattach.rules                   77-mm-sierra.rules
60-input-id.rules                      77-mm-simtech-port-types.rules
60-libfprint-2.rules                   77-mm-telit-port-types.rules
60-libgphoto2-6.rules                  77-mm-tplink-port-types.rules
60-libsane1.rules                      77-mm-ublox-port-types.rules
60-pcmcia.rules                        77-mm-x22x-port-types.rules
60-persistent-alsa.rules               77-mm-zte-port-types.rules
60-persistent-input.rules              78-graphics-card.rules
60-persistent-storage-dm.rules         78-sound-card.rules
60-persistent-storage.rules            80-debian-compat.rules
60-persistent-storage-tape.rules       80-drivers.rules
60-persistent-v4l.rules                80-iio-sensor-proxy.rules
60-sensor.rules                        80-libinput-device-groups.rules
60-serial.rules                        80-mm-candidate.rules
60-tpm-udev.rules                      80-net-setup-link.rules
61-autosuspend-manual.rules            80-udisks2.rules
61-gdm.rules                           81-net-dhcp.rules
61-gnome-settings-daemon-rfkill.rules  84-nm-drivers.rules
61-persistent-storage-android.rules    85-brltty.rules
64-btrfs.rules                         85-hdparm.rules
64-xorg-xkb.rules                      85-hplj10xx.rules
65-libwacom.rules                      85-nm-unmanaged.rules
66-snapd-autoimport.rules              85-regulatory.rules
69-cd-sensors.rules                    90-alsa-restore.rules
69-libmtp.rules                        90-bolt.rules
69-wacom.rules                         90-console-setup.rules
70-joystick.rules                      90-fwupd-devices.rules
70-mouse.rules                         90-libinput-fuzz-override.rules
70-power-switch.rules                  90-nm-thunderbolt.rules
70-printers.rules                      90-pulseaudio.rules
70-spice-vdagentd.rules                95-cd-devices.rules
70-touchpad.rules                      95-dm-notify.rules
70-u2f.rules                           95-upower-csr.rules
70-uaccess.rules                       95-upower-hidpp.rules
71-power-switch-proliant.rules         95-upower-hid.rules
71-seat.rules                          95-upower-wup.rules
71-u-d-c-gpu-detection.rules           96-e2scrub.rules
73-seat-late.rules                     97-hid2hci.rules
73-special-net-names.rules             99-systemd.rules
75-net-description.rules
ubuntu@ubuntu-SG3-130FR:~$ 

Hors ligne

#88 Le 13/02/2023, à 22:18

ylag

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Bonsoir,

Pour éventuellement repérer le fichier 60-libsane.rules :

sudo find / -xdev -type f -name 60-libsane.rules

Sur la 20.04, c'est installé par le paquet libsane.
Si le fichier n'est pas retrouvé par la commande précédente, peut-être réinstaller libsane :

sudo apt reinstall libsane

A+

Hors ligne

#89 Le 13/02/2023, à 22:22

arverne73

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

@Dilem : pour scanner, quelle application utilisez-vous ? Que dit l’application ?

Une alternative serait d’installer l’imprimante en WiFi, ce qui est quand même contourner la question !


J-Paul - Utilisateur Ubuntu depuis 2006
Mantic 23.10 AMD FX et carte graphique AMD Radeon HD 6850

Hors ligne

#90 Le 13/02/2023, à 22:27

Dilem

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

ubuntu@ubuntu-SG3-130FR:~$ sudo find / -xdev -type f -name 60-libsane.rules
[sudo] Mot de passe de ubuntu : 
ubuntu@ubuntu-SG3-130FR:~$ sudo apt reinstall libsane
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  ubuntu-advantage-desktop-daemon wine-stable wine-stable-amd64
  wine-stable-i386:i386
Veuillez utiliser « sudo apt autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 2 réinstallés, 0 à enlever et 11 non mis à jour.
Il est nécessaire de prendre 4901 ko dans les archives.
Après cette opération, 0 o d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] 
Réception de :1 http://fr.archive.ubuntu.com/ubuntu focal-updates/main amd64 libsane amd64 1.0.29-0ubuntu5.2 [2405 kB]
Réception de :2 http://fr.archive.ubuntu.com/ubuntu focal-updates/main i386 libsane i386 1.0.29-0ubuntu5.2 [2496 kB]
4901 ko réceptionnés en 7s (674 ko/s)                                         
(Lecture de la base de données... 217477 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../libsane_1.0.29-0ubuntu5.2_amd64.deb ...
Dépaquetage de libsane:amd64 (1.0.29-0ubuntu5.2) sur (1.0.29-0ubuntu5.2) ...
Préparation du dépaquetage de .../libsane_1.0.29-0ubuntu5.2_i386.deb ...
Dépaquetage de libsane:i386 (1.0.29-0ubuntu5.2) sur (1.0.29-0ubuntu5.2) ...
Paramétrage de libsane:amd64 (1.0.29-0ubuntu5.2) ...
Paramétrage de libsane:i386 (1.0.29-0ubuntu5.2) ...
Traitement des actions différées (« triggers ») pour libc-bin (2.31-0ubuntu9.9) 
...
Traitement des actions différées (« triggers ») pour udev (245.4-4ubuntu3.19) ..
.
ubuntu@ubuntu-SG3-130FR:~$ 

  J'utilise "Numériseur de document"

Hors ligne

#91 Le 13/02/2023, à 22:39

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

purée je viens de réaliser que dans #83 et #87 le fichier 60-libsane1.rules est bien là contrairement à #66

après avoir supprimé les master.zip et dossier démonipuchxxxx de ton dossier perso

donc maintenant on peux réattaquer le script de demonipuch correctement
donne les retours de commandes contenu dans le fichier brprinter-installer.log du dossier demonipuch recréé

Dernière modification par eric63 (Le 13/02/2023, à 22:45)


Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#92 Le 14/02/2023, à 00:27

Dilem

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

ça donne ça !

ubuntu@ubuntu-SG3-130FR:~$ wget https://bitbucket.org/demonipuch/brprinter-installer/get/master.zip
--2023-02-13 23:20:32--  https://bitbucket.org/demonipuch/brprinter-installer/get/master.zip
Résolution de bitbucket.org (bitbucket.org)… 2406:da00:ff00::22e9:9f55, 2406:da00:ff00::22c5:2ef4, 2406:da00:ff00::22c0:3470, ...
Connexion à bitbucket.org (bitbucket.org)|2406:da00:ff00::22e9:9f55|:443… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 5496 (5,4K) [application/zip]
Enregistre : «master.zip.9»

master.zip.9        100%[===================>]   5,37K  --.-KB/s    ds 0s      

2023-02-13 23:20:40 (256 MB/s) - «master.zip.9» enregistré [5496/5496]

ubuntu@ubuntu-SG3-130FR:~$ unzip master.zip
Archive:  master.zip
90b26794b907fe906e67bf2aee0c664ac1cef64c
replace demonipuch-brprinter-installer-90b26794b907/.gitignore? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
 extracting: demonipuch-brprinter-installer-90b26794b907/.gitignore  
replace demonipuch-brprinter-installer-90b26794b907/brprinter-installer? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
  inflating: demonipuch-brprinter-installer-90b26794b907/brprinter-installer  
ubuntu@ubuntu-SG3-130FR:~$ cd demonipuch-brprinter-installer-*
ubuntu@ubuntu-SG3-130FR:~/demonipuch-brprinter-installer-90b26794b907$ sudo bash brprinter-installer
[sudo] Mot de passe de ubuntu : 
Entrez votre modèle : MFC-J4335DW
Sélectionner le type de connectivité : [0] USB - [1] Réseau
Entrez votre choix : 0
Téléchargement des pilotes de l'imprimante
 * Recherche des pilotes...                                              [ OK ] 
 * Téléchargement du paquet : mfcj4335dwpdrv-3.5.0-1.i386.deb...         [ OK ] 
 * Téléchargement du paquet : brscan5-1.2.11-0.amd64.deb...              [ OK ] 
 * Téléchargement du paquet : brscan-skey-0.3.1-2.amd64.deb...           [ OK ] 
 * Téléchargement du paquet : brother-udev-rule-type1-1.0.2-0.all.deb... [ OK ] 
Vérification des pré-requis
 * Mise à jour de la liste des paquets...                                [ OK ] 
 * Recherche du paquet 'multiarch-support' sur votre système...          [fail] 
 * Installation du paquet 'multiarch-support'...                         [fail] 
 * Recherche du paquet 'lib32stdc++6' sur votre système...               [ OK ] 
 * Recherche du paquet 'cups' sur votre système...                       [ OK ] 
 * Recherche du paquet 'sane-utils' sur votre système...                 [ OK ] 
 * Recherche du paquet 'libusb-0.1-4' sur votre système...               [ OK ] 
 * Recherche du dossier '/usr/share/cups/model' sur votre système...     [ OK ] 
 * Recherche du dossier '/var/spool/lpd' sur votre système...            [ OK ] 
Installation des pilotes
 * Installation du paquet : mfcj4335dwpdrv-3.5.0-1.i386.deb...           [ OK ] 
 * Installation du paquet : brscan5-1.2.11-0.amd64.deb...                [ OK ] 
 * Installation du paquet : brscan-skey-0.3.1-2.amd64.deb...             [ OK ] 
 * Installation du paquet : brother-udev-rule-type1-1.0.2-0.all.deb...   [ OK ] 
Configuration de l'imprimante
 * Recherche d'un fichier PPD sur votre système...                       [ OK ] 
 * Ajout de l'imprimante MFC-J4335DW...                                         lpadmin: Printer drivers are deprecated and will stop working in a future version of CUPS.
                                                                         [ OK ]
Configuration du scanner
 * Copie des librairies nécessaires...                                   [fail] 
No config binary found.

Hors ligne

#93 Le 14/02/2023, à 00:58

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

bon il y a une partie du script qui ne fonctionne plus a priori
est du fait du brscan5 ou du script modifié récemment par demonipuch je ne saurais le dire (je pense plus pour un défaut du script vu que sur une machine virtuelle avec un autre type d’imprimante et c’est pareil
j’ai envoyé un mail vers demonipuch pour voir si il lui est possible de donner un avis

en attendant tu peux réessayer le script de brother maintenant que la libsane est corrigée


Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#94 Le 14/02/2023, à 11:35

arverne73

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Bonjour,
@eric63 : j'ai examiné le script de demonipuch et effectivement, il y a 3 problèmes que j'ai résolu en le modifiant :
1 - le nom du fichier 60-libsane en version 20.04 dont on a parlé plus haut (non modifié)
2 - un nom de fichier brother-udev-rule-type1-1.0.0-1.all.deb noté en dur dans le script alors qu'il est devenu brother-udev-rule-type1-1.0.2-1.all.deb. Et c'est curieux parce qu'en début de script il a bien mis le nouveau nom…
3 - le brscan5 qui n'était pas pris en compte et en plus le chemin où se trouve ce fichier a changé !

Je vois que l'on ne peut pas mettre de pièce jointe ici. Je vais tâcher de créer un lien pour télécharger la version modifiée.


J-Paul - Utilisateur Ubuntu depuis 2006
Mantic 23.10 AMD FX et carte graphique AMD Radeon HD 6850

Hors ligne

#95 Le 14/02/2023, à 14:57

arverne73

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Voici donc un lien pour télécharger le script de demonipuch mis à jour : https://e1.pcloud.link/publink/show?cod … Hg4hCCpgV7

@Dilem : si vous voulez bien essayer avec ce script corrigé…
Si vous ne l'avez pas jeté, vous devriez toujours avoir à la raçine de votre dossier personnel, un dossier nommé demonipuch-brprinter-installer-*
Dans ce dossier, il y a un fichier brprinter-installer. Téléchargez la nouvelle version avec le lien ci-dessus et remplacer ce fichier brprinter-installer par le nouveau au même endroit.
Ensuite, relancer successivement les commandes :

cd demonipuch-brprinter-installer-*
chmod +x brprinter-installer
sudo bash brprinter-installer

Le script devrait s'exécuter sans histoire.

@eric63 : si tu as un contact avec demonipuch, merci de lui transmettre mes remarques du message précédent et le script modifié ; j'ai mis des commentaires avec mes modifications. Par contre, je n'ai pas fait la correction pour le fichier 60-libsane.rules ; je ne connais pas le langage bash ; je pourrais peut-être le faire mais il sera beaucoup plus efficace que moi !
Merci


J-Paul - Utilisateur Ubuntu depuis 2006
Mantic 23.10 AMD FX et carte graphique AMD Radeon HD 6850

Hors ligne

#96 Le 14/02/2023, à 15:28

arverne73

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Et finalement, le script amélioré pour aussi tenir compte du nom de fichier 60-libsane.rules différent en 20.04 (c'était assez simple) : https://e1.pcloud.link/publink/show?cod … 0lvysearfX

@Dilem : ne pas employer celui-ci puisque chez vous, le nom du fichier a été modifié manuellement.


J-Paul - Utilisateur Ubuntu depuis 2006
Mantic 23.10 AMD FX et carte graphique AMD Radeon HD 6850

Hors ligne

#97 Le 14/02/2023, à 15:29

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

en #92

après avoir supprimé les master.zip et dossier démonipuchxxxx de ton dossier perso

mais en #93

Enregistre : «master.zip.9»

ce qui veut dire que Dilem ne supprime pas les fichiers et dossiers recommandés qui s’accumulent au moins pour les master.zip(X) et sont inutiles

@arverne73 concernant le problème 2 que tu cites: il y a encore des paquets en version  1-1.0.0-1 suivant le type d’imprimantes et il n’est pas impossible que brother n’est pas fait la mise à jour pour des raisons x (chez moi le paquet pour mon imprimante est en 1-1.0.0-1 daté du 3/12/2022)
je te fournis le script fournit à cette date pour comparer

#!/bin/bash
# Script d'installation pour imprimantes Brother

. /lib/lsb/init-functions

MODEL_NAME=$1
USER=${SUDO_USER}
DIR=$(pwd)/$(dirname $0)
TEMP_DIR="${DIR}/packages"
CODENAME=$(lsb_release -cs)
ARCH=$(uname -m)
LOGFILE="${DIR}/brprinter-installer.log"
LIB_DIR="/usr/lib/${ARCH}-linux-gnu"
URL_INF="http://www.brother.com/pub/bsc/linux/infs"
URL_PKG="http://www.brother.com/pub/bsc/linux/packages"
UDEV_RULES="/lib/udev/rules.d/60-libsane1.rules"
UDEV_DEB="brother-udev-rule-type1-1.0.0-1.all.deb"
UDEV_DEB_URL="http://www.brother.com/pub/bsc/linux/dlf/${UDEV_DEB}"
BLUE="\\033[1;34m"
RED="\\033[1;31m"
RESETCOLOR="\\033[0;0m"

#########################
# PRÉPARATION DU SCRIPT #
#########################
function do_init_script() {
	# On vérifie qu'on lance le script en root
	if [[ ${EUID} != "0" ]]; then
		echo -e ${RED}"Vous devez lancer ce script en tant que root : sudo bash $0"${RESETCOLOR}
		exit 0
	fi
	# Si un log existe déjà on le renomme
	if [[ -e ${LOGFILE} ]]; then
		mv ${LOGFILE} ${LOGFILE}.old
	fi
	touch ${LOGFILE}
	# Si le premier argument est vide on demande le modèle de l'imprimante
	while [[ -z "${MODEL_NAME}" ]]; do
		read -p "Entrez votre modèle : " MODEL_NAME
	done
	MODEL_NAME=$(echo ${MODEL_NAME} | tr [a-z] [A-Z])
	# On demande comment est connectée l'imprimante
	echo "Sélectionner le type de connectivité : [0] USB - [1] Réseau"
	while [[ -z ${CONNECTION} ]]; do
		read -p "Entrez votre choix : "
		case $REPLY in
			0)
				CONNECTION="USB"
			;;
			1)
				CONNECTION="Réseau"
				echo -e ${RED}"Vous devriez vous assurer que votre imprimante possède une adresse IP fixe."${RESETCOLOR}
				echo -e ${RED}"Veuillez consulter le manuel de votre imprimante pour plus de détails : http://support.brother.com/g/b/productsearch.aspx?c=fr&lang=fr&content=ml"${RESETCOLOR}
				read -p "Entrez l'adresse IP de votre imprimante : " IP
				# On valide le format de l'adresse IP de l'imprimante
				IP=$(echo ${IP} | awk -F'[.]' '{w=$1+0; x=$2+0; y=$3+0; z=$4+0; print w"."x"."y"."z}')
			;;
		esac
	done
	echo "# Ubuntu Codename : ${CODENAME}" &>> ${LOGFILE}
	echo "# Architecture : ${ARCH}" &>> ${LOGFILE}
	echo "# Modèle de l'imprimante : ${MODEL_NAME}" &>> ${LOGFILE}
	echo "# Connexion : ${CONNECTION}" &>> ${LOGFILE}
	if [[ ${CONNECTION} == "Réseau " ]]; then
		echo "# Adresse IP : ${IP}" &>> ${LOGFILE}
	fi
}

##############################
# TÉLÉCHARGEMENT DES PILOTES #
##############################
function do_download_drivers() {
	echo -e ${BLUE}"Téléchargement des pilotes de l'imprimante"${RESETCOLOR}
	# On transforme le nom de l'imprimante
	log_action_begin_msg "Recherche des pilotes"
	PRINTER_NAME=$(echo ${MODEL_NAME} | sed -e 's/-//' | tr [a-z] [A-Z])
	# On construit l'URL du fichier contenant les informations
	PRINTER_INFO="${URL_INF}/${PRINTER_NAME}"
	# On vérifie l'URL
	if ! wget -q --spider ${PRINTER_INFO}; then
		log_action_end_msg 1
		echo " - Aucun pilote trouvé" &>> ${LOGFILE}
		echo -e ${RED}"Aucun pilote trouvé. Veuillez vérifier le modèle de votre imprimante ou visitez la page suivante http://support.brother.com/g/b/productsearch.aspx?c=us&lang=en&content=dl afin de télécharger les pilotes et les installer manuellement."${RESETCOLOR}
		exit 1
	fi
	# On vérifie que le fichier fournit les informations
	LNK=$(wget -q ${PRINTER_INFO} -O - | grep LNK - | cut -d\= -f2)
	if [[ ${LNK} ]]; then
		PRINTER_INFO="${URL_INF}/${LNK}"
		echo "# Link to : ${PRINTER_INFO}" &>> ${LOGFILE}
	fi
	echo "# Fichier d'informations : ${PRINTER_INFO}" &>> ${LOGFILE}
	# On récupère le nom des paquets disponibles
	PRINTER_LPD_DEB=$(wget -q ${PRINTER_INFO} -O - | grep PRN_LPD_DEB - | cut -d\= -f2)
	PRINTER_CUPS_DEB=$(wget -q ${PRINTER_INFO} -O - | grep PRN_CUP_DEB - | cut -d\= -f2)
	PRINTER_DRV_DEB=$(wget -q ${PRINTER_INFO} -O - | grep PRN_DRV_DEB - | cut -d\= -f2)
	SCANNER_DEB=$(wget -q ${PRINTER_INFO} -O - | grep SCANNER_DRV - | cut -d\= -f2)
	SCANNER_INFO="${URL_INF}/${SCANNER_DEB}.lnk"
	SCANKEY_DEB=$(wget -q ${PRINTER_INFO} -O - | grep SCANKEY_DRV - | cut -d\= -f2)
	SCANKEY_INFO="${URL_INF}/${SCANKEY_DEB}.lnk"
	# On récupère les pilotes du scanner en fonctionnement de l'architecture du système (32-bits ou 64-bits)
	case ${ARCH} in
		i*86)
			SCANNER_DRV_DEB=$(wget -q ${SCANNER_INFO} -O - | grep DEB32 | cut -d\= -f2)
			SCANKEY_DRV_DEB=$(wget -q ${SCANKEY_INFO} -O - | grep DEB32 | cut -d\= -f2)
		;;
		x86_64)
			SCANNER_DRV_DEB=$(wget -q ${SCANNER_INFO} -O - | grep DEB64 | cut -d\= -f2)
			SCANKEY_DRV_DEB=$(wget -q ${SCANKEY_INFO} -O - | grep DEB64 | cut -d\= -f2)
		;;
		*)
			echo "Architecture inconnue: ${ARCH}" &>> ${LOGFILE}
		;;
	esac
	# On ajoute la liste des pilotes trouvés au fichier de journalisation
	for PKG in ${PRINTER_LPD_DEB} ${PRINTER_CUPS_DEB} ${PRINTER_DRV_DEB} ${SCANNER_DRV_DEB} ${SCANKEY_DRV_DEB}; do
		if [[ ! -z ${PKG} ]]; then
			echo " - Paquet trouvé : ${PKG}" &>> ${LOGFILE}
		fi
	done
	log_action_end_msg 0
	# On crée le dossier de téléchargement des paquets
	if [[ ! -d ${TEMP_DIR} ]]; then
		mkdir ${TEMP_DIR}
	fi
	# On télécharge les pilotes trouvés
	for PKG in ${PRINTER_LPD_DEB} ${PRINTER_CUPS_DEB} ${PRINTER_DRV_DEB} ${SCANNER_DRV_DEB} ${SCANKEY_DRV_DEB}; do
		URL_DEB="${URL_PKG}/${PKG}"
		echo &>> ${LOGFILE}
		echo "# Téléchargement du paquet : ${PKG}" &>> ${LOGFILE}
		log_action_begin_msg "Téléchargement du paquet : ${PKG}"
		wget -cP ${TEMP_DIR} "${URL_DEB}" &>> ${LOGFILE}
		log_action_end_msg $?
	done
	# On télécharge le fichier pour udev pour les scanners
	if [[ ! -z ${SCANNER_DRV_DEB} ]]; then
		echo "# Téléchargement du paquet : brother-udev-rule-type1-1.0.0-1.all.deb" &>> ${LOGFILE}
		log_action_begin_msg "Téléchargement du paquet : ${UDEV_DEB}"
		wget -cP ${TEMP_DIR} "${UDEV_DEB_URL}" &>> ${LOGFILE}
		log_action_end_msg $?
	fi
}

###############################
# VERIFICATION DES PRÉ-REQUIS #
###############################
function do_check_prerequisites() {
	echo -e ${BLUE}"Vérification des pré-requis"${RESETCOLOR}
	echo "# Vérification des pré-requis" &>> ${LOGFILE}
	log_action_begin_msg "Mise à jour de la liste des paquets"
	apt-get update -qq
	log_action_end_msg $?
	# On vérifie que le paquet multiarch-support est installé et on l'installe le cas échéant (Ubuntu 64-bits seulement)
	if [[ "${ARCH}" == "x86_64" ]]; then
		log_action_begin_msg "Recherche du paquet 'multiarch-support' sur votre système"
		if dpkg -s multiarch-support &>/dev/null; then
			log_action_end_msg $?
			echo " - Paquet 'multiarch-support' installé" &>> ${LOGFILE}
		else
			log_action_end_msg 1
			echo " - Paquet 'multiarch-support' non installé" &>> ${LOGFILE}
			log_action_begin_msg "Installation du paquet 'multiarch-support'"
			echo "# Installation de 'multiarch-support'" &>> ${LOGFILE}
			apt-get install -qq multiarch-support &>> ${LOGFILE}
			log_action_end_msg $?
			echo " - Paquet 'multiarch-support' installé" &>> ${LOGFILE}
		fi
		log_action_begin_msg "Recherche du paquet 'lib32stdc++6' sur votre système"
		if dpkg -s lib32stdc++6 &>/dev/null; then
			log_action_end_msg $?
			echo " - Paquet 'lib32stdc++6' installé" &>> ${LOGFILE}
		else
			log_action_end_msg 1
			echo " - Paquet 'lib32stdc++6' non installé" &>> ${LOGFILE}
			log_action_begin_msg "Installation du paquet 'lib32stdc++6'"
			echo "# Installation de 'lib32stdc++6'" &>> ${LOGFILE}
			apt-get install -qq lib32stdc++6 &>> ${LOGFILE}
			log_action_end_msg $?
			echo " - Paquet 'lib32stdc++6' installé" &>> ${LOGFILE}
		fi
	fi
	# On vérifie que le paquet cups est installé et on l'installe le cas échéant
	log_action_begin_msg "Recherche du paquet 'cups' sur votre système"
	if dpkg -s cups &>/dev/null; then
		log_action_end_msg $?
		echo " - Paquet 'cups' installé" &>> ${LOGFILE}
	else
		log_action_end_msg 1
		log_action_begin_msg "Installation du paquet 'cups'"
		echo "# Installation de 'cups'" &>> ${LOGFILE}
		apt-get install -qq cups &>> ${LOGFILE}
		log_action_end_msg $?
		echo " - Paquet 'cups' installé" &>> ${LOGFILE}
	fi
	# Si un pilote pour le scanner a été trouvé on vérifie que sane-utils est installé
	if [[ ! -z ${SCANNER_DEB} ]]; then
		log_action_begin_msg "Recherche du paquet 'sane-utils' sur votre système"
		if dpkg -s sane-utils &>/dev/null; then
			log_action_end_msg $?
			echo " - Paquet 'sane-utils' installé" &>> ${LOGFILE}
		else
			log_action_end_msg 1
			echo " - Paquet 'sane-utils' non installé" &>> ${LOGFILE}
			log_action_begin_msg "Installation du paquet 'sane-utils'"
			echo "# Installation de 'sane-utils'" &>> ${LOGFILE}
			apt-get install -qq sane-utils &>> ${LOGFILE}
			log_action_end_msg $?
			echo " - Paquet 'sane-utils' installé" &>> ${LOGFILE}
		fi
		# On vérifie que libusb-0.1-4:i386 est installé
		if [[ ${CONNECTION} == "USB" ]]; then
			log_action_begin_msg "Recherche du paquet 'libusb-0.1-4' sur votre système"
			if dpkg -s libusb-0.1-4 &>/dev/null; then
				log_action_end_msg $?
				echo " - Paquet 'libusb-0.1-4' installé" &>> ${LOGFILE}
			else
				log_action_end_msg 1
				echo " - Paquet 'libusb-0.1-4' non installé" &>> ${LOGFILE}
				log_action_begin_msg "Installation du paquet 'libusb-0.1-4'"
				echo "# Installation de 'libusb-0.1-4'" &>> ${LOGFILE}
				apt-get install -qq libusb-0.1-4 &>> ${LOGFILE}
				log_action_end_msg $?
				echo " - Paquet 'libusb-0.1-4' installé" &>> ${LOGFILE}
			fi
		fi
	fi
	# On vérifie que le paquet csh est installé et on l'installe le cas échéant (uniquement pour certaines imprimantes)
	for i in DCP-110C DCP-115C DCP-117C DCP-120C DCP-310CN DCP-315CN DCP-340CW FAX-1815C FAX-1820C FAX-1835C FAX-1840C FAX-1920CN FAX-1940CN FAX-2440C MFC-210C MFC-215C MFC-3220C MFC-3240C MFC-3320CN MFC-3340CN MFC-3420C MFC-3820CN MFC-410CN MFC-420CN MFC-425CN MFC-5440CN MFC-5840CN MFC-620CN MFC-640CW MFC-820CW; do
		if [[ ${MODEL_NAME} == "$i" ]]; then
			log_action_begin_msg "Recherche du paquet 'csh' sur votre système"
			if [[ ! -x /bin/csh ]]; then
				log_action_end_msg 1
				log_action_begin_msg "Installation du paquet 'csh'"
				echo "# Installation du paquet 'csh'" &>> ${LOGFILE}
				apt-get install -qq csh &>> ${LOGFILE}
				log_action_end_msg $?
				echo " - Paquet 'csh' installé" &>> ${LOGFILE}
			else
				log_action_end_msg $?
			fi
		fi
	done
	# On vérifie que le dossier /usr/share/cups/model existe et on le crée le cas échéant
	log_action_begin_msg "Recherche du dossier '/usr/share/cups/model' sur votre système"
	if [[ -d /usr/share/cups/model ]]; then
		log_action_end_msg $?
	else
		log_action_end_msg 1
		log_action_begin_msg "Creation du dossier '/usr/share/cups/model'"
		mkdir -p /usr/share/cups/model
		log_action_end_msg $?
	fi
	# On vérifie que le dossier /var/spool/lpd existe et on le crée le cas échéant
	log_action_begin_msg "Recherche du dossier '/var/spool/lpd' sur votre système"
	if [[ -d /var/spool/lpd ]]; then
		log_action_end_msg $?
	else
		log_action_end_msg 1
		log_action_begin_msg "Creation du dossier '/var/spool/lpd'"
		mkdir -p /var/spool/lpd
		log_action_end_msg $?
	fi
	# On vérifie que le lien symbolique /etc/init.d/lpd existe et on le crée le cas échéant (uniquement pour certaines imprimantes)
	for i in DCP-1000 DCP-1400 DCP-8020 DCP-8025D DCP-8040 DCP-8045D DCP-8060 DCP-8065DN FAX-2850 FAX-2900 FAX-3800 FAX-4100 FAX-4750e FAX-5750e HL-1030 HL-1230 HL-1240 HL-1250 HL-1270N HL-1430 HL-1440 HL-1450 HL-1470N HL-1650 HL-1670N HL-1850 HL-1870N HL-5030 HL-5040 HL-5050 HL-5070N HL-5130 HL-5140 HL-5150D HL-5170DN HL-5240 HL-5250DN HL-5270DN HL-5280DW HL-6050 HL-6050D MFC-4800 MFC-6800 MFC-8420 MFC-8440 MFC-8460N MFC-8500 MFC-8660DN MFC-8820D MFC-8840D MFC-8860DN MFC-8870DW MFC-9030 MFC-9070 MFC-9160 MFC-9180 MFC-9420CN MFC-9660 MFC-9700 MFC-9760 MFC-9800 MFC-9860 MFC-9880; do
		if [[ ${MODEL_NAME} == "$i" ]]; then
			log_action_begin_msg "Recherche du lien symbolique '/etc/init.d/lpd ~> /etc/init.d/cups' sur votre système"
			if [[ -L /etc/init.d/lpd ]]; then
				log_action_end_msg 0
			else
				log_action_end_msg 1
				log_action_begin_msg "Creation du lien symbolique '/etc/init.d/lpd ~> /etc/init.d/cups'"
				ln -s /etc/init.d/cups /etc/init.d/lpd
				# On crée un lien symbolique vers cups.service si systemd est utilisé
				if [[ -L /sbin/init ]]; then
					ln -s /lib/systemd/system/cups.service /lib/systemd/system/lpd.service
					systemd-daemon reload
				fi
				log_action_end_msg $?
			fi
		fi
	done
}

############################
# INSTALLATION DES PAQUETS #
############################
function do_install_drivers() {
	echo -e ${BLUE}"Installation des pilotes"${RESETCOLOR}
	for PKG in ${PRINTER_LPD_DEB} ${PRINTER_CUPS_DEB} ${PRINTER_DRV_DEB} ${SCANNER_DRV_DEB} ${SCANKEY_DRV_DEB}; do
		log_action_begin_msg "Installation du paquet : ${PKG}"
		echo &>> ${LOGFILE}
		echo "# Installation du paquet : ${PKG}" &>> ${LOGFILE}
		dpkg -i --force-all "${TEMP_DIR}/${PKG}" &>> ${LOGFILE}
		log_action_end_msg $?
	done
	if [[ ! -z ${SCANNER_DRV_DEB} ]]; then
		log_action_begin_msg "Installation du paquet : ${UDEV_DEB}"
		echo &>> ${LOGFILE}
		echo "# Installation du paquet : ${UDEV_DEB}" &>> ${LOGFILE}
		dpkg -i --force-all "${TEMP_DIR}/${UDEV_DEB}" &>> ${LOGFILE}
		log_action_end_msg $?
	fi
}

#################################
# CONFIGURATION DE L'IMPRIMANTE #
#################################
function do_configure_printer() {
	echo -e ${BLUE}"Configuration de l'imprimante"${RESETCOLOR}
	# On recherche un fichier ppd
	log_action_begin_msg "Recherche d'un fichier PPD sur votre système"
	echo &>> ${LOGFILE}
	echo "# Recherche d'un fichier PPD" &>> ${LOGFILE}
	for PKG in ${PRINTER_CUPS_DEB} ${PRINTER_DRV_DEB}; do
		PPD_FILE=$(dpkg --contents ${TEMP_DIR}/${PKG} | grep ppd | awk '{print $6}' | sed 's/^.//g')
	done
	if [[ -z "${PPD_FILE}" ]]; then
		for FILE in $(find /usr/share/cups/model -type f); do
			if [[ $(grep -i Brother ${FILE} | grep -E "(${MODEL_NAME}|${PRINTER_NAME})") ]]; then
				PPD_FILE=${FILE}
			fi
		done
	fi
	echo " - Fichier PPD : ${PPD_FILE}" &>> ${LOGFILE}
	log_action_end_msg 0
	# On ajoute une nouvelle imprimante
	log_action_begin_msg "Ajout de l'imprimante ${MODEL_NAME}"
	echo &>> ${LOGFILE}
	echo "# Ajout de l'imprimante ${MODEL_NAME}" &>> ${LOGFILE}
	echo " - Backup du fichier /etc/cups/printers.conf.O" &>> ${LOGFILE}
	cp /etc/cups/printers.conf.O ${DIR} &>> ${LOGFILE}
	echo " - Arret du service CUPS" &>> ${LOGFILE}
	systemctl stop cups &>> ${LOGFILE}
	echo " - Restauration du fichier printers.conf" &>> ${LOGFILE}
	cp ${DIR}/printers.conf.O /etc/cups/printers.conf &>> ${LOGFILE}
	echo " - Redémarrage du service CUPS" &>> ${LOGFILE}
	systemctl restart cups &>> ${LOGFILE}
	case ${CONNECTION} in
	"USB")
		sleep 2 && lpadmin -p "${MODEL_NAME}" -E -v usb://dev/usb/lp0 -P "${PPD_FILE}"
	;;
	"Réseau")
		sleep 2 && lpadmin -p "${MODEL_NAME}" -E -v lpd://"${IP}"/binary_p1 -P "${PPD_FILE}"
	;;
	esac
	log_action_end_msg $?
	echo " - Restauration du fichier printers.conf.O" &>> ${LOGFILE}
	cp ${DIR}/printers.conf.O /etc/cups/printers.conf.O &>> ${LOGFILE}
}

############################
# CONFIGURATION DU SCANNER #
############################
function do_configure_scanner() {
	if [[ ! -z ${SCANNER_DEB} ]]; then
		echo -e ${BLUE}"Configuration du scanner"${RESETCOLOR}
		echo &>> ${LOGFILE}
		echo "# Configuration du scanner" &>> ${LOGFILE}
		if [[ ${CONNECTION} == "USB" ]]; then
			# Installation du paquet brother-udev
			dpkg -i --force-all "${TEMP_DIR}/brother-udev-rule-type1-1.0.0-1.all.deb" &>> ${LOGFILE}
			# On ajoute une entrée au fichier udev
			if [[ ! $(grep 'ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"' ${UDEV_RULES}) ]]; then
				echo 'Adding ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes" to ${UDEV_RULES}' &>> ${LOGFILE}
				sed -i '/LABEL="libsane_usb_rules_begin"/a\
				\n# Brother\nATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"' ${UDEV_RULES}
			else
				echo "Règle udev trouvée dans le fichier ${UDEV_RULES}" &>> ${LOGFILE}
			fi
			# On recharge les règles udev
			udevadm control --reload
		elif [[ ${CONNECTION} == "Réseau" ]]; then
			log_action_begin_msg "Configuration du scanner réseau"
			if [[ -x /usr/bin/brsaneconfig ]]; then
				brsaneconfig -a name="SCANNER" model="${MODEL_NAME}" ip="${IP}" &>> ${LOGFILE}
			elif [[ -x /usr/bin/brsaneconfig2 ]]; then
				brsaneconfig2 -a name="SCANNER" model="${MODEL_NAME}" ip="${IP}" &>> ${LOGFILE}
			elif [[ -x /usr/bin/brsaneconfig3 ]]; then
				brsaneconfig3 -a name="SCANNER" model="${MODEL_NAME}" ip="${IP}" &>> ${LOGFILE}
			elif [[ -x /usr/bin/brsaneconfig4 ]]; then
				sed -i '/Support Model/a\
0x029a, 117, 1, "MFC-8690DW", 133, 4\
0x0279, 14, 2, "DCP-J525W"\
0x027b, 13, 2, "DCP-J725DW"\
0x027d, 13, 2, "DCP-J925DW"\
0x027f, 14, 1, "MFC-J280W"\
0x028f, 13, 1, "MFC-J425W"\
0x0281, 13, 1, "MFC-J430W"\
0x0280, 13, 1, "MFC-J435W"\
0x0282, 13, 1, "MFC-J625DW"\
0x0283, 13, 1, "MFC-J825DW"\
0x028d, 13, 1, "MFC-J835DW"' /opt/brother/scanner/brscan4/Brsane4.ini
				brsaneconfig4 -a name=SCANNER model=${MODEL_NAME} ip=${IP} &>> ${LOGFILE}
			fi
			log_action_end_msg $?
		fi
		# On copie les librairies
		if [[ ${ARCH} == "x86_64" ]] && [[ -d ${LIB_DIR} ]]; then
			log_action_begin_msg "Copie des librairies nécessaires"
			if [[ -e /usr/bin/brsaneconfig ]]; then
				cd ${LIB_DIR}
				cp --force /usr/lib64/libbrcolm.so.1.0.1 .
				ln -sf libbrcolm.so.1.0.1 libbrcolm.so.1
				ln -sf libbrcolm.so.1 libbrcolm.so
				cp --force /usr/lib64/libbrscandec.so.1.0.0 ${LIB_DIR}
				ln -sf libbrscandec.so.1.0.0 libbrscandec.so.1
				ln -sf libbrscandec.so.1 libbrscandec.so
				cd ${LIB_DIR}/sane
				cp --force /usr/lib64/sane/libsane-brother.so.1.0.7 .
				ln -sf libsane-brother.so.1.0.7 libsane-brother.so.1
				ln -sf libsane-brother.so.1 libsane-brother.so
				log_action_end_msg 0
			elif [[ -e /usr/bin/brsaneconfig2 ]]; then
				cd ${LIB_DIR}
				cp --force /usr/lib64/libbrscandec2.so.1.0.0 .
				ln -sf libbrscandec2.so.1.0.0 libbrscandec2.so.1
				ln -sf libbrscandec2.so.1 libbrscandec2.so
				cp --force /usr/lib64/libbrcolm2.so.1.0.1 .
				ln -sf libbrcolm2.so.1.0.1 libbrcolm2.so.1
				ln -sf libbrcolm2.so.1 libbrcolm2.so
				cd ${LIB_DIR}/sane
				cp --force /usr/lib64/sane/libsane-brother2.so.1.0.7 .
				ln -sf libsane-brother2.so.1.0.7 libsane-brother2.so.1
				ln -sf libsane-brother2.so.1 libsane-brother2.so
				log_action_end_msg 0
			elif [[ -e /usr/bin/brsaneconfig3 ]]; then
				cd ${LIB_DIR}
				cp --force /usr/lib64/libbrscandec3.so.1.0.0 .
				ln -sf libbrscandec3.so.1.0.0 libbrscandec3.so.1
				ln -sf libbrscandec3.so.1 libbrscandec3.so
				cd ${LIB_DIR}/sane
				cp --force /usr/lib64/sane/libsane-brother3.so.1.0.7 .
				ln -sf libsane-brother3.so.1.0.7 libsane-brother3.so.1
				ln -sf libsane-brother3.so.1 libsane-brother3.so
				log_action_end_msg 0
			elif [[ -e /usr/bin/brsaneconfig4 ]]; then
				cd ${LIB_DIR}/sane
				cp --force /usr/lib64/sane/libsane-brother4.so.1.0.7 .
				ln -sf libsane-brother4.so.1.0.7 libsane-brother4.so.1
				ln -sf libsane-brother4.so.1 libsane-brother4.so
				log_action_end_msg 0
			else
				log_action_end_msg 1
				echo -e ${RED}"No config binary found."${RESETCOLOR}
			fi
		fi
	fi
}

#################
# FIN DU SCRIPT #
#################
function do_clean() {
	# On supprime le fichier printers.conf.O
	if [[ -e ${DIR}/printers.conf.O ]]; then
		rm ${DIR}/printers.conf.O &>> ${LOGFILE}
	fi
	# On réattribue les droits des dossiers/fichiers crées à l'utilisateur
	chown -R ${USER}: ${TEMP_DIR} ${LOGFILE}
	exit 0
}

do_init_script
do_download_drivers
do_check_prerequisites
do_install_drivers
do_configure_printer
do_configure_scanner
do_clean

Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#98 Le 14/02/2023, à 17:37

Dilem

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

J'ai ça:

ubuntu@ubuntu-SG3-130FR:~$ cd demonipuch-brprinter-installer-*
ubuntu@ubuntu-SG3-130FR:~/demonipuch-brprinter-installer-90b26794b907$ chmod +x brprinter-installer
ubuntu@ubuntu-SG3-130FR:~/demonipuch-brprinter-installer-90b26794b907$ sudo bash brprinter-installer
[sudo] Mot de passe de ubuntu : 
Entrez votre modèle : MFC-J4335DW
Sélectionner le type de connectivité : [0] USB - [1] Réseau
Entrez votre choix : 0
Téléchargement des pilotes de l'imprimante
 * Recherche des pilotes...                                              [ OK ] 
 * Téléchargement du paquet : mfcj4335dwpdrv-3.5.0-1.i386.deb...         [ OK ] 
 * Téléchargement du paquet : brscan5-1.2.11-0.amd64.deb...              [ OK ] 
 * Téléchargement du paquet : brscan-skey-0.3.1-2.amd64.deb...           [ OK ] 
 * Téléchargement du paquet : brother-udev-rule-type1-1.0.2-0.all.deb... [ OK ] 
Vérification des pré-requis
 * Mise à jour de la liste des paquets...                                [ OK ] 
 * Recherche du paquet 'multiarch-support' sur votre système...          [fail] 
 * Installation du paquet 'multiarch-support'...                         [fail] 
 * Recherche du paquet 'lib32stdc++6' sur votre système...               [ OK ] 
 * Recherche du paquet 'cups' sur votre système...                       [ OK ] 
 * Recherche du paquet 'sane-utils' sur votre système...                 [ OK ] 
 * Recherche du paquet 'libusb-0.1-4' sur votre système...               [ OK ] 
 * Recherche du dossier '/usr/share/cups/model' sur votre système...     [ OK ] 
 * Recherche du dossier '/var/spool/lpd' sur votre système...            [ OK ] 
Installation des pilotes
 * Installation du paquet : mfcj4335dwpdrv-3.5.0-1.i386.deb...           [ OK ] 
 * Installation du paquet : brscan5-1.2.11-0.amd64.deb...                [ OK ] 
 * Installation du paquet : brscan-skey-0.3.1-2.amd64.deb...             [ OK ] 
 * Installation du paquet : brother-udev-rule-type1-1.0.2-0.all.deb...   [ OK ] 
Configuration de l'imprimante
 * Recherche d'un fichier PPD sur votre système...                       [ OK ] 
 * Ajout de l'imprimante MFC-J4335DW...                                         lpadmin: Printer drivers are deprecated and will stop working in a future version of CUPS.
                                                                         [ OK ]
Configuration du scanner
 * Copie des librairies nécessaires...                                   [fail] 
No config binary found.
ubuntu@ubuntu-SG3-130FR:~/demonipuch-brprinter-installer-90b26794b907$ 

Hors ligne

#99 Le 14/02/2023, à 19:13

eric63

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

Configuration du scanner
 * Copie des librairies nécessaires...                                   [fail] 
No config binary found.

ça c’est un problème de libs
comme dit dans la doc
https://doc.ubuntu-fr.org/imprimantes_b … du_scanner

cp -R /usr/lib64/* /usr/lib/x86_64-linux-gnu

Kubuntu 23.10 - WAYLAND- 64 bits + backports bêta = plasma 5.27.10 KDE 5.112.0 Qt 5.15.10 et noyau 6.5.0-27  4x intel i5-4570 3.2Ghz 12Go nvidia GTX 1060 6GB 3écrans
Comment installer une brother avec le script de demonipuch

J’utilise le clavier french AFNOR de chez LDLC c‘est fort

Hors ligne

#100 Le 14/02/2023, à 19:23

arverne73

Re : Imprimante Brother MFC-J4335DW brscan5 (Résolu)

@eric63 : saches que je n'ai pas modifié le nom du fichier en début de script ! Je viens de vérifier dans le master.zip : c'est bien le nouveau nom qui est indiqué. Cela veut dire que demonipuch a modifié son script depuis décembre. Bonne nouvelle, il suit toujours. Par contre, en début de section 'Configuration du scanner', il avait laissé l'ancien nom alors que le script télécharge le nouveau. Et je viens de vérifier : l'ancien est toujours téléchargeable chez Brother.

Mais j'ai fait une bourde : j'ai fait une faute en corrigeant le nom au début de la section 'Configuration du scanner'. Je viens de corriger.

@Dilem : on voit qu'il y a 2 premières lignes [fail] dans les réponses ; a priori normal : ces fichiers transitoires ne sont présents qu'en 18.04.
Par contre, la fin (Copie des librairies) est toujours en échec et c'est là que j'ai ajouté la partie pour brscan5. Curieux.

Pouvez-vous télécharger à nouveau mon script que je viens de corriger à https://e1.pcloud.link/publink/show?cod … Hg4hCCpgV7
Ensuite, à la racine de votre dossier personnel, avez-vous un seul dossier demonipuch-brprinter-installer-* ? S'il y en a plusieurs, il faut les supprimer sauf un ! Et c'est dans celui-là qu'il faut remplacer brprinter-installer par le mien.
Ensuite, relancer les 3 commandes précédentes. Merci.

[Ajout] : Par sécurité, je viens d'utiliser mon script modifié sur une autre machine virtuelle en 22.04 : il a bien installé, même les librairies à la fin.

Dernière modification par arverne73 (Le 14/02/2023, à 20:18)


J-Paul - Utilisateur Ubuntu depuis 2006
Mantic 23.10 AMD FX et carte graphique AMD Radeon HD 6850

Hors ligne