1 (09.07.2012 23:14:51 отредактировано zenon)

Что-то никак не заведу его на x86_64 Gentoo

# eix cndrvcups
[i] net-print/cndrvcups-capt
     Available versions:  2.00-r2^m[1] (~)2.00-r2^m[2] (~)2.20-r1^m[1] {{cngplp gtk}}
     Installed versions:  2.20-r1^m[1](21:57:08 09.07.2012)(cngplp gtk)
     Homepage:            http://www.canon.com/
     Description:         Canon CUPS Capt driver

[i] net-print/cndrvcups-common
     Available versions:  2.00-r2^m[1] 2.00-r2^m[2] (~)2.20-r1[1] {{-cngplp}}
     Installed versions:  2.20-r1[1](21:55:52 09.07.2012)(cngplp)
     Homepage:            http://www.canon.com/
     Description:         Common files for the Canon CUPS Capt driver

* net-print/cndrvcups-lb [1]
     Available versions:  (~)2.20-r1 {{cngplp}}
     Homepage:            http://www.canon.com/
     Description:         Canon UFR II / LIPSLX Printer Driver

[1] "calculate" layman/calculate
[2] "daks" layman/daks

Нашёл 3 совпадений.
# layman -a calculate
$ emerge --ask cndrvcups-common cndrvcups-capt

Дальше по идее:

# /usr/sbin/lpadmin -p LBP6000 -P /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd -v ccp://localhost:59687 -E
# /usr/sbin/ccpdadmin -p -o /dev/usb/lp0

Файл /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd на месте.
Застрял тут:

# /usr/sbin/lpadmin -p LBP6000 -P /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd -v ccp://localhost:59687 -E
lpadmin: Bad device-uri scheme "ccp".
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

2

в порядке бреда: почему не через web-морду на http://localhost:631/
если нет гуйни, то можно через lin(ks|x)

95% процентов проблем находятся между клавиатурой и стулом.

3 (09.07.2012 23:54:29 отредактировано zenon)

Fat-Zer пишет:

почему не через web-морду

Не выходит...
Я этот принтер на 64-х битной не пробовал, думаю что из-за этого трабл.
На бунте x86 - 12.04 он нормально заводится.
скрипт ссылка
Сам скрипт:

#!/bin/bash
################################################################################
# This script will help you install Canon CAPT Printer Driver 2.00 for         #
# Debian-based Linux systems using the 32bit or 64bit OS architecture.         #
#                                                                              #
# @author Radu Cotescu                                                         #
# @version 2.4                                                                 #
#                                                                              #
# For more details please visit:                                               #
#   http://radu.cotescu.com/?p=1194                                            #
################################################################################
param1="$1"
param2="$2"
param_no="$#"
args=$@

WORKSPACE="`dirname $0`/DEBS"
PRINTER_MODEL=""
PRINTER_SMODEL=""
ARCH=""
IP_REGEX="^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$"
IP=""

models="LBP-1120 LBP-1210 LBP2900 LBP3000 LBP3010 LBP3018 LBP3050 LBP3100
LBP3108 LBP3150 LBP3200 LBP3210 LBP3250 LBP3300 LBP3310 LBP3500 LBP5000 LBP5050
LBP5100 LBP5300 LBP6000 LBP6018 LBP6300dn LBP7200C LBP9100Cdn"

usage_message="This script will help you install Canon CAPT Printer Driver \
2.00 for Debian-based Linux systems using the 32-bit or 64-bit OS architecture.\n"

options="PRINTER_MODEL can be any of the following:\n$models\n\n\
If an IP is supplied the printer will be accessed from the network at that address.\
 This setting is valid only for printers that support network printing."

display_usage() {
    echo -e "Usage: ./`basename $0` PRINTER_MODEL [IP]\n"
    echo -e $usage_message | fold -s
    echo -e $options | fold -s
}

check_superuser() {
    if [[ $USER != "root" ]]; then
        echo "This script must be run with superuser privileges!"
        display_usage
        exit 1
    fi
}

