This file is indexed.

/usr/share/doc/cdd-doc/html/ch-general.en.html is in cdd-doc 0.5.6.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">

<html>

<head>

<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">

<title>Custom Debian Distributions - General ideas</title>

<link href="index.en.html" rel="start">
<link href="ch-about.en.html" rel="prev">
<link href="ch-existing.en.html" rel="next">
<link href="index.en.html#contents" rel="contents">
<link href="index.en.html#copyright" rel="copyright">
<link href="ch-introduction.en.html" rel="chapter" title="1 Introduction">
<link href="ch-about.en.html" rel="chapter" title="2 What are Custom Debian Distributions?">
<link href="ch-general.en.html" rel="chapter" title="3 General ideas">
<link href="ch-existing.en.html" rel="chapter" title="4 Existing Custom Debian Distributions">
<link href="ch-inside.en.html" rel="chapter" title="5 Distributions inside Debian">
<link href="ch-technology.en.html" rel="chapter" title="6 Technology">
<link href="ch-starting.en.html" rel="chapter" title="7 How to start a Custom Debian Distribution">
<link href="ch-sentinel.en.html" rel="chapter" title="8 The web sentinel">
<link href="ch-todo.en.html" rel="chapter" title="9 To do">
<link href="ap-DevelDescription.en.html" rel="appendix" title="A Description of development tools">
<link href="ap-QuickIntro.en.html" rel="appendix" title="B Quick intro into building metapackages">
<link href="ap-bts.en.html" rel="appendix" title="C Using the Bug Tracking System">
<link href="ch-about.en.html#s-debian" rel="section" title="2.1 What is Debian?">
<link href="ch-about.en.html#s-whatdebian" rel="section" title="2.2 What is Debian? (next try)">
<link href="ch-about.en.html#s-difference" rel="section" title="2.3 Differences from other distributions">
<link href="ch-about.en.html#s-CDD" rel="section" title="2.4 Custom Debian Distributions">
<link href="ch-general.en.html#s-lookbeyond" rel="section" title="3.1 Looking beyond">
<link href="ch-general.en.html#s-motivation" rel="section" title="3.2 Motivation">
<link href="ch-general.en.html#s-status" rel="section" title="3.3 Status of specialised Free Software">
<link href="ch-general.en.html#s-general_problem" rel="section" title="3.4 General problem">
<link href="ch-general.en.html#s-philosophy" rel="section" title="3.5 Custom Debian Distributions from philosophical point of view">
<link href="ch-existing.en.html#s-debian-jr" rel="section" title="4.1 Debian Junior: Debian for children from 1 to 99">
<link href="ch-existing.en.html#s-debian-med" rel="section" title="4.2 Debian-Med: Debian in Health Care">
<link href="ch-existing.en.html#s-debian-edu" rel="section" title="4.3 Debian Edu: Debian for Education">
<link href="ch-existing.en.html#s-demudi" rel="section" title="4.4 DeMuDi: Debian Multimedia Distribution">
<link href="ch-existing.en.html#s-debian-gis" rel="section" title="4.5 Debian-GIS: Geographical Information Systems">
<link href="ch-existing.en.html#s-debichem" rel="section" title="4.6 DebiChem: Debian for Chemistry">
<link href="ch-existing.en.html#s-debian-science" rel="section" title="4.7 Debian-Science: Debian for science">
<link href="ch-existing.en.html#s-stalled-cdds" rel="section" title="4.8 CDDs that were announced but development is stalled">
<link href="ch-inside.en.html#s-fork" rel="section" title="5.1 To fork or not to fork">
<link href="ch-inside.en.html#s5.2" rel="section" title="5.2 Adaptation to any purpose">
<link href="ch-technology.en.html#s-metapackages" rel="section" title="6.1 Metapackages">
<link href="ch-technology.en.html#s-mp_handling" rel="section" title="6.2 Handling of metapackages">
<link href="ch-technology.en.html#s-userroles" rel="section" title="6.3 User roles">
<link href="ch-technology.en.html#s-devtools" rel="section" title="6.4 Development tools">
<link href="ch-technology.en.html#s-othertools" rel="section" title="6.5 Other interesting tools">
<link href="ch-starting.en.html#s-planning" rel="section" title="7.1 Planning to form a Custom Debian Distribution">
<link href="ch-starting.en.html#s-setting_up" rel="section" title="7.2 Setting up">
<link href="ch-starting.en.html#s-structure" rel="section" title="7.3 Project structure">
<link href="ch-starting.en.html#s-first_release" rel="section" title="7.4 First release">
<link href="ch-sentinel.en.html#s-packageslist" rel="section" title="8.1 Existing and prospective packages">
<link href="ch-sentinel.en.html#s-ddtp" rel="section" title="8.2 Debian Description Translation Project">
<link href="ch-sentinel.en.html#s-bugs" rel="section" title="8.3 Bugs overview">
<link href="ch-sentinel.en.html#s-svnoverview" rel="section" title="8.4 SVN overview">
<link href="ch-sentinel.en.html#s-qareport" rel="section" title="8.5 Quality assurance report">
<link href="ch-todo.en.html#s-communication" rel="section" title="9.1 Establishing and using communication platforms">
<link href="ch-todo.en.html#s-visibility" rel="section" title="9.2 Enhancing visibility">
<link href="ch-todo.en.html#s-debtags" rel="section" title="9.3 Debian Package Tags">
<link href="ch-todo.en.html#s-EnhancingTechnology" rel="section" title="9.4 Enhancing basic technologies regarding Custom Debian Distributions">
<link href="ch-todo.en.html#s-liveCD" rel="section" title="9.5 Building Live CDs of each Custom Debian Distribution">
<link href="ch-todo.en.html#s-new_ways_of_distribution" rel="section" title="9.6 New way to distribute Debian">
<link href="ap-DevelDescription.en.html#s-cdd-dev" rel="section" title="A.1 Package <code>cdd-dev</code>">
<link href="ap-DevelDescription.en.html#s-cdd-common" rel="section" title="A.2 Package <code>cdd-common</code>">
<link href="ap-DevelDescription.en.html#s-svn" rel="section" title="A.3 Working with <code>svn</code>">
<link href="ap-QuickIntro.en.html#s-Dependencies" rel="section" title="B.1 Defining dependencies for metapackages">
<link href="ap-QuickIntro.en.html#s-Packaging" rel="section" title="B.2 The packaging directory">
<link href="ap-QuickIntro.en.html#s-common-metapackage" rel="section" title="B.3 The common metapackage">
<link href="ap-QuickIntro.en.html#s-metapackage-menus" rel="section" title="B.4 The metapackage menus">
<link href="ap-QuickIntro.en.html#s-any-dependency--menus" rel="section" title="B.5 Menu for any dependency">
<link href="ap-bts.en.html#s-howto_itp" rel="section" title="C.1 How to ask for packages which are not yet included">
<link href="ap-bts.en.html#s-howto_file_bugs" rel="section" title="C.2 How to report problems">
<link href="ch-general.en.html#s-userprofile" rel="subsection" title="3.2.1 Profile of target users">
<link href="ch-general.en.html#s-adminprofile" rel="subsection" title="3.2.2 Profile of target administrators">
<link href="ch-existing.en.html#s-debian-desktop" rel="subsection" title="4.8.1 Debian-Desktop: Debian GNU/Linux for everybody">
<link href="ch-existing.en.html#s-debian-lex" rel="subsection" title="4.8.2 Debian-Lex: Debian GNU/Linux for Lawyers">
<link href="ch-existing.en.html#s-accessibility" rel="subsection" title="4.8.3 Debian Accessibility Project">
<link href="ch-existing.en.html#s-debian-enterprise" rel="subsection" title="4.8.4 Debian Enterprise">
<link href="ch-existing.en.html#s-other" rel="subsection" title="4.8.5 Other possible Custom Debian Distributions">
<link href="ch-inside.en.html#s-commercialfork" rel="subsection" title="5.1.1 Commercial forks">
<link href="ch-inside.en.html#s-noncommercialfork" rel="subsection" title="5.1.2 Non-commercial forks">
<link href="ch-inside.en.html#s-disadvantages" rel="subsection" title="5.1.3 Disadvantages of separate distribution">
<link href="ch-inside.en.html#s-advantages" rel="subsection" title="5.1.4 Advantages of integration into Debian">
<link href="ch-inside.en.html#s5.1.5" rel="subsection" title="5.1.5 Enhancing Debian">
<link href="ch-technology.en.html#s-defmetapackages" rel="subsection" title="6.1.1 Metapackage definition">
<link href="ch-technology.en.html#s-collection" rel="subsection" title="6.1.2 Collection of specific software">
<link href="ch-technology.en.html#s-configuration" rel="subsection" title="6.1.3 Adapted configuration inside metapackages">
<link href="ch-technology.en.html#s-documentation" rel="subsection" title="6.1.4 Documentation packages">
<link href="ch-technology.en.html#s-cmdline" rel="subsection" title="6.2.1 Command line tools">
<link href="ch-technology.en.html#s-text_ui" rel="subsection" title="6.2.2 Text user interfaces">
<link href="ch-technology.en.html#s-gui" rel="subsection" title="6.2.3 Graphical user interfaces">
<link href="ch-technology.en.html#s-web_if" rel="subsection" title="6.2.4 Web interfaces">
<link href="ch-technology.en.html#s-future_handling" rel="subsection" title="6.2.5 Future handling of metapackages">
<link href="ch-technology.en.html#s-menu_tools" rel="subsection" title="6.3.1 User menu tools">
<link href="ch-technology.en.html#s-user-menus" rel="subsection" title="6.3.1.1 Using the Debian menu system">
<link href="ch-technology.en.html#s-user-debconf" rel="subsection" title="6.3.1.2 Managing Custom Debian Distribution users with <code>debconf</code>">
<link href="ch-technology.en.html#s-simple-cdd" rel="subsection" title="6.5.1 Simple-CDD">
<link href="ch-starting.en.html#s-leadership" rel="subsection" title="7.1.1 Leadership">
<link href="ch-starting.en.html#s-defining_scope" rel="subsection" title="7.1.2 Defining the subproject scope">
<link href="ch-starting.en.html#s-initial_discussion" rel="subsection" title="7.1.3 Initial discussion">
<link href="ch-starting.en.html#s-calling_all_developers" rel="subsection" title="7.1.3.1 Calling all developers">
<link href="ch-starting.en.html#s-steering_the_discussion" rel="subsection" title="7.1.3.2 Steering the discussion">
<link href="ch-starting.en.html#s7.2.1" rel="subsection" title="7.2.1 Mailing list">
<link href="ch-starting.en.html#s7.2.2" rel="subsection" title="7.2.2 Web space">
<link href="ch-starting.en.html#s7.2.3" rel="subsection" title="7.2.3 Repository">
<link href="ch-starting.en.html#s7.2.4" rel="subsection" title="7.2.4 Formal announcement">
<link href="ch-starting.en.html#s7.2.5" rel="subsection" title="7.2.5 Explaining the project">
<link href="ch-starting.en.html#s-subsetting_debian" rel="subsection" title="7.3.1 Sub-setting Debian">
<link href="ch-starting.en.html#s-tasksel" rel="subsection" title="7.3.2 Using tasksel and metapackages">
<link href="ch-starting.en.html#s-release_announcement" rel="subsection" title="7.4.1 Release announcement">
<link href="ch-starting.en.html#s-users" rel="subsection" title="7.4.2 Users of a Custom Debian Distribution">
<link href="ch-starting.en.html#s-user_support" rel="subsection" title="7.4.2.1 Devoting resources to the users">
<link href="ch-starting.en.html#s-devel_vs_user_list" rel="subsection" title="7.4.2.2 Developer vs. user mailing list">
<link href="ch-starting.en.html#s-user_support_beyond_debian" rel="subsection" title="7.4.2.3 User support beyond Debian">
<link href="ch-todo.en.html#s-webpages" rel="subsection" title="9.2.1 Custom Debian Distributions web pages">
<link href="ch-todo.en.html#s-graphingwebpages" rel="subsection" title="9.2.2 Automatically graphing the metapackage dependencies for web pages">
<link href="ap-DevelDescription.en.html#s-cdd-tasks.desc" rel="subsection" title="A.1.1 CDD<samp>-tasks.desk</samp>">
<link href="ap-DevelDescription.en.html#s-debian_control" rel="subsection" title="A.1.2 <samp>debian/control</samp>">
<link href="ap-DevelDescription.en.html#s-cdd-clean-helper" rel="subsection" title="A.1.3 <samp>cdd-clean-helper(1)</samp>">
<link href="ap-DevelDescription.en.html#sA.1.4" rel="subsection" title="A.1.4 Apt <code>sources.list</code> files in <code>/etc/cdd/</code>">
<link href="ap-DevelDescription.en.html#sA.1.5" rel="subsection" title="A.1.5 Templates in <code>/usr/share/cdd/templates</code>">
<link href="ap-DevelDescription.en.html#sA.2.1" rel="subsection" title="A.2.1 <samp>cdd-role(8)</samp>">
<link href="ap-DevelDescription.en.html#s-cdd-update-menus" rel="subsection" title="A.2.2 <samp>cdd-update-menus(8)</samp>">
<link href="ap-DevelDescription.en.html#sA.2.3" rel="subsection" title="A.2.3 <samp>cdd-user(8)</samp>">
<link href="ap-DevelDescription.en.html#sA.2.4" rel="subsection" title="A.2.4 <samp>cdd.conf(5)</samp>">

