Now I got the GUI-part of mplayer working too but build grows to 6800K - whereof the 1000K comes via iconv - which can be disabled but that tends to exclude some sub-titles...Is there anyway to minimize the influence of iconv? Otherwise most stuff is working (dynamic load of dll´s, osd, dvd-play etc.)

I have been working on cleaning/modifying my tinyX11-source - attached the present status.

I have also looked at the Xvesa/Xfbdev source in order to get some of the extensions running (DPMS, MIT-SHM, RENDER, SHAPE, SYNC, TOG-CUP, XTEST and PANORAMIX). Present source attached as well as build of Xvesa/Xfbdev with the mentioned extensions build-in.
20130513: Removed attachments as forum does not support the size anymoreLast edited by goingnuts on Mon 13 May 2013, 13:41; edited 1 time in total

Finally got a decent build of MPlayer-1.0pre8 with uclibc and the above tinyX. Changed version of iconv to libiconv-1.6.1 and reduced size inpact with 400K. Also merged mplayer and mencoder (via mcb) so the final size (ex. fonts and skin) is approx. 6500K which decrease to just above 3000K with upx. Still big but one get a gui mediaplayer and an advanced video-converter for that price.
The audio and video outputs are:

and you get osd, scalable subtitles, a bunch of video filters to play with, DVD-player etc.
If you download the win32 dlls from here you also can play quicktime, vmw and a lot of other formates. I have added osd fonts and subtitle fonts in the pet package that can be fetched here
You will probably want to use xorg for best performance but also the Xvesa shipped above gives a nice view. The shipped skin is really minimalistic but you can hunt others that might fit better in you taste.
I did not include the videx drivers - they link dynamic against uclibc - are rarely needed (AFAIK) - and disabling videx only saved 15K...

@goingnuts: I was planning to look through and condense the tinyx11 sources, but I noticed you put a GPL2 license in the trunk which I presume overrides the X11 licenses beneath? If this was intentional, I'll start over with the original sources (you are welcome to use any changes in the GPL'd version).

I want to make it optimized for static builds so I had planned to replace typedef's and enums with defines and replacing some small functions (small enough that they are smaller to inline) with macros. This will also make for a much smaller shared library too without adding to binary size (at the cost of losing some type checking - there will only be char, short, long/int, long long, float, double and structs of those types) though I do have one big concern with this approach:

technosaurus: The GPL2 was what was used with my GtkDialog1 backport exercise - so just copied it from there. I am not trying to restrict or violate anything - just more or less in the dark with witch license to put there in order not to restrict any usage without violating any original license. Any hint there are welcome.

I have made some additions/changes since I posted the source (to be able to compile more programs/get Xvesa and other programs run in xwoaf as well). If you would like to work with my sources I can post an updated version. But you might get more what you want and maybe less work starting with the full original source anyway...

As long as you didn't use any gpl code in it, it can keep the x11 license.

I was really just wanting to kill all the compiler warnings in recent compilers (gcc and clang at least) by giving the proper return type (mostly void or int), but any time I look @ code its hard to resist performance/size tweaks. Most everything else is already done in tinyx, but duplo did identify several duplicate code blocks._________________Web Programming - Pet Packaging 100 & 101

20120719: Changed ICElib to include transport to make ROX-Filer compile.
20120916: Added GetFPath.c to get Abiword 1.0.7 compile. Added X11/Xmu/Misc.h for XawM-1.5u.
20121002: Added ListExt.c and QuBest.c to X11 for xdpyinfo
20121011: Changed libXt source and include/X11/Intrinsic.h to test if Xaw can be compiled. Added GetDflt.c to tinyX11 and added -DXOS_USE_MTSAFE_PWDAPI to tinyXll make flags

Removed file Copying as well.
I have not tested the libXaw much but at least it compiled the attached xload - which is using approx 700k when running compared to the dynamic linked xload which uses approx 3400k...
Now we might have most of the tools to do a mcb of most of the X-utilities.

Anyone know where sources for absvolume has gone?
20130513: Removed attachment as forum does not support the size anymoreLast edited by goingnuts on Mon 13 May 2013, 13:42; edited 1 time in total

