David Walluck a écrit : > Hi. Where can I find the latest requirements for Mandrake RPM spec files, > or are these internal documents only? For example, how do I add a menu > entry, is %{_prefix} and %{_tmppath} now required? this are internal documents ! i attach some files which can help you find your way in building Mandrake packages ;-) > > Also, I think I saw Network/IRC as a new group? irssi isn't in this group, > and the version is quite old. what version of irssi ?? the one i uploaded is in Networking/IRC . Anyway , i check and fix this ! -- /\ ------------------------------^^/°°\^^-------------------------- | Daouda LO email:[EMAIL PROTECTED] | | MandrakeSoft SA | | working on KDE-Gnome interoperability. | ----------------------------------------------------------------
System/Servers: cleanfeed System/Servers: mcserv System/Servers: ucd-snmp System/Servers: xntp3 System/Servers: portmap System/Servers: auth_ldap System/Servers: at System/Servers: sympa System/Servers: sendmail System/Servers: sendmail-doc System/Servers: apache System/Servers: mod_perl System/Servers: mod_php3 System/Servers: mod_php3-imap System/Servers: mod_php3-manual System/Servers: mod_php3-pgsql System/Servers: apache-suexec System/Servers: anacron System/Servers: anonftp System/Servers: apmd System/Servers: bind System/Servers: finger System/Servers: nscd System/Servers: gpm System/Servers: imap System/Servers: inn System/Servers: intimed System/Servers: mars-nwe System/Servers: openldap System/Servers: pidentd System/Servers: rsh System/Servers: rwall System/Servers: samba System/Servers: samba-common System/Servers: squid System/Servers: telnet-server System/Servers: tftp System/Servers: rdate System/Servers: vnc-server System/Servers: ypserv System/Servers: vixie-cron System/Servers: wu-ftpd System/Servers: ypbind System/Servers: dhcpcd System/Servers: dhcp System/Servers: esound System/Servers: gated System/Servers: ppp System/Servers: routed System/Servers: bootparamd System/Servers: lpr System/Servers: postfix System/Servers: tcp_wrappers System/Servers: timed System/Kernel and hardware: ipchains System/Kernel and hardware: irda-utils System/Kernel and hardware: sane System/Kernel and hardware: ext2ed System/Kernel and hardware: mkbootdisk System/Kernel and hardware: mkinitrd System/Kernel and hardware: genromfs System/Kernel and hardware: hdparm System/Kernel and hardware: am-utils System/Kernel and hardware: usbview System/Kernel and hardware: raidtools System/Kernel and hardware: fdutils System/Kernel and hardware: fbset System/Kernel and hardware: autofs System/Kernel and hardware: dev System/Kernel and hardware: isdn4net System/Kernel and hardware: eject System/Kernel and hardware: gatos System/Kernel and hardware: bdflush System/Kernel and hardware: imwheel System/Kernel and hardware: e2fsprogs System/Kernel and hardware: bonnie System/Kernel and hardware: bdflush-lowmem System/Kernel and hardware: awesfx System/Kernel and hardware: MAKEDEV System/Kernel and hardware: grub System/Kernel and hardware: lilo System/Kernel and hardware: chos System/Kernel and hardware: sysklogd System/Kernel and hardware: modutils System/Kernel and hardware: adjtimex System/Kernel and hardware: kernel System/Kernel and hardware: kernel-fb System/Kernel and hardware: kernel-ibcs System/Kernel and hardware: kernel-linus System/Kernel and hardware: kernel-pcmcia-cs System/Kernel and hardware: kernel-secure System/Kernel and hardware: kernel-smp System/Kernel and hardware: kernel-utils System/Kernel and hardware: pciutils System/Libraries: Glide_V2 System/Libraries: Glide_V3 System/Libraries: pwdb System/Libraries: pam System/Libraries: pam_ldap System/Libraries: popt System/Libraries: Mesa System/Libraries: Mesa-demos System/Libraries: newt System/Libraries: utempter System/Libraries: MySQL_GPL-shared-libs System/Libraries: mpeg_lib System/Libraries: dialog System/Libraries: nss_ldap System/Libraries: ncurses System/Libraries: termcap System/Libraries: ORBit System/Libraries: aalib System/Libraries: audiofile System/Libraries: gtkglarea System/Libraries: gdbm System/Libraries: bonobo System/Libraries: cracklib System/Libraries: cracklib-dicts System/Libraries: detect System/Libraries: blt System/Libraries: fnlib System/Libraries: freetype System/Libraries: fribidi System/Libraries: gd System/Libraries: gd-utils System/Libraries: gdk-pixbuf System/Libraries: glib System/Libraries: glibc System/Libraries: gmp System/Libraries: gsl System/Libraries: gtk+ System/Libraries: gtk-engines System/Libraries: imlib System/Libraries: imlib-cfgeditor System/Libraries: libtermcap System/Libraries: libtiff System/Libraries: libtool System/Libraries: libungif System/Libraries: libungif-progs System/Libraries: libunicode System/Libraries: libxml System/Libraries: readline System/Libraries: slang System/Libraries: svgalib System/Libraries: tix System/Libraries: tk System/Libraries: expect System/Libraries: itcl System/Libraries: tcl System/Libraries: tclx System/Libraries: xpm System/Libraries: qt2 System/Libraries: qt-qgl System/Libraries: qt-qimgio System/Libraries: qt System/Libraries: zlib System/Libraries: pythonlib System/Libraries: t1lib System/Libraries: compat-glibc System/Libraries: compat-libs System/Libraries: gcc-libgcj System/Libraries: gettext System/Libraries: gimp-libgimp System/Libraries: gnome-libs System/Libraries: gnome-objc System/Libraries: gnome-print System/Libraries: kdelibs System/Libraries: kdesupport System/Libraries: libc System/Libraries: libelf System/Libraries: libghttp System/Libraries: libglade System/Libraries: libgr System/Libraries: libgr-progs System/Libraries: libgtop System/Libraries: libjpeg System/Libraries: libmikmod System/Libraries: libnet System/Libraries: libpcap System/Libraries: libpng System/Libraries: libPropList System/Libraries: libsafe System/Libraries: libstdc++ System/Libraries: libstdc++-compat System/Libraries: libtabe System/Libraries: Xaw3d System/XFree86: xinitrc System/XFree86: X11R6-contrib System/XFree86: XFree86 System/XFree86: XFree86-3dfx System/XFree86: XFree86-3DLabs System/XFree86: XFree86-8514 System/XFree86: XFree86-AGX System/XFree86: XFree86-cyrillic-fonts System/XFree86: XFree86-devel System/XFree86: XFree86-FBDev System/XFree86: XFree86-I128 System/XFree86: XFree86-libs System/XFree86: XFree86-Mach32 System/XFree86: XFree86-Mach64 System/XFree86: XFree86-Mach8 System/XFree86: XFree86-Mono System/XFree86: XFree86-P9000 System/XFree86: XFree86-Rage128 System/XFree86: XFree86-S3 System/XFree86: XFree86-S3V System/XFree86: XFree86-SVGA System/XFree86: XFree86-VGA16 System/XFree86: XFree86-W32 System/XFree86: XFree86-xfs System/XFree86: XFree86-Xnest System/XFree86: XFree86-Xvfb System/XFree86: xinput System/Fonts/True type: fonts-ttf-big5 System/Fonts/True type: fonts-ttf-decoratives System/Fonts/True type: fonts-ttf-gb2312 System/Fonts/True type: fonts-ttf-japanese System/Fonts/True type: fonts-ttf-korean System/Fonts/True type: fonts-ttf-west_european System/Fonts/Type1: urw-fonts System/Fonts/Type1: XFree86-ISO8859-2-Type1-fonts System/Fonts/Type1: ghostscript-fonts System/Fonts/X11 bitmap: XFree86-ISO8859-2-100dpi-fonts System/Fonts/X11 bitmap: XFree86-ISO8859-2 System/Fonts/X11 bitmap: XFree86-ISO8859-2-75dpi-fonts System/Fonts/X11 bitmap: XFree86-ISO8859-9-100dpi-fonts System/Fonts/X11 bitmap: XFree86-75dpi-fonts System/Fonts/X11 bitmap: XFree86-100dpi-fonts System/Fonts/X11 bitmap: XFree86-ISO8859-9 System/Fonts/X11 bitmap: XFree86-ISO8859-9-75dpi-fonts System/Base: filesystem System/Base: mingetty System/Base: getty_ps System/Base: man System/Base: info System/Base: indexhtml System/Base: rootfiles System/Base: shadow-utils System/Base: sh-utils System/Base: util-linux System/Base: mount System/Base: msec System/Base: etcskel System/Base: basesystem System/Base: ldconfig System/Base: ld.so System/Base: initscripts System/Base: netkit-base System/Base: passwd System/Configuration/Hardware: kapm System/Configuration/Hardware: lothar System/Configuration/Hardware: lothar-etherconfig System/Configuration/Hardware: lothar-soundconfig System/Configuration/Hardware: XFree86-XF86Setup System/Configuration/Hardware: kudzu System/Configuration/Hardware: kdpms System/Configuration/Hardware: isapnptools System/Configuration/Hardware: setserial System/Configuration/Hardware: mouseconfig System/Configuration/Hardware: kvideogen System/Configuration/Hardware: Xconfigurator System/Configuration/Hardware: kcmclock System/Configuration/Hardware: sndconfig System/Configuration/Packaging: grpmi System/Configuration/Packaging: gurpmi System/Configuration/Packaging: kpackage System/Configuration/Packaging: MandrakeUpdate System/Configuration/Packaging: rpmtools System/Configuration/Packaging: urpmi System/Configuration/Packaging: rpm System/Configuration/Packaging: rpmdrake System/Configuration/Packaging: gnorpm System/Configuration/Networking: mailcap System/Configuration/Networking: pws System/Configuration/Networking: net-tools System/Configuration/Networking: usernet System/Configuration/Networking: pump System/Configuration/Networking: yp-tools System/Configuration/Networking: netcfg System/Configuration/Networking: gfcc System/Configuration/Networking: fetchmailconf System/Configuration/Networking: ipxutils System/Configuration/Networking: dhcp-client System/Configuration/Networking: sendmail-cf System/Configuration/Networking: isdn4k-utils System/Configuration/Networking: caching-nameserver System/Configuration/Networking: authconfig System/Configuration/Networking: shapecfg System/Configuration/Networking: losetup System/Configuration/Printing: mpage System/Configuration/Printing: ppa System/Configuration/Printing: rhs-printfilters System/Configuration/Printing: printtool System/Configuration/Printing: tunelp System/Configuration/Boot and Init: SysVinit System/Configuration/Boot and Init: linux_logo System/Configuration/Boot and Init: ntsysv System/Configuration/Boot and Init: chos-vchos System/Configuration/Boot and Init: chkconfig System/Configuration/Boot and Init: chkfontpath System/Configuration/Boot and Init: klilo System/Configuration/Boot and Init: tksysv System/Configuration/Boot and Init: rhmask System/Configuration/Other: quota System/Configuration/Other: usermode System/Configuration/Other: gnome-admin System/Configuration/Other: gnome-linuxconf System/Configuration/Other: xtoolwait System/Configuration/Other: drakxtools System/Configuration/Other: numlock System/Configuration/Other: control-panel System/Configuration/Other: crontabs System/Configuration/Other: mandrake_desk System/Configuration/Other: mandrake-release System/Configuration/Other: linuxconf System/Configuration/Other: kdeadmin System/Configuration/Other: DrakConf System/Configuration/Other: kbdconfig System/Configuration/Other: kcmkdesu System/Configuration/Other: setup System/Configuration/Other: setuptool System/Configuration/Other: timeconfig System/Configuration/Other: timetool System/Internationalization: hxa+cv System/Internationalization: kinput2-wnn4 System/Internationalization: ami System/Internationalization: ami-gnome System/Internationalization: Wnn System/Internationalization: gscript System/Internationalization: ispell-ca System/Internationalization: ispell-cs System/Internationalization: ispell-da System/Internationalization: ispell-de System/Internationalization: ispell-el System/Internationalization: ispell-en System/Internationalization: ispell-eo System/Internationalization: ispell-es System/Internationalization: ispell-fi System/Internationalization: ispell-fr System/Internationalization: ispell-id System/Internationalization: ispell-it System/Internationalization: ispell-nl System/Internationalization: ispell-no System/Internationalization: ispell-pl System/Internationalization: ispell-pt System/Internationalization: ispell-pt_BR System/Internationalization: ispell-ro System/Internationalization: ispell-ru System/Internationalization: ispell-sl System/Internationalization: ispell-sv System/Internationalization: mandrake_doc-de System/Internationalization: mandrake_doc-en System/Internationalization: mandrake_doc-es System/Internationalization: mandrake_doc-fr System/Internationalization: mandrake_doc-it System/Internationalization: mandrake_doc-ru System/Internationalization: man-pages System/Internationalization: man-pages-cs System/Internationalization: man-pages-de System/Internationalization: man-pages-es System/Internationalization: man-pages-fr System/Internationalization: man-pages-hu System/Internationalization: man-pages-id System/Internationalization: man-pages-it System/Internationalization: man-pages-ja System/Internationalization: man-pages-ko System/Internationalization: man-pages-pl System/Internationalization: man-pages-ru System/Internationalization: locales System/Internationalization: locales-af System/Internationalization: locales-ar System/Internationalization: locales-bg System/Internationalization: locales-br System/Internationalization: locales-ca System/Internationalization: locales-cs System/Internationalization: locales-cy System/Internationalization: locales-da System/Internationalization: locales-de System/Internationalization: locales-el System/Internationalization: locales-en System/Internationalization: locales-eo System/Internationalization: locales-es System/Internationalization: locales-et System/Internationalization: locales-eu System/Internationalization: locales-fi System/Internationalization: locales-fo System/Internationalization: locales-fr System/Internationalization: locales-ga System/Internationalization: locales-gl System/Internationalization: locales-he System/Internationalization: locales-hr System/Internationalization: locales-hu System/Internationalization: locales-hy System/Internationalization: locales-id System/Internationalization: locales-is System/Internationalization: locales-it System/Internationalization: locales-ja System/Internationalization: locales-ka System/Internationalization: locales-kl System/Internationalization: locales-ko System/Internationalization: locales-lo System/Internationalization: locales-lt System/Internationalization: locales-lv System/Internationalization: locales-nl System/Internationalization: locales-no System/Internationalization: locales-oc System/Internationalization: locales-pl System/Internationalization: locales-pt System/Internationalization: locales-ro System/Internationalization: locales-ru System/Internationalization: locales-sk System/Internationalization: locales-sl System/Internationalization: locales-sr System/Internationalization: locales-sv System/Internationalization: locales-th System/Internationalization: locales-tr System/Internationalization: locales-uk System/Internationalization: locales-vi System/Internationalization: locales-wa System/Internationalization: locales-zh System/Internationalization: acon System/Internationalization: xcin System/Internationalization: kon2 Development/Kernel: lkmpg Development/Kernel: strace Development/Kernel: kernel-doc Development/Kernel: kernel-headers Development/Kernel: kernel-source Development/Databases: perl-Data-ShowTable Development/Databases: perl-DBI Development/Databases: perl-Mysql Development/Databases: postgresql-devel Development/Databases: gdbm-devel Development/Databases: postgresql-jdbc Development/Databases: postgresql-perl Development/Databases: postgresql-python Development/Databases: postgresql-tcl Development/Perl: perl Development/Perl: perl-base Development/Perl: perl-Digest-MD5 Development/Perl: perlftlib Development/Perl: perl-HTML-Parser Development/Perl: perl-IO-stringy Development/Perl: perl-libnet Development/Perl: perl-libwww-perl Development/Perl: perl-MailTools Development/Perl: perl-MD5 Development/Perl: perl-MIME-Base64 Development/Perl: perl-MIME-tools Development/Perl: perl-MPEG-MP3Info Development/Perl: perl-Msgcat Development/Perl: perl-Parse-RecDescent Development/Perl: perl-PDL Development/Perl: perl-Term-Readline-Gnu Development/Perl: perl-URI Development/Python: python Development/Python: python-docs Development/Python: python-imaging Development/Python: python-devel Development/Python: tkinter Development/C: indent Development/C: ibtk Development/C: SDL Development/C: egcs-cpp Development/C: cdecl Development/C: gcc Development/C: gcc-cpp Development/C: rpm-devel Development/C: aalib-devel Development/C: sane-devel Development/C: SDL-devel Development/C: slang-devel Development/C: xmms-devel Development/C: xdelta-devel Development/C: xpm-devel Development/C: zlib-devel Development/C: apmd-devel Development/C: audiofile-devel Development/C: bind-devel Development/C: cdrecord-devel Development/C: detect-devel Development/C: e2fsprogs-devel Development/C: esound-devel Development/C: faces-devel Development/C: fnlib-devel Development/C: freetype-devel Development/C: gd-devel Development/C: gimp-devel Development/C: glibc-devel Development/C: glibc-profile Development/C: glib-devel Development/C: sox-devel Development/C: svgalib-devel Development/C: t1lib-devel Development/C: ucd-snmp-devel Development/C: Wnn-devel Development/C: Xaw3d-devel Development/C: gmp-devel Development/C: gpm-devel Development/C: guile-devel Development/C: ImageMagick-devel Development/C: imap-devel Development/C: kudzu-devel Development/C: libghttp-devel Development/C: libgr-devel Development/C: libjpeg-devel Development/C: libmikmod-devel Development/C: libpng-devel Development/C: libtermcap-devel Development/C: libtiff-devel Development/C: libungif-devel Development/C: libxml-devel Development/C: linuxconf-devel Development/C: Mesa-devel Development/C: MySQL_GPL-devel Development/C: ncurses-devel Development/C: newt-devel Development/C: openldap-devel Development/C: pciutils-devel Development/C: pilot-link-devel Development/C: readline-devel Development/C: apache-devel Development/C++: egcs-c++ Development/C++: gcc-c++ Development/C++: libstdc++-devel Development/Java: guavac Development/Java: jikes Development/Java: kaffe Development/Java: gcc-java Development/GNOME and GTK+: gnome-guile Development/GNOME and GTK+: pygnome Development/GNOME and GTK+: pygtk Development/GNOME and GTK+: pygtk-glarea Development/GNOME and GTK+: pygtk-libglade Development/GNOME and GTK+: glade Development/GNOME and GTK+: perl-GTK Development/GNOME and GTK+: perl-GTK-gnome Development/GNOME and GTK+: ORBit-devel Development/GNOME and GTK+: gtk+-devel Development/GNOME and GTK+: gtkglarea-devel Development/GNOME and GTK+: bonobo-devel Development/GNOME and GTK+: gnome-core-devel Development/GNOME and GTK+: gnome-games-devel Development/GNOME and GTK+: gnome-guile-devel Development/GNOME and GTK+: gnome-libs-devel Development/GNOME and GTK+: gnome-objc-devel Development/GNOME and GTK+: gnome-pim-devel Development/GNOME and GTK+: gnome-print-devel Development/GNOME and GTK+: control-center-devel Development/GNOME and GTK+: libglade-devel Development/GNOME and GTK+: libgtop-devel Development/GNOME and GTK+: rep Development/GNOME and GTK+: librep Development/KDE and QT: kdbg Development/KDE and QT: kdelibs-devel Development/KDE and QT: kdevelop Development/KDE and QT: qt2-devel Development/KDE and QT: qt-devel Development/Other: gperf Development/Other: cdialog Development/Other: memprof Development/Other: m4 Development/Other: ltrace Development/Other: make Development/Other: umb-scheme Development/Other: xlispstat Development/Other: guile Development/Other: xxgdb Development/Other: pmake Development/Other: pmake-customs Development/Other: rcs Development/Other: flex Development/Other: bison Development/Other: ElectricFence Development/Other: egcs-objc Development/Other: egcs-g77 Development/Other: egcs Development/Other: cproto Development/Other: ctags Development/Other: cvs Development/Other: cervisia Development/Other: byacc Development/Other: binutils Development/Other: bin86 Development/Other: rpmlint Development/Other: automake Development/Other: autoconf Development/Other: gcc-objc Development/Other: p2c-devel Development/Other: p2c Development/Other: gcc-chill Development/Other: gcc-colorgcc Development/Other: gcc-fr Development/Other: gcc-g77 Development/Other: gdb Sciences/Chemistry: kmol Sciences/Mathematics: bc Sciences/Mathematics: mxp Sciences/Other: gnuplot Communications: pilot-link Communications: statserial Communications: isicom Communications: mgetty Communications: mgetty-contrib Communications: mgetty-sendfax Communications: mgetty-viewfax Communications: mgetty-voice Communications: ksendfax Communications: efax Communications: dip Communications: lrzsz Communications: minicom Databases: postgresql Databases: postgresql-odbc Databases: postgresql-server Databases: postgresql-test Databases: MySQL_GPL Databases: MySQL_GPL-bench Databases: MySQL_GPL-client Databases: MySQL_GPL-resolveip Editors: hexedit Editors: yudit Editors: jed Editors: jed-common Editors: jed-xjed Editors: xemacs Editors: xemacs-el Editors: xemacs-extras Editors: xemacs-info Editors: xemacs-mule Editors: xemacs-X11 Editors: emacs Editors: emacs-el Editors: emacs-leim Editors: emacs-nox Editors: emacs-X11 Editors: joe Editors: sed Editors: vim-common Editors: vim-enhanced Editors: vim-minimal Editors: vim-X11 Editors: gedit Editors: GXedit Emulators: BasiliskII Emulators: BasiliskII-sheepnet Emulators: dosemu Emulators: dosemu-freedos Emulators: wine Emulators: wine-debug Emulators: xdosemu Games/Arcade: sdlbomber Games/Arcade: xbill Games/Arcade: kpacman Games/Arcade: ktron Games/Arcade: trojka Games/Arcade: xboing Games/Arcade: xjewel Games/Arcade: xkobo Games/Arcade: xpilot Games/Arcade: xsoldier Games/Arcade: xtrojka Games/Arcade: cxhextris Games/Boards: gnome-chess Games/Boards: xgammon Games/Boards: xboard Games/Boards: gnuchess Games/Cards: xpat2 Games/Puzzles: krubik Games/Puzzles: xpuzzles Games/Puzzles: kslide Games/Strategy: freeciv Games/Strategy: kjumpingcube Games/Other: kfun21 Games/Other: gnome-games Games/Other: kdegames Toys: xfishtank Toys: kfortune Toys: fortune-mod Toys: kmag Toys: ical Toys: kreglo Toys: kweather Toys: kteatime Toys: vigmeup Toys: xdaliclock Toys: xearth Archiving/Compression: zip Archiving/Compression: gzip Archiving/Compression: lha Archiving/Compression: ncompress Archiving/Compression: unarj Archiving/Compression: unzip Archiving/Compression: bzip2 Archiving/Cd burning: mkisofs Archiving/Cd burning: kover Archiving/Cd burning: gnome-toaster Archiving/Cd burning: cdrecord Archiving/Cd burning: xcdroast Archiving/Backup: rmt Archiving/Backup: mt-st Archiving/Backup: sharutils Archiving/Backup: cpio Archiving/Backup: taper Archiving/Backup: tar Archiving/Backup: dump Archiving/Other: gtkzip Monitoring: lslk Monitoring: lsof Monitoring: rwho Monitoring: rusers Monitoring: procinfo Monitoring: kmemmon Monitoring: kisdnload Monitoring: arpwatch Monitoring: gtop Monitoring: kimon Monitoring: knetload Monitoring: ktimemon Monitoring: psmisc Monitoring: procps Monitoring: procps-X11 Monitoring: psacct Monitoring: swatch Monitoring: tcpdump Monitoring: time Monitoring: xosview Monitoring: xsysinfo Monitoring: xcpustate Monitoring: xtraceroute Monitoring: traceroute Sound: multimedia Sound: kdemultimedia Sound: gnome-audio Sound: gnome-audio-extra Sound: thud Sound: space_sounds Sound: mikmod Sound: cdp Sound: cdrecord-cdda2wav Sound: cdparanoia Sound: grip Sound: bladeenc Sound: TiMidity++ Sound: timidity-instruments Sound: eMusic Sound: kmodbox Sound: kmp3 Sound: kmp3te Sound: kmpg Sound: aumix Sound: playmidi Sound: playmidi-X11 Sound: mpg123 Sound: xmms Sound: xmms-esd Sound: xmms-gnome Sound: xmms-mesa Sound: xmms-mikmod Sound: xmms-skins Sound: sox Graphics: zgv Graphics: gqview Graphics: gphoto Graphics: qcad Graphics: xwpick Graphics: ImageMagick Graphics: ee Graphics: gimp Graphics: gimp-data-extras Graphics: giftrans Graphics: kdegraphics Graphics: killustrator Graphics: kshow Graphics: kuickshow Graphics: xpaint Graphics: xv Graphics: xmorph Graphics: xloadimage Graphics: xfig Graphics: transfig Graphics: sketch Video: nist Video: aktion Video: xmovie Video: xanim Networking/File transfer: rdist Networking/File transfer: uucp Networking/File transfer: ncftp Networking/File transfer: wget Networking/File transfer: fmirror Networking/File transfer: ftp Networking/File transfer: gftp Networking/File transfer: lftp Networking/File transfer: mirrordir Networking/File transfer: rsync Networking/IRC: BitchX Networking/IRC: eggdrop Networking/IRC: irssi Networking/IRC: xchat Networking/ICQ: gnomeicu Networking/ICQ: licq Networking/ICQ: licq-data Networking/Chat: ytalk Networking/Chat: talk Networking/Chat: gaim Networking/News: xrn Networking/News: inews Networking/News: tin Networking/News: trn Networking/News: slrn Networking/News: slrn-pull Networking/Mail: xmailbox Networking/Mail: faces Networking/Mail: faces-xface Networking/Mail: pine Networking/Mail: comsat Networking/Mail: elm Networking/Mail: exmh Networking/Mail: fetchmail Networking/Mail: mailx Networking/Mail: metamail Networking/Mail: mutt Networking/Mail: urlview Networking/Mail: nmh Networking/Mail: procmail Networking/WWW: flash Networking/WWW: npxanim Networking/WWW: lynx Networking/WWW: netscape-castellano Networking/WWW: netscape-common Networking/WWW: netscape-communicator Networking/WWW: netscape-francais Networking/WWW: netscape-navigator Networking/WWW: netscape-walon Networking/Remote access: kvncviewer Networking/Remote access: vnc Networking/Remote access: vnc-doc Networking/Remote access: vnc-java Networking/Remote access: vnc-SVGALIB Networking/Remote access: ktelnet Networking/Remote access: telnet Networking/Other: fwhois Networking/Other: macutils Networking/Other: pptp-adsl-fr Networking/Other: pptp-client Networking/Other: sliplogin Networking/Other: nfs-utils Networking/Other: nfs-utils-clients Networking/Other: gnomba Networking/Other: samba-client Networking/Other: ucd-snmp-utils Networking/Other: kdenetwork Networking/Other: bind-utils Networking/Other: ncpfs Networking/Other: nc Office: gaddr Office: gnome-pim Office: units Office: gnumeric Office: mswordview Office: cbb Office: abisuite Office: klyx Office: korganizer Publishing: stylesheets Publishing: docbook Publishing: sgml-common Publishing: sgml-tools Publishing: ghostscript Publishing: ghostscript-Both Publishing: ghostscript-PrintOnly Publishing: ghostscript-SVGALIB Publishing: ghostscript-X Publishing: gv Publishing: jade Publishing: jadetex Publishing: xpdf Publishing: tetex Publishing: tetex-afm Publishing: tetex-dvilj Publishing: tetex-dvips Publishing: tetex-latex Publishing: tetex-xdvi Publishing: texinfo Publishing: psutils Terminals: open Terminals: SVGATextMode Terminals: console-tools Terminals: rxvt Terminals: rxvt-CLE Terminals: screen Terminals: x3270 Terminals: Eterm Terminals: kterm Terminals: vlock Shells: pdksh Shells: sash Shells: ash Shells: zsh Shells: tcsh Shells: bash1 Shells: bash Shells: bash-doc File tools: xfm File tools: xplorer File tools: git File tools: kfsstatus File tools: mkxauth File tools: mktemp File tools: stat File tools: symlinks File tools: slocate File tools: logrotate File tools: tmpwatch File tools: file File tools: fileutils File tools: findutils File tools: xdelta File tools: mc File tools: kless File tools: less File tools: grep File tools: rgrep File tools: tree File tools: which File tools: sfm File tools: kdiskcat File tools: kfilecoder File tools: kruiser File tools: dosfstools File tools: mtools Text tools: ed Text tools: gawk Text tools: mawk Text tools: gawk-doc Text tools: lout Text tools: lout-doc Text tools: groff Text tools: groff-gxditview Text tools: ispell Text tools: words Text tools: patch Text tools: recode Text tools: kdiff Text tools: diffutils Text tools: diffstat Text tools: enscript Text tools: textutils Graphical desktop/GNOME: gdm Graphical desktop/GNOME: gnome-media Graphical desktop/GNOME: gnome-tiles Graphical desktop/GNOME: gnome-utils Graphical desktop/GNOME: g-print Graphical desktop/GNOME: gsu Graphical desktop/GNOME: gnome-core Graphical desktop/GNOME: switchdesk-gnome Graphical desktop/GNOME: gmc Graphical desktop/GNOME: control-center Graphical desktop/Icewm: iceconf Graphical desktop/Icewm: icewm Graphical desktop/Icewm: icewm-light Graphical desktop/FVWM based: AnotherLevel Graphical desktop/FVWM based: fvwm Graphical desktop/FVWM based: fvwm2 Graphical desktop/FVWM based: fvwm2-icons Graphical desktop/KDE: kcmlaptop Graphical desktop/KDE: kvoice Graphical desktop/KDE: khotkeys Graphical desktop/KDE: knewmail Graphical desktop/KDE: kpilot Graphical desktop/KDE: kpppload Graphical desktop/KDE: ktail Graphical desktop/KDE: kgoodstuff Graphical desktop/KDE: kvoicecontrol Graphical desktop/KDE: kde-doc-translation-fr Graphical desktop/KDE: kdesu Graphical desktop/KDE: kde-themes Graphical desktop/KDE: kdeutils Graphical desktop/KDE: kdetoys Graphical desktop/KDE: kdebase Graphical desktop/KDE: switchdesk-kde Graphical desktop/Window Maker: WindowMaker Graphical desktop/Window Maker: wmakerconf Graphical desktop/Window Maker: WMRack Graphical desktop/Window Maker: wmnet Graphical desktop/Enlightenment: ethemes Graphical desktop/Enlightenment: enlightenment Graphical desktop/Enlightenment: enlightenment-conf Graphical desktop/Enlightenment: Epplets Graphical desktop/Other: helptool Graphical desktop/Other: switchdesk Graphical desktop/Other: xbanner Graphical desktop/Other: AfterStep Graphical desktop/Other: blackbox Graphical desktop/Other: xfce Graphical desktop/Other: xscreensaver Graphical desktop/Other: xscreensaver-gl Graphical desktop/Other: xlockmore Graphical desktop/Other: wmconfig Graphical desktop/Other: desktopcfg Books/Faqs: faq Books/Computer books: lame Books/Computer books: sag Books/Computer books: nag Books/Computer books: lpg
This "package" is inspired by the install-fvwm2-menu from the debian fvwm2, but it tries to provide a somewhat more general interface for menu-building. With the update-menus command from this package, (and the /usr/lib/menu/$package files), no package needs to be modified for every X window manager again, and it provides a unified interface for both text- and X-oriented programmes. Note that substantial changes took place with the menu-1.0 release. This README describes menu-1.0, most notable changes are listed in README.changes, and README.pre1 is the old README (please don't use it!). ************************ *It works like this: Each package includes a file in /usr/lib/menu/package-name. In this file, it will have one line per menu-entry, like this (from /usr/lib/menu/xbase): ?package(xbase):command="/usr/bin/X11/xedit" icon="none" needs="X11" \ section="Apps/Editors" title="Xedit" This describes the type of interface the package needs (X11), the menu section the menu entry should be in, possibly an icon, the menu text, and the command that should be executed. Whenever root runs update-menus, it will check all new or changed menufiles in /etc/menu and /usr/lib/menu, and run the installation scripts display managers like fvwm2 should provide in /etc/menu-methods on them. The menu package itself provides a set of default menu files, for people to get the idea, and to speed things up a bit (These files should be incorporated into the package). ************************ * (User-) Configuring the menu's A user can specify her/his own menu entries in the ~/.menu directory. The files can have any name you want, and should start with either: ?package(installed-package): or, if it's something that isn't "debian-officially" installed, with ?package(local.mystuff): (any "package" that starts with "local." is considered installed). If your using old format menuentryfiles should have names of installed packages, or "local.name", as update-menus assumes any Any "package" that starts with "local." is considered installed. (due to a bug in menu-1.3 this didn't work then). If a user wants to have his own menu-methods, s/he should create a ~/.menu-methods directory, and put all scripts s/he wants to be run in there (if ~/.menu-methods exists, /etc/menu-methods will not be searched when a user runs update-menus). A system administrator should place system-wide menuentries in /etc/menu, (not in /usr/lib/menu/package, those will be overridden after an upgrade of package). ************************ * Specifying "No-menu-entry" If a user wants to remove an entry from the system menu (in /etc/menu), then this will do the trick: echo -n > ~/.menu/package The zero-size file will tell update-menus that the corresponding package should not have any menu-entries listed. ************************ * What should the each package do to use this: -Include a conffile file in /usr/lib/menu/$package. The name of the file should be $package, with $package the package name of the binary package the menufile will be distributed in. (in the case of single source packages that build many binary packages). This file should contain, for each programme it likes to make available in a menu: ?package(gnuplot):\ specifies what packages need to be installed needs=text\ what kind of terminal this command expects \ needs=X11: if this programme only runs on X11 needs=text:if it only runs on text terminals; (the window manager should spawn an xterm or rxvt in this case) needs=vc :runs only at Linux console. needs=wm :this starts another windowmanager section=Apps/Math\ in what section should this menuentry be title="Gnuplot"\ The tile of the menuentry (make it short please) command="/usr/bin/gnuplot" the command to run. A programme like gnuplot should NOT have an extra entry for needs=X11 because it will then be next to impossible to configure the window mangers to spawn rxvt instead of the default xterm. If, on the other hand, if a programme can both run like a real X application, and on a terminal (like emacs), then two entries should be listed (otherwise, emacs will also be run in an xterm). -In your postinst and postrm script, add a line like: if test -x /usr/bin/update-menus; then update-menus; fi -Do not make your package depend on the menu package. ************************ * The mandatory layout of the menu : - Configuration - Hardware - Packaging - Networking - Printing - Boot and Init - Other - Applications - Development - Interpreters - Code generators - Development environments - Tools - Sciences - Astronomy - Biology - Chemistry - Computer science - Geosciences - Mathematics - Physics - Other - Communications - Editors - Emulators - Archiving - Compression - Cd burning - Backup - Other - Monitoring - Publishing - Terminals - Shells - File tools - Text tools - Documentation - Office - Networking - File transfer - IRC - ICQ - Chat - News - Mail - WWW - Remote access - Other - Amusement - Adventure - Arcade - Boards - Cards - Puzzles - Sports - Strategy - Other - Toys - Multimedia - Sound - Graphics - Video This menu is genereated specifically by each windowmanager, to provide specific wm related functions (restart, etc.) : - Session... - Windowmanagers... - Restart session - Exit session ************************ * What should each menu-manager (fvwm*, twm, pdmenu, ...) do? Provide a configfile-script in /etc/menu-methods that can read the menu-files. This script will be executed by update-menus with the to be installed menu-entries passed to the script via stdin. The scripts in /etc/menu-methods should be configfiles, if the user can tune the behaviour in the script (as is the case in the scripts provided in this package in /usr/doc/menu/examples/$wm). Run update-menus (if it exists) in the postinst, and remove the execute bit from the /etc/menu-methods in the postrm when called with remove. Example bash post{rm,inst} script: #postrm: #!/bin/sh set -e inst=/etc/menu-methods/twm #or fvwm, ... whatever manager you're installing case "$1" in remove) chmod a-x $inst ;; purge) #remove the files that install-fvwmgenmenu creates: rm /etc/X11/twm/{system.twmrc,menus.dat,menudefs.hook} #maybe also rm $inst, if dpkg doesn't do that itself. ;; upgrade);; *) echo "postrm called with unknown argument \`$1'" >&2 exit 0 ;; esac #postinst: #!/bin/sh set -e inst=/etc/menu-methods/pdmenu #or fvwm, ... whatever manager you're installing if [ -x /usr/bin/update-menus ] ; then if [ -f $inst ]; then chmod a+x $inst update-menus; fi fi The menu package should not include any installer scripts for window managers (that's the job of the packages that install the window managers), but I do provide scripts for nearly all debian window managers in /usr/doc/menu/examples. See the readme on how to activate them. For an example, see the latest fvwm95 package (or olvwm). ************************ * What does update-menus do? On startup, update-menus does: check file /var/run/update-menus.pid, and the pid in it -- if there's an update-menus process with that pid, kill it. if /var/lib/dpkg/lock exists, fork to background, and return control to dpkg. in background process: Every approx second check for /var/lib/dpkg/lock repeat until it's gone. when the lockfile has disappeared (or never has been), start the "normal" update-menus: 1 sets a variable $dirs to dirs="/etc/menu /usr/lib/menu /usr/lib/menu/default" (and if a user runs runs it, it will add ~/.menu to the front of that list) 2 it reads the list of installed packages. 3 for d in $dirs; do - read files in $d - check if corresponding package is installed, and, is listed in the $d/.updated-menus file, checking the mod time in $d/.updated-menus. Depending on that information, either put the menufile $file in the the install-menu-list, or the menuentry in the $remove-entries, and do put the entries in the already-correctly-installed-list 4 after going through all dirs, do for method in `ls /etc/menu-methods`; do $cat install-menu-list | method -f --stdin done Ad step 3+4 - The $d/.updated-menus file lists not only the files in that directory and it's mod-time (to check for changes), it also lists the known menu-managers (i.e., the output of `ls /etc/menu-methods`) at the time of the last installation. Based on this information, steps 3+4 are changed a bit, to update/remove new/old menu-managers. Ad step 1+2+3+4 although I've used a sh-like syntax here, it's written in C++. Ad step 4 Here there's a hack for backwards compatibility with the old install-fvwmgenmenu: if the script in /etc/menu-methods doesn't start with "#!/usr/sbin/install-menu", the old dataformat will be sent to the script. ************************ * The /usr/sbin/install-menu programme The files /etc/menu-methods/fvwm* are "executable" config files that begin with #!/usr/sbin/install-menu and thus start that programme, handing it the configuration file for the specific wm in argv[1]. This configuration consists of: - the compatibility mode ("menu-1"). - where the various files should be stored/read. - what "needs" are supported, and what wrapper files should be used for each "type". See /usr/doc/menu/examples/ for some more comments. Options to install-fvwmgenmenu: -v be verbose -d Produce loads of debugging output The -f and --stdin "options" exist because old versions used to have cache files and other complicated stuff. This didn't result in any speedups, and did complicate stuff. So we (Joey and I) decided to make -f and --stdin options that are always on (and can thus be ignored). Some window managers don't support the m4 or cpp preprocessing, and cannot read the menudefs.hook file from their system.*rc configfile. To still be able to use them, install-fvwmgenmenu will copy the file $path/$examplercfile to $path/$rcfile (with $path, $examplercfile and $rcfile defined in the install-fvwmgenmenu config file), and replace all occurrences of "install-menu-defs" with the $genmenu file it just generated. Although this approach looks quite clumsy, it does allow for one $path/$examplercfile on the system, (The m4/cpp approach puts a "include(/etc/X11/*/menudefs.hook)" in the system.*rc file, so users will never load their menudefs.hook file). To activate the file-copying in this way, simply define the $examplercfile and $rcfile variables in the install-fvwmgenmenu configuration file (/etc/menu-methods/fvwm*), and make sure there is a $path/$examplercfile ($path being either $rootprefix, or $userprefix) If you are wringing a menu-method, you can use the following to debug it somewhat easier: - use the "cat" menu-method in /usr/doc/menu/examples/cat to create a list of menuentries in /tmp/menu-stdin (put it in ~/.menu-methods, and run update-menus), and then - you can run just your menu-method with (if it's called wm): ./wm -v < /tmp/menu-stdin (-v for verbose, use -d for debugging, you'll get loads of output). ************************ * install-menu config script definitions: * the menu-methods in /etc/menu-methods/* are basically made up of a lot of section=string definitions, explaining install-menu how to generate a "system.$wmrc" script. This way you can tune the look of generated "system.$wmrc" to your needs. In the following, something like treewalk="c(m)" means that the treewalk variable by default has the value "c(m)". For examples of what these scripts can look like, see /usr/doc/menu/examples. compat="menu-1" Should always be "menu-1". Please, make this the first non-comment line in the script. supported endsupported Between the supported and endsupported keywords you define what "needs" are supported by this window manager. So, the following is for a wm that supports both needs=x11 and needs=text: Example: supported x11=" ShowEntry("title=\"" $title "\", command=\"" $command "\"") text=" ShowEntry("title=\"" $title "\", command=\""\ "xterm -T " $title " -e " $command "\"") endsupported For the variable substitution (and functions, not shown above), see the next paragraph. In the above example, you'll notice that for the menuentries that "need=text", an xterm is spawned for the command to run in. Also, as x11 is higher up in the supported list than text, a package that supplies both a "needs=x11" and a "needs=text" entry will have the needs=x11 entry installed, in favour of the needs=text entry. You can continue lines on the next line with a \, but do make sure you don't add any spaces after the \. startmenu="" endmenu="" submenutitle="" These define what to print for the beginning/end of a menu, and how to the print a menuentry that pops up another menuentry. They are substituted the same way as the "supported" stuff is (see next paragraph). treewalk="c(m)" This string defines in what order to dump the $startmenu, $endmenu, and $submenutitle (and it's children). Each char in the string refers to : c : dump children of menu. m : dump this menu's $submenutitles ( : dump $startmenu ) : dump $endmenu M : dump all $submenutitles of this menu and this menu's children. The default is "c(m)". For olvwm, one needs: "(M)" genmenu="" The menufile to generate (usually something like system."$wm"rc). The file itself may depend on the level or title that is currently being work on, like genmenu="/subdir/" replacewith($section," ","_") "/rc.menu" (Substitution works just like the supported stuff, see above). Note that the files made this way are truncated upon opening, so if you have a genmenu like the example above, then your endmenu= will override the startmenu stuff (but you probably only need one of the two anyway). rootsection="/Debian" the prefix every $section variable gets. prerun="" postrun="" The commands to run before resp. after the actual generation of the menudefs.hook (genmenu) file. Commands will be executed by sh. example: prerun="rm -rf " prefix() "/*" postrun="killall -USR1 fvwm2" (Substitution works just like the supported stuff, see above). preoutput="#Automatically generated file. Do not edit (see /usr/doc/menu/html)\n\n" postoutput="" Text to put at the beginning resp. end of the generated file ($genmenu). command="" A command to run instead of install-menus. This command will receive the menuentries install-menus would have received on stdin. hotkeyexclude="" Keys not to use for hotkey generation. You can use the same variables and functions here as in for example the startmenu sections. Example: hotkeyexclude="q" $section hotkeycase="insensitive" can be either "insensitive" or "sensitive". Determines whether the hotkeys can be of mixed case (fvwm2 reads the hotkeys case-insensitive, pdmenu case-sensitive). In case of the titles "Xa" and "xb", hotkey will generate "X" and "b", whereas sensitive would generate "X" and "x" rcfile="" If the window manager doesn't support an "include filename" or "read(filename)" statement in it's config file, you can rename the wm's config file to system."$wm"rc-menu, and insert a "install-menu-defs" line (without the quotes, or whitespace around it, and "install-menu-defs" must be the only thing on the line) in the system."$wm"rc-menu file. This will then get replaced by the $genmenu file that was just created (see also $examplercfile). examplercfile="" if needed (see rcfile), this is the system.rc"$wm"-menu file. In that case, make rcfile=system.rc"$wm". rootprefix="" The prefix to use when running as root (applies to $genmenu, $rcfile, $examplercfile and other old cache files) userprefix="" see rootprefix, but when running as user. ************************ * variables and functions in the install-menu scripts. The supported "needs" definitions and "startmenu=", "endmenu=" and "submenutitle=" are interpreted as follows: ** String constants: Anything matching with \"[^\"]*\" is interpreted as a string, and is written verbatim to the output file. Stuff like \n, \t, ... will be substituted for their C expansions (But not \0xx). ** Variables: Anything matching $[a-z,A-Z,_]* is interpreted as a variable, and the corresponding definition from the menuentry is substituted. So, for a menuentry. Special variables: The following variables are treated in a special way by install-menus, either because they are used for other purposes too, or because they are modified by install-menus (the ones with a "!" are modified by install-menus). needs: used to determine whether the window manager supports this menuentry. command: If this is undefined, this menuentry is taken as defining a submenu. (this way you can specify icons of submenus). title!: Used for sorting (see section). For submenuentries (those with empty command), this is initialised to the last part of the section. Please, keep the title short (two words at maximum). The title is for people who already know what programme they want to start. See "longtitle" and "description" below for longer descriptions. sort: used for sorting (see section). section!:Used to determine the section of the menuentry. The menuentries that have a empty $command, have their $section changed to modify the current level. The menuentries that have a non-empty $command have their $section modified to $section/$title, or $section/$sort:$title if $sort is defined. The menuentries within one section are sorted according to $section. hotkey!: Modified to reflect what install-menus thinks is the most suitable hotkey for this menuentry. The hotkey= in the menuentry file is taken as a suggestion, that could be overwritten if there is another entry with the same hotkey=. To suggest two possible hotkeys for an entry use hotkey="ab", with "a" being the most preferred hotkey. Suggested variables: The following aren't special for install-menus, but it's nice (read: essential) to use the same variables for the same things. So, I'll suggest some here. If you want to invent new ones, please do so and mail them to me so that I can include them here. icon: The location of the iconfile for this menuentry. If you don't have an iconfile, just leave out the icon= in the menuentry. longtitle: For people that like descriptive titles (about one line) It is probably best to include this in your menuentries, while the window-managers don't (by default) put it in the menus. That way, people who want descriptive titles can turn them on, but others don't need to use them. description:An even longer description (about 5 lines). For example, a description of the documentation in the dwww generated html pages. ** Functions: Anything matching [a-z,A-Z,_] is taken as a function (and an error is generated if the function doesn't exist). The arguments of the functions can be other functions, string constants or variables. prefix() returns the current prefix dir: either $rootprefix, or $HOME/$userprefix, depending on who runs install-menu ifroot($rootarg, $userarg) if(getuid()==0) print $rootarg, else print $userarg print($arg) Same as just $arg; if $arg is empty, generate an error. esc($arg1,$arg2) Print $arg1, but escape all occurrences of characters in $arg2 with a \. (thus, if arg1="hello", arg2="lo", print "he\l\l\o"). escwith($arg1, $arg2, $arg3) Same as esc, but use $arg3 as escape sequence. escfirst($arg1, $arg2, $arg3) Same as escwith, but only escapes thirst occurrence of $arg2. tolower($arg) toupper($arg) Returns the argument set in lowercases resp uppercases. replacewith($s, $replace, $with) Search s for occurrences of characters from string replace, and replace them by the corresponding character in $with. Example: replacewith_string("hello $world, %dir", "$% ", "123") returns: "hello31world,32dir" ifempty($arg1, $arg2) If $arg1 is empty, print $arg2, otherwise print nothing. For compatibility, the string "none" is seen as empty. ifnempty($arg1, $arg2) If $arg1 is not empty, print $arg2. For compatibility, the string "none" is seen as empty. ifelse($arg1,$arg2) If $arg1 is non-empty, print $arg1, otherwise $arg2. For compatibility, the string "none" is seen as empty. ifeq($arg1, $arg2, $arg3) If ($arg1==$arg2) then print $arg3 ifneq($arg1, $arg2, $arg3) If ($arg1!=$arg2) then print $arg3 ifeqelse($arg1, $arg2, $arg3, $arg4) If ($arg1==$arg2) then print $arg3 else print $arg4 cond_surr($arg1, $arg2, $arg3) If $arg1 is non-empty print $arg2$arg1$arg3, otherwise print nothing. For compatibility, $arg1="none" is interpreted as empty. iffile($arg1, $arg2) If file $arg1 exists, and can be opened for reading by whoever started the current process, return $arg2, otherwise return nothing. parent($arg) for arg a "directory", return parent directory: parent("/Debian/Apps/Editors") = "/Debian/Apps". basename($arg) return the last part of the parent directory: basename("/Debian/Apps/Editors") = "Apps". ** String constants, variables and functions can be concatenated by placing them after each other with a space in between, like "hello" $ifelse($comma, $comma, "sorry" $period " no comma def") " world" ** User-defined functions (or rather, macros): You can define your own function, by typing (outside "supported" scope): function myfunc($var1, $var2) = "this is my function, var1=" $var1 ", title= "$title Note that this example uses a variable "title" that it expects to be defined. This is true if it is called from the "startmenu", "endmenu", "submenutitle", a supported definition. ************************ * Icons * Please, make sure the icons you specify are always available on the system. So, if you want to have an icon with your menuentry, the preferred method is to supply the icon with that package. Also, to prevent the distribution of icons files to turn too much into a mess, please put all icon files in /usr/X11R6/include/X11/{bitmap,pixmap}. Debian package maintainers should ensure that any icons they include that are used with the debian menus conform to the following: 1. They should be in xpm format. 2. They may be no larger than 32x32 pixels, although smaller sizes are ok. 3. They should use only the 24 colors present in cmap.xpm, which comes with this package. 4. The background area of the icon should be transparent, if possible. If you have Imagemagick installed, you can make your icons meet requirements 1, 2, and 3 with the following command, but you will need to edit the icon afterward to clean it up and make the background transparent: # mogrify -format xpm -geometry 32x32 -map cmap.xpm <filenames> If you, as a system administrator, don't like the icons in the menu's, simply remove the $%{icon} from the files in /etc/menu-methods/$wm, and type "update-menus" If you want to specify an icon for a submenu (for example, the Editors submenu), just use the same syntax but leave the command empty: X11 Apps menu/apps /usr/X11R6/include/X11/pixmap/icon.xpm "Editors" As there probably isn't one right package to include the submenu icons, I guess (as Joey suggested) the menu package is the only right place to have these menu's (Otherwise, problems arise when two packages supply different icons for the same submenu, and we can never be sure the icon files are available). ************************ * Taskbar/Titlebar (fvwm*) * The problem with the stuff in the taskbar is that all items are displayed all of the time. So, if 200 debian packages all were to register a button, the buttons would quickly fill the screen, making the exercise useless. The few applications that are considered important enough to be listed in the taskbar usually vary widely on each system, making it impossible to select a ``happy few'' apps that are allowed there on every debian system. If you want your fvwm2 to have a few buttons, you can install files for those packages in /etc/menu/$package, containing both the normal menu entries, and a line like button Games/Puzzles xpuzzles/xmball path-to-pixmap.xpm "Xmball" /usr/games/xmball Then, do the following: cd /etc/menu-methods/ cp fvwm2 fvwm2button vi fvwm2button #and remove all the "supported" entries, adding the one below. For the rest, leave everything the same except those listed below. supported button="+ Style \"" $title "\" TitleIcon" $icon " Exec " $command "\n" endsupported startmenu: "AddToTitlebar \n" endmenu: "\n" submenutitle:"" mainmenu: genmenu: "buttondefs.hook"