</head>

<body>

<p><a name="ch-general"></a></p>
<hr>

<p>
[ <a href="ch-about.en.html">previous</a> ]
[ <a href="index.en.html#contents">Contents</a> ]
[ <a href="ch-introduction.en.html">1</a> ]
[ <a href="ch-about.en.html">2</a> ]
[ 3 ]
[ <a href="ch-existing.en.html">4</a> ]
[ <a href="ch-inside.en.html">5</a> ]
[ <a href="ch-technology.en.html">6</a> ]
[ <a href="ch-starting.en.html">7</a> ]
[ <a href="ch-sentinel.en.html">8</a> ]
[ <a href="ch-todo.en.html">9</a> ]
[ <a href="ap-DevelDescription.en.html">A</a> ]
[ <a href="ap-QuickIntro.en.html">B</a> ]
[ <a href="ap-bts.en.html">C</a> ]
[ <a href="ch-existing.en.html">next</a> ]
</p>

<hr>

<h1>
Custom Debian Distributions
<br>Chapter 3 - General ideas
</h1>

<hr>

<h2><a name="s-lookbeyond"></a>3.1 Looking beyond</h2>

<p>
Commercial Linux distributors sell certain products that try to address special
user needs.
</p>
<dl>
<dt>Enterprise solutions</dt>
<dd>
<ul>
<li>
<p>
Corporate Server - Mandrake
</p>
</li>
</ul>
<ul>
<li>
<p>
Advanced Server - RedHat
</p>
</li>
</ul>
<ul>
<li>
<p>
Enterprise Server - SuSE
</p>
</li>
</ul>
</dd>
</dl>
<dl>
<dt>Small Office and Home Office (SOHO)</dt>
<dd>
<p>
There are a couple of workstation or home editions, as well as office desktops
built by several GNU/Linux distributors.
</p>
</dd>
</dl>
<dl>
<dt>Special task products</dt>
<dd>
<dl>
<dt>Mail server</dt>
<dd>
<p>
SuSE Linux Openexchange Server
</p>
</dd>
</dl>
<dl>
<dt>Firewall</dt>
<dd>
<p>
Multi Network Firewall - Mandrake, SuSE Firewall on CD, ...
</p>
</dd>
</dl>
<dl>
<dt>Cluster</dt>
<dd>
<p>
Mandrake Clustering
</p>
</dd>
</dl>
<dl>
<dt>Content Management System</dt>
<dd>
<p>
RedHat
</p>
</dd>
</dl>
<dl>
<dt>Portal Server</dt>
<dd>
<p>
RedHat
</p>
</dd>
</dl>
</dd>
</dl>