check_args() {
    if [[ $param_no -eq 1 ]]; then
        case $param1 in
            "-h" | "--help")
                display_usage
                exit 0
            ;;
            *)
            for model in $models; do
                if [[ $param1 == $model ]]; then
                    PRINTER_MODEL=$param1
                    break;
                fi
            done
            check_printer_model
        esac
    elif [[ $param_no -eq 2 ]]; then
        for model in $models; do
            if [[ $param1 == $model ]]; then
                PRINTER_MODEL=$param1
                break;
            fi
        done
        check_printer_model
        IP=`echo $param2 | egrep -e "$IP_REGEX"`
        if [[ -z $IP ]]; then
            echo "Invalid IP!"
            exit 1
        fi
    else
        echo "Wrong parameter number!"
        display_usage
        exit 1
    fi
}

check_printer_model() {
    if [[ -z $PRINTER_MODEL ]]; then
        echo -e "Error: Unkown printer model!\n"
        display_usage
        exit 1
    fi
    case $PRINTER_MODEL in
    "LBP6000" | "LBP6018")
        PRINTER_SMODEL="LBP6018"
    ;;
    "LBP3100" | "LBP3108" | "LBP3150")
        PRINTER_SMODEL="LBP3150"
    ;;
    "LBP3010" | "LBP3018" | "LBP3050")
        PRINTER_SMODEL="LBP3050"
    ;;
    "LBP-1210")
        PRINTER_SMODEL="LBP1210"
    ;;
    "LBP-1120")
        PRINTER_SMODEL="LBP1120"
    ;;
    "LBP6300dn")
        PRINTER_SMODEL="LBP6300"
    ;;
    "LBP9100Cdn")
        PRINTER_SMODEL="LBP9100C"
    ;;
    *)
        PRINTER_SMODEL=$PRINTER_MODEL
    esac
}

packageError() {
    if [[ $1 -ne 0 ]]; then
        echo "I am unable to install the before mentioned package..."
        echo "Please install the required package and rerun the script..."
        exit 1
    fi
}

check_requirements_for_release() {
    release="`lsb_release -r | awk '{ print $2 }'`"
    lib=6
    if [[ "$release" == "9.10" ]]; then
        lib=5
    fi
    check_lib=`dpkg-query -W -f='${Status} ${Version}\n' libstdc++${lib} 2> /dev/null | egrep "^install"`
    if [[ -z $check_lib ]]; then
        echo "Installing libstdc++${lib} package..."
        apt-get -y install libstdc++${lib}
        packageError $?
    else echo "You do have the libstdc++${lib} package..."
    fi
}

install_driver() {
    machine=`uname -m`
    if [[ $machine == "x86_64" ]]; then
        ARCH="amd64"
    else
        ARCH="i386"
    fi
    cndrv_common="cndrvcups-common_2.20-1_${ARCH}.deb"
    cndrv_capt="cndrvcups-capt_2.20-1_${ARCH}.deb"
    echo "Installing driver for model: $PRINTER_MODEL"
    echo "using file: CNCUPS${PRINTER_SMODEL}CAPTK.ppd"
    echo "Installing packages..."
    check_requirements_for_release
    if [[ -e $WORKSPACE/$ARCH/$cndrv_common ]]; then
        dpkg -i $WORKSPACE/$ARCH/$cndrv_common
    else
        echo "$cndrv_common is missing from $WORKSPACE/$ARCH folder!"
        exit 1
    fi
    if [[ -e $WORKSPACE/$ARCH/$cndrv_capt ]]; then
        dpkg -i $WORKSPACE/$ARCH/$cndrv_capt
    else
        echo "$cndrv_capt is missing from $WORKSPACE/$ARCH folder!"
        exit 1
    fi
    echo "Modifying the default /etc/init.d/ccpd file..."
    cp -f $WORKSPACE/ccpd /etc/init.d/
    chmod a+x /etc/init.d/ccpd
    echo "Restarting CUPS..."
    /etc/init.d/cups restart
    echo "Setting the printer for CUPS..."
    /usr/sbin/lpadmin -p $PRINTER_MODEL -P /usr/share/cups/model/CNCUPS${PRINTER_SMODEL}CAPTK.ppd -v ccp://localhost:59687 -E
    echo "Setting the printer for CAPT..."
    if [[ -z $IP ]]; then
        /usr/sbin/ccpdadmin -p $PRINTER_MODEL -o /dev/usb/lp0
    else
        /usr/sbin/ccpdadmin -p $PRINTER_MODEL -o "net:$IP"
    fi
    echo "Setting CAPT to boot with the system..."
    update-rc.d ccpd defaults 50
    echo "Starting ccpd..."
    /etc/init.d/ccpd start
    sleep 2
    echo "Checking status:"
    /etc/init.d/ccpd status
    echo -e "\nPower on your printer! :)"
    echo "Go to System - Administration - Printing and do the following:"
    echo "  1. disable $PRINTER_MODEL-2 but do not delete it since Ubuntu will recreate it automatically;"
    echo "  2. set $PRINTER_MODEL as your default printer;"
    echo "  3. reboot your machine and print a test page."
}