Small tip on the static builds, if you still use -ffunction-sections -fdata-sections when you build the objects (.o files), you can get a list of unused functions and data by doing the final link with -Wl,--gc-sections,--print-gc-sections (output to a file for later use). Then you can use that data to remove all of the useless functions and data from the .c/.h files. When you build shared libs, they will be _almost_ as small as a single static build (added space for position independent code and elf data).
This is essentially what libopt and the perl script in either uclibc or uclibc++ do (i don't recall which) except they use the symbol tables more directly using objdump or similar._________________Web Programming - Pet Packaging 100 & 101

Trying to implement some multiuser capabilities in pupngo...but run into a lot of things not working. Most things have been fixed but uncertain on some of the solutions so guidelines would be helpful:

* Many configuration scripts and wizards uses /tmp for temp-files and I have changed user/owner of /tmp to spot and given group r+w. That helps a lot but still no way for spot to overwrite files created by root. So should the wizards use the users home dir for temporary files or is there another/better way?

* The mount/umount command is for superuser only - any workaround for this to give a normal user those rights?

* Running udhcpc to configure the network has the same problem: Only root have the power to get an ip...any suggestions beside configure at boot-time?

Thanks! And found a gtk1-source at amigos place
Guess the use of gksu or su should be coded in for every function where it is needed...(?).
Implemented the real su as BB-su had some limitations. Working on a solution for CLI only like the below modification in mount-script:

which works - and could be expanded to lookup a list of users where mount is enabled. Guess I have to adapt this to every other function that need roots privilege for making scripts working (mkdir in /mnt, umount etc...).

Update 20121210: Found that it is very difficult to get "su -c "some_command" running from scripts when in X. Replaced with sudo things are much easier...changed above snippet to:

Update 20121213: sudo need /etc/sudoers configured. Found that one need to add "Defaults env_keep += "HOME"" to keep the HOME of spot when using sudo. This influence the icon_unmounted_func/icon_mounted_func which controls the ROX drive icon change when mount/umount are used. Strange thing is that the icon change when mounting/unmounting is very slow (slowest when umount) and icon change faster in .pup_event than on the desktop...

hello. I think this is a great project and I am currently am using "pUPnGO_V216_060611.iso" through QEMU and so far it works great. I have had no problems with the GUI_V412.sfs either. pUPnGO is the best and I hope you can keep it alive. I will actually install it on a computer soon._________________What consenting adults do in their bedroom is none of your business so if you think there is something wrong with homosexuality and your bothered by it, then you're an idiot who needs to mind their own business.

Thanks! And found a gtk1-source at amigos place
Guess the use of gksu or su should be coded in for every function where it is needed...(?).
Implemented the real su as BB-su had some limitations. Working on a solution for CLI only like the below modification in mount-script:

which works - and could be expanded to lookup a list of users where mount is enabled. Guess I have to adapt this to every other function that need roots privilege for making scripts working (mkdir in /mnt, umount etc...).

Update 20121210: Found that it is very difficult to get "su -c "some_command" running from scripts when in X. Replaced with sudo things are much easier...changed above snippet to:

Update 20121213: sudo need /etc/sudoers configured. Found that one need to add "Defaults env_keep += "HOME"" to keep the HOME of spot when using sudo. This influence the icon_unmounted_func/icon_mounted_func which controls the ROX drive icon change when mount/umount are used. Strange thing is that the icon change when mounting/unmounting is very slow (slowest when umount) and icon change faster in .pup_event than on the desktop...

Woof-built pups have this in first line of many scripts, ex /usr/sbin/pmount:

Code:

[ "`whoami`" != "root" ] && exec sudo -A ${0} ${@}

Woof-built pups have /etc/sudo.conf:

Code:

# sudo 1.7.2 required askpass in /etc/sudoers, but 1.8.1p2 reports that as a syntax error
# and requires it in this file (see: http://www.gratisoft.us/sudo/man/1.8.0/sudo.man.html)
Path askpass /usr/sbin/askpass

So, the script gets re-executed at 'root' level.

Oh, /etc/sudoers:

Code:

# sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
# Failure to use 'visudo' may result in syntax or file permission errors
# that prevent sudo from running.
#
# See the sudoers man page for the details on how to write a sudoers file.
#
# 120110 added /usr/sbin/delayedrun to SYSTEM category. also, see sudo line added to script.

bark_bark_bark: I have it running on two old Pentium laptops - they are constructed to be rolled over by a tank and will probably last for 15 years more Funnny thing is that the batteries still works - I have laptops with an age of less than 3 years where battery is totally exhausted and they need instant external power to boot.

BarryK: Thanks a lot! The

Code:

[ "`whoami`" != "root" ] && exec sudo -A ${0} ${@}

is brilliant - so much easier than my above codings. Adapted some of your sudo configs as well - thanks.

Still have very slow change of icons on ROX-desktop (GTK1.2-version) after mount/umount when run as spot - haven't got closer to speed it up - strange...but might be a missing call to ROX to revise status of file.

All this multiuser is quite a pain to get right - but a lot of fun and visit of places in code one seldom pay attention

Started to convert pmount to gtkdialog1 - realized that I need mut - and after finding the source and building of a static bin - almost done...

Probably old common knowledge but mut is actually a multicall binary giving us:
mut mutd mutdaemon mutforeground mutclient probepart probedisk probedisk2 probepci drivelist guess_fstype mounts mediaplug
in a 183K static bin. I haven't tested all for differences in output or speed but attached a package if anyone feels in testing mode...

Still have very slow change of icons on ROX-desktop (GTK1.2-version) after mount/umount when run as spot - haven't got closer to speed it up - strange...but might be a missing call to ROX to revise status of file.

I don't know how far back it goes, but I know there was some kind of major rox fix to speed it up that involved creating a file/folder/variable

Quote:

Started to convert pmount to gtkdialog1 - realized that I need mut - and after finding the source and building of a static bin - almost done...

I had written a similar program that used my xpm generating shell functions for the %used/free - let me know if I need to look for it._________________Web Programming - Pet Packaging 100 & 101

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou cannot attach files in this forumYou can download files in this forum