<p>
This is only a small set of examples of commercial GNU/Linux distributors
addressing specific user interests with certain products.
</p>

<p>
Debian solves this problem with <strong>Custom Debian Distributions</strong>.
</p>

<hr>

<h2><a name="s-motivation"></a>3.2 Motivation</h2>

<hr>

<h3><a name="s-userprofile"></a>3.2.1 Profile of target users</h3>

<p>
The target user of a Custom Debian Distribution may be a specialist of a
certain profession, (e.g.  a doctor or lawyer,) a person who has not (yet)
gathered a certain amount of computer knowledge, (e.g.  a child,) or a person
with disabilities (e.g.  a visually or hearing impaired person.) Moreover, the
customisation might deal with peculiarities of certain regions where users have
needs that differ from Debian as a whole.
</p>

<p>
It is not unusual for these target users to be less technically competent than
the stereotypical Linux user.  These people are often not interested in the
computer for its own sake, but just want it to work for them.  Imagine the
frustration of a doctor who has to move the focus of interest from the patient
to his stupid computer that does not work as expected.
</p>

<p>
Because of limited knowledge or time, the target user is usually unable to
install upstream programs.  This means that in the first place, they must find
out which software packages in their distribution might serve for a certain
problem.  The next step would be to download and install the packages they
choose, perhaps requiring a certain amount of configuration effort.  This
problem is nearly impossible for a user with limited technical competence and
perhaps poor English language comprehension, which prevents the user from
understanding the installation manual.
</p>