exit_message() {
    echo -e "Script author: \n\tRadu Cotescu"
    echo -e "\thttp://radu.cotescu.com"
}

check_args
check_superuser
install_driver
exit_message
exit 0

В принципе он тоже что я в первом посте написал делает + свой init скрипт, такой:

#!/bin/sh
# startup script for Canon Printer Daemon for CUPS (ccpd)
# Modified for Debian GNU/Linux
### BEGIN INIT INFO
# Provides:       ccpd
# Required-Start: 
# Required-Stop:
# Default-Start:  2 3 4 5
# Default-Stop:   1
# Short-Description: Canon Printer Daemon for CUPS
### END INIT INFO


DAEMON=/usr/sbin/ccpd
LOCKFILE=/var/lock/subsys/ccpd
NAME=ccpd
DESC="Canon Printer Daemon for CUPS"

test -f $DAEMON || exit 0

. /lib/lsb/init-functions

export PATH=$PATH:/usr/local/sbin:/usr/local/bin

ccpd_start ()
{
    log_begin_msg "Starting $DESC: $NAME"
        start-stop-daemon --start --quiet --oknodo --exec ${DAEMON}
        log_end_msg $?
}

ccpd_stop ()
{
        log_begin_msg "Stopping $DESC: $NAME"
    start-stop-daemon --stop --quiet --oknodo --signal 15 --exec ${DAEMON}
        log_end_msg $?
}


case $1 in

    start)
        ccpd_start
        ;;
        
    stop)
        ccpd_stop
        ;;
    
    status)
            echo "$DESC: $NAME:" `pidof $NAME`
        ;;
    
    restart)
            log_begin_msg "Restarting $DESC: $NAME"
        ccpd_stop
            sleep 2
        ccpd_start
            log_end_msg $?
        ;;
    
    *)
            echo "Usage: ccpd {start|stop|restart|status}"
        exit 1
        ;;
esac
exit 0
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

4

newzenon пишет:

/usr/sbin/lpadmin -p LBP6000 -P /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd -v ccp://localhost:59687 -E

у меня отрабатывает нормально - в web-морде принтер появляется...

 Консоль:
goblin src3 # emerge -pqv cups
[ebuild   R   ] net-print/cups-1.5.2-r4  USE="X acl avahi dbus filters java jpeg ldap pam png ssl threads tiff usb -debug -gnutls -kerberos -perl -python -slp -static-libs -xinetd" LINGUAS="ru -da -de -es -eu -fi -fr -id -it -ja -ko -nl -no -pl -pt -pt_BR -sv -zh -zh_TW"

95% процентов проблем находятся между клавиатурой и стулом.

5

Пересоберу.

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

6

# emerge -pqv cndrvcups-common cndrvcups-capt cups
[ebuild   R   ] net-print/cups-1.5.3  USE="X acl dbus filters jpeg pam png python ssl threads tiff usb -avahi -debug -gnutls -java -kerberos -ldap -perl -slp -static-libs -systemd -xinetd" LINGUAS="ru -da -de -es -eu -fi -fr -hu -id -it -ja -ko -nl -no -pl -pt -pt_BR -sv -zh -zh_TW" 
[ebuild   R   ] net-print/cndrvcups-common-2.20-r1  USE="-cngplp" 
[ebuild   R   ] net-print/cndrvcups-capt-2.20-r1  USE="gtk -cngplp" 
# /usr/sbin/lpadmin -p LBP6000 -P /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd -v ccp://localhost:59687 -E
# /usr/sbin/ccpdadmin -p LBP6000 -o /dev/usb/lp0

 CUPS_ConfigPath = /etc/cups/
 LOG Path        = None
 UI Port         = 59787

 Entry Num  : Spooler    : Backend    : FIFO path        : Device Path     : Status 
 ----------------------------------------------------------------------------
     [0]    : LBP6000     :          :                     : /dev/usb/lp0     : New!!

