You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

makedesc.pl 2.6 KiB

19 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
- Updated copyright date range. - Make unselected buttons be the same color as the window itself. Matches look of new, fixed whiptail, and Closes: #122212 - Note in README that the way to get a task added is a bug report against this package. Closes: #144533 - Removed broken python-bobo from python task. Closes: #180925 - The python task is retarget at providing a subset of the more useful python tools, instead of everything. Semi-randomly removed some stuff. Someone who uses python might want to take over maintainership of this task. - Capitalised first letter of every task, in an effort to look "professional". Closes: #183109 - Removed the fortran task, not sufficiently used. - Added mutt and spamassassin to mail server task. - Fixed menu entry to give full path to su-to-root as it is in sbin for some reason. Closes: #188367 - Replace gnome-gnomines with gnome-games in games task, package rename. Closes: #190874 - Replace xtris with the currently popular tetrinet in games task. - Make "available file" message recommend running dselect update. Closes: #153016, #183690 - Replace netenv (with its nasty boot-time prompt) with guessnet (with its slick new ifupdown integration) in laptop task. - Add hdparm to laptop task, since many laptop users will want to use it to speed up (or turn off!) their disks. Closes: #87450 - Add menu to office task. - Added a java task. Closes: #108061 - Removed inlined Spanish translation of spanish task. However we should add translations, it's not like that! - Added a Thai task. Closes: #122663. Needs review since the bug's package list was 2 years old. - Cleaned up bad wording in most of the descriptions of the language-specific tasks. - Added sudo to unix-server. - Added kernel-compile task for custom kernel building. Closes: #184428 - Blessed the idea of putting Maintainer fields in individual task files. - Removed nonexistant packages from tasks: netscape-zh-resource-477, dialdcost, hanterm - Put cxterm-ks in korean task to replace hanterm. I hope that's right. - Rename mozilla-locale-es to mozilla-locale-es-es. - For chinese-t, use doc-linux-zh-text, which provides traditional chinese. doc-linux-zh-t went away. - doincludes.pl and makedesc.pl use apt-cache dumpavail instead of dselect available file, for more up-to-date information.
18 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
* Modifications to existing tasks: - Replaced talk of "this [meta]package" with "this task", and like changes. - In l10n tasks, s/-speaking// for consistency. - Make all l10n tasks include locales. It's in base, so this is of dubious utility, but some had it and some not. - Changed short descriptions of basic-desktop and desktop in an attempt to clarify how they're different. - Added some comments here and there for unresolved issues. - Largely rewrote Debian Jr. descriptions. - Added menu to desktop task. - Rejiggered mail-server, to be a general purpose mail server, not just imap. - Moved samba-server to file-server, and made that include nfs stuff too. - Added a print-server task, that also includes samba, along with other stuff. - Killed debian-dev(el) task, since it does not meet our task criteria -- nowhere near 10% of debian users are debian developers (we hope!), and probably not enough regular users will use this package to make up the difference. This is my own package, so I'm willing to be persuaded otherwise, though.. - Removed misc window managers from the desktop task. It is unnecessary to list them there, since anXious will let the user choose. - Killed the demo tasks. - Went for consistent capitalization of the short descriptions. Just capitalize proper names. I'm not sure if I like this effect, we may want to capitalize the first word of each description too. - Sundry other changes of little note. * Replaced several occurrances of "task packages" with "tasks" elsewhere in tasksel. * Added -a switch, to show all tasks, even empties. Mostly useful before we get tasks into the Packages files, for a global overview of how the * Added lint check to makedesc.pl -- it will warn at build time about tasks that list unavailable packages. This caught several references to virtual packages, etc already, that need to be fixed.. * VERSION in Makefile automatically tracks changelog.
20 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. #!/usr/bin/perl
  2. #
  3. # makedesc directory file
  4. #
  5. # Scan the directory for files, and use the files to generate a task
  6. # description file. The format of the task description file is described in
  7. # data.c. The format of the input files is:
  8. #
  9. # Task: desktop
  10. # Section: user
  11. # Description: Provide a basic GUI system
  12. # This task provides functionality for a basic desktop; whether Gnome
  13. # based, KDE based or customised. With this task, your system will boot
  14. # into a graphical login screen, at which point you can choose which of
  15. # these desktops you wish to use on a per-user basis. You can further
  16. # customise your desktop once installed.
  17. # Packages-list:
  18. # kdebase
  19. # gdm
  20. # ...
  21. #
  22. # Hash-comments are allowed in the files, but must be on their own lines.
  23. my $dir=shift or die "no directory specified\n";
  24. my $file=shift or die "no file specified\n";
  25. my %package;
  26. my %notmain;
  27. my $dolint=1;
  28. {
  29. local $/="\n\n";
  30. if (! open (AVAIL, "apt-cache dumpavail |")) {
  31. warn "cannot real available info, so disabling lint check\n";
  32. $dolint=0;
  33. }
  34. while (<AVAIL>) {
  35. my ($package)=/Package:\s*(.*?)\n/;
  36. $package{$package}=1;
  37. if (/Section:\s*(contrib|non-free)/) {
  38. $notmain{$package}=$1;
  39. }
  40. }
  41. close AVAIL;
  42. }
  43. open (OUT, ">$file") or die ">$file: $!";
  44. use File::Find;
  45. find({ wanted => \&processfile, preprocess => sub { return sort @_}}, $dir);
  46. sub processfile {
  47. my $file=$_; # File::Find craziness.
  48. $file eq 'po' && -d $file && ($File::Find::prune = 1);
  49. return if $File::Find::dir=~/\.(svn|git)/;
  50. return unless $file =~ /^[-+_.a-z0-9]+$/ and -f $file;
  51. open (IN, $file) or die "$file: $!";
  52. my %fields;
  53. my $field="";
  54. while (<IN>) {
  55. chomp;
  56. next if /^\s*#/;
  57. s/#.*//;
  58. if (/^\s/) {
  59. $fields{$field}.="\n$_";
  60. }
  61. else {
  62. ($field, my $value)=split(/:\s*/, $_, 2);
  63. $field=lc($field);
  64. $fields{$field}=$value;
  65. }
  66. }
  67. close IN;
  68. # Basic lint of the listed packages.
  69. # TODO: a better lint would incloude checks for conflicting
  70. # packages. Hard tho.
  71. if ($dolint) {
  72. foreach my $field (qw(key packages-list)) {
  73. foreach (split ' ', $fields{$field}) {
  74. if (! $package{$_}) {
  75. print STDERR "$file: $_ is not a valid package.\n";
  76. if ($field eq 'key') {
  77. print STDERR "MISSING KEY PACKAGE, TASK BROKEN\n";
  78. }
  79. }
  80. if ($notmain{$_}) {
  81. print STDERR "$file: $_ is in $notmain{$_}.\n";
  82. if ($field eq 'key') {
  83. print STDERR "MISSING KEY PACKAGE, TASK BROKEN\n";
  84. }
  85. }
  86. }
  87. }
  88. }
  89. foreach (qw{task section relevance description key enhances provides depends packages},
  90. grep(/^test-(.*)/, keys %fields)) {
  91. print OUT ucfirst($_).": ".$fields{$_}."\n" if length $fields{$_};
  92. }
  93. print OUT "\n";
  94. }
  95. close OUT;