2013-12-19 32 views
2

我需要做的是在用戶按下print命令時執行python程序/腳本,並且不讓打印作業後臺打印在此程序退出之前。當用戶按下打印時運行腳本,並且在腳本結束前不開始假脫機(linux,cups)

原因是打印驅動程序不是開源的,我需要更改用戶設置(在這種情況下是部門ID和密碼),通常是每用戶/用戶,但因爲這是一個信息亭(不同用戶同一個帳戶)我需要確保重置,並在打印作業被假脫機之前提示用戶,以便不同的用戶不會選擇其他任何作業。

我已經創建了一個程序來處理設置,我只需要一種方法來啓動它,並且不會讓用戶在完成程序/設置之前啓動假脫機作業。

我試過搜索/谷歌這個,但不能真正找到答案,我需要通過杯篩選器首先後臺作業,或者如果他們是更聰明的方式來處理這個?

回答

2

我發現了我的問題的完美解決方案。 tea4cups,它充當杯子的包裝。 並使用tea4cups prehook解決了我的問題。

雖然我遇到了一些問題,所以我在這裏注意到他們,如果有人沿着相同的道路走下去。

  1. tea4cups是基於python2,我有python3作爲標準庫,這給了一些意想不到的錯誤,如杯子日誌中的「錯誤鍵」。 爲了解決這個我編輯 「/ usr/lib中/杯/後端/ tea4cups」,改變了環境:

#!在/ usr /斌/包膜蟒蛇

到:

#!在/ usr/bin中/ env的python2

  1. 我的preHook開始一個python程序,因爲它使用X顯示,這是行不通的開箱即用的需要。而且該程序還需要以實際提交打印作業的用戶身份啓動。要獲得這兩樣東西的工作,我不得不寫的preHook如下:

prehook_popUp:蘇$ TEAUSERNAME -c 「DISPLAY =:0.0蟒蛇/usr/share/candepid/PopUp.py」

相關問題