Теперь с init разобраться:

# /etc/init.d/ccpd start
 * Starting Canon Printer Daemon for CUPS: ccpd ...
 * start-stop-daemon: /usr/sbin/ccpd is already running                                                                                         [ !! ]
 * ERROR: ccpd failed to start
# /etc/init.d/ccpd stop
 * WARNING: ccpd is already stopped
# /etc/init.d/ccpd start
 * Starting Canon Printer Daemon for CUPS: ccpd ...
 * start-stop-daemon: /usr/sbin/ccpd is already running                                                                                         [ !! ]
 * ERROR: ccpd failed to start
# /etc/init.d/ccpd restart
 * Starting Canon Printer Daemon for CUPS: ccpd ...
 * start-stop-daemon: /usr/sbin/ccpd is already running                                                                                         [ !! ]
 * ERROR: ccpd failed to start

Не пойму я махинаций с подключением правильно так:

/usr/sbin/lpadmin -p LBP6000 -P /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd -v ccp://localhost:59687 -E

или так:

/usr/sbin/lpadmin -p LBP6000 -P /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

7

newzenon пишет:

. /lib/lsb/init-functions

а вот это чнего за кю ?

newzenon пишет:

export PATH=$PATH:/usr/local/sbin:/usr/local/bin

и это тут нафига?

ну и дальше много негентушного чего-то... покрайнеймере не openrc'шного

newzenon пишет:

* start-stop-daemon: /usr/sbin/ccpd is already running

/usr/sbin/ccpd точно существует/исполняемый?
ну и не запущен ли он?
есть ли lock-файл /var/lock/subsys/ccpd? есть ли этот каталог?

newzenon пишет:

Не пойму я махинаций с подключением правильно так:

это думаю зависит от настроек демона...

95% процентов проблем находятся между клавиатурой и стулом.

8 (10.07.2012 00:58:42 отредактировано zenon)

Fat-Zer пишет:

и это тут нафига?
ну и дальше много негентушного чего-то... покрайнеймере не openrc'шного

Я сказал откуда скрипт, в бунте работает, его я не ставил, у меня установился из ебилдов calculate:

# cat /etc/init.d/ccpd
#!/sbin/runscript
#
# ccpd          startup script for Canon Printer Daemon for CUPS
#
#               Modified for Debian GNU/Linux
#               by Raphael Doursenaud <rdoursenaud@free.fr>.
#               Modified for Gentoo GNU/Linux
#               by NStorm, daks
DAEMON=/usr/sbin/ccpd
LOCKFILE=/var/lock/subsys/ccpd
NAME=ccpd
DESC="Canon Printer Daemon for CUPS"
test -f $DAEMON || exit 0

depend() {
  need net
  after cupsd
}

start() {
  ebegin "Starting $DESC: $NAME"
  start-stop-daemon --start --quiet --exec $DAEMON
  eend $?
}

stop() {
  ebegin "Stopping $DESC: $NAME"
  start-stop-daemon --stop --quiet --oknodo --exec $DAEMON
  eend $?
}
Fat-Zer пишет:

/usr/sbin/ccpd точно существует/исполняемый?

# ls -la /usr/sbin/ccpd
-rwxr-xr-x 1 root root 48K 12-07-10 001643 /usr/sbin/ccpd
Fat-Zer пишет:

есть ли lock-файл /var/lock/subsys/ccpd? есть ли этот каталог?

нет.

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

9

пробовал net-print/cndrvcups-capt-2.00-r2 ?
или включить/отключить cngplp
и нет ли чего-то криминального в /etc/ccpd.conf ?

95% процентов проблем находятся между клавиатурой и стулом.

10 (10.07.2012 01:27:53 отредактировано zenon)

Fat-Zer пишет:

пробовал net-print/cndrvcups-capt-2.00-r2 ?

Там нет поддержки LBP6000 (точнее /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd - этого точно нет)

Fat-Zer пишет:

или включить/отключить cngplp

после этого как раз выползает:

lpadmin: Bad device-uri scheme "ccp".
Fat-Zer пишет:

и нет ли чего-то криминального в /etc/ccpd.conf ?

Да вроде все норм

