Отпечатване със използване на cups под macOS

Добавяне на принтер:

$ lpadmin -E \
 -p Printer \
 -v ipp://192.168.1.10/ipp/print \
 -P Vendor-Model.ppd

-E разрешава приемането на задачи за отпечатване
-p установява името на принтера
-v път към URI на устройството
-P път към PPD файла със характеристиките на устройството

Проверка на наличните принтери:

$ lpstat -a
Printer accepting requests since Thu Nov 26 18:29:28 2015

Отпечатване на документ:

$ lpadmin -x Printer

Изтриване на принтер:

$ lpadmin -x Printer
Отпечатване със използване на cups под macOS

Смяна на Chrome user agent без плъгин

Понякога се налага да се смени user agent-a без да се използва плъгин. Ето и как можете да го направите без плъгин или някаква друга приставка.

Ето оригинала:

Както виждате user agent-a ми е CrOS което си е ChromeOS. Нека сега да го сменим!

Натискаме десен бутон във файла, Инспект Елемент и от инспектора във долния панел избираме Network Conditions и го сменяме. Ако не е активен Network Conditions се клика на трите точки във ляво и оттам се избира. Ето как би трябвало да изглежда.

И как да се представим за Googlebot mobile:

След презареждане действително заявката се изпраща със този user agent. Това е полезно за тестване на сайтове когато се сервират различни страници във зависимост от браузъра. Отделно е полезно когато се тестват сайтове защото във един прозорец може да се сервира съдържание за iPhone, във друг за iPad, във трети за Android и четвърти да е за компютър със симулиране и на различната мрежа във всеки един от тях индивидуално.

Смяна на Chrome user agent без плъгин

macOS поправка на счупени приложения

Едно от най-досадните неща във новите macOS (OSX) е когато каже, че дадено приложение е повредено и няма да работи повече. Това се причинява от новия GateKeeper който вече не позволява на неподписани приложения или счупени такива да работят.

Ето и как изглежда това:
macos damaged app
И защо се появява:
gatekeeper
забележете, че липсва „Anywhere“.

Ето и как можете да го оправите:
1. Отваряте терминал
2. Пишете това:
sudo spctl –master-disable
забележете че има две тирета и така и трябва да бъде
3. Ще бъдете помолени да си оставите паролата.

Сега вече можете да пускате приложения:

Тъй като „Anywhere“ вече присъства.

Ако искате да го върнете следвайте горните стъпки, но за точка 2 напишете това:
sudo spctl –master-enable

macOS поправка на счупени приложения

PHP7 Mac

Ако сте на Мак и не ви се ползват Портовете или Самоварките (ports/homebrew) обаче PHP 7 ви липсва…

https://php-osx.liip.ch

Поддържа се всичко от PHP 5.3 до 7.3 и работи на всички macOS 10.6 до 10.13.

PHP7 Mac

Node.js and npm update

Наложи ми се да обновя на macOS някакъв остарял node.js и ето конкретните стъпки
1. Пишем npm version и виждаме това:
{ npm: ‘3.10.3’,
ares: ‘1.10.1-DEV’,
http_parser: ‘2.7.0’,
icu: ‘57.1’,
modules: ’48’,
node: ‘6.5.0’,
openssl: ‘1.0.2h’,
uv: ‘1.9.1’,
v8: ‘5.1.281.81’,
zlib: ‘1.2.8’ }
2. Пишем node -V и виждаме това:
v6.5.0

Които са инсталирани някъде 2015 или 2016та и са праисторически спрямо днешните стандарти.

Обновяванието става лесно:
1. sudo npm install -g npm
2. npm version вече връща това:
{ npm: ‘6.1.0’,
ares: ‘1.14.0’,
cldr: ‘33.0’,
http_parser: ‘2.8.0’,
icu: ‘61.1’,
modules: ’64’,
napi: ‘3’,
nghttp2: ‘1.32.0’,
node: ‘10.6.0’,
openssl: ‘1.1.0h’,
tz: ‘2018c’,
unicode: ‘10.0’,
uv: ‘1.21.0’,
v8: ‘6.7.288.46-node.13’,
zlib: ‘1.2.11’ }
3. sudo npm cache clean -f
4. sudo npm install -g n
5. И вече можем да напишем sudo n latest или sudo n stable. Изчакваме малко
6. node -v вече връща
v10.6.0

Оттук насетне обновяването към последните версии е само:
1. sudo npm install -g npm
2. sudo npm cache clean -f
3. sudo n stable (или latest)

Node.js and npm update

Принтиране от мобилно устройство

Използването на принтер от мобилно устройство било то таблет или телефон е лесно когато имате принтер със такава поддръжка. Обикновенно тези принтери разполагат със връзка към безжична мрежа и (ама разбира се!) съответно са малко по-скъпи. Проблема възниква когато разполагате със по-стар принтер който е или само жичен (USB или Centronics) или принтер със безжична поддръжка, но по-стар модел. Сега ще ви покажа как да се преборите със тази житейска несправедливост.

Печатане от Android

Под Android проблемите се решават сравнително по-лесно със Google Cloud Print. Изисква се браузър Chrome и регистриране на принтера във облака. Така можете да принтирате от целия свят на вашия принтер. Разбира се има уловка – трябва да се логнете във мобилното устройство и във Chrome със един и същи потребител. Ето и процедурата:

  • Регистрираме принтера на настолния компютър тук chrome://devices/
  • На мобилното устройство инсталираме Cloud Print

