/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
"defined security profile" 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 "specialised software" 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 "typical" (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>
"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." (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>
|