Page 28 of 54

Posted: Thu 09 Feb 2012, 17:41
by Aitch
Have you seen this, sc0ttman?

http://bkhome.org/blog/?viewDetailed=02681

Hope changes to .mo files doesn't conflict?

Aitch :)

new versions for akita

Posted: Thu 09 Feb 2012, 18:32
by don570
I worked the last couple of days on improving
the Akita versions of quick launch and Bacon recorder.

Bacon recorder is now very useful!!

You can record to the partition of the pupsave file
with /mnt/home/ or use the /media/ folder.

By the way I do a substitution so that every time it
sees '/mnt/home/' in a path name bacon recorder does a substitution
to /media/blahblah/.

The folder name must end with a slash /

White space in names doesn't cause problems.

Quick Launch now closes all Rox windows which is a good
way to clean up a screen full of junk.
Is it possible to use Ctrl-shift-L to launch it?

________________________________________________

Posted: Thu 09 Feb 2012, 20:08
by don570
The link to devx file in the first post is dead.
Your repository works okay.

________________________________________

Posted: Thu 09 Feb 2012, 20:15
by sc0ttman
Thanks for the apps don, that's great, I will take a look soon..
And I fixed the link..
______________
Aitch wrote:Have you seen this, sc0ttman?

http://bkhome.org/blog/?viewDetailed=02681

Hope changes to .mo files doesn't conflict?

Aitch :)
Yes I saw it, but no there won't be conficts, quite the opposite in fact...

I though now would be the best time to do the .locale rename thing,
as it fits nicely in with some other work going on...

I've been following rodin.s and shinobars NLS/i18n work,
and saw Barry was building up to it in some of his comments and posts...

About Akita:

I had the option of leaving it confusing - some .mo were real .mo files, others not...
Or I could change the fake .mos to something else...

I wrote a snippet that automated most of it, and have *mostly* finished the clean up..

I am also about to update the devx/main sfs files and update gettext,
clean it up a bit, and integrate MoManager in to the main sfs..

...with an akita devx download thing added in...
So it should all fit in quite nicely :)

And finally I need a quick re-think about what gettext stuff goes in the main SFS,
and what needs to be put in the devx...

Posted: Thu 09 Feb 2012, 22:24
by sc0ttman
BTW, I should say the MoManager will be in the next Akita,
but not the SSS version, as I'm not sure that'll work..

It will also need a few changes, so it works in Akita:

- ignore builtin files stuff (not supported in Akita)
- do not suggest to email to barry, maybe to me instead
- remove stuff about 'latest WOOF' versions..
- other stuff I guess

I do not know how Barry has integrated SSS and such with jwm_menu_create...

Posted: Fri 10 Feb 2012, 13:07
by Aitch
sc0ttman

Looks as though Barry's changes are a work in progress, but he seems to expect devs to keep up with his blog for notification/response, if affected by his changes....
I do not know how Barry has integrated SSS and such with jwm_menu_create...
I can only suggest posting that query on his blog, and maybe linking to your thread?

Aitch :)

Posted: Fri 10 Feb 2012, 22:44
by sc0ttman
Aitch wrote:sc0ttman

Looks as though Barry's changes are a work in progress, but he seems to expect devs to keep up with his blog for notification/response, if affected by his changes....
I do not know how Barry has integrated SSS and such with jwm_menu_create...
I can only suggest posting that query on his blog, and maybe linking to your thread?

Aitch :)
I do keep up with his blog, and now, the Woof2 timeline, which is great, I love it... But I don't think I will trouble him with this, as Akita does not follow all Woof/official updates and changes - I just pick and choose what I like... then adjust as I see fit... I do try to keep as much as possible 'in line' with other recent pups, so Akita can continue to benefit from future work in other pups, but it's a battle...

Posted: Sun 12 Feb 2012, 13:10
by sc0ttman
Can anyone help here: http://murga-linux.com/puppy/viewtopic.php?t=75970

It is related to Akita, and other pups, and my lack of knowledge... I guess..

