Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Fri 17 Nov 2017, 15:58
All times are UTC - 4
 Forum index » Off-Topic Area » Programming
xwoaf - rebuild
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 4 [47 Posts]   Goto page: 1, 2, 3, 4 Next
Author Message
goingnuts

Joined: 07 Dec 2008
Posts: 896

PostPosted: Sat 03 Dec 2016, 10:16    Post subject:  xwoaf - rebuild  

Now and then I have tried to rebuild xwoaf (x window on a floppy) as I have always been fascinated by this gem done by Terry Loveall in 2004/2005. I actually became a Puppy user after playing with xwoaf for a while - as a naturally next level of tiny distribution choice at that time.

This time I almost succeeded - almost in the sense that it is not a perfect copy of the original - but close enough taking the lack of some of the original sources in consideration...

I have used a modified pupngo toolchain capable of building all but the original mail client.

Updated 20170124: Kernel-build now possible within the toolchain - download additional xwoaf-build-package_kernel.tar.gz and follow instructions in below referenced howto.

The howto is here as well as downloads of the toolchain and the build system.
Update 20171022: xwoaf-rebuild-4.0 now available - Most linux GUI applications on a floppy ever. Configured for sound support running qemu. Build system available all-in-one chroot environment 100Mb tar.gz file with all sources, patches and buildscript. Visit for download.
floppy image and iso image.
youtube video
Citation from xwoaf-rebuild-4.0 help:
"Welcome to xwoaf-rebuild 4.0

xwoaf-rebuild builds upon the giant work done by Terry Loveall, getting a working linux desktop with web browser, text-editor, filemanager and other daily tools - everything in the size of a 1,4Mb floppy disk - the one and only Xwoaf. Visit copy of Terry's original web-page here. For a (almost always outdated) description of the work with xwoaf-rebuild - visit this web-page.

Most graphical applications are based on XawPlus widget toolkit - giving a more modern look of the applications than the Athena widget toolkit (Xaw). Also a slight reduction in size on disk has been achieved.

Busybox-1.1.2 is the back engine delivering all the cli commands needed to boot and supplies backend programs for the various graphical applications. It is patched to contain extlinux-3.01a, pr from textutils-1.9 and the full losetup from util-linux-2.10s. extlinux helps the script "install2hd", pr gives pretty print in console applications and the full losetup works with kernel 2.2.26.

While original xwoaf was based on dynamic linked binaries, all (2!) binaries in xwoaf-rebuild are static linked. Busybox is not upxed (as this slows down execution a lot) but mcb_xawplus is. Creating xwoaf-rebuild has been an iterative process where the limit of applications and functionality you can put on a floppy has continued to increase. There are still potential for adding even more stuff - both by patching the source code (shared functions/global constants) but also using lzma to compress various directories which can be uncompressed with

tar -xaf "lzma-compressed-tared-directory"

via /etc/sysinit at boot-time.

xwoaf-rebuild is a tribute to Terry Loveall and an encouragement to target application code and distribution building for size/functionality.
What is in this release?

* Desktop
Jwm
Desklaunch
Torsmo
Xsetroot Filemanager
* * Browser
xvl
jpeg2gif
* Xterm
* Calculator
* Calendar and planner
* Text editor
* Games
* Screenshot
* Unarchiver
Xmessage
* Linux kernel
* Install to harddisk
* Mounting CD-rom and file-images
* Banner or xpm-image viewer
* Run
* Setting keyboard locale
* Setting screensize
* Lock screen
* Sound - xtmix and minimp3

Desktop