# cat /etc/ccpd.conf | egrep -v '^#|^$'
<Path>
CUPS_ConfigPath   /etc/cups/
</Path>
<Printer LBP6000>
DevicePath /dev/usb/lp0
</Printer>
<Ports>
UI_Port  59787
PDATA_Port  59687
</Ports>

..
Убрал /etc/init.d/ccpd из default'а:

# /etc/init.d/ccpd start
 * WARNING: -o/--oknodo is deprecated and will be removed in the future
# /etc/init.d/ccpd status
Canon Printer Daemon for CUPS: ccpd: 22950 22947 22932 22929 22926 22923 22920 22916 22913 22898 22895 22892 22889 22886 22883 22880 22877 22862 22859 22856 22853 22845 22841 22834 22830 22823 22802 22800 22794 22791 22762
# ls /var/lock
iptraf-ng/  lvm/
# /etc/init.d/ccpd restart
 * WARNING: -o/--oknodo is deprecated and will be removed in the future
 * WARNING: -o/--oknodo is deprecated and will be removed in the future
 * start-stop-daemon: /usr/sbin/ccpd is already running
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

11

newzenon пишет:

* start-stop-daemon: /usr/sbin/ccpd is already running

можно в скрипте заменить «--stop» на «--signal 9» жестоко, но эффективно... =)
или сложную конструкцию изобразить:

stop() {
  ebegin "Stopping $DESC: $NAME"
  start-stop-daemon --stop --quiet --exec $DAEMON || start-stop-daemon --signal 9 --quiet --exec $DAEMON
  eend $?
}
95% процентов проблем находятся между клавиатурой и стулом.

12

Fat-Zer пишет:

или сложную конструкцию изобразить:

щаз, revdep-rebuild отработает попробую...

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

13

Попробовал ...
С init вообще непонятно что:

# /etc/init.d/cupsd restart
 * Stopping cupsd ...                                                                                                                           [ ok ]
 * Starting cupsd ...                                                                                                                           [ ok ]
# /etc/init.d/ccpd restart
 * WARNING: -o/--oknodo is deprecated and will be removed in the future
# /etc/init.d/ccpd status
Canon Printer Daemon for CUPS: ccpd: 802 794 789 780 777 762 759 756 753 750 747 744 741 726 723 720 717 709 705 690 687 684 666
# /etc/init.d/cupsd restart
 * Stopping cupsd ...                                                                                                                           [ ok ]
 * Starting cupsd ...                                                                                                                           [ ok ]
# /etc/init.d/ccpd status
Canon Printer Daemon for CUPS: ccpd: 1059 1056 1048 1044 1017 1014 1011 1008 1000 997 987 957 950 946 925 922 919 916 913 897 894 891 888 885 882 879 864 861 858 855 852 837 834 831 827 819 816 808 807 794 789 780 777 762 759 756 753 750 747 744 741 726 723 720 717 709 705 690 687 684 666

Задания висят в очереди.
Может ему файл LOCKFILE=/var/lock/subsys/ccpd подсунуть?

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

14

в порядке бреда: test -f $DAEMON || exit 0 может это машает...

newzenon пишет:

Задания висят в очереди.Может ему файл LOCKFILE=/var/lock/subsys/ccpd подсунуть?

не уверен, что поможет...

95% процентов проблем находятся между клавиатурой и стулом.

15

Может из-за этого: ??

>>> Emerging (1 of 1) net-print/cups-1.5.3
 * cups-1.5.3-source.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                                                   [ ok ]
 * cups-1.5.3-avahi.patch.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                                                  [ ok ]
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found kernel object directory:
 *     /lib/modules/3.4.4-gentoo/build
 * Found sources for kernel version:
 *     3.4.4-gentoo
 * Your usb printers will be managed via libusb. In this case, 
 * cups-1.5.3 requires the USB_PRINTER support disabled.
 * Please disable it:
 *     CONFIG_USB_PRINTER=n
 * in /usr/src/linux/.config or
 *     Device Drivers --->
 *         USB support  --->
 *             [ ] USB Printer support
 * Alternatively, just disable the usb useflag for cups (your printer will still work).
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

16

newzenon пишет:

Может из-за этого: ??

Это в последних версиях cups нужно отключать поддежку usb для принтеров либо в ядре, либо в USE-флагах.

Был, был и весь вышел...

17

Замучал меня Canon сновательно. Прям жесть какой вредный.

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

18

Lupo Alberto пишет:

версиях cups нужно отключать поддежку usb для принтеров либо в ядре, либо в USE-флагах.

Понял, если cups >=1.4, то на выбор, либо ядерный модуль, либо libusb, только что из них лучше?

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

19

Я по-разному делал — отключал полностью в ядре; включал модулем и запрещал загрузку модуля в блэк-листе; собирал net-print/cups с отключенным usb-флагом. Работает. Правда, принтер у меня по-проще  — Xerox 3117 bx
P.S. Попробуйте также включить флаг slp.

Был, был и весь вышел...

20 (11.07.2012 17:41:22 отредактировано zenon)

Lupo Alberto пишет:

P.S. Попробуйте также включить флаг slp.

Попробую.
Что интересно, в Debian (32 bit) принтер добавляется вот так:

# /usr/sbin/lpadmin -p LBP6000 -P /usr/share/cups/model/CNCUPSLBP6018CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E
# /usr/sbin/ccpdadmin -p LBP6000 -o /dev/usb/lp0

Те -v ccp:/var/ccpd/fifo0 -E а не -v ccp://localhost:59687 -E
((Но как-т недоразобрался пока, - толи в спячку уходит и проснутся не может, то ли еще что-то, пинок какой-то ему наверное нужен....))
что в принципе соответствует правде из ебилда:

 * To get your printer working you need to restart cupsd
 * 
 * /etc/init.d/cupsd restart
 * 
 * Now you can add your printer with either the webinterface or lpadmin
 * 
 * /usr/sbin/lpadmin -p LBP3010 -m CNCUPSLBP3050CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E
 * 
 * Replace 3050 with either on of the following printers:
 * 1120 1210 2900 3000 3050 3200 3210 3300 5000
 * 
 * Now you must register the printer in ccpd, if connected with usb
 * 
 * /usr/sbin/ccpdadmin -p LBP3010 -o /dev/usb/lp0
 * 
 * Notice that you can't use LPT port with this driver.
 * If you have a network connection to your printer use -o net:<IP OF PRINTER>
 * instead of -o /dev/usb/lp0
 * See manual for more information at 
 * http://software.canon-europe.com/files/soft31118/readme/README-capt-1.8xE.pdf
 * 
 * Now you can go ahead and start the ccpd daemon
 * 
 * /etc/init.d/ccpd start
 * 
 * If you have more then one printer just create more fifos in
 * /var/ccpd/ , increase the fifo number for more printers
 * 
 * mkfifo -m 600 /var/ccpd/fifo1; chown lp:lp /var/ccpd/fifo1
 * 
 * 
 * If you reinstall make sure the fifo is created in /var/ccpd, if not
 * just reinstall again. This is due to bug #136199
>>> net-print/cndrvcups-capt-2.20-r1 merged.
>>> Regenerating /etc/ld.so.cache...

>>> Recording net-print/cndrvcups-capt in "world" favorites file...

 * Messages for package net-print/cndrvcups-capt-2.20-r1:

 * If you reinstall make sure the fifo is created in /var/ccpd, if not
 * just reinstall again. This is due to bug #136199
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

Правда не все модели указаны, на самом деле есть эти:

# ls /usr/share/cups/model/ | grep CNCUPS
CNCUPSLBP1120CAPTJ.ppd
CNCUPSLBP1120CAPTK.ppd
CNCUPSLBP1210CAPTJ.ppd
CNCUPSLBP1210CAPTK.ppd
CNCUPSLBP2900CAPTK.ppd
CNCUPSLBP3000CAPTJ.ppd
CNCUPSLBP3000CAPTK.ppd
CNCUPSLBP3050CAPTK.ppd
CNCUPSLBP3100CAPTJ.ppd
CNCUPSLBP3150CAPTK.ppd
CNCUPSLBP3200CAPTJ.ppd
CNCUPSLBP3200CAPTK.ppd
CNCUPSLBP3210CAPTJ.ppd
CNCUPSLBP3210CAPTK.ppd
CNCUPSLBP3250CAPTK.ppd
CNCUPSLBP3300CAPTJ.ppd
CNCUPSLBP3300CAPTK.ppd
CNCUPSLBP3310CAPTJ.ppd
CNCUPSLBP3310CAPTK.ppd
CNCUPSLBP3500CAPTJ.ppd
CNCUPSLBP3500CAPTK.ppd
CNCUPSLBP3600CAPTJ.ppd
CNCUPSLBP5000CAPTJ.ppd
CNCUPSLBP5000CAPTK.ppd
CNCUPSLBP5050CAPTJ.ppd
CNCUPSLBP5050CAPTK.ppd
CNCUPSLBP5100CAPTJ.ppd
CNCUPSLBP5100CAPTK.ppd
CNCUPSLBP5300CAPTJ.ppd
CNCUPSLBP5300CAPTK.ppd
CNCUPSLBP6018CAPTK.ppd
CNCUPSLBP6300CAPTJ.ppd
CNCUPSLBP6300CAPTK.ppd
CNCUPSLBP7200CCAPTJ.ppd
CNCUPSLBP7200CCAPTK.ppd
CNCUPSLBP9100CCAPTJ.ppd
CNCUPSLBP9100CCAPTK.ppd
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