Posted: Tue 14 Feb 2012, 17:16
by don570
Scottman wrote:Can anyone help here
The real expert for libjpeg is wjaguar, maintainer of mtpaint.
He's spent an enormous amount of time to understand it.

Send him an email and I'm sure he'll reply.

BTW I compiled mtpaint in puppy 431
__________________________________________________

Posted: Wed 15 Feb 2012, 02:13
by sc0ttman
don570 wrote:BTW I compiled mtpaint in puppy 431
Of course, I am using your mtpaint in Akita.
It seems Puppy 431 also has the same problem as Akita...
I wonder if Puppy 4.2.x started off with this problem too...

# ldd `which mtpaint` | sort | grep jp
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb7f1e000)
libjpeg.so.7 => /usr/lib/libjpeg.so.7 (0xb74e3000)

EDIT: Hmm... Don, if you run the same command, do you get the same results?
(I presume we're using more or less the same build...)

Posted: Wed 15 Feb 2012, 09:50
by wjaguar
sc0ttman wrote:# ldd `which mtpaint` | sort | grep jp
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb7f1e000)
libjpeg.so.7 => /usr/lib/libjpeg.so.7 (0xb74e3000)
To see what is directly linked to what:
objdump -x `which mtpaint` | grep NEEDED
or:
readelf -d `which mtpaint` | grep NEEDED

And this simple script will help you find out which specific lib(s) link to which libjpeg:

Code: Select all