The desktop uses jwm-0.23 in various ways. The menu can be regenerated by running the script /bin/fixmenu - settings in /usr/share/application/*.desktop determines which menu-items are shown.

The desktop icons are created by Desklaunch-1.1.7. The icons can be moved by pressing "alt"-key and left-mouse-button. The icons can be re-created by running the script /bin/fixicons which looks in /usr/share/applications for *.desktop files, in which the programs various settings are defined.

The information view in top left part of the desktop is done by torsmo-0.14. Here you can view the running status of various processes. Configuration of torsmo is done via editing file /root/.torsmorc.

The desktop background color is provided by xsetroot-1.5. The color can be changed using script /bin/setbackground.
Filemanager

xfilemanager-0.5.0 is the system filemanager. Different filetypes are shown with different images. Double click on a file will execute defined commands configured in /root/.xfmrc.
Browser

Chimera-1.70 (quite heavy patched) is the webbrowser. To surf the www you need internet access and xwoaf-rebuild has a quite limited number of ethernet drivers. If booted via qemu, network should be running. Chimera also act as an imageviewer as it is capable of showing gif, bmp, png and jpg images. Internal gif support and the external converters - xvl and djpeg-6b - handles images for chimera. With internet access chimera handles all but https webpages, including downloading of files. Also local filebrowsing is possible. Printing can be done to files - either plain-text, PostScript-formated or pdf.
Xterm

rxvt-2.6.4 is the xterm. Build with a minimum of settings - a fast and powerfull colour vt102 terminal emulator.
Xcalc

xcalc-1.15 is an advanced calculator. Styled with colors which make it look a lot more attractive than the way you normally see xcalc.
Xcalendar

xcalendar-3.0 is a calender application with the ability to store memos for every day. The entries are saved in /root/Calendar as text-files and can be edited there or used for other purposes.
Text editor

xed-1.0 is the plain text editor. You get various options after loading documents - search, replace, jump to line, copy, paste and print. It is even possible to call sed for command editing purpose. The printing is done via text2pdf-1.1 so the file will be printed in directory /root as a pdf-file.
Games

Two games are included: xtet42-2.21 is Tetris - actually a one or two player version of Tetris.

xminesweep-2.0 is the classic minesweep game.
Screenshot

xsnap-1.3 is able to take a screenshot of the desktop or a specific window. Draw area to be snapped with the mouse, for help press "h", to save the image press "p". Image will be located in /root as "snapp0001.xpm" with increasing number if several snapshots are done.
Unarchiver

guitar is a script using busybox tar, gunzip and unzip to view or decompress common archives. The grafic is done with xmessage-1.0.1.
Install to harddisk

You can install xwoaf-rebuild to harddisk using script "install2hd". Be aware that this will erase everything on the harddisk.
Linux kernel

The kernel is Linux-2.2.26. It is carefully configured to get the most features with the least size. Additional modules can be loaded if needed but no modules are shipped on the floppy and therefore should be installed and configured after xwoaf-rebuild has been installed to harddisk. The kernel dot.config is included in /etc/modules. A major breakthrough in terms of reducing kernel size has been a modified patch (LZMA initrd) by Ming-Ching Tiew/mctiew@yahoo.com
Mounting CD-rom and file-images

Mounting a CD-rom is done by the command prompt. The CD-rom is device /dev/hdc. Create a mountpoint (ex.: mkdir -p /mnt/hdc), mount /dev/hdc on the mountpoint (ex.: mount /dev/hdc /mnt/hdc) - and files on the CD-rom is available via xfilemanager at /mnt/hdc. Script /bin/cdmount handles this. Script /bin/floppymount does the same with floppy disk.

Mounting a file-image is a two-step operation. First setup the image on a loop device (ex.: losetup /dev/loop0 file-image), then mount the loop device on a mountpoint (ex.:mount /dev/loop0 /tmp).
Banner or xpm-image viewer
xban2-0.2 - a show banner or xpm-image viewer. Called by xfilemanager when dbl. click on xpm-files.

Options:
-f "path to image" User defined image. Only xpm-image!
-t time User defined time to show image - default 5 sec.
-d Show window decorations.
-v Use as image viewer (disable timer).
-x value Position of image x-value (ex. 600).
-y value Position of image y-value (ex. 400).
-h, --help Display this help text and exit.

Run
xcmd-1.05 - X single line run command. X run command with optional single parameter - just write the command you want to execute. Allows line editing with mouse and keyboard. Find it in the menu.

Setting keyboard locale

Keyboard locale can be set by running setkbd. 29 language settings possible. This script is normally run as first thing after boot but can be accesed by icon on the desktop.
Setting screensize

The depth and screensize of the desktop can be changed by running the script setresolution - access via desktop icon.
Lock screen

Pupslock locks your screen. To unlock enter password. Pupslock is configured via /root/.pupslockrc. Options are:

-pu "path to image" User defined image. Only xpm-image!
-p Use build in image.
-s XX Activate screen saver function. XX seconds delay.
-bc "background color" Ex. "#fffacd" or steelblue.
-t Use transparent image background if appropriate.
-a Disable ctrl+alt+backspace (needs xmodmap).
-h, --help Display this help text and exit.

xautolock (for detailed options use xautolock -h) is configured in /root/Startup/xautolock_rc and locks the screen after 10 minuttes of inactivity by calling pupslock. A notice is issued 60 seconds before locking. Shutdown of system is done after 20 minuttes of inactivity.
sound and Xtmix

The kernel is configured with support for soundblaster and should work with qemu soundcard. xtmix is a mixer application able to adjust various sound properties. mp3 files can be played by minimp3 - by double click an mp3-file in xfilemanager the file is automatic played."
xwoaf-rebuild.png
 Description   
 Filesize   162.37 KB
 Viewed   760 Time(s)

xwoaf-rebuild.png


Last edited by goingnuts on Sun 12 Nov 2017, 14:11; edited 6 times in total
Back to top
View user's profile Send private message Visit poster's website 
slavvo67

Joined: 12 Oct 2012
Posts: 1425
Location: The other Mr. 305

PostPosted: Sat 03 Dec 2016, 12:10    Post subject:  

Looks like a nice, back to Puppy basics. As Puppy keeps getting more bloated, it's really nice to see some of these projects pop-up. Not sure if I want to take the time to rebuild but do you have a copy of your rebuild? Maybe you can post it to the Puppy Derivatives section with a link from here? It would be nice if you can share it with us real puppy lovers!

All the best and thanks!

Slavvo67
Back to top
View user's profile Send private message 
Keef


Joined: 20 Dec 2007
Posts: 869
Location: Staffordshire

PostPosted: Sat 03 Dec 2016, 16:42    Post subject: It lives!!  

Got the toolchain to complete the build with no problems on Slacko.
The iso would not boot with Qemu, but did a manual frugal install to HDD (ext2 partition) and it booted fine with grub4dos.
USB mouse working as well.

[EDIT] Re the ISO - Image.gz is not getting copied to the isomaster directory. I think there was an error message about this, so I copied it manually. It did not end up in the iso though (just mounted it to check).
Back to top
View user's profile Send private message 
TeX Dog

Joined: 06 Jul 2016
Posts: 341

PostPosted: Sat 03 Dec 2016, 17:02    Post subject:  

OK interested, C or ASM? can it be compiled for different chipset. IF floppy sized then it could be its own bootloader in ISO format, let me know if any interest.
Back to top
View user's profile Send private message 
goingnuts

Joined: 07 Dec 2008
Posts: 896

PostPosted: Sat 03 Dec 2016, 18:55    Post subject:  

slavvo67: It is not a Puppy derivative - but I will make an iso-image and a floppy image available for test. The build takes about 10 minutes though. At some point I thought that one might be able to create a Puppy-like floppy distribution - but I think 1.44 MB is too limiting to get something really useful.

Keef: Thanks for testing! I re-tested on P412 and can confirm your findings concerning Image.gz not in the iso. I will fix that and update the build process. USB-support? Did you use the 2.2.25 kernel?

TeX Dog: This is done with normal linux mostly C packages - hacked by Terry Loveall. I just wanted to share my toolchain and buildscript - as xwoaf has inspired me to go the linux way and start "hacking" open source code. One could look for better applications to replace the ones from the original - I have found it hard to find some - but suggestions are very welcome. The toolchain comes from build-root so other chipsets should be possible although I never tried and have no intention to - at the moment Smile .
Back to top
View user's profile Send private message Visit poster's website 
Keef


Joined: 20 Dec 2007
Posts: 869
Location: Staffordshire

PostPosted: Sat 03 Dec 2016, 19:52    Post subject:  

goingnuts

I just ran everything as is. I believe it is the 2.2.25 kernel it ends up with.
Back to top
View user's profile Send private message 
goingnuts

Joined: 07 Dec 2008
Posts: 896

PostPosted: Sun 04 Dec 2016, 07:53    Post subject:  

Keef: Cool - might be your bios handles the usb/keyboard and make them work even with a kernel that knows nothing about usb.

Updated buildscript so it now perform as announced. Also added link to final iso and floppy images. iso image can be burnt to CD the usual way - the floppy image can be put on a floppy by doing "cat xwoaf_rebuild.img >/dev/fd0"
Back to top
View user's profile Send private message Visit poster's website 
ally


Joined: 19 May 2012
Posts: 1580
Location: lincoln, uk

PostPosted: Sun 04 Dec 2016, 09:19    Post subject:  

mirrored here: http://archive.org/details/Puppy_Linux_xwoaf_pup

Smile
Back to top
View user's profile Send private message Visit poster's website 
TeX Dog

Joined: 06 Jul 2016
Posts: 341

PostPosted: Sun 04 Dec 2016, 11:03    Post subject:  

inspiring effort and results. It's so easy to forget that just 64K memory once rocked the world with potential, Then the magic One Meg. etc.
Back to top
View user's profile Send private message 
goingnuts

Joined: 07 Dec 2008
Posts: 896

PostPosted: Sun 11 Dec 2016, 11:51    Post subject:  

ally: Thank you! Very Happy
I have tried to do a floppyimage with xawplus applications (xcalc, xfilemanger, xcalendar and xe) as an example of a different focus eliminating email client and web browser. To have room for this I needed to upx Xvesa though...But it gives a dnd filemanager, a descent text editor, a more capable calculator and a more featured calendar. Xaw applications are still extremely complicated to "style" for me but it should be possible to make them even more good looking.
xwoaf_rebuild2.img
Edit: Added xmessage to the floppyimage...
xwoaf-rebuild2.png
 Description   
 Filesize   130.08 KB
 Viewed   633 Time(s)

xwoaf-rebuild2.png

Back to top
View user's profile Send private message Visit poster's website 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 8312
Location: Perth, Western Australia

PostPosted: Wed 14 Dec 2016, 06:19    Post subject:  

goingnuts,
Do you know about Linkx:

https://sourceforge.net/projects/linkx/

Wouldn't that be a nice addition to xwoaf?!

_________________
http://barryk.org/news/
Back to top
View user's profile Send private message Visit poster's website 
goingnuts

Joined: 07 Dec 2008
Posts: 896

PostPosted: Wed 14 Dec 2016, 17:30    Post subject:  

BarryK: Did not know that one - thanks. I think it gets too big to fit on the 1.44Mb floppy though. I have worked with chimera-1.72.01 with compiles to 752K static linked and it could be on the floppy - but it reduces the amount of other applications that the floppy can hold.
chimera-1.72.01 need some patching to work properly and I haven't been able to get it stable enough to be a realistic choice.
On top of that, the very limited ethernet drivers included (ne2k-pci/8390) the chance to get connected from a real computer is limited.
But one can modify and make own balanced set of applications as long as the floppy size is not extended...

dillo-0.7.3m is much more stable - but it is quite hard to get the size down to fit on the floppy.
Back to top
View user's profile Send private message Visit poster's website 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 8312
Location: Perth, Western Australia

PostPosted: Mon 19 Dec 2016, 22:57    Post subject:  

goingnuts,
On your xwoaf webpage, you wrote that 1diskx cannot be found anymore.

You can get it from this most unlikely URL:

http://soundproofingforum.co.uk/soundproofing/soundproofing.htm

I have just now run "unrar x mungdev20100301.rar"

It has image files for using in qemu.

_________________
http://barryk.org/news/
Back to top
View user's profile Send private message Visit poster's website 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 8312
Location: Perth, Western Australia

PostPosted: Mon 19 Dec 2016, 23:06    Post subject:  

BarryK wrote:
goingnuts,
On your xwoaf webpage, you wrote that 1diskx cannot be found anymore.

You can get it from this most unlikely URL:

http://soundproofingforum.co.uk/soundproofing/soundproofing.htm

I have just now run "unrar x mungdev20100301.rar"

It has image files for using in qemu.


It has 'hda.img' and 'hdb.img' in it, intended to be used in vmware.
I wonder how we could open those files, without having vmware?

_________________
http://barryk.org/news/
Back to top
View user's profile Send private message Visit poster's website 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 8312
Location: Perth, Western Australia

PostPosted: Mon 19 Dec 2016, 23:20    Post subject:  

1diskx source is also available from here:

http://www.ibiblio.org/pub/Linux/X11/xutils/

However, it has the 'mdesk' binary, no source. I think that first link has all of the source -- it is also much later, 2010, whereas 1diskx-1.2.1 is dated 2003. I know that it got up to version 1.2.13, but those sources have gone.

Anyone got vmware installed?

_________________
http://barryk.org/news/
Back to top
View user's profile Send private message Visit poster's website 
Display posts from previous:   Sort by:   
Page 1 of 4 [47 Posts]   Goto page: 1, 2, 3, 4 Next
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Off-Topic Area » Programming
Jump to:  

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


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0662s ][ Queries: 12 (0.0052s) ][ GZIP on ]