<p>
The language barrier in this field is an important issue, because we are
targeting everyday users who are not compelled to learn English, like Free
Software developers are, for everyday communication.  So the installation
process has to involve the least possible user interaction, and any such
interaction has to be internationalised.
</p>

<p>
Furthermore, most target users have no or little interest in administration of
their computer.  In short, the optimal situation would be that he would not
even notice the existence of the computer, but just focus on using the
application to accomplish the task at hand.
</p>

<p>
Common to all groups of target users is their interest in a defined subset of
available Free Software.  None of them would like to spend much time searching
for the package that fits his interest.  Instead, the target user would prefer
to immediately and effortlessly locate and access all material relevant to
solving his own problems.
</p>

<p>
There is an absolute need for easy usage of the programs.  This is not to say
users expect to not have to learn to use the software.  Adults generally accept
that they must spend a reasonable amount of time in learning how to use a piece
of software before they can do something useful and productive with it.  But a
simple-to-learn environment greatly enhances the value of the software, and if
you consider children as target users, they just want to start using it right
away without reading any documentation.
</p>

<p>
The more important part of the request for easy usage is a professional design
that is functional and effective.  To accomplish this, the programmers need
expert knowledge, or at least a quick communication channel to experts to learn
more about their requirements.  One task for Custom Debian Distributions is to
bring programmers and experts who will use those special programs together.
</p>

