# This Makefile is here, because I am to lazy to type
# all parameters again and again.....
# Author: Jens Apel
# Purpose: Creates a printer driver packages for Lexmark Printers,
# that can be load to Samba.
# Prerequsites:
# - Samba 2.2.0 or higher
# - imprints 0.0.9b or higher from
# imprints.sorceforge.net
# Settings section start
# Where did you install imprints
IMPRINTS_BASE = /opt/imprints
# The perl skript doing all work for creating the package
MK_PRINT_PKG = $(IMPRINTS_BASE)/bin/mkprintpkg.pl
# The perl script that installs a printer package
INSTALL_PRINTER_DRIVER = $(IMPRINTS_BASE)/scripts/install_printer_drivers.pl
# Where are we
CURRENT_DIR = `pwd`
# Where are all the drivers, win dlls and other stuff ?
ARCHIVE_DIR = $(CURRENT_DIR)/win_driver/ALL_IN1/
# This works not, since unzip (Linux) can not unzip it
# because it is not a self extracting .exe
# ARCHIVE_DIR = $(CURRENT_DIR)/win_driver/optra1855s.exe
# So you have to unzip it on Windows starting it...;-)
# on which Samba Server do you want to install the package ?
SAMBA_HOST = intra1
# Whats the user/password combination ?
# currently the user has to be root
SAMBA_USER = "root%secret"
# Settings section end
help:
@echo "Possible targets are:"
@echo "prepare - copys all files in _ONE_ directory"
@echo "package - creates the packages"
@echo "install - installs the package on the Samba Server"
# First put all windows driver files into one directory
# only that way imprints can work
prepare:
rm -rf $(ARCHIVE_DIR)
mkdir $(ARCHIVE_DIR)
find $(CURRENT_DIR)/win_driver/win32drv -name "*.*" \
-exec cp {} $(ARCHIVE_DIR) \;
# build the package
# Because of the deflating all files, this can last up to 10 minutes
package: package_1855
package_1650:
@echo "###########################################################"
@echo "# Building the package for Lexmark 1650 S for Win NT/2000 #"
@echo "###########################################################"
$(MK_PRINT_PKG) --name="optra1650S_NT" --version="1.0" \
--display "Lexmark Optra S 1650 PS2" $(ARCHIVE_DIR) \
--inf-fname "lexpsnt.inf" --model "Lexmark Optra S 1625 PS2" --debug
package_1855:
@echo "###########################################################"
@echo "# Building the package for Lexmark 1855 S for Win NT/2000 #"
@echo "###########################################################"
$(MK_PRINT_PKG) --name="optra1855S_NT" --version="1.0" \
--display "Lexmark Optra S 1855 PS2" $(ARCHIVE_DIR) \
--inf-fname "lexpsnt.inf" --model "Lexmark Optra S 1855 PS2" --debug
install: install_1855
install_1855:
@echo "Installing the package for optra 1855 S (NT only)"
$(INSTALL_PRINTER_DRIVER) --verbose \
--cache-dir=$(CURRENT_DIR) --local-pkg=optra1855S_NT-1.0.tar.gz \
'Lexmark Optra S 1855 PS2'
install_1650:
@echo "Installing the package for optra 1650 S (NT)"
$(INSTALL_PRINTER_DRIVER) --verbose \
--cache-dir=$(CURRENT_DIR) --local-pkg=optra1650S_NT-1.0.tar.gz \
'Lexmark Optra S 1650 PS2'
install_check:
@echo "Call rpcclient and look what printers are installed"
rpcclient $(SAMBA_HOST) -U $(SAMBA_USER) -c "enumports 2"
rpcclient $(SAMBA_HOST) -U $(SAMBA_USER) -c "enumprinters 2"