From Michael.Paoli at cal.berkeley.edu Wed Jan 2 02:39:01 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Wed, 02 Jan 2013 02:39:01 -0800 Subject: [buug] [n]vi "vs." vim; terminfo, etc. Message-ID: <20130102023901.43302jn4i4a0z8mc@webmail.rawbw.com> > I have been wondering about your complaint about vim, that it is > subtly incompatible with vi, and in a dumbed down way. > > One thing I like about vim is that it tells you when it is in insert > mode. I never mastered the trick of keeping track in my head. I also > don't like nvi's flashing of the entire screen when you getto a > limits of the file with the cursor movement keys. I don't think I'd (quite) call vim(1) and its "compatible mode" "dumbed down", so much as I'd more likely generally call vim (stupidly) arrogant and presumptive. Or, more precisely, as I said before[1]: "vim should never have the arrogance to presume it's smarter than those using it or knows better what they want than they do" E.g. it acts like it thinks and tries to be a lot smarter than me, when it is very obviously not. And it trying to show off its "smarts", it mostly just causes more problems. And yes, I know of vim's "compatible" mode - it's *not* very compatible, E.g. see also [1] for typical examples. "tells you when it is in insert mode" - that can also be done with [n]vi: :se showmode (or of course in .exrc file, or for non-ancient vi via EXINIT) I typically have it set. Without it, the algorithm for determining mode is quite simple - just hit escape until [n]vi alerts one via the terminal (audible) bell or "visual bell" (screen flash). That's [n]vi's way signaling a minor error, in this case "Hey, I'm *already* in command mode!" One is then in command mode. If that's not the mode one wants to be in, then go into insert/append/replace/etc. mode as desired by using the appropriate command. Exception would be : prompt in ex mode. If the Escapes just echo back as ^[ or appear to do nothing, if one types some text (e.g. sequence of "a" characters) and they echo back, one is likely in insert, append, or similar mode in ex. Just hit , then . on a line by itself, then again, and that should then give one a : prompt. To that, enter vi followed by and that should get one to vi command mode - unless the terminal (or specification thereof) is missing or insufficient to support visual mode, in which case one will generally remain in ex mode. The flashing of the entire screen is not specifically [n]vi or even vim behavior, but more a matter of the terminal (or emulation thereof)'s capabilities and (typically) TERMINFO capabilities entry. Many terminals(/emulations) have a (mis?)feature capability to flash the screen, as a (silent) visual alert. This is, arguably, often considered a better or preferred means of alerting than an audible terminal bell. Terminals/emulations having such a capability generally have it described in their TERMINFO (or TERMCAP) entry. Likewise they'll also indicate their audible bell capability if they have such (almost all do). Many programs, including vi, nvi, vim, and many others, if they find the terminal's capabilities to include flash_screen/flash/vb ("visual bell"), they'll use that in preference over bell/bel/bl, otherwise they'll use bell/bel/bl. So, if one doesn't like that terminal screen flash, the place to address that isn't within vi/nvi/vim, but rather with (typically) the TERMINFO entry. One can create a TERMINFO entry, and suitably set TERMINFO and TERM, to use a capability description that doesn't include the flash_screen/flash/vb capability. One can then use those environment settings for vi/nvi/vim, or any and/or all programs, as may be preferred regarding that behavior. With, e.g. TERMINFO, if such a suitable terminal variant doesn't already exist, creating one is relatively easy, as the capability entries can also be written about as simply as this: terminal is just like that other one except it doesn't have such-and-such capability. E.g. (I show my comments on lines starting with //): // confirm we have the TERMCAP flash capability for xterm // use of vi(1) also appears to confirm it uses it $ (unset TERMINFO; TERM=xterm infocmp -1I) | fgrep flash flash=\E[?5h$<100/>\E[?5l, // do we already have something that looks like a suitable variant? $ echo $(find /lib/terminfo /usr/share/terminfo -name 'xterm*' -print | sed -e 's/^.*\/xterm//' | sort -u) +256color +88color +app +app+pc +decedit +edit +noapp +noapp+pc +pc+edit +pcc0 +pcc1 +pcc2 +pcc3 +pce0 +pce1 +pce2 +pce3 +pcf0 +pcf1 +pcf2 +pcf3 +pcfN +pcfkeys +pcfn +r6f2 +sl +sl-twm +vt+edit -1002 -1003 -16color -24 -256color -65 -88color -8bit -basic -bold -boldso -color -debian -hp -ic -mono -new -nic -noapp -nrc -old -pcolor -r5 -r6 -rep -sco -sun -vi -vt220 -vt52 -xf86-v32 -xf86-v33 -xf86-v333 -xf86-v40 -xf86-v43 -xf86-v44 -xfree86 -xi -xmc 1 c m s s-sun // for sake of exercise, we'll presume none of those are what we want // where is the xterm TERMINFO entry? $ find /lib/terminfo /usr/share/terminfo -name 'xterm' -print /lib/terminfo/x/xterm // save and set umask $ saved_umask=$(umask); umask 022 // make directories and symbolic link $ cd && mkdir .terminfo .terminfo/x && cd .terminfo $ ln -s /lib/terminfo/x/xterm x/xterm // what does existing name and long name look like? $ (unset TERMINFO; TERM=xterm infocmp -1I) | grep '^xterm|' xterm|X11 terminal emulator, // create our source file $ ed xterm-nvb.src xterm-nvb.src: No such file or directory 0a xterm-nvb|X11 terminal emulator no visual bell, flash@, use=xterm, . w 83 q // compile our new TERMINFO entry $ TERMINFO="$HOME"/.terminfo tic xterm-nvb.src $ umask "$saved_umask"; unset "$saved_umask" // and now we try out our new entry - vi now uses the audible bell, as // it no longer sees a visual bell capability. $ TERMINFO="$HOME"/.terminfo TERM=xterm-nvb vi // TERM=linux-m is very handy for getting vim to NOT use any colors, // also usefully appropriate for monochrome video card or monitor. // Checking a bit further - are there xterm variants that already don't // include the flash capability? $ echo $(unset TERMINFO; for TERM in $(find /lib/terminfo /usr/share/terminfo -name 'xterm*' -print | sed -e 's/^.*\///' | sort -u); do TERM="$TERM" infocmp -1I | >>/dev/null 2>&1 fgrep flash= || echo "$TERM"; done) xterm+256color xterm+88color xterm+app xterm+app+pc xterm+decedit xterm+edit xterm+noapp xterm+noapp+pc xterm+pc+edit xterm+pcc0 xterm+pcc1 xterm+pcc2 xterm+pcc3 xterm+pce0 xterm+pce1 xterm+pce2 xterm+pce3 xterm+pcf0 xterm+pcf1 xterm+pcf2 xterm+pcf3 xterm+pcfN xterm+pcfkeys xterm+pcfn xterm+r6f2 xterm+vt+edit xterm-24 xterm-65 xterm-bold xterm-boldso xterm-color xterm-mono xterm-old xterm-r5 xterm-r6 xterm-vt52 xtermc xtermm xterms // Yes, quite a number of them, actually. // I'll leave as an exercise to determine if any of those are already // fully suitable, and by exactly what capabilities they differer from // xterm references/excerpts/footnotes: 1. http://buug.org/pipermail/buug/2011-April/003724.html vi(1) ex(1) nvi(1) vim(1) terminfo(5) infocmp(1) tic(1) ed(1) sh(1) find(1) ln(1) mkdir(1) fgrep(1) sort(1) terminfo(5) File Formats terminfo(5) Terminal names (except for the last, verbose entry) should be chosen using the following conventions. The particular piece of hardware making up the terminal should have a root name, thus ``hp2621''. This name should not contain hyphens. Modes that the hardware can be in, or user preferences, should be indicated by appending a hyphen and a mode suffix. Thus, a vt100 in 132 column mode would be vt100-w. The following suf- fixes should be used where possible: Suffix Meaning Example -nn Number of lines on the screen aaa-60 -np Number of pages of memory c100-4p -am With automargins (usually the default) vt100-am -m Mono mode; suppress color ansi-m -mc Magic cookie; spaces when highlighting wy30-mc -na No arrow keys (leave them in local) c100-na -nam Without automatic margins vt100-nam -nl No status line att4415-nl -ns No status line hp2626-ns -rv Reverse video c100-rv -s Enable status line vt100-s -vb Use visible bell instead of beep wy370-vb -w Wide mode (> 80 columns, usually 132) vt100-w For more on terminal naming conventions, see the term(7) manual page. These are the string capabilities: Variable Cap- TCap Description String name Code bell bel bl audible signal (bell) (P) flash_screen flash vb visible bell (may not move cursor) Similar Terminals If there are two very similar terminals, one (the variant) can be defined as being just like the other (the base) with certain exceptions. In the definition of the variant, the string capa- bility use can be given with the name of the base terminal. The capabilities given before use override those in the base type named by use. If there are multiple use capabilities, they are merged in reverse order. That is, the rightmost use reference is processed first, then the one to its left, and so forth. Capabilities given explicitly in the entry override those brought in by use references. A capability can be canceled by placing xx@ to the left of the use reference that imports it, where xx is the capability. For example, the entry 2621-nl, smkx@, rmkx@, use=2621, defines a 2621-nl that does not have the smkx or rmkx capabili- ties, and hence does not turn on the function key labels when in visual mode. This is useful for different modes for a ter- minal, or for different user preferences. From Michael.Paoli at cal.berkeley.edu Wed Jan 2 05:06:18 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Wed, 02 Jan 2013 05:06:18 -0800 Subject: [buug] converting Ubuntu to Xubuntu? In-Reply-To: <20121222003653.15976g6xmsvywoco@webmail.rawbw.com> References: <20121222003653.15976g6xmsvywoco@webmail.rawbw.com> Message-ID: <20130102050618.393764bkjxy7qfk8@webmail.rawbw.com> Anyway, thought I'd peek a bit more closely. For earlier background, see: http://buug.org/pipermail/buug/2012-December/003964.html http://buug.org/pipermail/buug/2012-December/003965.html et. seq. my comments on lines starting with // // So, I launch: // Ubuntu 12.04.1 LTS "Precise Pangolin" - Release i386 (20120817.3 // and: // Xubuntu 12.04.1 LTS "Precise Pangolin" - Release i386 (20120817.3) // from CD ISO images on a pair of virtual machines: # virsh list --all Id Name State ---------------------------------- 5 ubuntu running 6 xubuntu running # // on each, I do: # apt-get --no-install-recommends install openssh-server // and put ssh keys in place. // the leading "> " are PS2 prompts $ (for hn in ubuntu xubuntu; do > for id in "$hn" root; do > echo $(ssh -ax -l "$id" "$hn" 'hostname; id -un') > done; done) ubuntu ubuntu ubuntu root xubuntu xubuntu xubuntu root $ (for hn in ubuntu xubuntu; do > ssh -ax -l "$hn" "$hn" 'grep -i ubuntu /etc/passwd; uname -a > head -n 1 /etc/motd; lsb_release -drc' > done) ubuntu:x:999:999:Live session user,,,:/home/ubuntu:/bin/bash Linux ubuntu 3.2.0-29-generic-pae #46-Ubuntu SMP Fri Jul 27 17:25:43 UTC 2012 i686 i686 i386 GNU/Linux Welcome to Ubuntu 12.04.1 LTS (GNU/Linux 3.2.0-29-generic-pae i686) Description: Ubuntu 12.04.1 LTS Release: 12.04 Codename: precise xubuntu:x:999:999:Live session user,,,:/home/xubuntu:/bin/bash Linux xubuntu 3.2.0-29-generic #46-Ubuntu SMP Fri Jul 27 17:04:05 UTC 2012 i686 i686 i386 GNU/Linux Welcome to Ubuntu 12.04.1 LTS (GNU/Linux 3.2.0-29-generic i686) Description: Ubuntu 12.04.1 LTS Release: 12.04 Codename: precise $ // note the PAE kernel used (at least by default) on Ubuntu, but not // on Xubuntu // package differences? // what packages on xubuntu but not ubuntu? $ { ssh -ax -l ubuntu ubuntu 'dpkg --get-selections' | awk ' > {if($2=="install")print $1; print$1;}'; ssh -ax -l xubuntu xubuntu ' > dpkg --get-selections' | awk '{if($2=="install")print $1;}' | sort -u > } | sort | uniq -u abiword abiword-common abiword-plugin-grammar abiword-plugin-mathview alacarte bison blueman brltty-x11 catfish cmap-adobe-japan1 docbook-xml exo-utils firefox-locale-fr flex fonts-droid gigolo gimp gimp-data gmusicbrowser gnome-desktop-data gnome-system-tools gnome-time-admin gnumeric gnumeric-common gnumeric-doc gstreamer0.10-gnomevfs gthumb gthumb-data gtk2-engines-pixbuf indicator-application-gtk2 indicator-messages-gtk2 indicator-sound-gtk2 indicator-status-provider-pidgin language-pack-fr language-pack-fr-base language-pack-gnome-fr language-pack-gnome-fr-base language-pack-gnome-xh language-pack-gnome-xh-base language-pack-xh language-pack-xh-base leafpad libabiword-2.9 libao-common libao4 libaudio-scrobbler-perl libbabl-0.0-0 libbison-dev libcolamd2.7.1 libconfig-inifiles-perl libdigest-crc-perl libencode-locale-perl libept1.4.12 libexo-1-0 libexo-common libexo-helpers libfile-listing-perl libfl-dev libfont-afm-perl libgarcon-1-0 libgarcon-common libgdome2-0 libgdome2-cpp-smart0c2a libgegl-0.0-0 libgimp2.0 libglade2-0 libgnomevfs2-0 libgnomevfs2-common libgnomevfs2-extra libgoffice-0.8-8 libgoffice-0.8-8-common libgsf-1-114 libgsf-1-common libgstreamer-perl libgtk2-notify-perl libgtk2-trayicon-perl libgtkmathview0c2a libgtkspell0 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libid3tag0 libido-0.1-0 libilmbase6 libio-socket-inet6-perl libio-socket-ssl-perl libjavascriptcoregtk-1.0-0 libjpeg-progs libjpeg-turbo-progs libkeybinder0 liblaunchpad-integration1 liblink-grammar4 libloudmouth1-0 liblwp-mediatypes-perl liblwp-protocol-https-perl libmad0 libmailtools-perl libnet-dbus-perl libnet-http-perl libnet-ssleay-perl liboobs-1-5 libopenexr6 libotr2 libots0 librarian0 libsexy2 libsocket6-perl libtagc0 libthunarx-2-0 libtidy-0.99-0 libtie-ixhash-perl libtimedate-perl libtumbler-1-0 libunique-1.0-0 liburi-perl libvte-common libvte9 libwebkitgtk-1.0-0 libwebkitgtk-1.0-common libwv-1.2-4 libwww-perl libwww-robotrules-perl libxfce4ui-1-0 libxfce4util-bin libxfce4util-common libxfce4util4 libxfcegui4-4 libxfconf-0-2 libxml-parser-perl libxml-twig-perl libxml-xpath-perl libxss1 lightdm-gtk-greeter link-grammar-dictionaries-en linux-generic linux-headers-3.2.0-29-generic linux-headers-generic linux-image-3.2.0-29-generic linux-image-generic lp-solve m4 miscfiles mpg321 orage parole pastebinit pavucontrol pidgin pidgin-data pidgin-libnotify pidgin-microblog pidgin-otr plymouth-theme-xubuntu-logo plymouth-theme-xubuntu-text python-configobj python-glade2 python-gmenu rarian-compat ristretto screensaver-default-images sgml-data shimmer-themes synaptic system-tools-backends tcl8.5 thunar thunar-archive-plugin thunar-data thunar-media-tags-plugin thunar-volman ttf-droid ttf-lyx tumbler tumbler-common ubiquity-slideshow-xubuntu xchat xchat-common xfburn xfce-keyboard-shortcuts xfce4-appfinder xfce4-cpugraph-plugin xfce4-datetime-plugin xfce4-dict xfce4-indicator-plugin xfce4-mailwatch-plugin xfce4-netload-plugin xfce4-notes xfce4-notes-plugin xfce4-notifyd xfce4-panel xfce4-places-plugin xfce4-power-manager xfce4-power-manager-data xfce4-quicklauncher-plugin xfce4-screenshooter xfce4-session xfce4-settings xfce4-systemload-plugin xfce4-taskmanager xfce4-terminal xfce4-utils xfce4-verve-plugin xfce4-volumed xfce4-weather-plugin xfce4-xkb-plugin xfconf xfdesktop4 xfdesktop4-data xfwm4 xscreensaver xscreensaver-data xscreensaver-gl xubuntu-artwork xubuntu-default-settings xubuntu-desktop xubuntu-docs xubuntu-icon-theme xubuntu-live-settings xubuntu-wallpapers // what packages on ubuntu but not xubuntu? $ { ssh -ax -l xubuntu xubuntu 'dpkg --get-selections' | awk ' > {if($2=="install")print $1; print$1;}'; ssh -ax -l ubuntu ubuntu ' > dpkg --get-selections' | awk '{if($2=="install")print $1;}' | sort -u > } | sort | uniq -u activity-log-manager-common activity-log-manager-control-center adium-theme-ubuntu apg appmenu-gtk appmenu-gtk3 appmenu-qt apturl apturl-common bamfdaemon baobab bluez-gstreamer branding-ubuntu brasero brasero-cdrkit brasero-common checkbox checkbox-qt cmap-adobe-japan2 compiz compiz-core compiz-gnome compiz-plugins-default compiz-plugins-main-default compizconfig-backend-gconf deja-dup duplicity dvd+rw-tools empathy empathy-common eog evolution-data-server evolution-data-server-common example-content folks-common gedit gedit-common geoclue geoclue-ubuntu-geoip ginn gir1.2-gnomebluetooth-1.0 gir1.2-gnomekeyring-1.0 gir1.2-gst-plugins-base-0.10 gir1.2-gtksource-3.0 gir1.2-indicate-0.7 gir1.2-peas-1.0 gir1.2-rb-3.0 gir1.2-totem-1.0 gir1.2-totem-plparser-1.0 gir1.2-ubuntuoneui-3.0 gnome-bluetooth gnome-control-center gnome-control-center-data gnome-desktop3-data gnome-disk-utility gnome-font-viewer gnome-icon-theme-symbolic gnome-media gnome-menus gnome-nettool gnome-online-accounts gnome-orca gnome-power-manager gnome-screensaver gnome-screenshot gnome-session gnome-session-bin gnome-session-canberra gnome-session-common gnome-settings-daemon gnome-system-log gnome-system-monitor gnome-terminal gnome-terminal-data gnome-user-share growisofs gstreamer0.10-gconf gwibber gwibber-service gwibber-service-facebook gwibber-service-identica gwibber-service-twitter hwdata indicator-appmenu indicator-datetime indicator-power indicator-printers indicator-session intel-gpu-tools landscape-client-ui-install libatk-adaptor libatk-adaptor-schemas libaudio2 libavahi-gobject0 libavahi-ui-gtk3-0 libbamf0 libbamf3-0 libboost-serialization1.46.1 libbrasero-media3-1 libcamel-1.2-29 libcanberra-gtk-module libcanberra-gtk0 libcanberra-pulse libcmis-0.2-0 libcompizconfig0 libcurl3 libcurl3-nss libdbusmenu-qt2 libdconf-dbus-1-0 libdconf-qt0 libdecoration0 libdiscid0 libdmapsharing-3.0-2 libebackend-1.2-1 libebook-1.2-12 libecal-1.2-10 libedata-book-1.2-11 libedata-cal-1.2-13 libedataserver-1.2-15 libedataserverui-3.0-1 libexempi3 libexttextcat-data libexttextcat0 libfolks-eds25 libfolks-telepathy25 libfolks25 libfreerdp-plugins-standard libfreerdp1 libgail-common libgdata-common libgdata13 libgdu-gtk0 libgexiv2-1 libglew1.6 libglewmx1.6 libgmime-2.6-0 libgnome-control-center1 libgnome-desktop-3-2 libgnome-media-profiles-3.0-0 libgnome2-common libgnomekbd-common libgnomekbd7 libgoa-1.0-0 libgoa-1.0-common libgpgme11 libgpod-common libgpod4 libgtksourceview-3.0-0 libgtksourceview-3.0-common libgtkspell-3-0 libgweather-3-0 libgweather-common libgwibber-gtk2 libgwibber2 libhyphen0 libidl-common libidl0 liblircclient0 liblouis-data liblouis2 libmetacity-private0 libmission-control-plugins0 libmtp-common libmtp-runtime libmtp9 libmusicbrainz3-6 libmythes-1.2-0 libneon27-gnutls libnux-2.0-0 libnux-2.0-common liboauth0 liborbit2 liboverlay-scrollbar-0.2-0 liboverlay-scrollbar3-0.2-0 libpackagekit-glib2-14 libpeas-1.0-0 libpeas-common libprotobuf7 libprotoc7 libproxy1-plugin-gsettings libproxy1-plugin-networkmanager libpth20 libqt4-dbus libqt4-declarative libqt4-network libqt4-opengl libqt4-script libqt4-sql libqt4-sql-sqlite libqt4-svg libqt4-xml libqt4-xmlpatterns libqtbamf1 libqtcore4 libqtdee2 libqtgconf1 libqtgui4 libquvi-scripts libquvi7 libraw5 libreoffice-base-core libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw libreoffice-emailmerge libreoffice-gnome libreoffice-gtk libreoffice-help-en-us libreoffice-impress libreoffice-math libreoffice-style-human libreoffice-style-tango libreoffice-writer librest-0.7-0 librhythmbox-core5 librsync1 libsdl1.2debian libssh-4 libstlport4.6ldbl libsyncdaemon-1.0-1 libtelepathy-farstream2 libtelepathy-logger2 libtotem-plparser17 libtotem0 libubuntuoneui-3.0-1 libunique-3.0-0 libunity-2d-private0 libunity-core-5.0-5 libunity-misc4 libvncserver0 libwacom-common libwacom2 libwmf0.2-7-gtk libzeitgeist-1.0-1 light-themes linux-generic-pae linux-headers-3.2.0-29-generic-pae linux-headers-generic-pae linux-image-3.2.0-29-generic-pae linux-image-generic-pae media-player-info metacity metacity-common mousetweaks nautilus nautilus-sendto nautilus-sendto-empathy nautilus-share notify-osd notify-osd-icons nux-tools obexd-client overlay-scrollbar plymouth-theme-ubuntu-logo protobuf-compiler pulseaudio-module-bluetooth pulseaudio-module-gconf python-aptdaemon.pkcompat python-brlapi python-configglue python-dateutil python-dirspec python-egenix-mxdatetime python-egenix-mxtools python-libproxy python-louis python-mako python-markupsafe python-packagekit python-protobuf python-pyatspi2 python-pyinotify python-speechd python-twisted-names python-ubuntuone-client python-ubuntuone-control-panel python-ubuntuone-storageprotocol python-uno python-zeitgeist qdbus qt-at-spi remmina remmina-common remmina-plugin-rdp remmina-plugin-vnc rhythmbox rhythmbox-data rhythmbox-mozilla rhythmbox-plugin-cdrecorder rhythmbox-plugin-magnatune rhythmbox-plugin-zeitgeist rhythmbox-plugins rhythmbox-ubuntuone seahorse shotwell sni-qt ssh-askpass-gnome telepathy-gabble telepathy-haze telepathy-idle telepathy-indicator telepathy-logger telepathy-mission-control-5 telepathy-salut thunderbird-gnome-support totem totem-common totem-mozilla totem-plugins ubiquity-slideshow-ubuntu ubuntu-artwork ubuntu-desktop ubuntu-docs ubuntu-mono ubuntu-sounds ubuntu-system-service ubuntu-wallpapers ubuntu-wallpapers-precise ubuntuone-client ubuntuone-client-gnome ubuntuone-control-panel ubuntuone-couch ubuntuone-installer unity unity-2d unity-2d-common unity-2d-panel unity-2d-shell unity-2d-spread unity-asset-pool unity-common unity-greeter unity-lens-applications unity-lens-files unity-lens-music unity-lens-video unity-scope-musicstores unity-scope-video-remote unity-services uno-libs3 ure vino whois whoopsie wodim xdiagnose xfonts-mathml zeitgeist zeitgeist-core zeitgeist-datahub $ // what about configuration files that differ? // we'll just check files under /etc, though that may not be all such // files, but should at least be most of them. // Note that many of these may be specific to the different packages // installed on the two remixes. Once the installed packages // match and removed packages are purged (which removes their // configuration files), the remaining set of differences may then be // much smaller. // A slight bit of differences will be from distinct server ssh keys for // the openssh-server that I installed. // I did also add /etc/init/ttyS0.conf, which also differs between them // - in use of ubuntu vs. xubuntu user. $ { ssh -ax -l root ubuntu ' > find /etc -follow -type f -exec md5sum '\''{}'\'' '\'';'\''' > ssh -ax -l root xubuntu ' > find /etc -follow -type f -exec md5sum '\''{}'\'' '\'';'\''' > } | sort | uniq -u | awk '{print $2;}' | sort -u /etc/X11/Xsession.d/50_check_unity_support /etc/X11/Xsession.d/55gnome-session_gnomerc /etc/X11/Xsession.d/60xbrlapi /etc/X11/Xsession.d/65compiz_profile-on-session /etc/X11/Xsession.d/80appmenu /etc/X11/Xsession.d/80appmenu-gtk3 /etc/X11/app-defaults/XScreenSaver /etc/X11/app-defaults/XScreenSaver-gl /etc/X11/app-defaults/XScreenSaver-nogl /etc/X11/fonts/Type1/xfonts-mathml.scale /etc/alternatives/default.plymouth /etc/alternatives/default.plymouth.grub /etc/alternatives/ghostscript-current/Resource/CMap/78-EUC-H /etc/alternatives/ghostscript-current/Resource/CMap/78-EUC-V /etc/alternatives/ghostscript-current/Resource/CMap/78-H /etc/alternatives/ghostscript-current/Resource/CMap/78-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/78-RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/78-V /etc/alternatives/ghostscript-current/Resource/CMap/78ms-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/78ms-RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/83pv-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/90ms-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/90ms-RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/90msp-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/90msp-RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/90pv-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/90pv-RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/Add-H /etc/alternatives/ghostscript-current/Resource/CMap/Add-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/Add-RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/Add-V /etc/alternatives/ghostscript-current/Resource/CMap/Adobe-Japan1-0 /etc/alternatives/ghostscript-current/Resource/CMap/Adobe-Japan1-1 /etc/alternatives/ghostscript-current/Resource/CMap/Adobe-Japan1-2 /etc/alternatives/ghostscript-current/Resource/CMap/Adobe-Japan1-3 /etc/alternatives/ghostscript-current/Resource/CMap/Adobe-Japan1-4 /etc/alternatives/ghostscript-current/Resource/CMap/Adobe-Japan1-5 /etc/alternatives/ghostscript-current/Resource/CMap/Adobe-Japan1-6 /etc/alternatives/ghostscript-current/Resource/CMap/EUC-H /etc/alternatives/ghostscript-current/Resource/CMap/EUC-V /etc/alternatives/ghostscript-current/Resource/CMap/Ext-H /etc/alternatives/ghostscript-current/Resource/CMap/Ext-RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/Ext-RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/Ext-V /etc/alternatives/ghostscript-current/Resource/CMap/H /etc/alternatives/ghostscript-current/Resource/CMap/Hankaku /etc/alternatives/ghostscript-current/Resource/CMap/Hiragana /etc/alternatives/ghostscript-current/Resource/CMap/Katakana /etc/alternatives/ghostscript-current/Resource/CMap/NWP-H /etc/alternatives/ghostscript-current/Resource/CMap/NWP-V /etc/alternatives/ghostscript-current/Resource/CMap/RKSJ-H /etc/alternatives/ghostscript-current/Resource/CMap/RKSJ-V /etc/alternatives/ghostscript-current/Resource/CMap/Roman /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UCS2-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UCS2-HW-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UCS2-HW-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UCS2-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UTF16-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UTF16-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UTF32-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UTF32-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UTF8-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS-UTF8-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS2004-UTF16-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS2004-UTF16-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS2004-UTF32-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS2004-UTF32-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS2004-UTF8-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJIS2004-UTF8-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJISPro-UCS2-HW-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJISPro-UCS2-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJISPro-UTF8-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJISX0213-UTF32-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJISX0213-UTF32-V /etc/alternatives/ghostscript-current/Resource/CMap/UniJISX02132004-UTF32-H /etc/alternatives/ghostscript-current/Resource/CMap/UniJISX02132004-UTF32-V /etc/alternatives/ghostscript-current/Resource/CMap/V /etc/alternatives/ghostscript-current/Resource/CMap/WP-Symbol /etc/alternatives/gnome-text-editor /etc/alternatives/gnome-text-editor.1.gz /etc/alternatives/lightdm-gtk-greeter-config-derivative /etc/alternatives/mp3-decoder /etc/alternatives/mp3-decoder.1.gz /etc/alternatives/mpg123 /etc/alternatives/mpg123.1.gz /etc/alternatives/newt-palette /etc/alternatives/ssh-askpass /etc/alternatives/ssh-askpass.1.gz /etc/alternatives/tclsh /etc/alternatives/tclsh.1 /etc/alternatives/text.plymouth /etc/alternatives/x-session-manager /etc/alternatives/x-session-manager.1.gz /etc/alternatives/x-terminal-emulator /etc/alternatives/x-terminal-emulator.1.gz /etc/alternatives/x-window-manager /etc/alternatives/x-window-manager.1.gz /etc/alternatives/yacc /etc/alternatives/yaccman /etc/apg.conf /etc/apparmor.d/local/usr.lib.telepathy /etc/apparmor.d/usr.lib.telepathy /etc/apport/crashdb.conf.d/indicator-appmenu-crashdb.conf /etc/apport/crashdb.conf.d/ubuntuone-client-crashdb.conf /etc/apport/crashdb.conf.d/unity-crashdb.conf /etc/apt/sources.list /etc/apt/sources.list~ /etc/apt/trustdb.gpg /etc/bash_completion.d/libreoffice.sh /etc/bash_completion.d/zeitgeist-daemon /etc/brlapi.key /etc/brltty/brl-xw-all.txt /etc/casper.conf /etc/checkbox.d/checkbox-qt.ini /etc/checkbox.d/checkbox.ini /etc/compizconfig/config /etc/compizconfig/unity.ini /etc/compizconfig/upgrades/com.canonical.unity.unity.01.upgrade /etc/compizconfig/upgrades/com.canonical.unity.unity.02.upgrade /etc/compizconfig/upgrades/com.canonical.unity.unity.03.upgrade /etc/console-setup/cached.kmap.gz /etc/cups/ssl/server.crt /etc/cups/ssl/server.key /etc/cups/subscriptions.conf /etc/cups/subscriptions.conf.O /etc/dbus-1/system.d/com.ubuntu.SystemService.conf /etc/dbus-1/system.d/com.ubuntu.WhoopsiePreferences.conf /etc/dbus-1/system.d/org.blueman.Mechanism.conf /etc/dbus-1/system.d/org.freedesktop.PackageKit-aptd.conf /etc/dbus-1/system.d/org.freedesktop.SystemToolsBackends.conf /etc/dbus-1/system.d/org.freedesktop.hostname1.conf /etc/dbus-1/system.d/org.freedesktop.locale1.conf /etc/dbus-1/system.d/org.gnome.SettingsDaemon.DateTimeMechanism.conf /etc/default/whoopsie /etc/dictionaries-common/words /etc/firefox/pref/apturl.js /etc/fonts/conf.avail/59-droid-serif-fonts.conf /etc/fonts/conf.avail/60-droid-sans-mono-fonts.conf /etc/fonts/conf.avail/65-droid-sans-fonts.conf /etc/fonts/conf.d/59-droid-serif-fonts.conf /etc/fonts/conf.d/60-droid-sans-mono-fonts.conf /etc/fonts/conf.d/65-droid-sans-fonts.conf /etc/gimp/2.0/controllerrc /etc/gimp/2.0/gimprc /etc/gimp/2.0/gtkrc /etc/gimp/2.0/menurc /etc/gimp/2.0/ps-menurc /etc/gimp/2.0/sessionrc /etc/gimp/2.0/templaterc /etc/gimp/2.0/unitrc /etc/ginn/wishes.xml /etc/gnome-system-tools/user-profiles.conf /etc/gnome-vfs-2.0/modules/default-modules.conf /etc/gnome-vfs-2.0/modules/extra-modules.conf /etc/gnome/menus.blacklist /etc/group /etc/group- /etc/gshadow /etc/gshadow- /etc/gtkmathview/dictionary-debian.xml /etc/gtkmathview/gtkmathview.conf.xml /etc/hostname /etc/hosts /etc/init.d/failsafe-x /etc/init.d/whoopsie /etc/init/failsafe-x.conf /etc/init/tty1.conf /etc/init/tty2.conf /etc/init/tty3.conf /etc/init/tty4.conf /etc/init/tty5.conf /etc/init/tty6.conf /etc/init/ttyS0.conf /etc/init/whoopsie.conf /etc/ld.so.cache /etc/libao.conf /etc/libreoffice/psprint.conf /etc/libreoffice/soffice.sh /etc/libreoffice/sofficerc /etc/lightdm/lightdm-gtk-greeter-ubuntu.conf /etc/lightdm/lightdm-gtk-greeter.conf /etc/lightdm/lightdm.conf /etc/mailcap /etc/motd /etc/netscsid.conf /etc/newt/palette /etc/pam.d/gnome-screensaver /etc/pam.d/xscreensaver /etc/passwd /etc/passwd- /etc/popularity-contest.conf /etc/purple/prefs.xml /etc/sgml/catalog /etc/sgml/catalog.old /etc/sgml/docbook-xml.cat /etc/sgml/docbook-xml.cat.old /etc/sgml/docbook-xml/4.0/dbgenent.ent /etc/sgml/docbook-xml/4.1.2/dbgenent.mod /etc/sgml/docbook-xml/4.2/dbgenent.mod /etc/sgml/docbook-xml/4.3/dbgenent.mod /etc/sgml/docbook-xml/4.4/dbgenent.mod /etc/sgml/docbook-xml/4.5/dbgenent.mod /etc/sgml/metacity-common.cat /etc/sgml/sgml-data.cat /etc/sgml/sgml-data.cat.old /etc/shadow /etc/shadow- /etc/skel/.Xdefaults /etc/skel/.xscreensaver /etc/skel/examples.desktop /etc/sound/events/gnome-2.soundlist /etc/sound/events/gtk-events-2.soundlist /etc/ssh/ssh_host_dsa_key /etc/ssh/ssh_host_dsa_key.pub /etc/ssh/ssh_host_ecdsa_key /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_rsa_key /etc/ssh/ssh_host_rsa_key.pub /etc/ssl/certs/0c31d5ce /etc/ssl/certs/1c7314a2 /etc/ssl/certs/UbuntuOne-Go_Daddy_CA.pem /etc/ssl/certs/UbuntuOne-Go_Daddy_Class_2_CA.pem /etc/ssl/certs/ValiCert_Class_2_VA.pem.dpkg-new /etc/ssl/certs/dd892c39 /etc/ssl/certs/ssl-cert-snakeoil.pem /etc/ssl/private/ssl-cert-snakeoil.key /etc/sudoers /etc/wodim.conf /etc/xdg/Thunar/uca.xml /etc/xdg/Trolltech.conf /etc/xdg/autostart/blueman.desktop /etc/xdg/autostart/bluetooth-applet-unity.desktop /etc/xdg/autostart/bluetooth-applet.desktop /etc/xdg/autostart/deja-dup-monitor.desktop /etc/xdg/autostart/gdu-notification-daemon.desktop /etc/xdg/autostart/gnome-fallback-mount-helper.desktop /etc/xdg/autostart/gnome-screensaver.desktop /etc/xdg/autostart/gnome-settings-daemon.desktop /etc/xdg/autostart/gnome-sound-applet.desktop /etc/xdg/autostart/gnome-user-share.desktop /etc/xdg/autostart/gwibber.desktop /etc/xdg/autostart/nautilus-autostart.desktop /etc/xdg/autostart/orca-autostart.desktop /etc/xdg/autostart/telepathy-indicator.desktop /etc/xdg/autostart/ubuntuone-launch.desktop /etc/xdg/autostart/vino-server.desktop /etc/xdg/autostart/xfce4-notes-autostart.desktop /etc/xdg/autostart/xfce4-power-manager.desktop /etc/xdg/autostart/xfce4-settings-helper-autostart.desktop /etc/xdg/autostart/xfce4-volumed.desktop /etc/xdg/autostart/zeitgeist-datahub.desktop /etc/xdg/menus/applications.menu /etc/xdg/menus/gnomecc.menu /etc/xdg/menus/unity-lens-applications.menu /etc/xdg/menus/xfce-applications.menu /etc/xdg/sni-qt.conf /etc/xdg/ubuntuone/logging.conf /etc/xdg/ubuntuone/syncdaemon.conf /etc/xdg/xdg-xubuntu/Terminal/terminalrc /etc/xdg/xdg-xubuntu/Thunar/thunarrc /etc/xdg/xdg-xubuntu/Thunar/uca.xml /etc/xdg/xdg-xubuntu/autostart/xfce4-tips-autostart.desktop /etc/xdg/xdg-xubuntu/lightdm/lightdm-gtk-greeter.conf /etc/xdg/xdg-xubuntu/menus/xfce-applications.menu /etc/xdg/xdg-xubuntu/orage/oragerc /etc/xdg/xdg-xubuntu/xfce4/helpers.rc /etc/xdg/xdg-xubuntu/xfce4/panel/datetime-7.rc /etc/xdg/xdg-xubuntu/xfce4/panel/default.xml /etc/xdg/xdg-xubuntu/xfce4/panel/indicator-5.rc /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/thunar-volman.xml /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xfprint.xml /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml /etc/xdg/xfce4/Xft.xrdb /etc/xdg/xfce4/helpers.rc /etc/xdg/xfce4/panel/default.xml /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/thunar-volman.xml /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml /etc/xdg/xfce4/xinitrc /etc/xml/catalog /etc/xml/catalog.old /etc/xml/docbook-xml.xml /etc/xml/docbook-xml.xml.old /etc/xml/rarian-compat.xml /etc/xml/sgml-data.xml /etc/xml/sgml-data.xml.old $ // how do the APT sources look/compare/differ? $ ssh -ax -l ubuntu ubuntu ' > grep '\''^[ ]*[^ #]'\'' /etc/apt/sources.list' deb cdrom:[Ubuntu 12.04.1 LTS _Precise Pangolin_ - Release i386 (20120817.3)]/ precise main restricted deb http://archive.ubuntu.com/ubuntu/ precise main restricted deb http://security.ubuntu.com/ubuntu/ precise-security main restricted deb http://archive.ubuntu.com/ubuntu/ precise-updates main restricted $ ssh -ax -l xubuntu xubuntu ' > grep '\''^[ ]*[^ #]'\'' /etc/apt/sources.list' deb cdrom:[Xubuntu 12.04.1 LTS _Precise Pangolin_ - Release i386 (20120817.3)]/ precise main multiverse restricted universe deb http://archive.ubuntu.com/ubuntu/ precise main restricted universe multiverse deb http://security.ubuntu.com/ubuntu/ precise-security main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ precise-updates main restricted universe multiverse $ // So, essentially Xubuntu uses different CD, and adds universe and // multiverse, but is otherwise the same. // And, though not exactly trivial, given the similarities and overlap, // and use of same repository (even if differing in additional sections // thereof), it is apparently quite feasible to be able to convert from // one to the other - and in either direction. // Likely "gottcha"s are specific configurations for the user ID used in // numerous locations (ubuntu vs. xubuntu user), and any other bits that // may differ and in fact matter. From rick at linuxmafia.com Wed Jan 2 08:09:03 2013 From: rick at linuxmafia.com (Rick Moen) Date: Wed, 2 Jan 2013 08:09:03 -0800 Subject: [buug] converting Ubuntu to Xubuntu? In-Reply-To: <20130102050618.393764bkjxy7qfk8@webmail.rawbw.com> References: <20121222003653.15976g6xmsvywoco@webmail.rawbw.com> <20130102050618.393764bkjxy7qfk8@webmail.rawbw.com> Message-ID: <20130102160903.GP25491@linuxmafia.com> Quoting Michael Paoli (Michael.Paoli at cal.berkeley.edu): [stuff] > // So, essentially Xubuntu uses different CD, and adds universe and > // multiverse, but is otherwise the same. > // And, though not exactly trivial, given the similarities and overlap, > // and use of same repository (even if differing in additional sections > // thereof), it is apparently quite feasible to be able to convert from > // one to the other - and in either direction. _Also_, you can just add the other's *-desktop metapackage to the other, and have _both_ DEs at your disposal. Basically, aside from tiny trivial things like differences in default apt configurations (and other such nits that the administrator should manage, anyway), each is just a shared Ubuntu core plus either metapackage ubuntu-desktop or metapackage xubuntu-desktop. Likewise, kubuntu is basically the shared Ubuntu core plus metapackage kubuntu-desktop, etc., etc. Exactly as one would expect. By the way, Michael, what would it take to get you to start using paragraph breaks (a lot) more consistently? The towering wall of text gets old. From Michael.Paoli at cal.berkeley.edu Mon Jan 7 02:23:45 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Mon, 07 Jan 2013 02:23:45 -0800 Subject: [buug] [n]vi "vs." vim, etc. In-Reply-To: <20130102023901.43302jn4i4a0z8mc@webmail.rawbw.com> References: <20130102023901.43302jn4i4a0z8mc@webmail.rawbw.com> Message-ID: <20130107022345.56964tp6y0kzhgqo@webmail.rawbw.com> > I created an .exrc with the following two lines: > > :set showmode > :set noflash > > The second line turns off the flashing screen error notification. The > first line, of course, you recommended. Between these two, I think > that is most of what I expect of vi. I don't need to mess with > terminfo,but thankyou for the explanation. Ah, I see that [n]vi also has [no]flash. Historically, I don't think ye olde AT&T, etc. vi had that option, and nvi may not have had it earlier on. In any case, that does make it easier to change that behavior for just that single application - though it also adds "one more thing" to the application itself (arguable if that's a good thing or not in this case). Still, if one wants to have that impact more generally, there's terminfo (or termcap, as applicable). In [n]vi, historically, the output from: :se all fit entirely within an 80x24 display. Alas, now I find it goes a fair bit beyond that limit - but still a lot less than two screens full of such text. But, egad, vim fills multiple screenfulls with the output from that ... let's see (ugh, I don't have vim installed ... might as well, so I can more conveniently call out its flaws ... and update-alternatives it mostly out of the way!) ... vim :se all egad ... over 6 and onto 7 80x24 screenfulls of stuff. > It does seemthough that a compatibility > mode should be compatible except for unarguable improvements, bug > fixes, or non-conflictual extensions. Even nvi has those, for > example, infinite undo. I did not realize what a can of worms I was > opening. [n]vi makes some very few (but significant) functional changes compared to ye olde classic vi - mostly just removed some limitations and fixed some bugs, see: http://buug.org/pipermail/buug/2011-April/003731.html As far as I'm aware, [n]vi doesn't have "infinite undo" - but vim does. (but why would I want infinite undo? Can't say I've ever really needed it. There's always: :q! :e! "1p "1P . u U :se readonly :!chmod a-w % 26 "named" (letters) buffers 9 numbered delete buffers 1 unnamed default buffer and of course one can work with multiple files and one can even not tell the editor the name of the file, e.g.: $ vi :0r !cat file ) > creator of vim, Bram Moolenaar. > Bram claims that vim is"99.9% backwards compatible with Vi". [cough]. Uhm, more like about 97 or 98.something %, but certainly not 99 or high 99.something %. When the keystrokes and commands fly off the fingertips at fairly significant speed and efficiently, "suddenly" having well over 1% of them do something unexpected cuts way down on efficiency and introduces errors and unintended consequences. > If , as you say, he has his own way of doing regular expressions, I > can'tsee any excuse for that. Not "totally" different, but significantly different - we're not talking an exception or two or three, but probably more like about a dozen or more things done differently ("extended") with vim's REs that aren't done that same way in any other RE program. > But he has his own software > "charityware" licensewhich would make it disadvantageous to do Well, I'm not much a fan of "yet another license", but it looks like the license is "good enough" it apparently passed DFSG criteria (it's in Debian main), so I'm not going to nit pick over it on that (it's got other bigger nits to be picked at). > I expect you will never see it on the Gnu website. Probably not a possibility until such time as it is licensed or also licensed under GPL - and in the meantime, I think GNU's probably got enough stuff and responsibility (and bugs) to deal with as it is. >> ----- Forwarded message from Michael.Paoli at cal.berkeley.edu ----- >> From: "Michael Paoli" >> >> And [n]vi, vim, etc. bits: >> http://buug.org/pipermail/buug/2013-January/003969.html references/excerpts: http://buug.org/pipermail/buug/2013-January/003969.html http://buug.org/pipermail/buug/2011-April/003724.html et. seq. From Michael.Paoli at cal.berkeley.edu Thu Jan 10 13:56:34 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Thu, 10 Jan 2013 13:56:34 -0800 Subject: [buug] BALUG Tu 2013-01-15: Grant Bowman: ubuntu-california.org Q&A; & other BALUG news Message-ID: <20130110135634.17064f6b5brob9k4@webmail.rawbw.com> BALUG Tu 2013-01-15: Grant Bowman: ubuntu-california.org Q&A; & other BALUG news ------------------------------ items, details further below: BALUG Tu 2013-01-15: Grant Bowman: ubuntu-california.org Q&A BALUG Tu 2013-02-19: Elizabeth Krumbach on Linux deployments in Ghana Petition US Government - free / open source software in schools Book(s), CDs/DVDs, and other "door prizes", etc. "slides" from: BALUG 2012-07-17 screen(1) presented by Michael Paoli volunteering to help BALUG Twitter https://twitter.com/#!/BALUG_org ------------------------------ Bay Area Linux User Group (BALUG) meeting Tuesday 6:30 P.M. 2013-01-15 For our 2013-01-15 BALUG meeting, we're proud to present: Grant Bowman - ubuntu-california.org[1] Q&A Everything you ever wanted to know about the California Team and the Ubuntu community. How to represent Ubuntu[2] in local Linux User Groups and participate online and around the world in the semi-annual Ubuntu community events scheduled around the six month Ubuntu release cadence in April and October. Mr. Bowman has been a consultant and Internet professional for over twenty years and is presently a Director of Partimus[3]. He is one of three elected ubuntu-california.org[1] leaders, an Ubuntu Member, Fedora[4] Ambassador[5] and former employee of suse.com[6]. He is active with berkeleylug.com[7], noisebridge.net[8], SF-LUG[9] and DVLUG[10] and his website is at grantbow.com[11]. 1. http://ubuntu-california.org/ 2. http://www.ubuntu.com/ 3. http://partimus.org/ 4. http://fedoraproject.org/ 5. http://fedoraproject.org/wiki/Ambassadors 6. https://www.suse.com/ 7. http://berkeleylug.com/ 8. https://www.noisebridge.net/wiki/Noisebridge 9. http://sf-lug.com/ 10. http://dvlug.org/ 11. http://www.grantbow.com/ Please RSVP if you're planning to come (see further below). For our 2013-01-15 BALUG meeting, we're proud to present: So, if you'd like to join us please RSVP to: rsvp at balug.org **Why RSVP??** Well, don't worry we won't turn you away, but the RSVPs really help BALUG and the Four Seas Restaurant plan the meal and meeting, and with sufficient attendance, they also help ensure that we'll be able to eat upstairs in the private banquet room. Meeting Details... 6:30pm Tuesday, January 15th, 2012 2013-01-15 Four Seas Restaurant http://www.fourseasr.com/ 731 Grant Ave. San Francisco, CA 94108 Easy PARKING: Portsmouth Square Garage at 733 Kearny: http://www.sfpsg.com/ Cost: The meetings are always free, but for dinner, for your gift of $13 cash or more, we give you a gift of dinner - joining us for a yummy family-style Chinese dinner - tax and tip included (your gift also helps in our patronizing the restaurant venue and helping to defray BALUG costs such as treating our speakers to dinner). ------------------------------ For our 2013-01-15 BALUG meeting, we're proud to present: Elizabeth Krumbach on Linux deployments in Ghana In October of 2012 Elizabeth Krumbach accompanied other volunteers from Computer Reach[1], a non-profit based out of Pittsburgh, PA, on a trip to Ghana in western Africa to assist with the deployment of 100 Edubuntu[2]-based desktop computers. In this talk she will share photos and details of the trip, along with some of the lessons they learned about doing such a deployment in a developing country, covering hardware, software and training requirements. For a bit more background, one can also have a look at her earlier Ubuntu User[3] article: Road Trip: Delivering Edbuntu systems to Ghana[4]. Elizabeth Krumbach works as a Linux Systems Administrator focused on continuous integration, holds a position on the Ubuntu Community Council[5] and is the Treasurer and a Director at the non-profit Partimus[6]. She has held a leadership position in the Ubuntu Women[7], Ubuntu Classroom[8] and Ubuntu News[9] projects for several years and recently took over as Marketing and Website lead for the Xubuntu[10] Linux distribution. Former coordinator for the Philadelphia area Linux Users Group[11], she is now living in San Francisco and is one of the leaders of the Ubuntu California[12] team where she coordinates Bay Area Ubuntu events and meetings, install fests, booths and hosts Debian dinners every couple months for Bay Area Debian[13]. 1. http://computereach.com/ 2. http://edubuntu.org/ 3. http://www.ubuntu-user.com/ 4. http://www.ubuntu-user.com/content/download/3340/22578/file/070-073_edubuntu.pdf 5. https://wiki.ubuntu.com/CommunityCouncil 6. http://www.partimus.org/ 7. http://women.ubuntu.com/ 8. https://wiki.ubuntu.com/Classroom 9. https://wiki.ubuntu.com/NewsTeam 10. http://www.xubuntu.org/ 11. http://www.phillylinux.org/ 12. http://ubuntu-california.org/ 13. http://bad.debian.net/ ------------------------------ Petition US Government - free / open source software in schools If you've not seen it[1], there's an on-line petition[2] to urge the US Government to favor and encourage free Open Source software use in and by schools. 1. http://lists.balug.org/pipermail/balug-talk-balug.org/2013-January/004925.html 2. http://wh.gov/Rz6C ------------------------------ Book(s), CDs/DVDs, and other "door prizes", etc. Goodies we'll have at the meeting (at least the following): eBook review copy (only one copy remains): A Practical Guide to Linux Commands, Editors, and Shell Programming, 3rd Edition, Mark G. Sobell http://www.informit.com/title/013308504X http://lists.balug.org/pipermail/balug-talk-balug.org/2012-November/004885.html CDs/DVDs, etc. - have a peek here: http://www.wiki.balug.org/wiki/doku.php?id=balug:cds_and_images_etc We may also be able to "burn" images per request or copy to USB flash, etc. Donations of blank or +-RW media, USB flash, or funding thereof, also appreciated. See the above URL for details. ------------------------------ "slides" from: BALUG 2012-07-17 screen(1) presented by Michael Paoli Missed that meeting, or want to review the materials? Have a peek here: http://lists.balug.org/pipermail/balug-talk-balug.org/2013-January/004926.html ------------------------------ volunteering to help BALUG Want to volunteer to help out BALUG? Quite a variety of opportunities* Drop us a note at: balug-contact at balug.org Or come talk to us at a BALUG meeting. *e.g.: o assist on publicity o assist on speaker coordination/procurement, etc. o webmastering o archivist/history/retrieval/etc. o Linux Systems Administration (e.g. do/assist/learn, with/under some quite experienced and skilled Linux systems administrators). o and other various/miscellaneous tasks BALUG "ought" to be doing or would be good to do (feel free to bring in ideas!) ------------------------------ Twitter - you can also follow BALUG on Twitter: https://twitter.com/#!/BALUG_org ------------------------------ Feedback on our publicity/announcements (e.g. contacts or lists where we should get our information out that we're not presently reaching, or things we should do differently): publicity-feedback at balug.org ------------------------------ http://www.balug.org/ From togo at of.net Mon Jan 14 16:21:15 2013 From: togo at of.net (Tony Godshall) Date: Mon, 14 Jan 2013 16:21:15 -0800 Subject: [buug] converting Ubuntu to Xubuntu? In-Reply-To: <20130102160903.GP25491@linuxmafia.com> References: <20121222003653.15976g6xmsvywoco@webmail.rawbw.com> <20130102050618.393764bkjxy7qfk8@webmail.rawbw.com> <20130102160903.GP25491@linuxmafia.com> Message-ID: ... > By the way, Michael, what would it take to get you to start using > paragraph breaks (a lot) more consistently? The towering wall of text > gets old. As monitors get wider and wider but not taller it becomes more and more necessary to conserve vertical space. Joking. From Michael.Paoli at cal.berkeley.edu Thu Jan 17 18:16:19 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Thu, 17 Jan 2013 18:16:19 -0800 Subject: [buug] ISO date format Message-ID: <20130117181619.41345iwg7bmhwvk8@webmail.rawbw.com> At the last (2012-01-03) BUUG meeting, among other things discussed, date and date/time format came up. I mentioned ISO[1] date format, and that I'd been using ISO date format, particularly the form: YYYY-MM-DD since sometime in 1998. Among some of its key advantages: Y2K compliant unambiguous, sorts quite logically and simply, language independent, well known to more people on the planet than any other format. Both basic and extended format were discussed, but not by name. I note that apparently the standard states: "The basic format should be avoided in plain text." - essentially, the extended format is the preferred format for human readability. ISO date format is also conveniently available via date(1), e.g., on POSIX/SUS[2] compliant systems: $ date +%Y-%m-%d 2013-01-17 or additionally, on systems with GNU date[3]: $ date -I 2013-01-17 Full time, to precision of second (or sometimes more) is also available, e.g.: $ date +%Y-%m-%dT%H:%M:%S 2013-01-17T13:32:48 $ date -Iseconds 2013-01-17T13:32:48-0800 Note however that POSIX/SUS doesn't include convenient means to provide timezone information in proper ISO format, however it can be fairly easily coerced to do so, e.g.: $ TZ=GMT0 date +%Y-%m-%dT%H:%M:%S+00:00 2013-01-17T21:32:48+00:00 $ TZ=PST8 date +%Y-%m-%dT%H:%M:%S-0800 2013-01-17T13:32:48-0800 Anyway, the simple sorting bit works great with just the dates, and in a consistent ISO format. When also including the time, it then becomes a matter of timezone(s), consistent use and formatting thereof, and Daylight Saving Time / Summer Time vs. not. In all cases if one always uses GMT0 (UTC, Z), and same precision and formatting, sorting chronologically works quite simply and reliably. Note also, that when it comes to logs and security, some entities won't even accept or review/consider logs unless they're in UTC (GMT0). Not only does GMT0 (UTC) make so much sense for hardware clocks (and has been what Unix, at least historically, uses for hardware clocks), but in many cases - e.g. data/usage across timezones, or systems that travel across timezones, it often makes for a sensible, or even "best" choice, for system default timezone or system "local" time - though it often may not make best or most convenient default timezone for "users" - though that can, of course, be changed on user-by-user basis, or even a different default created for "regular users". Note also that many UNIX/Linux utilities and logging, etc., are (slowly) tending more and more towards ISO date format in many cases. And yes, I've at least occasionally made earlier mention[4] of ISO date format. footnotes/references: 1. http://en.wikipedia.org/wiki/ISO_8601 2. http://pubs.opengroup.org/onlinepubs/9699919799/utilities/date.html 3. http://www.gnu.org/software/coreutils/manual/html_node/Options-for-date.html#Options-for-date 4. http://lists.balug.org/pipermail/balug-talk-balug.org/2010-February/004557.html From Michael.Paoli at cal.berkeley.edu Thu Jan 17 18:16:23 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Thu, 17 Jan 2013 18:16:23 -0800 Subject: [buug] http.debian.net :-) Message-ID: <20130117181623.18131v6q8n4x14zo@webmail.rawbw.com> Also mentioned at BUUG meeting 2013-01-03: http.debian.net Though not "official" (yet?), quite cool and useful for, e.g. most Debian Apt sources.list entries "a new mirror redirector service, http.debian.net, that aims to reduce the impact of occasionally offline or out-of-date mirrors, and to use the worldwide network of mirrors more effectively. For now this service is unofficial," ... http://www.debian.org/News/weekly/2012/13/#redirector Alas, I've still got some catching up to do on reading earlier Debian Project News mailings. Which, by the way, is an excellent, and relatively low volume (one per week, or less) list to read if one is involved with or rather to quite interested in Debian. If even that is "too much", one may want to just subscribe to Debian Announce: http://www.debian.org/MailingLists/debian-announce which is about a dozen emailings per year (if you're only going to follow one of those, then Debian Announce is probably best). From rick at linuxmafia.com Thu Jan 17 20:31:10 2013 From: rick at linuxmafia.com (Rick Moen) Date: Thu, 17 Jan 2013 20:31:10 -0800 Subject: [buug] ISO date format In-Reply-To: <20130117181619.41345iwg7bmhwvk8@webmail.rawbw.com> References: <20130117181619.41345iwg7bmhwvk8@webmail.rawbw.com> Message-ID: <20130118043109.GH3216@linuxmafia.com> Quoting Michael Paoli (Michael.Paoli at cal.berkeley.edu): > or additionally, on systems with GNU date[3]: > $ date -I > 2013-01-17 I'm feeling like I've just gone through a time warp to March 2007, when this whole subject was discussed to death on Don Marti's linux-elitists mailing list -- including the reason why the above is a bad idea. Quoting part of that thread: From rick Sat Mar 3 21:56:53 2007 Date: Sat, 3 Mar 2007 21:56:54 -0800 To: linux-elitists at zgp.org Subject: Re: [linux-elitists] Show Us The Code Quoting David L. Anselmi (anselmi at anselmi.us): > The Debian bug on this says that --iso-8601 is deprecated in favor of > --rfc-3339 and contains links to the upstream discussion: > > http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=354799 > > Be nice if there were a short option, I guess. '-I' is now deprecated (and deliberately dropped from the manpage, which seems bloody minded) for the same reason that --iso-8601 was. Option -i was proposed as a replacement short option (standing for 'Internet time'), but rejected because Paul Eggert's PC clock was too jittery (http://lists.gnu.org/archive/html/bug-coreutils/2005-09/msg00056.html). So, the best approximation we'll be permitted to the brevity and clarity of 'date -I' is date +%Y-%m-%d or date --rfc-3339=date Argh. Just kill me now. So, sorry, no, you really should _not_ recommend 'date -I' to people using GNU date, because the GNU coreutils people have already telegraphed their intention to drop that option from future versions. After the aforementioned linux-elitists thread, I figured out a reasonable alternative (for GNU date users) that is _not_ similarly destined to be dropped into the dustbin: date +%F > At the last (2012-01-03) BUUG meeting, among other things discussed, > date and date/time format came up. I mentioned ISO[1] date format.... I believe you mean ISO 8601 format. > And yes, I've at least occasionally made earlier mention[4] of ISO date > format. > 4. http://lists.balug.org/pipermail/balug-talk-balug.org/2010-February/004557.html And I told you about 'date +%F' at that time, too, in my immediate follow-up: http://lists.balug.org/pipermail/balug-talk-balug.org/2010-February/004559.html -- Cheers, A programmer had a problem. He thought to himself, "I know, Rick Moen I'll solve it with threads!". has Now problems. two he rick at linuxmafia.com -- Davidlohr Bueso McQ! (4x80) From Michael.Paoli at cal.berkeley.edu Fri Jan 18 11:57:03 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Fri, 18 Jan 2013 11:57:03 -0800 Subject: [buug] date/time formats, standards, options, bloat, ... (was: ISO date format) In-Reply-To: <20130118043109.GH3216@linuxmafia.com> References: <20130117181619.41345iwg7bmhwvk8@webmail.rawbw.com> <20130118043109.GH3216@linuxmafia.com> Message-ID: <20130118115703.202614lsof3989vk@webmail.rawbw.com> Ah, good points. I'd forgotten about %F, but alas, it's not (yet?) in POSIX/SUS[1]. Likewise for %z and %:z. And -I, okay, stating/implying it as "conveniently available" in GNU date[2] was probably bit of an overstatement on my part, as it is deprecated and it may become inconveniently unavailable in any future version. I did however show it in example as interactive usage, not in some script or program. Though some of GNU's documentation states it as deprecated, would be better if that was much more consistent. E.g. in [2], in that context, it makes no mention there of being deprecated. And yes, standards do evolve. ISO 8601[3] is good, but also older. RFC 3339[4] didn't yet exist in 1998. It can well be argued that RFC 3999 has advantages over ISO 8601. And, perhaps to lesser extent, it could also be argued that ISO 8601 has some advantages over RFC 3339 (e.g. RFC 3339 doesn't even attempt to address ranges of time). Fortunately, ISO 8601 and RFC 3339 do also have quite a bit in common. What's been more widely adopted (e.g. ISO 8601 or RFC 3339) probably depends not only on context (e.g. Internet protocols vs. more general usage by/for humans, standard bodies, and countries), but may also change and shift over time. But it's quite clear, for Internet protocols currently RFC 3339 would generally be most appropriate and applicable, whereas in other contexts, it might be ISO 8601, rather than RFC 3339. It's also worth noting that ISO 8601 and RFC 3339 do address rather different objectives. ISO 8601 more generally covers date/time formats and related data and interchange, and has a fairly wide variety of formats to accommodate somewhat different needs (e.g. time ranges, week-of-year formats commonly used in e.g. manufacturing industries, lower precision formats e.g. specifying only year and month, or only year, etc.) RFC 3339 aims to simplify by only addressing specific time instants, unambiguously and to precision of second and only rarely more precisely, reducing variations in possible formatting and probabilities of errors and bugs - including implementation of specification and interpretation of conforming data, while also having reasonable allowance for human readability, and with a primary focus on use as standard format in Internet protocols. (options, bloat, ramble, ramble ...) For the most part, I like to stick with and favor good standards, and shy away from non-standard (e.g. GNU) extensions. But there are some I do very much like and I find have much merit, and I'd like to see - at least in some comparable form, make it into POSIX/SUS standards. But, a whole lot of GNU extensions I often find to be rather bloated overkill, and not so useful. Examples of GNU extension I quite like: the -0 and similar options to GNU's find (-print0), cpio, xargs, etc. It's so useful perl also has quite similar, as does BSD in, e.g. pax. I'd like to see POSIX/SUS date(1) with minimally extended yet sufficient additional formatting options to reasonably generate most common ISO 8601 and RFC 3339 formats - and with not nearly so large and complex (and not particularly stable) set of options as GNU date has. Sure, might be handy to have capability to convert from a relatively arbitrary timestamp to another date format or calculate a timestamp relative to another given timestamp and offset, but *really*, do we need to glob all that onto the date(1) command - particularly for command that also likely gets used by superuser? Sounds hazardously bloated. Seems to me a whole lot of that functionality ought to be stripped out of the date command, and would probably best be placed in a completely separate utility command. I think many of the points about simplicity and rarely used options ought quite be applied to (re)design of the GNU date command - but hey, that's just my opinion. GNU date is brought to you by (some of) the same fine folks also responsible for emacs - and, well, they may have very different design criteria compared to what I'd have in mind. footnotes/references/excerpts: 1. http://pubs.opengroup.org/onlinepubs/9699919799/utilities/date.html 2. http://www.gnu.org/software/coreutils/manual/html_node/Options-for-date.html#Options-for-date 3. http://en.wikipedia.org/wiki/ISO_8601 4. http://www.ietf.org/rfc/rfc3339.txt > From: "Rick Moen" > Subject: Re: [buug] ISO date format > Date: Thu, 17 Jan 2013 20:31:10 -0800 > Quoting Michael Paoli (Michael.Paoli at cal.berkeley.edu): > >> or additionally, on systems with GNU date[3]: >> $ date -I >> 2013-01-17 > > I'm feeling like I've just gone through a time warp to March 2007, when > this whole subject was discussed to death on Don Marti's linux-elitists > mailing list -- including the reason why the above is a bad idea. > Quoting part of that thread: > > From rick Sat Mar 3 21:56:53 2007 > Date: Sat, 3 Mar 2007 21:56:54 -0800 > To: linux-elitists at zgp.org > Subject: Re: [linux-elitists] Show Us The Code > > Quoting David L. Anselmi (anselmi at anselmi.us): > > > The Debian bug on this says that --iso-8601 is deprecated in favor of > > --rfc-3339 and contains links to the upstream discussion: > > > > http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=354799 > > > > Be nice if there were a short option, I guess. > > '-I' is now deprecated (and deliberately dropped from the manpage, which > seems bloody minded) for the same reason that --iso-8601 was. Option > -i was proposed as a replacement short option (standing for 'Internet > time'), but rejected because Paul Eggert's PC clock was too jittery > (http://lists.gnu.org/archive/html/bug-coreutils/2005-09/msg00056.html). > > So, the best approximation we'll be permitted to the brevity and clarity > of 'date -I' is > > date +%Y-%m-%d > or > date --rfc-3339=date > > Argh. Just kill me now. > > So, sorry, no, you really should _not_ recommend 'date -I' to people using > GNU date, because the GNU coreutils people have already telegraphed their > intention to drop that option from future versions. > > After the aforementioned linux-elitists thread, I figured out a > reasonable alternative (for GNU date users) that is _not_ similarly > destined to be dropped into the dustbin: > > date +%F > > > >> At the last (2012-01-03) BUUG meeting, among other things discussed, >> date and date/time format came up. I mentioned ISO[1] date format.... > > I believe you mean ISO 8601 format. > > >> And yes, I've at least occasionally made earlier mention[4] of ISO date >> format. >> 4. >> http://lists.balug.org/pipermail/balug-talk-balug.org/2010-February/004557.html > > And I told you about 'date +%F' at that time, too, in my immediate follow-up: > http://lists.balug.org/pipermail/balug-talk-balug.org/2010-February/004559.html > > -- > Cheers, A programmer had a problem. He thought to > himself, "I know, > Rick Moen I'll solve it with threads!". has Now problems. two he > rick at linuxmafia.com -- Davidlohr Bueso > McQ! (4x80) From rick at linuxmafia.com Wed Jan 23 19:57:33 2013 From: rick at linuxmafia.com (Rick Moen) Date: Wed, 23 Jan 2013 19:57:33 -0800 Subject: [buug] GNU bloat (was: ISO date format) In-Reply-To: <20130118043109.GH3216@linuxmafia.com> References: <20130117181619.41345iwg7bmhwvk8@webmail.rawbw.com> <20130118043109.GH3216@linuxmafia.com> Message-ID: <20130124035733.GA26038@linuxmafia.com> Quoting Michael Paoli (Michael.Paoli at cal.berkeley.edu): [...] > But, a whole lot of GNU extensions I often find to be rather bloated > overkill, and not so useful. [...] http://www.netfunny.com/rhf/jokes/88q3/2104.6.html Bonus link: http://www.wlug.org.nz/POSIX_ME_HARDER (I remember that interview Richard gave at Linuxcare in 1999, and agree that the world is notably poorer for losing that POSIX_ME_HARDER environment variable.) -- Cheers, Nothing's hotter than having a copyeditor correct your sex scenes. Rick Moen -- Max Barry rick at linuxmafia.com McQ! (4x80) From itz at buug.org Fri Jan 25 22:11:27 2013 From: itz at buug.org (Ian Zimmerman) Date: Fri, 25 Jan 2013 22:11:27 -0800 Subject: [buug] debsecan Message-ID: <20130125221127.5753e512.itz@buug.org> All debian users (I think that means a substantial portion of the readership of this list) ought to read this: http://lwn.net/Articles/532343/ -- Ian Zimmerman gpg public key: 1024D/C6FF61AD fingerprint: 66DC D68F 5C1B 4D71 2EE5 BD03 8A00 786C C6FF 61AD http://www.gravatar.com/avatar/c66875cda51109f76c6312f4d4743d1e.png Rule 420: All persons more than eight miles high to leave the court. From itz at buug.org Wed Jan 30 12:37:01 2013 From: itz at buug.org (Ian Zimmerman) Date: Wed, 30 Jan 2013 12:37:01 -0800 Subject: [buug] GNU make unexpected behavior - any experts here? Message-ID: <20130130123701.171b34e1.itz@buug.org> I have a problem with one of the GNU extensions (not generic make functionality). Anyone here feels wise, before I take it to the GNU forums? -- Ian Zimmerman gpg public key: 1024D/C6FF61AD fingerprint: 66DC D68F 5C1B 4D71 2EE5 BD03 8A00 786C C6FF 61AD http://www.gravatar.com/avatar/c66875cda51109f76c6312f4d4743d1e.png Rule 420: All persons more than eight miles high to leave the court. From Michael.Paoli at cal.berkeley.edu Wed Jan 30 13:35:53 2013 From: Michael.Paoli at cal.berkeley.edu (Michael Paoli) Date: Wed, 30 Jan 2013 13:35:53 -0800 Subject: [buug] GNU make unexpected behavior - any experts here? In-Reply-To: <20130130123701.171b34e1.itz@buug.org> References: <20130130123701.171b34e1.itz@buug.org> Message-ID: <20130130133553.24544vj7o326q0ao@webmail.rawbw.com> no promises, but ... details, details ;-) ... minimal case reproducing the (presumed) bug or unexpected behavior? version & source (compiled from GNU or distribution's packaging)? What bit in the documentation does the behavior not match as expected? Does GNU already have a "bug" filed on it (or it reported on applicable list, if/where proper bug tracking system doesn't exist)? And sometimes the bug "fix" is to match the documentation to the behavior. 8-O You know the drill ;-) http://www.catb.org/esr/faqs/smart-questions.html#beprecise Happy bug hunting! > From: "Ian Zimmerman" > Subject: [buug] GNU make unexpected behavior - any experts here? > Date: Wed, 30 Jan 2013 12:37:01 -0800 > I have a problem with one of the GNU extensions (not generic make > functionality). Anyone here feels wise, before I take it to the GNU > forums? From nick at zork.net Thu Jan 31 00:13:26 2013 From: nick at zork.net (Nick Moffitt) Date: Thu, 31 Jan 2013 08:13:26 +0000 Subject: [buug] GNU make unexpected behavior - any experts here? In-Reply-To: <20130130123701.171b34e1.itz@buug.org> References: <20130130123701.171b34e1.itz@buug.org> Message-ID: <20130131081325.GZ2488@zork.net> Ian Zimmerman: > I have a problem with one of the GNU extensions (not generic make > functionality). Anyone here feels wise, before I take it to the GNU > forums? Don't ask to ask: just ask! -- A: No. Q: Should I put my reply above quoted text? From itz at buug.org Thu Jan 31 10:51:41 2013 From: itz at buug.org (Ian Zimmerman) Date: Thu, 31 Jan 2013 10:51:41 -0800 Subject: [buug] GNU make unexpected behavior - any experts here? In-Reply-To: <20130130133553.24544vj7o326q0ao@webmail.rawbw.com> References: <20130130123701.171b34e1.itz@buug.org> <20130130133553.24544vj7o326q0ao@webmail.rawbw.com> Message-ID: <20130131105141.3a652957.itz@buug.org> On Wed, 30 Jan 2013 13:35:53 -0800 "Michael Paoli" wrote: > minimal case reproducing the (presumed) bug or unexpected behavior? #!/usr/bin/make -f # -*- makefile-gmake -*- define spit_foo = cat foo endef all: do_foo cat bar do_foo: $(spit_foo) .PHONY: do_foo all # expected: # cat foo # cat bar # got instead: # cat bar > version & source (compiled from GNU or distribution's packaging)? [10+0]~$ dpkg --status make Package: make Status: install ok installed Priority: optional Section: devel Installed-Size: 1145 Maintainer: Manoj Srivastava Architecture: amd64 Source: make-dfsg Version: 3.81-8.2 Depends: libc6 (>= 2.3) Suggests: make-doc Description: An utility for Directing compilation. GNU Make is an utility which controls the generation of executables and other target files of a program from the program's source files. It determines automatically which pieces of a large program need to be (re)created, and issues the commands to (re)create them. Make is not limited to programs and executable, it can be applied to any task where a set of target files must be created based on a set of input files, based on dependency and processing rules. Indeed, Make is a general purpose dependency solver. Homepage: http://www.gnu.org/software/make/ > What bit in the documentation does the behavior not match as expected? Manual section 6.8, Defining Multi-Line Variables and 5.8, Defining Canned Recipes > Does GNU already have a "bug" filed on it (or it reported on > applicable list, if/where proper bug tracking system doesn't exist)? > And sometimes the bug "fix" is to match the documentation to the > behavior. 8-O Well, a search (on gmane) of bug-make at gnu.org for "multi-line variables" doesn't match anything recent (like at least 8 years or so). -- Ian Zimmerman gpg public key: 1024D/C6FF61AD fingerprint: 66DC D68F 5C1B 4D71 2EE5 BD03 8A00 786C C6FF 61AD http://www.gravatar.com/avatar/c66875cda51109f76c6312f4d4743d1e.png Rule 420: All persons more than eight miles high to leave the court. From itz at buug.org Thu Jan 31 17:56:18 2013 From: itz at buug.org (Ian Zimmerman) Date: Thu, 31 Jan 2013 17:56:18 -0800 Subject: [buug] GNU make unexpected behavior - any experts here? In-Reply-To: <20130130123701.171b34e1.itz@buug.org> References: <20130130123701.171b34e1.itz@buug.org> Message-ID: <20130131175618.0c762a25.itz@buug.org> On Wed, 30 Jan 2013 12:37:01 -0800 Ian Zimmerman wrote: > I have a problem with one of the GNU extensions (not generic make > functionality). Anyone here feels wise, before I take it to the GNU > forums? I have figured it out, and it is a debacle for both sides invloved (me & GNU). Apparently, the syntax for defining canned recipes changed incompatibly between 3.81 and 3.82. In all versions up to 3.81, there is no = character on the define line; in 3.82, the = is required :-( And, while I have the debian make package, I have installed the documentation by hand (because I don't want non-free in my apt sources), and of course only the latest version is available on gnu.org. Argh. -- Ian Zimmerman gpg public key: 1024D/C6FF61AD fingerprint: 66DC D68F 5C1B 4D71 2EE5 BD03 8A00 786C C6FF 61AD http://www.gravatar.com/avatar/c66875cda51109f76c6312f4d4743d1e.png Rule 420: All persons more than eight miles high to leave the court.