<p>
Last, but not least, we find certain requirements beyond just which packages
are provided in each target user group.  These may differ between different
Custom Debian Distributions.  For instance, while a doctor has to protect his
database against snooping by outside attackers, the privacy risk for a child's
system are of lesser importance.  Thus, the Debian Junior project cares more
for ensuring that the user himself does not damage the desktop environment
while playing around with it than about remote attacks.  So we find a
&quot;defined security profile&quot; for each single Custom Debian
Distribution.
</p>

<hr>

<h3><a name="s-adminprofile"></a>3.2.2 Profile of target administrators</h3>

<p>
In the field that should be covered by Custom Debian Distributions, we have to
face also some common problems for system administrators.  Often they have
limited time in which they must serve quite a number of computers, and thus
they are happy about each simplification of the administration process.  The
time required to make special adaptations for the intended purpose has to be
reduced to a minimum.
</p>

<p>
So, administrators are looking for timesaving in repetitive tasks.  While this
is a common issue for each general GNU/Linux distribution, this could have
certain consequences in the special fields Custom Debian Distributions want to
address.
</p>

<p>
Another problem administrators face is that they are often not experts in their
clients' special field of work.  Thus, they may need some specialist knowledge
to explain the use of special programs to their users, or at least need to be
able to communicate well with the experts about their special needs, and how
the software can be used to address them.
</p>