И общо взето е това. Има няколко благинки:

  • можем да използваме принтера от друг компютър. Хитрото е, че принтера тогава може да се намира във друг град, страна и даже континент. Разбира само от Chrome
  • можем да си закупим по-модерен принтер със поддръжка на Google Cloud Print. Текущите модели са налични ето тук
  • можем да наблюдаваме заявките през интернет оттук
  • можем да печатаме документи от Google Drive директно
  • можем да печатаме директно към CUPS под Linux със използване на специализиран драйвер за него. Кода на драйвера може да бъде взет оттук или да използвате прекомпилиран пакет оттук

И тъжната новина – връзката става само и единственно през интернет. Ако няма интернет дори и във същата стая да се намира принтера ако не е вързан със кабел към компютъра ще е просто неизползваем. Същото важи и за мобилното устройство – дори и да е във същата безжична мрежа. Ако няма интернет няма да може да използва принтера.

Печатане от iOS

Под iOS нещата са малко по-различни. Тук най-лесния и удобен начин е когато принтера поддържа AirPrint през протокола Bonjour. Ако нямаме такъв принтер разбира се ще си го емулираме:

  • инсталираме HandyPrint на macOS оттук. Под Windows ще трябва да се хакне ето така или оттук със по-новата версия. Отделно под Windows ще се наложи да инсталирате и Bonjour Print Services оттук.
  • на мобилното устройство избираме иконката за споделяне (share) и ако приложението поддържа AirPrint принтера ще се появи във списъка. Няма никакви настройки

Сега малко особенности:

  • принтера трябва да се намира във същата локална мрежа със мобилното устройство
  • няма функция печатане през интернет
  • може да се печата дори и когато интернет липсва във локалната мрежа
  • ако имате принтер свързан със AirPort Extreme или AirPort Express то самия принтер трябва да поддържа AirPrint за да можете да го ползвате. Официален списък на поддържаните принтери през AirPort има тук и неофициални тук и тук. Но ще трябва да проверите дали и принтера поддържа AirPrint иначе от мобилно устройство няма да можете да го видите и използвате
  • може да се ползва CUPS и да се емулира подобен принтер. За повече информация как – тук, тук и тук

Разбира се това са официалните начини. Има и алтернативи. Hewlett Packard поддържат стандарта ePrint използващ техните устройства. FedEx имат мобилно принтиране също тук – като след отпечатването можете да изберете да минете през техен офис за да го вземете или те да ви го доставят. Можете да използвате Printer Pro – оттук или някое от многобройните алтернативни приложения. Можете да видите дали производителя на принтера ви няма приложение: Samsung, Canon, Epson или други.

Както виждате – има богат избор вече на пазара. А само преди няколко години използването на принтер от мобилно устройство беше мит. Вече е реалност.

Принтиране от мобилно устройство

ET Legacy и macOS Sierra проблем

Човек и добре да живее минава на по-нова версия на операционната система. Част от проблемите от новата версия е, че ETLegacy спря да работи поради липсата на файлове. Всъщност аз ги виждам през файловата система, но приложението не.

FS_InitFilesystem: Original game data files not found.
Please copy pak0.pk3, pak1.pk3 and pak2.pk3 from the ‘etmain’ path of your Wolfenstein: Enemy Territory installation to:
„/private/var/folders/ph/72hb8_ds1cg98mvs4xb61c9w0000gn/T/AppTranslocation/55316FBE-BCC2-43C9-B1DC-817D7B012C32/d/etmain“

Разбира се при вас цифрите може да са малко по-различни. Може да отказва да зареди и заради липсата на файла librenderer_opengl1_mac въпреки, че го има. Проблема се оказва новата защита на приложения във macOS (Gatekeeper path randomization) и решението е сравнително лесно. Трябва само да отворите терминал и да изпишете следните команди:

cd /Applications/
xattr -dr com.apple.quarantine ET\ Legacy/

след което можете да си пуснете играта.

ET Legacy и macOS Sierra проблем

Global Firefox Console

Firefox е един от най-любимите ми браузъри по много причини. Днес установих, че е възможно да се активира глобална конзола където той да започне да показва информация относно целия мрежов трафик от всичките плъгини, него самия и сайтовете. Единственното което трябва да се направи е да се стартира със параметър от командния ред -jsconsole. Как става това?
Windows 32 битов

"C:\Program Files\Mozilla Firefox\firefox.exe" -jsconsole

Windows 64 битов

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -jsconsole

OSX

/Applications/Firefox.app/Contents/MacOS/firefox-bin -jsconsole

Linux

firefox -jsconsole

Това е всичко. Разбира се подгответе се за потоп от информация във глобалната конзола. На мен лично ми трябва да открия проблем при обновлението му. На версия 48.0 съм и ми казва че няма обновление. Което е лъжа при положение че има 48.0.2 налична.

Global Firefox Console

Restarting Firefox

Току-що открих как може да се рестартира Firefox без да се загуби нищо.

  1. Натискате Shift-F2. За Mac е Fn-Shift-F2.
  2. Във конзолата която излиза пишете restart

Това е.

Restarting Firefox