site  contact  subhomenews

Planning next Precise

January 29, 2013 — BarryK
There have been some important bug fixes recently, which means that I should bring out a Service Pack for Precise Puppy 5.4.3. But the last release announced at Distrowatch is 5.4, as they don't announce "bug fix" releases for Puppy -- which was my choice made ages ago.

However, it has got to the point where 5.4.4 is going to be a significant upgrade from 5.4, perhaps I should even bump it to 5.5, and it then should be announced on Distrowatch.

I wasn't intending to keep on releasing new versions of Precise, and there is a very nice Upup community project that has extra features, managed by pemasu.

Maybe if I do release 5.5, I could co-announce the community version, itemising extra features that it has. Both could be announced together on Distrowatch. Any thoughts welcome.

Anyway, just to inform everyone, I have started reading this thread on the Forum, from page 14:
http://murga-linux.com/puppy/viewtopic.php?t=82092&start=195

I am not going onto the Forum much these days, but I will at least be reading through that thread over the next few days.

Comments

Reading page 15
Username: BarryK
I am currently reading page 15 of that thread, and you will find my responses so far on pages 19 and 20.

Reached page 16
Username: BarryK
"Have just got to the top of page 16, will stop now, pick it up in the morning. Replies on pages 19 and 20, some questions, some fixes.

Woof: VCSMETADATA
Username: BarryK
"On page 16, linuxcbon posted about directory and file permissions and ownership: http://murga-linux.com/puppy/viewtopic.php?t=82092&start=300 Actually, special permissions and ownership get set by file 'VCSMETADATA', called from script 'merge2out', in Woof. This is done after files are checked out of the Fossil VCS repository -- this is explained in merge2out script. VCSMETADATA has a lot of "wrong" or unnecessary lines in it, so I set about improving it. I have reduced the number of lines in the file (that is, the number of dirs/files that will have their permissions/ownership set) from 589 to 281. There are still a lot of unnecessary lines in there, such as many files getting set to "777" permission, but I have left it at that for now. Woof commit: http://bkhome.org/fossil/woof2.cgi/info/795d8a442a

Broken repos
Username: 01micko
"Here is a list of broken repos that need removing from woof: [b]ftp://ftp.linux.hr/puppylinux[/b] (completely gone) [b]ftp://ftp.tu-chemnitz.de/.SAN0/pub/linux/sunsite.unc-mirror/distributions/puppylinux[/b] (not rsynced in 2 years) [b]ftp://ftp.ussg.iu.edu/linux/puppylinux[/b] (ditto) [b]ftp://ftp.lug.udel.edu/pub/puppylinux[/b] (puppylinux dir empty) [b]ftp://ftp.sh.cvut.cz/storage/1/puppy[/b] (not rsynced in 2 years) [b]http://smokey01.com/01micko[/b] (shouldn't be there, not updated)

xrandrshell "bug"
Username: 01micko
"Hi Barry When I was testing precise and slacko on one of my boxes with SiS graphics (uses sis xorg driver, 2 boxes tested actually) and a widescreen LCD (1366x768) I couldn't get a decent res with the standard tools, however if if I set the res manually with xrandr to 1280x720 60Hz it works. The trouble is your code at line 756 in quicksetup. It doesn't save all possible frequencies so the user can't set a decent res on an LCD (sometimes). By the way, it's the same with an old ATI card using mach64 xorg driver. This lousy script demos it can be done fairly easily. [code]#!/bin/bash [ -f xr.txt ] && rm xr.txt xrandr -q|while read LINE do NOTLINE=`echo "$LINE"|grep '^[a-zA-Z]'` if [ ! "$NOTLINE" ];then COUNT=`echo "$LINE"|tr -s ' ' '\n'|wc -l` if [ "$COUNT" = 2 ];then ALINE=`echo "$LINE"|tr -s ' '` echo "$ALINE \"\" off" >>xr.txt else case $COUNT in #5 should do it 3)NEWLINE2=`echo "$LINE"|awk '{print $1,$2}'` echo "$NEWLINE2 \"\" off" >>xr.txt NEWLINE3=`echo "$LINE"|awk '{print $1,$3}'` echo "$NEWLINE3 \"\" off" >>xr.txt ;; 4)NEWLINE2=`echo "$LINE"|awk '{print $1,$2}'` echo "$NEWLINE2 \"\" off" >>xr.txt NEWLINE3=`echo "$LINE"|awk '{print $1,$3}'` echo "$NEWLINE3 \"\" off" >>xr.txt NEWLINE4=`echo "$LINE"|awk '{print $1,$4}'` echo "$NEWLINE4 \"\" off" >>xr.txt ;; 5)NEWLINE2=`echo "$LINE"|awk '{print $1,$2}'` echo "$NEWLINE2 \"\" off" >>xr.txt NEWLINE3=`echo "$LINE"|awk '{print $1,$3}'` echo "$NEWLINE3 \"\" off" >>xr.txt NEWLINE4=`echo "$LINE"|awk '{print $1,$4}'` echo "$NEWLINE4 \"\" off" >>xr.txt NEWLINE5=`echo "$LINE"|awk '{print $1,$5}'` echo "$NEWLINE5 \"\" off" >>xr.txt ;; esac fi fi done[/code] Hope it gives you some ideas on fixing this bug.