#!/bin/sh
ldd "$1" | grep '=>' | while read LINE
do
  LINE=${LINE% (*}
  echo "$LINE"
  LINE=${LINE#*=> }
  [ -z "$LINE" ] || objdump -x "$LINE" | grep NEEDED
done

Posted: Thu 16 Feb 2012, 14:52
by technosaurus
wjaguar wrote: objdump -x `which mtpaint` | grep NEEDED
or:
readelf -d `which mtpaint` | grep NEEDED
[/code]
thanks for the readelf counterpart to objdump -x, I will add that as alternative for my lddd function in bashbox (basically the same as your example, except that it also removes the "NEEDED")

Edit: removed redundant redundancies

elinks wrapper

Posted: Fri 17 Feb 2012, 01:45
by sc0ttman
Thanks guys, I will be past the libjpeg problems very soon...

I have compiled elinks with libsee, and wanna make it the default...
Akita already has a wrapper for elinks, called 'elinks_shell'...

The 'elinks_shell' wrapper prevents multiple instances of elinks..
It also detects if X is running and runs elinks in a terminal window if yes.

I want to make elinks_shell in Akita work better..
And then replace elinks with the wrapper..

(This is because mrxvt works great, but not for utf8..
And this is where termit comes in..)

At the moment, it looks like this:

Code: Select all

#!/bin/sh
if [ elinks -remote ping\(\) 2>/dev/null ]; then
        exec elinks -remote ${1:-about:blank}
elif [ -n "$DISPLAY" ]; then
        TERM=rxvt && mrxvt -geometry 100x36 -e elinks $1 &
else
        elinks $1
fi
exit 0
Here is what I want to do, any helpful ideas, links or snippets are welcome!!

1. make termit and mrxvt update TERM for session when loaded
- OR (maybe safer) get elinks_shell to detect the terminal emuator, if any, if X is running
2. if X running, detect if loading from withing a terminal console or not
3. if not, pre-append `$TERM -e` to elinks.bin exec cmd


Essentially, I want elinks_shell to auto-detect if X is running,
detect the terminal emulator (if any) in which it's been called,
and finally to set TERM appropriately before running elinks..

Posted: Fri 17 Feb 2012, 04:26
by technosaurus
ugggghly but to tell which terminal emulator is running

Code: Select all

SHELLPID=$$
TERMPID=`ps -eo ppid,pid,comm |awk '{if ($2=='$SHELLPID')print $1}'`
ps -eo pid,comm |awk '/'$TERMPID'/ {print $2}'
it does not determine whether it is a symlink though - you need readlink, or type -a

Posted: Fri 17 Feb 2012, 10:58
by sc0ttman
technosaurus wrote:ugggghly but to tell which terminal emulator is running

Code: Select all

SHELLPID=$$
TERMPID=`ps -eo ppid,pid,comm |awk '{if ($2=='$SHELLPID')print $1}'`
ps -eo pid,comm |awk '/'$TERMPID'/ {print $2}'
it does not determine whether it is a symlink though - you need readlink, or type -a
Thanks techno, I will play with that...

And what about detecting if not loaded through a terminal at all? (when loaded through menu entry, etc...)
Didn't goingnuts have something for that in dialogfunctions.sh?

Code: Select all

[ "$DISPLAY" ] && [ "$(tty | grep not)" ] && exec $TERM -e elinks $1
I don't really understand the `$(tty | grep not)` bit....

Posted: Fri 17 Feb 2012, 14:46
by technosaurus
I think you have $DISPLAY figured out (that if it isn't "", you are in X)

If tty returns "", then you must have run from X from outside of a terminal.

I'm on my Droid or I'd give an example ... Basically put tty in backticks and compare to "" ... Is have to experiment with return values though.

Posted: Sat 18 Feb 2012, 11:35
by sc0ttman
technosaurus wrote:I think you have $DISPLAY figured out (that if it isn't "", you are in X)

If tty returns "", then you must have run from X from outside of a terminal.

I'm on my Droid or I'd give an example ... Basically put tty in backticks and compare to "" ... Is have to experiment with return values though.
Hmmm... About your uuuuugly snippet.... It seems to work only when running the commands themselves directly in the terminal, but not when not putting the commands into a script... I've put the snippet into a script, elinks.sh, and here's what I get:


For example, here is how I run elinks.sh, and the $TERM that is returned:

- right click in ROX, choose 'Open in Terminal': $TERM=-1-run-in-terminal
- click on it, from ROX: $TERM=ROX-Filer
- load it from within any terminal emulator: $TERM=bash
- load it from terminal in geany: $TERM=sh

and so on....

Posted: Sat 18 Feb 2012, 14:24
by technosaurus
that code just gives you the shells parent using the ppid (may want to change it from termpid to PPID) if run from rox, the shells parent is rox but it only matters for now if its a terminal (though you may find later that you prefer different behaviour if launched from rox as compared to geany as compared to jwm)

Code: Select all

SHELLPID=$$
SHELLPPID=`ps -eo ppid,pid,comm |awk '{if ($2=='$SHELLPID')print $1}'`
SHELLPARENT=`ps -eo pid,comm |awk '/'$SHELLPPID'/ {print $2}'`

case "$SHELLPARENT" in
  *rxvt|*term)...;;
  *sh)#todo - make getparent function so we can call it again;;
  *)$TERM -e...;;
esac
the problem with geany is that it expects to have xterm's hold, so puppy has this bastardized workaround that runs the script in a "sh -c" so that a hold can be mimicked with an added "read"

the other issue you may find with these is if people test ash vs bash scripts in a terminal.... if they run ash to check for bashisms, then run bash to get "normal" behavior back (instead of typing exit) the stack of shell processes will grow each time such that the parent of the shell is another shell (unfortunately this could also be done from console) or it could be a script calling another script (in which case you would need a terminal if $DISPLAY)

the way around this (and the geany issue by proxie) would be to loop through the pid/ppid code until the parent is something other than a shell.

woof2 updates and patches

Posted: Sun 19 Feb 2012, 16:45
by sc0ttman
Thanks techno for the info, I'll keep playing with it...
-----------------------
On another note,

I've been trying to get Akita updated and more in-line with the latest Woof2 i18n updates,
so I have download lots of files from Woof2 and have created some patches for each file,
so that they can be installed more easily into Akita....

I've attached the patches, and I will be going through them soon, but
some will not work/need manual adjustments: xwin, puppyinstaller, others...

Posted: Mon 20 Feb 2012, 23:10
by sc0ttman