-
Notifications
You must be signed in to change notification settings - Fork 0
/
index39.html
714 lines (709 loc) · 56 KB
/
index39.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<title>IMDagger: Дневник</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="Блог IMDagger: IT и жизнь" />
<meta name="keywords" content="python,lisp,scheme,racket,emacs,blender,программирование,моделирование,lua,c++,c,js,java,git,bazaar" />
<meta name="author" content="Alex Moiseenko (IMDagger)" />
<meta name="robots" content="noindex"/>
<!-- Open Graph -->
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" />
<link rel="stylesheet" href="http://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css" />
<link rel="shortcut icon" href="http://imdagger.github.io/favicon.ico" />
<link rel="stylesheet" href="/theme/css/html4css1.css" />
<link rel="stylesheet" href="/theme/css/style.css" />
<link rel="stylesheet" href="/theme/css/pygment.css" />
<link rel="stylesheet" href="/theme/css/math.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML,http://imdagger.github.io/theme/js/math.js"></script>
<script src="http://s3.amazonaws.com/nwapi/nwmatcher/nwmatcher-1.2.5-min.js"></script>
<!--[if (gte IE 6)&(lte IE 8)]>
<script type="text/javascript" src="/theme/js/selectivizr-min.js"></script>
<noscript><link rel="stylesheet" href="[fallback css]" /></noscript>
<![endif]-->
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link href="http://imdagger.github.io/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="IMDagger Atom-лента" />
</head>
<body>
<div class="row page-head">
<div class="row page-head-status page-head-status-top"><div class="col-sm-12 b-status mine"><p><i></i><a href="#" title="настроение" class="b-consistent-link"><b>Продать кому-то что-то всегда на деле сложнее, чем кажется</b></a></p></div></div>
<div class="col-sm-2 page-left">
<a href="#">
<img src="http://upics.yandex.ru/22199227/normal" ilo-full-src="http://upics.yandex.ru/22199227/normal">
</a>
</div>
<div class="col-sm-10 all-posts">
<div class="title-container">
<h1><b><a href="http://imdagger.github.io" class="fn nickname">IMDagger</a></b></h1>
</div>
<div class="title-menu">
<ul class="nav nav-tabs" role="tablist">
<li class="active">
<a href="#">Дневник</a>
</li>
<li><a href="http://fotki.yandex.ru/users/imdagger">Фотки</a></li>
<li><a href="http://imdagger.github.io/pages/o-sebe.html">О себе</a></li>
<li><a href="http://imdagger.github.io/pages/rss-lenta.html">RSS-лента</a></li>
</ul>
</div>
</div>
</div>
<div class="row page-body">
<div class="col-sm-2 page-left">
<div class="row widget widget-photo">
<a href="posts/2011/08/07/aga-popalsia/" class="b-user-photo__link"><img class="b-user-photo__img" src=" http://img-fotki.yandex.ru/get/5409/22199227.a/0_625fc_e780ccc7_L
?log_nocount=64720402854"></a>
</div><div class="row widget">
<div class="widget-content b-user-info">
<div class="widget__body">
<div class="widget-user-info__age">
<i class="widget-user-info__sex widget-user-info__sex_type_"></i> 27 лет
</div>
<div class="widget-user-info__place">
<a href="#">Гомель</a>, <a href="#">Беларусь</a> </div>
<ul class="contacts">
<li class="contact contact-type-email"><i></i><a href="mailto:[email protected]">[email protected]</a></li>
<li class="contact contact-type-ya-online"><i></i>[email protected]</li>
<li class="contact contact-type-icq"><i></i>350395088</li>
</ul>
</div>
</div>
</div>
<div class="row widget">
<div class="widget-content">
<div class="widget__title">
<div class="widget__title-link">Метрика</div>
</div>
<div class="widget__body">
<div class="widget-line">
<!-- noindex -->
<!-- googleoff: index -->
<div class="widget-entry">
<!-- Yandex.Metrika informer --><a href="https://metrika.yandex.ru/stat/?id=25746494&from=informer" target="_blank" rel="nofollow"><img src="//bs.yandex.ru/informer/25746494/3_1_FFFFFFFF_EFEFEFFF_0_pageviews" style="width:88px; height:31px; border:0;" alt="Яндекс.Метрика" title="Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)" onclick="try{Ya.Metrika.informer({i:this,id:25746494,lang:'ru'});return false}catch(e){}"/></a><!-- /Yandex.Metrika informer --><!-- Yandex.Metrika counter --><script type="text/javascript">(function (d, w, c) { (w[c] = w[c] || []).push(function() { try { w.yaCounter25746494 = new Ya.Metrika({id:25746494, clickmap:true, trackLinks:true, accurateTrackBounce:true}); } catch(e) { } }); var n = d.getElementsByTagName("script")[0], s = d.createElement("script"), f = function () { n.parentNode.insertBefore(s, n); }; s.type = "text/javascript"; s.async = true; s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js"; if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false); } else { f(); } })(document, window, "yandex_metrika_callbacks");</script><noscript><div><img src="//mc.yandex.ru/watch/25746494" style="position:absolute; left:-9999px;" alt="" /></div></noscript><!-- /Yandex.Metrika counter -->
<!-- googleon: index -->
<!-- /noindex -->
</div>
</div>
</div>
</div>
</div><div class="row widget">
<div class="widget-content">
<div class="widget__title">
<div class="widget__title-link">Популярное в дневнике</div>
</div>
<div class="widget__body">
<div class="widget-line">
<div class="widget-entry">
<div class="widget-day__title">25 июня</div>
<div class="widget-entry clearfix">
<div class="widget-entry__item">
<div class="widget-entry__title">
<a href="#" class="h-link"> Висцеральная теория сна выглядит стр…</a>
</div>
<div class="widget-entry__info">2 ответа</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div></div>
<div class="col-sm-10 all-posts">
<div class="row b-post-filter">
<span class="pull-right">
записи по
<div class="btn-group">
<span type="button" class="pseudo-link" data-toggle="dropdown">месяцам</span>
<ul class="dropdown-menu dropdown-menu-right" role="menu">
<li><a rel="nofollow" href="#" class="h-link">Нулябрь</a><li>
<li><a rel="nofollow" href="#" class="h-link">Первябрь</a><li>
</ul>
</div> ·
<div class="btn-group">
<span type="button" class="pseudo-link" data-toggle="dropdown">меткам</span>
<ul class="dropdown-menu dropdown-menu-right" role="menu"> <li> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/emacs.html" class="h-link">emacs</a> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/javascript.html" class="h-link">javascript</a> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/icfpc.html" class="h-link">icfpc</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/blender.html" class="h-link">blender</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/ia.html" class="h-link">Я</a> </li> <li> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/google.html" class="h-link">google</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/zhizn.html" class="h-link">жизнь</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/oshibka.html" class="h-link">ошибка</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/rabota.html" class="h-link">работа</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/python.html" class="h-link">python</a> </li> <li> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/java.html" class="h-link">java</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/bredni.html" class="h-link">бредни</a> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/racket.html" class="h-link">racket</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/programmirovanie.html" class="h-link">программирование</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/bge.html" class="h-link">bge</a> </li> <li> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/eda.html" class="h-link">еда</a> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/linux.html" class="h-link">linux</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/nabrosok.html" class="h-link">набросок</a> <a rel="nofollow" class="tag-1" href="http://imdagger.github.io/tag/radost.html" class="h-link">радость</a> <a rel="nofollow" class="tag-2" href="http://imdagger.github.io/tag/iandeks.html" class="h-link">Яндекс</a> </li> </ul>
</div> ·
<div class="btn-group">
<span type="button" class="pseudo-link" data-toggle="dropdown">типам</span>
<ul class="dropdown-menu dropdown-menu-right" role="menu">
<li><a rel="nofollow" href="http://imdagger.github.io/category/description.html" class="h-link">обращение</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/friend.html" class="h-link">дружба</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/join.html" class="h-link">клубы</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/link.html" class="h-link">ссылки</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/mood.html" class="h-link">настроение</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/photo.html" class="h-link">фото</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/text.html" class="h-link">текст</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/video.html" class="h-link">видео</a><li>
<li><a rel="nofollow" href="http://imdagger.github.io/category/wishlist.html" class="h-link"></a><li>
</ul>
</div>
</span>
</div>
<div class="row b-post">
<div class="panel panel-text">
<div class="panel-heading b-post-type b-post-type-text">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
написал <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/07/12/pravki-v-proekte/" >
12 июля 2011 года, 01:24
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/proekt.html">проект</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/last_gateway_to_hell.html">last_gateway_to_hell</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/programmirovanie.html">программирование</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/ispravlenie.html">исправление</a></span></div>
</noindex>
<div class="post-title">
<a class="no-link" href="http://imdagger.github.io/posts/2011/07/12/pravki-v-proekte/">Правки в проекте</a> </div>
<div class="row post-body">
<div class="b-text">
<p> Обнаружилось, что Power не проверяет физический урон на возможность
отрицательного значения. Раньше предполагалось, что конечный Power это
проверит, а промежуточным нужны отрицательные значения. Но это так и не
потребовалось, т.к. считается сумма силы 1 и сумма сил 2, а затем их
разница. Сначала я хотел произвести правку CycleMagic для изменения
поведения по умолчанию, т.к. WaterMagic фильтрует WaterMagic, но затем
взглянув в собственную техдоку обнаружил, что была идея создавать
AntiWaterMagic. Т.е. всем предметам, кому нужны антимагии создают их, но
это не исключает, что WaterMagic может убрать FireMagic и т.д.</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-text">
<div class="panel-heading b-post-type b-post-type-text">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
написал <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/07/07/maika-ot-google/" >
7 июля 2011 года, 23:43
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/slide.html">slide</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/maika.html">майка</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/rabota.html">работа</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/google.html">google</a></span></div>
</noindex>
<div class="post-title">
<a class="no-link" href="http://imdagger.github.io/posts/2011/07/07/maika-ot-google/">Майка от Google</a> </div>
<div class="row post-body">
<div class="b-text">
<p> Прибыла моя маечка. Тёмно-серая, с надписью и изображением Slide
спереди и Google сзади. Внутри написано, что сделано в Mexico на
Американском заводе, и что Slide on и Google is your friend.</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-mood">
<div class="panel-heading b-post-type b-post-type-mood">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
поделился настроением <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/07/07/urn:ya.ru:post/22199227/1371/" >
7 июля 2011 года, 02:39
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
</noindex>
<div class="post-title">
</div>
<div class="row post-body">
<div class="b-text">
<p>каждый день встречать рассвет с красными глазами .. это … как в старые
добрые времена</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-text">
<div class="panel-heading b-post-type b-post-type-text">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
написал <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/07/04/vernulsia-zvuk-proshchai-staryi-dobryi-oss/" >
4 июля 2011 года, 02:16
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/alsa.html">alsa</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/oss.html">oss</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/radost.html">радость</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/draiver.html">драйвер</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/linux.html">linux</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/zvuk.html">звук</a></span></div>
</noindex>
<div class="post-title">
<a class="no-link" href="http://imdagger.github.io/posts/2011/07/04/vernulsia-zvuk-proshchai-staryi-dobryi-oss/">Вернулся звук. Прощай старый добрый OSS...</a> </div>
<div class="row post-body">
<div class="b-text">
<p>Установил новую alsa и запустил alsaconf, т.к. в 2.6.39.2 нет
<strong>i810_intel</strong> модуля (он был obsolete и удалён из oss в пользу
intel8x0). Я вижу, что install добавил файл sound в modprobe.d с двумя
строками: alias snd-card-0 snd-intel8x0 и alias sound-slot-0
snd-intel8x0. Хотя у меня вроде эти модули и так загружены. Конфигуратор
поднастроил мой SI7012, а то у меня alsa была древняя и уже не хотела
выдавать никаких сигналов даже с поднятыми до предела микшерами. Ну что
ж … прощай OSS (был у меня ещё какое-то время даже ESD), пришло время с
тобой расстаться, тем более два потока больше не воюют за общий /dev/dsp
:).</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-text">
<div class="panel-heading b-post-type b-post-type-text">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
написал <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/07/03/spustia-6-let/" >
3 июля 2011 года, 03:30
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/sistema.html">система</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/zhizn.html">жизнь</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/vremia.html">время</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/dom.html">дом</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/obnovlenie.html">обновление</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/ia.html">Я</a></span></div>
</noindex>
<div class="post-title">
<a class="no-link" href="http://imdagger.github.io/posts/2011/07/03/spustia-6-let/">Спустя 6 лет...</a> </div>
<div class="row post-body">
<div class="b-text">
<p>Я снова обновил свой Glib и Gtk. Это позволило мне запустить Firefox
4 на моей старенькой домашней машине, хотя для этого потребовалось ещё
кучу всего обновить. Давно уже не было такого апгрейда. Хотя GNOME стоит
пока старенький, привык я к нему тут (а на одной из работ Fluxbox), да и
сапфировая тема тоже уже стала для меня привычной дома.</p>
<p class="text-center"><a class="reference external" href="http://fotki.yandex.ru/users/imdagger/view/391608/"><img alt="Firefox4 на домашнем компьютере" src="http://img-fotki.yandex.ru/get/5305/imdagger.9/0_5f9b8_2c4884c0_L" title="Firefox4 на домашнем компьютере"/></a></p> </div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-link">
<div class="panel-heading b-post-type b-post-type-link">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
поделился ссылкой <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/06/30/stacktrace-na-letu/" >
30 июня 2011 года, 18:56
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/otladka.html">отладка</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/python.html">python</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/stack.html">stack</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/rabochii.html">рабочий</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/protsess.html">процесс</a></span></div>
</noindex>
<div class="post-title">
<a class="h-link" href="http://stackoverflow.com/questions/132058/getting-stack-trace-from-a-running-python-application">
<img class="b-ico" src="http://favicon.yandex.ru/favicon/stackoverflow.com?default=yaru-external">Stacktrace на лету</a>
</div>
<div class="row post-body">
<div class="b-text">
<p>Не знал, что можно так красиво повесить обработчик на SIGUSR1</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-text">
<div class="panel-heading b-post-type b-post-type-text">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
написал <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/06/30/noobteam-bot/" >
30 июня 2011 года, 01:15
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/radost.html">радость</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/rezultaty.html">результаты</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/bot.html">бот</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/nebolshaia.html">небольшая</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/icfpc.html">icfpc</a></span></div>
</noindex>
<div class="post-title">
<a class="no-link" href="http://imdagger.github.io/posts/2011/06/30/noobteam-bot/">NoobTeam бот</a> </div>
<div class="row post-body">
<div class="b-text">
<p>Круто недописанный бот со случайным поведением занял 169 место, при
чём я забыл сделать в нём одну из аппликаций, т.е. он умел делать только
половину от всех теоретически возможных операций. Ура! Он не последний :) У
него <strong>135</strong> очков, а у 30 места, например, где-то почти <strong>900</strong> очков.
Но у них дописанные боты и есть тактика, а я не успел. Я уже открывал
таблицу и думал увидеть рандома последним, ну что ж, NoobTeam-бот, ты
порадовал создателя!</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-text">
<div class="panel-heading b-post-type b-post-type-text">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
написал <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/06/26/perevod-chast-2/" >
26 июня 2011 года, 22:05
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/gobolinux.html">GoboLinux</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/statia.html">статья</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/perevod.html">перевод</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/linux.html">linux</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/nabrosok.html">набросок</a></span></div>
</noindex>
<div class="post-title">
<a class="no-link" href="http://imdagger.github.io/posts/2011/06/26/perevod-chast-2/">Перевод: часть 2</a> </div>
<div class="row post-body">
<div class="b-text">
<p>Перевел до конца весь текст статьи, нужно ещё чуть отшлифовать и
отправить на сайт.</p>
<p>Унаследованное дерево каталогов</p>
<p>К несчастью не все программы достаточно гибки, чтобы быть
установленными в любое место. Время от времени, жёстко прописанные пути
поджидают прямо в программах, которые относятся к пользовательскому
окружению, а им следует, как минимум теоретически, позволять быть
установленными внутрь, скажем, в пользовательский домашний каталог.</p>
<p>Постольку поскольку мне хотелось, чтобы это завершилось в
долгосрочной перспективе, то правка всех приложений это не выход. По
этой причине, GoboLinux поддерживает, как упоминалось ранее,
унаследованное дерево каталогов, где все обычные Unix-пути спроецированы
на GoboLinux эквиваленты, таким образом, если Makefile ищет
/usr/X11R6/include/X11/Xaw3d/XawInit.h, он найдёт его, хотя он будет
расположен в /Programs/Xaw3d/1.5/include/X11/Xaw3d/XawInit.h, где ему и
положено быть. Когда два приложения содержат вложенные директории с
одинаковым именем, GoboLinux-скрипты рекурсивно извлекают их. Допустим
XFree86 и Xaw3d содержат X11 в include. Директория
/System/Links/Headers/X11 создаётся автоматически, содержащая ссылки из
обоих X11 директорий.</p>
<p>Другая интересная возможность это то, что GoboLinux скрипты
запускают make install, используя специальный идентификатор
пользователя, который имеет права записи только внутрь директории с
исходным кодом программ и вхождениями в /Programs. Таким способом файлы
не могут “выбраться” из GoboLinux иерархии и перебраться в
унаследованное классическое дерево каталогов.</p>
<p>Структура директорий GoboLinux приносит свежесть и чистый взгляд в
Linux систему, но присутствие унаследованного дерева каталогов, без
которого не обойтись, немного убавляет красоту. Mac OS X использует
“хитрый трюк”, чтобы скрыть эту природу Unix: Finder не будет показывать
Unix директории, но вы можете их видеть из командной строки. В Linux у
нас есть множество различных путей чтобы просмотреть файловую систему
(оболочки, файловые менеджеры, браузеры…), значит мы должны идти дальше,
чтобы иметь опрятно выглядящую систему. GoboHide (конечно
необязательный) это патч для ядра плюс приложение пользовательской среды
написанные Lucas Correia Villa Real и Felipe Damásio, которые эффективно
выполняют “скрытие файлов” на Linux (способ отличный от файлов
начинающихся с точки, который реализован на уровне пользовательского
интерфейса, например как делает Finder).</p>
<p>Вот как ls / выглядит под GoboLinux:</p>
<blockquote>
<div class="line-block">
<div class="line">Depot Mount System</div>
<div class="line">Files Programs Users</div>
</div>
</blockquote>
<p>Другие работы по данной тематике</p>
<p>Т.к. вы читаете это, то возможно вы нашли много похожих концепций
(не говоря уже о именах каталогов). GoboLinux целиком вдохновлялся из
других операционных систем, таких как Mac OS X, BeOS и AtheOS, но я
думаю, уже понимание того, что они строят «что-то другое», используя
существующую базу Unix (будь то с использованием ядра Unix, как в OS X
или с помощью инструментов GNU, как в AtheOS) оказало наибольшее
влияние из всего. На данным момент существует несколько других проектов
на различных стадиях разработки, которые используют ядро Linux как
основу с альтернативным деревом каталогов. Любопытно, но
большинство из них клоны или под сильным влиянием особенностей
некоторых проприетарных операционных систем: ROX OS стремится быть
RiscOS-подобной системой, LinuxSTEP — это проект основанный на GNUstep
нацеленный на создание NEXT-подобной системы, и BlueEyedOS рассчитана,
чтобы быть совместимой с BeOS на уровне исходного кода.</p>
<p>С другой стороны GoboLinux не клон чего-нибудь. Он использует
стандарное программное обеспечение Linux для настольных компьютеров. Мы
верим что хорошо организованная структура директорий делает его отличной
тестовой площадкой для новых идей — возможности не имеют границ.</p>
<p>Где мы на данный момент?</p>
<p>GoboLinux очень сильно развился за последний год. На gobolinux.org
можно найти ISO образ нашего свежего релиза 006. Это загрузочный “live
CD” запускающий GoboLinux в chroot-среде с доступом только на чтение
файловой системы, таким образом можно пробежаться по структуре
директорий и взглянуть на то, как GoboLinux выглядит. В CD также включён
обычным скрипт инсталляции и дополнительные пакеты. Вообще ещё нету
модного графического инсталлятора, но я думаю простота установки
отражает общую простоту использования системы вцелом (в отличии от того,
как это случается на других дистрибутивах).</p>
<p>Несмотря на небольшое количество пользователей (мы никогда реально
не публиковали это где-либо), проект продвинулся быстро и стал полностью
пригодным уже долгое время (большинство GoboLinux разработчиков
используют его как их единственную операционную систему и остальные
пользуются тоже).</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-mood">
<div class="panel-heading b-post-type b-post-type-mood">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
поделился настроением <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/06/26/urn:ya.ru:post/22199227/1365/" >
26 июня 2011 года, 04:52
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
</noindex>
<div class="post-title">
</div>
<div class="row post-body">
<div class="b-text">
<p>все четыре глаза красные и хотят спать [8]_[8]</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div><div class="panel panel-text">
<div class="panel-heading b-post-type b-post-type-text">
<b class="b-user">
<a class="b-user__link" href="http://imdagger.github.io/author/imdagger.html"><b class="b-user__first-letter">I</b>MDagger</a>
</b>
написал <span class="pull-right b-date">
<a class="h-link" href="http://imdagger.github.io/posts/2011/06/26/chast-perevoda-iz-istorii-gobolinux/" >
26 июня 2011 года, 04:50
</a>
</span>
</div>
<div class="panel-body">
<div class="col-sm-1 b-post__layout-left">
<a href="http://imdagger.github.io/author/imdagger.html"><img src="http://upics.yandex.ru/22199227/middle"></a>
</div>
<div class="col-sm-11 b-right-col">
<noindex>
<div class="row tags-row">
<span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/gobolinux.html">GoboLinux</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/statia.html">статья</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/chast.html">часть</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/perevod.html">перевод</a></span>, <span class="tag"><a rel="nofollow" class="h-link" href="http://imdagger.github.io/tag/linux.html">linux</a></span></div>
</noindex>
<div class="post-title">
<a class="no-link" href="http://imdagger.github.io/posts/2011/06/26/chast-perevoda-iz-istorii-gobolinux/">Часть перевода из истории GoboLinux</a> </div>
<div class="row post-body">
<div class="b-text">
<p>Перевёл (глаза уже закрываются, утро же… спать хочется, почему я
решил под утро перевести эту статью я не знаю) чуть больше половины вот
этой <a class="reference external" href="http://www.gobolinux.org/index.php?lang=en_US&page=k5">статьи</a>.
Завтра пеерведу остаток и отправлю на сайт создателей:</p>
<p>Hisham Muhammad, 09 Мая 2003.</p>
<p>За последнее время было множество споров о текущем состоянии Linux
как настольной системы, и статьи всплывали тут и там, иногда с очень
хорошими идеями. Однако ничто меня не удивило более, чем одна из них.
Она была вся очень гипотетическая, но имела довольно радикальные идеи
относительно того, как по их мнению дерево каталогов Linux должно быть
реорганизовано. Это несомненно была наиболее полемичная часть статьи, и
вызвала много дискуссий, о том возможно ли реализовать нечто подобное.
Это и есть причина для моего удивления, т.к. мы это реализовали более
года назад. GoboLinux это дистрибутив Linux основанный на альтернативном
дереве каталогов, которое развилось из самодельной инсталляции LFS в
дистрибутив, который сегодня используется и поддерживается небольшой
группой людей. Было любопытно наблюдать как множество людей
заинтересовано в идеях похожих на наши. Что ж, возможно это время для
нас, чтобы выйти из тени.</p>
<p>Немного истории</p>
<p>Мы все помним время, когда разговор о дистрибутивах Linux для
настольных компьютеров подразумевал спор какой из них имеет лучший
инсталлятор. Многое изменилось с тех пор: лёгкие, графические
инсталляторы уже здесь, но мы всё ещё не там, где нужно. Из числа
обычных напыщенных речей на тему «почему (вписать наболевшее сюда) это
проблема», некоторые интересные идеи появляются время от времени. Ещё
интереснее то, что некоторые люди начинали верить что возможно это время
для более рискованных попыток.</p>
<p>Как ни странно, то GoboLinux не начался как одна из таковых. Всё
началось когда мне нужно было установить программы в Университете. Т.к.
я не имел доступа на запись в стандартные Unix-директории, то я создавал
мои собственные директории в $HOME тем способом, как я видел это. Я
обновлял программы из исходных кодов постоянно, и не мог использовать
пакетный менеджер. Моё решение было наиболее очевидным: размещать каждую
программу в её собственной директории, например ~/Programs/AfterStep.
Вскоре переменные среды (PATH, LD_LIBRARY_PATH…) становились всё
больше и больше, тогда я сделал централизованные директории для каждого
класса файлов, содержащих символические ссылки: ~/Libraries, ~/Headers и
т.д. Естественным продолжением было написать сценарии командной
оболочки, чтобы управлять ссылками, скриптами конфигурации и
Make-файлами.</p>
<p>Такой подход доказал, что очень удобен в использовании. На моей
домашней системе я начал постепенно удалять ранее собранные пакеты и
перекомпилировать их с помощью тех скриптов. Я занимался перемещением
полностью самодельной Linux системы, которую в шутку называл LodeLinux.
Когда около 80% от всего было завершенного, выскочил Великий Сбой
Файловой Системы. Это было время начать всё сначала, но в этот раз по
другому пути: вместо «деконструирования» существующего дистирбутива, я
(Hisham Muhammad) и мой друг, André Detsch, потратили два дня собирая
модифицированную Linux From Scratch систему. Без особой суеты, 20 Марта
2002 родился GoboLinux. Месяц спустя мы представили статью в 3-ем
Workshop в Free Software названную «Новое предложение для дерева
каталогов Unix».</p>
<p>О чём вообще всё это?</p>
<p>GoboLinux явно не «просто ещё один Linux дистрибутив для
настольного компьютера». Он целиком базируется на альтернативной
структуре директорий. Каждая программа живёт в её собственной
директории: Вы найдёте XFree86 4.3 в /Programs/XFree86/4.3/, и ping в
/Programs/Netkit-Base/0.17/bin/ping. Чтобы просмотреть что за программы
инсталлированны в системе достаточно просто сделать ls /Programs.</p>
<p>Для каждой категории файлов есть директория в /System/Links
группирующая файлы из каждого приложения как символические ссылки:
Executables, Libraries, Headers, Shared и Manual. Для совместимости,
каждая “традиционная” директория это ссылка на соответствующую
категорию. Более того /bin, /sbin, /usr/bin, /usr/local/bin (и т.д.)
просто символические ссылки на /System/Links/Executables. Переменные
среды тоже очень простые: достаточно сделать <code class="code">
export
PATH=/System/Links/Executables</code>
.</p>
<p>Коротко говоря, то что мы имеем это система управления пакетами без
базы данных, структура директорий сама по себе организует систему (разве
не это было её первоначальной целью в конце концов?). Каждая директория
программы (например, /Programs/KDE) содержит директории с каталогами
версий (/Programs/KDE/3.0, /Programs/KDE/3.1.1), и безверсионную
директорию для настроек (/Programs/KDE/Settings), чтобы хранить файлы,
которые обычно хранились бы в /etc. Поддерживание двух и более версий
библиотек тривиально. Когда большинство дистрибутивов переключилось на
GCC3 они выпустили новую старшую версию, по большому счёту не
совместимую с предыдущими. Когда в версии 006 GoboLinux адаптировали
GCC3, это было лишь вопросом поддержания старых версий библиотек рядом с
новыми, пока они полностью постепенно не были бы убраны. Никаких
«пакетов совместимости» не потребовалось.</p>
<p>Большинство задач в GoboLinux автоматизированы набором скриптов.
Чтобы создать GoboLinux пакет, нужно всего лишь написать нечто подобное
на CreatePackage CoreUtils. Всё, что делает данная комманда — это
сохраненяет CoreUtils/5.0/ и CoreUtils/Settings в .tar.bz2 файл с
названием CoreUtils–5.0–i686.tar.bz2. Ссылка с названием
/Programs/CoreUtils/Current показывает какая версия на данным момент
действует. Она используется скриптами как ‘версия по умолчанию’.
Установка программы управляется тремя скриптами: PrepareProgram, который
создаёт /Programs/ иерархию и передаёт подходящие опции для configure.
SymlinkProgram создаёт ссылки в /System/Links. Скрипт обёртка
CompileProgram заменяет обычный <code class="code">
configure && make && make install</code>
подход
(с множеством опций командной строки, чтобы учесть особые случаи).</p>
<p>Альтернативные скрипты загрузки</p>
<p>С того момента как мы почувствовали, что мы «строим с нуля» и мы
хотим делать систему, где всё значимо для нас, мы также потратили время
на то, чтобы перепродумать сценарии загрузки. Я ощущал, что две
исторические модели (System V и BSD) были перебором для нашей установки
на обычном настольном компьютере. GoboLinux использует систему попроще:
два скрипта, Init и Done, которые делают большинство работы.
Дополнительные скрипты такие как Multi и Single заботятся об runlevel-е.
Эти файлы просто последовательность комманд, начинающихся со слова Exec
и строки с сообщением. Вот выдержка из Init:</p>
<blockquote>
<div class="line-block">
<div class="line">Exec "Setting clock..." SetClock</div>
<div class="line">Exec "Loading keymap..." loadkeys "$KeymapLayout"</div>
<div class="line">Exec "Bringing up the loopback interface..." ifconfig lo 127.0.0.1</div>
</div>
</blockquote>
<p>Более сложные задачи такие как SetClock объявлены, как функции
командной оболочки в файле Tasks (эти задачи могут быть также вызваны из
командной строки используя Runtask скрипт). Настройки для
конфигурирования объявлены, как переменные среды в Options файле.
Функция обёртка Exec позволяет реализовать стильные дополнительные
возможности, такие как темы загрузок. Последовательность загрузки может
выглядеть как Slackware подобная (с обычными сообщениями в поток
стандартного вывода/ошибки), похожая на RedHat (с множеством OK), или в
стиле GoboLinux (последний использует модифицированную версию Linux
Progress Patch).</p>
</div>
</div>
<div class="row comments-row">
<span><a class="pseudo-link b-candy b-comment-shortcut"><i class="b-ico"></i>ответить</a></span>
</div>
</div>
</div>
</div> <div class="panel panel-default">
<div class="panel-body more">
<span class="less-prev"><a class="h-link" href="http://imdagger.github.io/index38.html">Назад</a></span>
<span class="more-next"><a class="h-link" href="http://imdagger.github.io/index40.html">Ещё записи</a></span>
</div>
</div>
</div>
</div>
</div>
</body>
</html>