Frisbee integration
Username: peebee
"Hi Barry Just to bring to your attention this post from rerwin regarding requested woof changes to support integrating Frisbee into Puppy... http://www.murga-linux.com/puppy/viewtopic.php?t=82092&start=305 Regards, peebee

go for 5.5
Username: 01micko
"I reckon go for 5.5 BUT.. there is an IO bug which presents itself in all puppies with kernel greater than 3.2 (for which there is a work around).. this will need addressing and I will have more info for you in the coming days. I intend to release a slacko major bugfix in about 3 to 4 weeks, and I'll follow suit with "5.5" if you go that way. It will probably be my last until Slackware bumps version (likely awhile) so I'm trying to squash as many bugs as possible.

Re xrandrshell
Username: BarryK
"[i]Hope it gives you some ideas on fixing this bug.[/i] Not really. Could you please post the raw output from "xrandr -q".

re xrandr
Username: 01micko
"[code]# xrandr -q Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192 DVI-I-1 disconnected (normal left inverted right x axis y axis) VGA-1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 410mm x 230mm 1366x768 59.8*+ 1024x768 75.1 75.0 60.0 832x624 74.6 800x600 75.0 60.3 56.2 640x480 75.0 60.0 720x400 70.1 [/code] Which is of course different on any given machine. That is NOT on the old SiS. I'll do that tomorrow. Copy the code to a script in root and run it, you'll see what I mean (unless xrandr has changed). It accounts for all refresh rates, it works too, I subbed it in for your code in /usr/sbin/quicksetup (of course redirecting the output to /var/local/quickset-xrandr-list) and resolution changes to selected, though I [b]haven't got my old boxes[/b] set up at the moment to test. If you want I'll test that tomorrow. I don't pretend I'm a great scripter but it solves an issue for me on old hardware.. the pieces I have. If I get the issue I'm sure others do too. HTH.

Re invalid repos
Username: BarryK
"01micko, Thanks for that, I have taken them out. Woof commit: http://bkhome.org/fossil/woof2.cgi/info/0a9ecf569a

Re xrandr
Username: BarryK
"01micko, Ah, the light just came on. Here is a solution in one line: [i]xrandr -q | tr -s ' ' | grep '^ [0-9]' | grep -v '\*' | cut -f 2,3,4 -d ' ' | sed -r -e 's%([^ ]*) ([^ ]*) ([^ ]*)%\1 \2TWO\1THREE\3%' -e 's%(TWO.*THREE$)%%' -e 's%TWO%\n%' -e 's%THREE% %'[/i] I'll put it into quicksetup.

Re xrandr
Username: BarryK
"Well, take out that "grep -v '\*'". I have fixed script 'quicksetup'. Woof commit: http://bkhome.org/fossil/woof2.cgi/info/20acaed485