<hr>

<h2><a name="s-status"></a>3.3 Status of specialised Free Software</h2>

<p>
Programs like a web server, or a mail user agent are used by many different
users.  That is why many gifted programmers feel obliged for this kind of Free
Software - they just need it for their own.  So you normally find a fast,
growing community around Free Software packages that have a wide use.  This is
different for specialised software.
</p>

<p>
In this context, the term &quot;specialised software&quot; refers to the kind
of software that is needed by some experts for their job.  This might be a
practice management system that is used by doctors, a graphical information
system (GIS) that is used by geographers, a screen reader that helps blind
people to work with the computer, etc.  The difference between such software
and widely used software like office suites is that the user base is relatively
small.  This is also true for certain software that supports special
localisation issues.
</p>
<ul>
<li>
<p>
Specialist software is used only by a limited set of users (i.e.  the
specialists).  There exists a set of software tools that work perfectly in the
environment where they were developed.  If the developers catch the idea of
Free Software, and just release this software as-is, people in the new, broader
user community often run into trouble getting it to work in their environment.
This happens because the developers did not really care about a robust
installation process that works outside their special environment.  As well,
installation instructions are often badly written, if they exist at all.  But
these problem can be easily solved by shipping the software as policy-compliant
binary packages, which not only ease installation, but also require
documentation to be included.  Thus, mere inclusion in Debian benefits the
whole user base of any specialised software.
</p>
</li>
</ul>
<ul>
<li>
<p>
The trouble often continues in the maintenance of the installed software.
</p>
</li>
</ul>
<ul>
<li>
<p>
When it comes to the usage of the specialist software, it often happens that it
perfectly fits the needs of the developer who wrote it for his own purposes,
and who is familiar with its quirks, but in many cases such software does not
comply with ergonomic standards of user interfaces.
</p>
</li>
</ul>
<ul>
<li>
<p>
Several existing programs that might be useful for specialists are not really
free in the sense of the <code><a
href="http://www.debian.org/social_contract#guidelines">Debian Free Software
Guidelines (DFSG)</a></code>.  Programs that are incompatible with the DFSG
cannot be included in Debian.  This is possibly a drawback for those programs,
because they could profit by spreading widely on the back of Debian over the
whole world.
</p>
</li>
</ul>
<ul>
<li>
<p>
A certain number of programs are developed at universities by students or
graduates.  Once these people leave the university, the programs they developed
might be orphaned; <em>i.e.</em>, not actively maintained anymore.  If their
licenses are too restrictive, it may be impossible for anyone else to take
over; sticking to <code><a
href="http://www.debian.org/social_contract#guidelines">DFSG</a></code>-free
licenses avoids that problem.
</p>
</li>
</ul>
<ul>
<li>
<p>
In special fields, often &quot;typical&quot; (not necessarily Intel-based)
hardware architectures are used.  Debian currently runs on 11 different
architectures, and automatic build servers normally compile software packages
as necessary.  If auto-builders for other architectures show problems, Debian
maintainers will normally fix them, and send the original authors a patch.
Moreover, users can report run-time problems via the <code><a
href="http://www.debian.org/Bugs/">Debian Bug Tracking System</a></code>.
</p>
</li>
</ul>
<ul>
<li>
<p>
Many programs that are written from scratch use their own non-standard file
formats.  However, it is often important for programs to be able to share data
with each other.
</p>
</li>
</ul>
<ul>
<li>
<p>
Often there are several programs that try to solve identical or similar
problems.  The <code><a
href="http://people.debian.org/~tille/debian-med/talks/paper/debian-med.html">paper
about Debian-Med</a></code> illustrates this in detail for the problem of
medical practice management.  Normally, all these programs take very
interesting approaches but all of them have certain drawbacks.  So, joining
programmers' forces might make sense here.
</p>
</li>
</ul>
<ul>
<li>
<p>
Sometimes the tools or back-ends used in Free Software are not appropriate for
such applications.  For instance, sometimes database servers that do not use
transactions are used to store medical records, which is completely
unacceptable.  Other programs use web clients as their front-end, which is not
really good for quick (mouse-less) usage, a great shortcoming for repetitive
tasks.
</p>
</li>
</ul>

