← All posts tagged Linux

хочу странного. Что бы stderr выводился красным.
Сейчас это сделано таким вот сниппетом в ~/.zshrc

```
sm_color_red="$( tput setaf 1)"
sm_color_reset="$(tput sgr0 )"
exec 2>>( awk '{print "'"$sm_color_red"'"$0"'"$sm_color_reset"'"}' >&2 & )
```

Все клево работает, но есть один говняный эффект — всякие интерактивные консольные тулы пытаются спрашивать вопросы в stderr. У них это не получается прям ваще. Вопросы то не вылазят, то вылазят поздно и вообще, говно.

я тут сетаплю расбери пай свой... Хочу что бы он стучался в dyndns. Так вот, как сделать что бы оно при старте шло на сервер? Когда делаю crontab @boot или в `/etc/network/if-up.d/` курл пишу свой, выдает curl: (6) Could not resolve host: domains.google.com
(os raspbian jessie)

попытался заставить панго рисовать текст фритайпом. Почти получилось, я не понимаю что упустил... Может подскажет кто?

	PangoFontMap *font_map = pango_ft2_font_map_new();
	PangoContext *cr = pango_font_map_create_context(PANGO_FONT_MAP(font_map));
	
	PangoFontDescription *font_description = pango_font_description_new ();
	pango_font_description_set_absolute_size (font_description, 62 * PANGO_SCALE);
	
	pango_context_set_font_description(cr, font_description);

	PangoLayout *layout = pango_layout_new(cr);
	pango_layout_set_font_description(layout, font_description);
	pango_layout_set_text(layout, text, -1);
	pango_layout_set_alignment(layout, PangoAlignment::PANGO_ALIGN_RIGHT);
	pango_layout_set_width(layout, -1);
	

	FT_Bitmap bitmap = { 0 };
	bitmap.width = 300;
	bitmap.rows = 100;
	bitmap.pitch = bitmap.width * 4;
	size_t sz = bitmap.rows*bitmap.pitch;
	bitmap.buffer = new unsigned char[sz];
	memset(bitmap.buffer, 0x88, sz); //текстуру сереньким рисуй сцуко
	bitmap.pixel_mode = FT_PIXEL_MODE_BGRA;
	pango_ft2_render_layout_subpixel(&bitmap, layout, 0, 0);
	

Жуйкота — я совсем заебался. Я пытаюсь построить Pango
Если делаю просто `./configure && make` все работает.
Но мне нужно `./configure --without-cairo && make` Казалось бы, должно быть все проще — но нет, мейк падает на

```
make[2]: *** No rule to make target `../pango/libpangocairo-1.0.la', needed by `markup-parse'. Stop.
make[2]: *** Waiting for unfinished jobs....
In file included from markup-parse.c:26:
../pango/pangocairo.h:26:10: fatal error: 'cairo.h' file not found
#include <cairo.h>
^
1 error generated.
```

ну общим, понял что такой тулзы как мне надо нету. Потому хочу запилить свою из имеющихся. Как в вашем этом `patch` сделать что бы он выводил результаты не в начальный файлик.
Проблема `patch -o ... ` в том что он склеивает все в кучу. Невозможно ведь потом разобраться!
Общим, проблема — дана папка и дифф. Надо не модифицируя папку получить пропатченные файлы в другом месте.

Попробую объяснить проблему — есть папочка с масштабироваными изображениями, и папочка с оригиналами. И там и там большая иерархия папок. Масштабированные отлично генерируются мейком, проблема что если оригинал удалить/переименовать, то останется производная картинка. Как их поудалять? Скрипт из предыдущего поста это делает, но, к сожалению медленно. А хочется быстро. Есть идеи?

А есть ли возможность написать следующее без
find . -type f -exec sh -c 'if [ ! -f "../Source/{}" ]; then rm "{}" && echo "Removed orphan {}" ;fi' \;
без sh -c, а то как-то медленно получается на большом количесве файлов.

ну общим, я как-то вообще не секу в программировании под линуксы, потому может вопрос будет немного некорректным. Хочется создать "файл" что бы один процесс его иногда обновлял, и все остальные могли читать. Интересно, как а) сделать это при том что диск ридонли (все надо делать как-то в памяти) и б) решить проблебы конкуренси... Ссылки приветствуются, но еще больше, обьяснения.

блин, ну общим, в виртуалке пытаюсь построить элементарное приложение которое создает контекст OpenGL. И что вы думаете? Все собирается но эта скотина падает с ошибкой OpenGL Error: Can't patch size is too small.(glXDestroyGLXPbufferSGIX). Вообще, кто-то знает что это такое? Может я не оттуда взял gl.h glu.h? я брал с mesa пакетов, потому что не знаю где еще брать такое в ubuntu. Ну общим, нид хелп, и тупо не понимаю как такое вообще бывает на десктопе

Статья наглядно демонстририует прыщеблядиков которые срут на Мак в благо линукса... Вывод — тупые прыщебляди просто не видели нормальных операционок и срут потому что злые что денег на нормальные не хватает... Stupid == poor? habrahabr.ru