Re xrandr
Username: BarryK
"A bit better: [i]xrandr -q | tr -s ' ' | grep '^ [0-9]' | cut -f 2,3,4 -d ' ' | sed -r -e 's%([^ ]*) ([^ ]*) ([^ ]*)%\1 \2TWO\1THREE\3%' -e 's%TWO.*THREE$%%' -e 's%TWO%\n%' -e 's%THREE% %'[/i] Woof commit: http://bkhome.org/fossil/woof2.cgi/info/164fbdbb11

International Obfuscated C Code Contest
Username: Ted Dog
"http://www.ioccc.org/ wonder if they have a contest for scripting languages...... :n_n: Had a co-worker that tried to win this C contest for many years, he took pride in odd ball code that is hard to read.

xorgwizard patch
Username: 01micko
"This patch allows the use of "modesetting" xorg driver if placed in the alternate location, /usr/lib/x/drivers-alternate [code]--- xorgwizard.orig 2012-10-02 08:34:14.417226836 +1000 +++ xorgwizard 2013-01-15 09:20:39.000000000 +1000 @@ -68,6 +68,7 @@ #120318 correctly set keyboard layout, model and variant. #120323 partial replace 'xmessage' with 'pupmessage'. #120723 BOOT_DISABLEXORGWIZARD variable in /etc/rc.d/BOOTCONSTRAINED. refer 3builddistro, also xwin. +#130115 01micko: support "modesetting_drv.so" xorg driver installed to /usr/lib/x/drivers-alternate/ [ "`whoami`" != "root" ] && exec sudo -A ${0} ${@} #110505 @@ -170,6 +171,10 @@ fi modprobe nvidia ;; + modesetting) + REPLACEDDRV="" + [ -f /usr/lib/x/drivers-alternate/modesetting_drv.so ] && mv -f /usr/lib/x/drivers-alternate/modesetting_drv.so /usr/lib/xorg/modules/drivers/ #130115 + ;; *) #100430 get rid of all drivers except chosen one. REPLACEDDRV="" mv -f /usr/lib/xorg/modules/drivers/* /usr/lib/x/drivers-backup/ [/code] I know I'm pushing a bit but I think these fixes are adding good usability to puppy over a broader range of hardware.

Re xorgwizard patch
Username: BarryK
"01micko, OK, that will be in the next Woof upload.

re re xrandr
Username: 01micko
"I grabbed the latest quicksetup script, using a build from woof yesterday.. It doesn't quite work. All the res and freqs are listed but the chosen entry doesn't take, this is on my SiS box (one of them). A picture tells a thousand words... [img]http://01micko.no-ip.org/capture/capture6653.png[/img] I had to set the res manually with xrandr, you can see the command in the term window. HTH

output for xrandr debug
Username: 01micko
"here is contents of /var/local/quickset-xrandr-list [code]1280x800 60.0* "" off 1280x768 60.0 "" off 1280x720 75.0 "" off 1280x720 60.0 "" off 1024x768 75.0 "" off 1024x768 70.0 "" off 1024x576 60.0 "" off 960x600 60.0 "" off 832x624 75.0 "" off 800x600 75.0 "" off 800x600 72.0 "" off 768x576 60.0 "" off 720x576 60.0 "" off 640x480 75.0 "" off 640x480 73.0 "" off 512x384 60.0 "" off 400x300 60.0 "" off[/code] Here's output of xrandr -q.. [code]# xrandr -q xrandr: Failed to get size of gamma for output default Screen 0: minimum 400 x 300, current 1280 x 800, maximum 1280 x 800 default connected 1280x800+0+0 0mm x 0mm 1280x800 60.0* 1280x768 60.0 1280x720 75.0 60.0 1024x768 75.0 70.0 60.0 1024x576 60.0 960x600 60.0 832x624 75.0 800x600 75.0 72.0 60.0 768x576 60.0 720x576 60.0 640x480 75.0 73.0 67.0 512x384 60.0 400x300 60.0 [/code] Dunno why it fails but it does.. :cry:

quicksetup patch
Username: 01micko
"Barry This is weird, while my code did change res it didn't stick, never saw the "permanent" gui.. your code didn't even change res, but I'm baffled why.. anyway, I changed the markup in the gui from <span...> to <big><big> and the gui showed and your code works! The <big><big> syntax is very basic but works even in old gtkdialog-0.71, I have no idea why yours was failing for me. Now at least I can get a decent res that sticks on my old SiS box! Patch: (only 1 line) [code]--- quicksetup.orig 2013-02-02 12:08:16.000000000 +1000 +++ quicksetup 2013-02-02 12:42:36.000000000 +1000 @@ -48,6 +48,7 @@ #120717 remove XPID="" #120901 /usr/share/zoneinfo layout has changed (ubuntu precise). #130131 xrandr may have more than one frequency on a line, ex: 1360x768 59.8 60.0 +#130102 change markup in xrandr gui from <span ...> to <big><big> 01micko [ "`whoami`" != "root" ] && exec sudo -A ${0} ${@} @@ -1271,9 +1272,9 @@ B_permanent=$(gettext 'Permanent') B_session=$(gettext 'Session') STEP=6 # timeout is x10sec - fontsize="x-large" # small, medium, large, x-large + #fontsize="x-large" # small, medium, large, x-large # 130202 01micko change to <big><big> export XY_DIALOG="<window title=\"$WINTITLE\" icon-name=\"gtk-preferences\"><vbox> - <text use-markup=\"true\"><label>\"<span size=\"${fontsize}\">${M_y0}</span>\"</label></text> + <text use-markup=\"true\"><label>\"<big><big>${M_y0}</big></big>\"</label></text> <text use-markup=\"true\"><label>\"${M_y1}\"</label></text> <text use-markup=\"true\"><label>\"${M_y2}\"</label></text> <progressbar><input>for i in \$(seq 0 10 100); do echo \$i; sleep $STEP; done;echo 100</input> [/code]

xrandrshell fix
Username: BarryK
"01micko, Yes, just listing more items in xrandshell is not enough. Further down the script, it isn't setting the chosen frequency. Also /root/.xinitrc needs fixing. This should do it. Woof commit: http://bkhome.org/fossil/woof2.cgi/info/dfe96a70b2

Re "permanent" gui
Username: BarryK
"01micko, I haven't changed that, because it works for me. But, I have gtkdialog 0.8.0.

"permanent" gui
Username: 01micko
"Ok, so I admit I was using gtkdialog-0.8.4(SVN) So.. I ran some tests and it must be a gtk-+2.0 thing because I can't get your syntax to work. Take a look at the 2 examples in the code. The first one works, second one bombs out, note the declaration of the variable $fontsize and the escapes around the variable differences in the tests. Tests conducted with gtkdialog-0.8.0 [code]# gtkdialog -v gtkdialog version 0.8.0 (C) 2003-2007 Laszlo Pere, 2011 Thunor # fontsize="'x-large'" # echo "<window> > <vbox> > <text use-markup=\"true\"> > <label>\"<span size=${fontsize}>hello world</span>\"</label> > </text> > </vbox> > </window>"|gtkdialog -s EXIT="abort" # fontsize="x-large" # echo "<window> > <vbox> > <text use-markup=\"true\"> > <label>\"<span size=\"${fontsize}\">hello world</span>\"</label> > </text> > </vbox> > </window>"|gtkdialog -s ** (gtkdialog:21412): ERROR **: gtkdialog: Error in line 4, near token 'string': syntax error Trace/breakpoint trap #[/code] Thanks for looking at this.

libgudev
Username: BarryK
"There was a report on the Forum about 'libgudev' package missing, though PPM reports it as already installed. Yes, libgudev is actually part of udev, but Ubuntu extract it as a separate DEB. PPM sees that udev (PET) is installed, so assumes libgudev is also. I have recompiled udev version 167 with '--enable-extras', which gives us libgudev. I have created new PETs, for armv7 and x86, but cutdown. All udev rules left out, plus a whole lot of other "stuff". I will upload the PETs soon.

Re "permanent" gui
Username: BarryK
"01micko, Ah, my mistake thinking it was working, I was thinking of the wrong dialog. OK, I see what is wrong, fixed. Woof commit: http://bkhome.org/fossil/woof2.cgi/info/2a40c14226