<hr>

<h2><a name="s-general_problem"></a>3.4 General problem</h2>

<p>
Free Software development is a kind of evolutionary process.  It needs a
critical mass of supporters, who are:
</p>
<ul>
<li>
<p>
programmers <em>and</em>
</p>
</li>
</ul>
<ul>
<li>
<p>
users
</p>
</li>
</ul>

<p>
Because specialised software has a limited set of users, (specialists,) this
results in a limited set of programmers.
</p>

<p>
Debian wants to attract both groups to get it working.
</p>

<p>
<strong>Debian is the missing link between upstream developers and
users.</strong>
</p>

<hr>

<h2><a name="s-philosophy"></a>3.5 Custom Debian Distributions from philosophical point of view</h2>

<p>
Debian currently grows in several directions:
</p>
<ul>
<li>
<p>
Number of involved people
</p>
</li>
</ul>
<ul>
<li>
<p>
Number of packages
</p>
</li>
</ul>
<ul>
<li>
<p>
Number of architectures
</p>
</li>
</ul>
<ul>
<li>
<p>
Number of bugs
</p>
</li>
</ul>
<ul>
<li>
<p>
Number of users
</p>
</li>
</ul>
<ul>
<li>
<p>
Number of derivatives
</p>
</li>
</ul>
<ul>
<li>
<p>
Time span between releases
</p>
</li>
</ul>

<p>
So several features are changing at different rates their quantity.  According
to Hegel a change of quantity leads into a change in quality.  That means that
Debian will change at a certain point in time (or over a certain time span) its
quality.
</p>

<p>
&quot;To determine at the right moment the critical point where quantity
changes into quality is one of the most important and difficult tasks in all
the spheres of knowledge.&quot; (Trotzki) This might mean that we just passed
the point in time when Debian changed its quality.  At one point we even
observed a change once the package pool system was implemented to cope with the
increased number of packages while trying to reduce the time span between
releases.  Even if the plan to increase the frequencies of releases failed
Debian became a new quality.  People started using the <code>testing</code>
distribution even in production which was not really intended and in a
consequence even security in <code>testing</code> was implemented for Sarge.
</p>

<p>
According to Darwin evolution happens through quantitative transformations
passing into qualitative.  So Debian has to evolve and to cope with the inner
changes and outer requirements to survive in the Linux distribution
environment.
</p>

<hr>

<p>
[ <a href="ch-about.en.html">previous</a> ]
[ <a href="index.en.html#contents">Contents</a> ]
[ <a href="ch-introduction.en.html">1</a> ]
[ <a href="ch-about.en.html">2</a> ]
[ 3 ]
[ <a href="ch-existing.en.html">4</a> ]
[ <a href="ch-inside.en.html">5</a> ]
[ <a href="ch-technology.en.html">6</a> ]
[ <a href="ch-starting.en.html">7</a> ]
[ <a href="ch-sentinel.en.html">8</a> ]
[ <a href="ch-todo.en.html">9</a> ]
[ <a href="ap-DevelDescription.en.html">A</a> ]
[ <a href="ap-QuickIntro.en.html">B</a> ]
[ <a href="ap-bts.en.html">C</a> ]
[ <a href="ch-existing.en.html">next</a> ]
</p>

<hr>

<p>
Custom Debian Distributions
</p>

<address>
5 November 2008<br>
<br>
Andreas Tille <code><a href="mailto:tille@debian.org">tille@debian.org</a></code><br>
<br>
</address>
<hr>

</body>

</html>