21 (11.07.2012 18:08:05 отредактировано zenon)

Ага, вот только нету у меня lp0

# ls /dev/usb/
hiddev0  hiddev1

Тестовая страница сразу улетает в "Завершено"...
=
Сейчас пересобрано все (-auvDN system world + revdep-rebuild).

# less /proc/config.gz | egrep 'CONFIG_USB_PRINTER'
# CONFIG_USB_PRINTER is not set
# emerge -pqv cndrvcups-common cndrvcups-capt cups
[ebuild   R   ] net-print/cups-1.5.3  USE="X acl avahi dbus filters gnutls java jpeg ldap pam png python slp ssl threads tiff usb -debug -kerberos -perl -static-libs -systemd -xinetd" LINGUAS="ru -da -de -es -eu -fi -fr -hu -id -it -ja -ko -nl -no -pl -pt -pt_BR -sv -zh -zh_TW" 
[ebuild   R   ] net-print/cndrvcups-common-2.20-r1  USE="-cngplp" 
[ebuild   R   ] net-print/cndrvcups-capt-2.20-r1  USE="gtk -cngplp" 
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

22

newzenon пишет:

Ага, вот только нету у меня lp0

Так это получается я его сам вырубил (пересобрав ядро с CONFIG_USB_PRINTER=n)?

# modprobe usblp
FATAL: Module usblp not found.
История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

23

Бред какой-то, у меня идеи кончились, поступил со злости через *, распаковал deb бинарники в рабочую систему, и он заработал...

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

24 (22.09.2012 01:47:44 отредактировано zenon)

Тут нашел два билда поновее (2.40).
cndrvcups-capt-2.40.ebuild
cndrvcups-common-2.40.ebuild
Попробую на досуге их.

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

25 (22.09.2012 15:11:05 отредактировано zenon)

# ebuild /usr/local/portage/cndrvcups-capt/cndrvcups-capt-2.40.ebuild digest
Appending /usr/local to PORTDIR_OVERLAY...
 * EAPI assignment in ebuild 'portage/cndrvcups-capt-2.40::x-local' does
 * not conform with PMS section 7.3.1 (see bug #402167):
 *     valid EAPI assignment must occur on or before line: 5

 * Messages for package portage/cndrvcups-capt-2.40:

 * EAPI assignment in ebuild 'portage/cndrvcups-capt-2.40::x-local' does
 * not conform with PMS section 7.3.1 (see bug #402167):
 *     valid EAPI assignment must occur on or before line: 5

Переместил строку EAPI="2" до inherit multilib eutils versionator, правильно?
Дальше, ссылка неправильная на исходники... прямую ссылку не знаю пока где взять, сами исходники есть на canon-asia.com
Подсунул в /usr/portage/distfiles и в билдах пока так:
SRC_URI="cndrvcups-common-2.40-1.tar.gz"

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

26

cndrvcups-common-2.40.ebuild - собрался
cndrvcups-capt-2.40.ebuild - не собрался - http://bpaste.net/show/46874/ была похожая ошибка где-то...

 * ERROR: net-print/cndrvcups-capt-2.40 failed (install phase):
 *   You have to download libpopt.so.0.0.0 from http://bugs.gentoo.org/attachment.cgi?id=132734 and put it to /usr/local/portage/net-print/cndrvcups-capt/files manually!

Попробую положить libpopt.so.0.0.0 в /usr/local/portage/net-print/cndrvcups-capt/files

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

27

Вот еще кое что, на счет билда из calculate.

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.