probedisk symlink probedisk2
Username: pemasu
"01micko posted earlier somewhere about missing /sbin/probedisk2 symlink pointing to /sbin/probedisk. That missing symlink prevents Pinboard drive icons to show. Luckily the xerrs.log told me the reason and then I remembered that 01micko posted about it. I think it would right thing to add that symlink to the rootfs-skeleton in woof....or into the some of the scripts. Cheers.

Re probedisk2
Username: BarryK
"Oh, yes, I didn't know of any scripts using probedisk2. A long time ago the was probedisk, then I introduced probedisk2, then a bit later retired probedisk and made it a symlink to probedisk2. Now, I would just like it to be probedisk, no need for that "2". I will track down any scripts in Woof still using probedisk2.

'probedisk2' returns
Username: BarryK
"My apologies guys, the absence of 'probedisk2' breaks many things. I forgot just how many scripts still explicitly call 'probedisk2'. I fixed them in Woof to only call 'probedisk': http://bkhome.org/fossil/woof2.cgi/info/e1a23e55d6 However, I found that there are many PETs that explicitly call 'probedisk2', so until they get "fixed", need to retain it. I have reintroduced 'probedisk2', as a symlink to 'probedisk': http://bkhome.org/fossil/woof2.cgi/info/9db8572377

filemnt
Username: mavrothal
"filemnt fails when there is a space in the path. This little path fixes it [code]--- a/usr/sbin/filemnt 2013-02-01 13:33:45.000000000 +0100 +++ b/usr/sbin/filemnt 2013-02-03 21:24:19.000000000 +0100 @@ -201,7 +201,7 @@ [ $Err -eq 0 ] && mount -t $Type $DEVLOOP "$MntPt" Err=$? else #normal, no encryption... - mount -t $Type -o loop $imgFile "$MntPt" + mount -t $Type -o loop "$imgFile" "$MntPt" Err=$? fi [/code]

Re filemnt
Username: BarryK
"mavrothal, Thanks, fixed. Note, it is line 188 in Woof.

3builddistro patch
Username: 01micko
"Getting these errors.. [i]./3builddistro: line 636: [: ./sandbox3/rootfs-complete/bin/lsmod: binary operator expected ./3builddistro: line 636: [: ./sandbox3/rootfs-complete/bin/bunzip2: binary operator expected ./3builddistro: line 636: [: ./sandbox3/rootfs-complete/bin/bzcat: binary operator expected ./3builddistro: line 636: [: ./sandbox3/rootfs-complete/sbin/lspci: binary operator expected ./3builddistro: line 636: [: ./sandbox3/rootfs-complete/bin/bzip2: binary operator expected[/i] Simply needs quotes # diff -ru 3builddistro.orig 3builddistro [code]--- 3builddistro.orig 2013-02-04 09:33:09.360299478 +1000 +++ 3builddistro 2013-02-04 09:29:31.066955350 +1000 @@ -633,7 +633,7 @@ FNDFULL="`find ./sandbox3/rootfs-complete/bin ./sandbox3/rootfs-complete/sbin ./sandbox3/rootfs-complete/usr/bin ./sandbox3/rootfs-complete/usr/sbin -name ${ONENAME}`" #130129 deb 'bsdmainutils' has broken 'cal' and 'hd' symlinks... if [ "$FNDFULL" ];then - if [ -h $FNDFULL ];then + if [ -h "$FNDFULL" ];then FULLPATH="$(dirname $FNDFULL)" FULLLINK="$(readlink $FNDFULL)" xFULLLINK="${FULLPATH}/${FULLLINK}"[/code] If it seems like I'm pushing a bit it's because I have 3 weeks, then full on uni for the rest of the year until November. In those 3 weeks my Mum is coming up from Sydney for a week so effectively I have 2 weeks. After that you wont hear boo out of me! :n_n:

might be interesting
Username: mavrothal
"I do not know if you came across [url=http://www.murga-linux.com/puppy/viewtopic.php?p=676940]this forum post, but it could offer great flexibility in puppy/pupplet building. Not necessarily for "Precise-next", but still

Re 3builddistro patch
Username: BarryK
"01micko, Thanks, fixed. Have fun at uni! It's a good scene, hanging out on campus. I remember my uni student days fondly.


Tags: puppy