From: UnixOS2 Archive To: "UnixOS2 Archive" Date: Sun, 31 Aug 2003 14:10:23 EST-10EDT,10,-1,0,7200,3,-1,0,7200,3600 Subject: [UnixOS2_Archive] No. 183 ************************************************** Saturday 30 August 2003 Number 183 ************************************************** Subjects for today 1 Re: UX2BS readme : T.Sikora" 2 Best laid plans :( : Alex Newman" 3 Re: UX2BS readme : Stefan Neis 4 Re: UX2BS readme : Andreas Buening 5 Re: UX2BS readme : T.Sikora" 6 Re: UX2BS readme : T.Sikora" 7 [Ux2bs] XFree86 : T.Sikora" 8 XFree86 : T.Sikora" 9 Re: UX2BS readme : T.Sikora" 10 [Ux2bs] Re: XFree86 : T.Sikora" 11 Re: XFree86 : T.Sikora" 12 [Ux2bs] UX2BS action shots! : T.Sikora" 13 UX2BS action shots! : T.Sikora" **= Email 1 ==========================** Date: Sun, 31 Aug 2003 10:01:14 -0400 From: "T.Sikora" Subject: Re: UX2BS readme Andreas Buening wrote: > Stefan Neis wrote: > >>On Sat, 30 Aug 2003, Andreas Buening wrote: > > > [snip] > > >>>/ports makes sense to keep new stuff separate from the >>>ux2 tree but can't we join install and ports into one single >>>directory? It's not seperate it's integrted just like the other ports tree into UX2. It's even more simple. The only add-ons to UX2 is /ports and the tools are in /sbin where pkgtools should reside. It's extremely condensed. The rest is the ux2_base. >> >>I don't know the intended purposes of /ports and /install well >>enough to really comment, but it looks a bit redundant. It's a FreeBSD ports clone look here: http://www.freebsd.org/ports/ > > > If I understood correctly /install is for sources while /ports > is for the compiled binaries. Install is just a folder for storing the install files during bootstrap deleted afterwards we also keep the baseline in /install/archives for our purposes. When a port is built in ports it's downloaded to /archives. The UX2 ditribution relies on this for installing the packages and executing the install scripts. They were designed to work just like Slackware's, our original model for the tools. > > > >>I'd also like to add /sbin to the list of not really needed >>directories... /usr/sbin really should be enough. That's were package tools and distribution orientated tools reside on all other Unix systems. > > > At least, this could be discussed. > > > >>Ideally, /bin would not be needed either, but at least /bin/sh >>is obviously needed... > Were supposed to be following conventions... the FHS > > I don't think so. /bin and /lib is supposed to provide a base > system. If you copy those files onto another computer you have > a working Unix-like base system. My vision is e.g. that you have > /bin and /lib on your UnixOS/2 install CD 1 which provides > everything you need to install all other software packages > onto your hard disk. I thought this was supposed to be UX2, a Unix like subsystem on OS/2? Sort of like the FreeBSD Linux emulation which really is not emulation but Linux running completely on the FreeBSD filesystem and all. At least that's what I thought this was all about. > > > Bye, > Andreas > > We can't seperate the two UX2BS and UX2 the distribution. The UX2BS list is the means to an end. It's for building and designing the development tools and environment for UX2... UnixOS/2, not some little standalone build environment. The Build System is not a standalone system it's the developers list for making UX2 work. -- T.Sikora tsikora at ntplx dot net **= Email 2 ==========================** Date: Sun, 31 Aug 2003 11:03:10 +1000 (EST) From: "Alex Newman" Subject: Best laid plans :( Hi Ted, Well, my attempt to load a 'real' unix has stalled for the time being - I ran out of tape for backing up the disk, haven't been able to get a new tape yet. Cheers, Alex. **= Email 3 ==========================** Date: Sun, 31 Aug 2003 11:25:34 +0200 (CEST) From: Stefan Neis Subject: Re: UX2BS readme On Sat, 30 Aug 2003, Andreas Buening wrote: > Far too many directories in my opinion. Do we really need boot, > dev, proc, emx, home, install and ports? home isn't used by > anything by definition, the user home is specified by $HOME, > e.g. /home/joe. dev and proc are by definition useless on OS/2 > and whether we should put anything into /boot is a different > question. OS/2 and now also eCS have their own device driver > directories, do we really need another dir? Completely agreed. > /emx is broken by design. Didn't somebody want to try if things could be put into /usr/{bin,include,lib,...} instead of /emx/{bin,include,lib,...} just as well? > /ports makes sense to keep new stuff separate from the > ux2 tree but can't we join install and ports into one single > directory? I don't know the intended purposes of /ports and /install well enough to really comment, but it looks a bit redundant. I'd also like to add /sbin to the list of not really needed directories... /usr/sbin really should be enough. Ideally, /bin would not be needed either, but at least /bin/sh is obviously needed... > > Recommended EMX config.sys settings for 3rd party programs: > > > > LIBPATH=D:\emx\dll;D:\emx\lib; > > Why do you need lib in LIBPATH? Hopefully just a typo... ;-) Regards, Stefan **= Email 4 ==========================** Date: Sun, 31 Aug 2003 13:11:28 +0200 From: Andreas Buening Subject: Re: UX2BS readme Stefan Neis wrote: > > On Sat, 30 Aug 2003, Andreas Buening wrote: [snip] > > /ports makes sense to keep new stuff separate from the > > ux2 tree but can't we join install and ports into one single > > directory? > > I don't know the intended purposes of /ports and /install well > enough to really comment, but it looks a bit redundant. If I understood correctly /install is for sources while /ports is for the compiled binaries. > I'd also like to add /sbin to the list of not really needed > directories... /usr/sbin really should be enough. At least, this could be discussed. > Ideally, /bin would not be needed either, but at least /bin/sh > is obviously needed... I don't think so. /bin and /lib is supposed to provide a base system. If you copy those files onto another computer you have a working Unix-like base system. My vision is e.g. that you have /bin and /lib on your UnixOS/2 install CD 1 which provides everything you need to install all other software packages onto your hard disk. Bye, Andreas **= Email 5 ==========================** Date: Sun, 31 Aug 2003 16:05:20 -0400 From: "T.Sikora" Subject: Re: UX2BS readme This is a multi-part message in MIME format. --------------000307060005000406070608 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit T.Sikora wrote: > Andreas Buening wrote: > >> Stefan Neis wrote: >> >>> On Sat, 30 Aug 2003, Andreas Buening wrote: >> >> >> >> [snip] >> >> >>>> /ports makes sense to keep new stuff separate from the >>>> ux2 tree but can't we join install and ports into one single >>>> directory? > > It's not seperate it's integrted just like the other ports tree into > UX2. It's even more simple. The only add-ons to UX2 is /ports and the > tools are in /sbin where pkgtools should reside. It's extremely > condensed. The rest is the ux2_base. > >>> >>> I don't know the intended purposes of /ports and /install well >>> enough to really comment, but it looks a bit redundant. > > > It's a FreeBSD ports clone look here: > http://www.freebsd.org/ports/ > >> >> >> If I understood correctly /install is for sources while /ports >> is for the compiled binaries. No ports is a tree of directories were patches, diffs, and makefiles *may* reside. There are no sources there. When you issue say the 'build crypt' in /ports/crypt the system checks for the source in /install/archives if not it downloads from the internet and untars it into a workdir it creates and then builds the port and installs it. You then remove the workdir with 'clean'. We are making the makepkg tool to add a 'build crypt pkg' command that instead of installing it on the system it makes a ux2 bin package and puts it in /ports/packages. > > Of course you can just go in a temp dir, untar the sources and build it that way but the ports tree is a way for a port maintainer to make a standard way for building a particular port part of UX2 or not with his patches or makefiles. I attached the build.sh to give you an idea on how it works. -- T.Sikora tsikora at ntplx dot net --------------000307060005000406070608 Content-Type: text/plain; name="build.sh" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="build.sh" # # filename: build.sh # PKG=$1 export OS2PATH=$PATH export PATH=`echo -E $PATH |tr '\\\\' '/'` date start_time=`date +"%s"` echo $SHELL # # Perl does not like this line:- # #export EMXSHELL=$uxrt/bin/sh # # Define sundry functions # finish() { echo # env | sort echo "..Compiler version is: `gcc --version | head -n1`"; date end_time=`date +"%s"` echo elapsed time: `expr $end_time - $start_time` secs echo end } if test ! -f $OSRT/os2/link386.exe ; then { echo There is no LINK386.EXE on the path, which could cause problems echo Press ENTER to continue read reply } fi grep ^$PKG\; /ports/aux-tools/build.table > $TMP/ux2_tmp if ! test -s $TMP/ux2_tmp; then echo $PKG not defined in build.table exit 1 fi IFS=';' read p1 DIR URL CFLAGS LDFLAGS CFGPARMS MAKEPARM SRC < $TMP/ux2_tmp echo DIR URL CFLAGS LDFLAGS CFGPARMS MAKEPARM SRC echo $DIR $URL $CFLAGS $LDFLAGS $CFGPARMS $MAKEPARM $SRC echo URL $URL echo CFLAGS $CFLAGS echo LDFLAGS $LDFLAGS echo CFGPARMS $CFGPARMS echo MAKEPARM $MAKEPARM echo SRC $SRC export CFLAGS export LDFLAGS if [ -z $URL ]; then echo "URL is not defined. It is required." finish; exit 1; fi REPOSITORY=/install/archives ARCHIVEFILE=`basename $URL` ARCHIVE=`basename $URL | sed 's/\.t.*z//'` PORT_HOME=/ports/$PKG WORKDIR=$PORT_HOME/workdir test $DIR || DIR=$ARCHIVE echo REPOSITORY/ARCHIVEFILE = $REPOSITORY/$ARCHIVEFILE if [ -f $REPOSITORY/$ARCHIVEFILE ]; then echo "..$ARCHIVEFILE already retrieved."; else wcmd="wget -nv --no-clobber --tries=1 -P $REPOSITORY $URL"; echo "..retrieving $ARCHIVEFILE ($wcmd)"; eval $wcmd fi if [ ! -f $REPOSITORY/$ARCHIVEFILE ]; then echo "..wget of $REPOSITORY/$ARCHIVEFILE failed"; finish; exit 1; fi IFS=' ' mkdir -p $WORKDIR cd $WORKDIR pwd if [ ! -d $DIR ]; then echo "..extracting $ARCHIVEFILE into $DIR." tar zxf $REPOSITORY/$ARCHIVEFILE fi if [ ! -d $DIR ]; then { echo The archive $ARCHIVEFILE does not appear to have extracted correctly echo into $DIR so the build of $PKG cannot continue. echo Press any key to EXIT read reply finish exit 1 } fi cd $DIR chmod -R a+w * pwd echo $ARCHIVE PATCHFILE=$PORT_HOME/patches/$ARCHIVE.diff if test -f $PATCHFILE; then { patch -p`awk 'BEGIN { min_p = 1234567 } $1 == "+++" || $1 == "***" { gsub (ARCHIVE ".*", "", $2) gsub (/[^/]/, "", $2) if (length($2) < min_p) min_p = length($2) } END { print min_p + 1 }' ARCHIVE=$ARCHIVE $PATCHFILE` < $PATCHFILE } fi # # Pre-processing. # fname=$PORT_HOME/scripts/pre-process/ if [ -f $fname ]; then echo "..Using additional site preparation ($fname)" . $fname fi fname=$PORT_HOME/build_$1.cmd if test -f $fname; then { echo "..Using $1 specific Build script ($fname)" export CONFIG_SITE= export PATH=$OS2PATH $PORT_HOME/build_$1.cmd finish exit 1 } fi # # Use a custom os/2 makefile? # fname=$PORT_HOME/makefiles/$ARCHIVE.mak if test -f $fname; then { echo "using $1 specific Makefile ($fname)" make -f $PORT_HOME/makefiles/$ARCHIVE.mak make -f $PORT_HOME/makefiles/$ARCHIVE.mak install finish exit 1 } fi fname=$PORT_HOME/patches/$ARCHIVE-OS2-patch.zip if test -f $fname ; then { echo "..Using SAWATAISHI patch kit ($fname)" unzip $PORT_HOME/patches/$ARCHIVE-OS2-patch.zip OS2patch.zip unzip OS2patch.zip && rm OS2patch.zip PATH=$RT/';'$PATH export PATH export CONFIG_SITE=os2/config.site os2unix -ALL } fi fname=$PORT_HOME/scripts/pre-conf/$PKG if test -f $fname; then echo "..Using custom configuration instead of autoconf ($fname)"; . $fname elif [ -f configure.ac -o -f configure.in ]; then echo "..Using `autoconf --version | head -1`"; autoconf if [ 0 != $? ]; then echo "..autoconf failed."; finish; exit 1; fi fi if [ -f config.status ]; then echo "..already configured."; echo "..(Delete config.status to allow configure to run again.)"; elif [ -f configure ]; then echo ./configure $CFGPARMS ./configure $CFGPARMS if [ 0 != $? ]; then echo "..configure failed."; finish; exit 1; fi echo cp -p /ports/aux-tools/mkinstalldirs cp -p /ports/aux-tools/mkinstalldirs . fi echo "Making with: make $MAKEPARM"; if [ $MAKEPARM ]; then make "$MAKEPARM" else make fi rc=$? if [ 0 != $rc -a 255 != $rc ]; then echo "..make $MAKEPARM failed."; finish; exit 1; fi if [ $MAKEPARM ]; then make install "$MAKEPARM" else make install fi rc=$? if [ 0 != $rc -a 255 != $rc ]; then echo "..make install $MAKEPARM failed."; finish; exit 1; fi fname=$PORT_HOME/scripts/post-process/$PKG if [ -f $fname ]; then echo "....Using post-processing ($fname)."; . $fname fi finish exit 0; --------------000307060005000406070608-- **= Email 6 ==========================** Date: Sun, 31 Aug 2003 16:13:10 -0400 From: "T.Sikora" Subject: Re: UX2BS readme T.Sikora wrote: > T.Sikora wrote: > >> Andreas Buening wrote: >> >>> Stefan Neis wrote: >>> >>>> On Sat, 30 Aug 2003, Andreas Buening wrote: >>> >>> >>> >>> >>> [snip] >>> >>> >>>>> /ports makes sense to keep new stuff separate from the >>>>> ux2 tree but can't we join install and ports into one single >>>>> directory? >> >> >> It's not seperate it's integrted just like the other ports tree into >> UX2. It's even more simple. The only add-ons to UX2 is /ports and the >> tools are in /sbin where pkgtools should reside. It's extremely >> condensed. The rest is the ux2_base. >> >>>> >>>> I don't know the intended purposes of /ports and /install well >>>> enough to really comment, but it looks a bit redundant. >> >> >> >> It's a FreeBSD ports clone look here: >> http://www.freebsd.org/ports/ >> >>> >>> >>> If I understood correctly /install is for sources while /ports >>> is for the compiled binaries. > > > No ports is a tree of directories were patches, diffs, and makefiles > *may* reside. There are no sources there. When you issue say the 'build > crypt' in /ports/crypt the system checks for the source in > /install/archives if not it downloads from the internet and untars it > into a workdir it creates and then builds the port and installs it. You > then remove the workdir with 'clean'. We are making the makepkg tool to > add a 'build crypt pkg' command that instead of installing it on the > system it makes a ux2 bin package and puts it in /ports/packages. > >> >> > Of course you can just go in a temp dir, untar the sources and build it > that > way but the ports tree is a way for a port maintainer to make a standard > way > for building a particular port part of UX2 or not with his patches or > makefiles. > > I attached the build.sh to give you an idea on how it works. > > > ------------------------------------------------------------------------ Here's the crypt port directory layout ftp://os2ports.com/pub/unixos2/ux2bs-devel/build_system/ports/crypt There's an empty depend.lst which will be used to list a ports required dependancies besides the std build system. Not implemented yet but the port maintainer will list those and the build cmd will call a chkdepend.cmd routine that checks for a ports existance in depend.lst if not the build will halt till they are met. Pretty much like FreeBSD and Slack does it. -- T.Sikora tsikora at ntplx dot net **= Email 7 ==========================** Date: Sun, 31 Aug 2003 16:31:19 -0400 From: "T.Sikora" Subject: [Ux2bs] XFree86 The XFree86 folder you see on the UX2BS is optional. The xfree430-libs are part of the base build system to cover dependancies needed to complete the base but also provide coverage for X ports. This project was born out of XFree86/OS2 so leaving it out is not an option. The binaries are however optional. You'll see an 'Install XFree86' icon this will prompt you if you really want it and then downloads and installs it. Once installed it will not work again. The README has the config.sys settings you need and reboot. It's large around 44MB zipped. It has Blackbox wm installed with some UX2'isms and menu picks. It also starts with the ux2 env. -- T.Sikora tsikora at ntplx dot net _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 8 ==========================** Date: Sun, 31 Aug 2003 16:31:19 -0400 From: "T.Sikora" Subject: XFree86 The XFree86 folder you see on the UX2BS is optional. The xfree430-libs are part of the base build system to cover dependancies needed to complete the base but also provide coverage for X ports. This project was born out of XFree86/OS2 so leaving it out is not an option. The binaries are however optional. You'll see an 'Install XFree86' icon this will prompt you if you really want it and then downloads and installs it. Once installed it will not work again. The README has the config.sys settings you need and reboot. It's large around 44MB zipped. It has Blackbox wm installed with some UX2'isms and menu picks. It also starts with the ux2 env. -- T.Sikora tsikora at ntplx dot net **= Email 9 ==========================** Date: Sun, 31 Aug 2003 16:38:37 -0400 From: "T.Sikora" Subject: Re: UX2BS readme T.Sikora wrote: > T.Sikora wrote: > >> T.Sikora wrote: >> >>> Andreas Buening wrote: >>> >>>> Stefan Neis wrote: >>>> >>>>> On Sat, 30 Aug 2003, Andreas Buening wrote: >>>> >>>> >>>> >>>> >>>> >>>> [snip] >>>> >>>> >>>>>> /ports makes sense to keep new stuff separate from the >>>>>> ux2 tree but can't we join install and ports into one single >>>>>> directory? >>> >>> >>> >>> It's not seperate it's integrted just like the other ports tree into >>> UX2. It's even more simple. The only add-ons to UX2 is /ports and the >>> tools are in /sbin where pkgtools should reside. It's extremely >>> condensed. The rest is the ux2_base. >>> >>>>> >>>>> I don't know the intended purposes of /ports and /install well >>>>> enough to really comment, but it looks a bit redundant. >>> >>> >>> >>> >>> It's a FreeBSD ports clone look here: >>> http://www.freebsd.org/ports/ >>> >>>> >>>> >>>> If I understood correctly /install is for sources while /ports >>>> is for the compiled binaries. >> >> >> >> No ports is a tree of directories were patches, diffs, and makefiles >> *may* reside. There are no sources there. When you issue say the >> 'build crypt' in /ports/crypt the system checks for the source in >> /install/archives if not it downloads from the internet and untars it >> into a workdir it creates and then builds the port and installs it. >> You then remove the workdir with 'clean'. We are making the makepkg >> tool to add a 'build crypt pkg' command that instead of installing it >> on the system it makes a ux2 bin package and puts it in /ports/packages. >> >>> >>> >> Of course you can just go in a temp dir, untar the sources and build >> it that >> way but the ports tree is a way for a port maintainer to make a >> standard way >> for building a particular port part of UX2 or not with his patches or >> makefiles. >> >> I attached the build.sh to give you an idea on how it works. >> >> >> ------------------------------------------------------------------------ > > > Here's the crypt port directory layout > ftp://os2ports.com/pub/unixos2/ux2bs-devel/build_system/ports/crypt You don't call build_crypt.cmd in the dir the build.cmd reads that. You use 'build ' which calls build.cmd a wrapper for build.sh and the is the port name and dir. build.sh does all the work. In effect the build command is 'build %1'. Crypt is not exactly a good example because of lack of diffs and scripts. The others have them but are not verified to work yet. So these build. gdbm, gmp crypt, and perl. Others have in the past but have not been attended to yet. -- T.Sikora tsikora at ntplx dot net **= Email 10 ==========================** Date: Sun, 31 Aug 2003 17:36:49 -0400 From: "T.Sikora" Subject: [Ux2bs] Re: XFree86 T.Sikora wrote: > The XFree86 folder you see on the UX2BS is optional. The xfree430-libs > are part of the base build system to cover dependancies needed to > complete the base but also provide coverage for X ports. This project > was born out of XFree86/OS2 so leaving it out is not an option. The > binaries are however optional. You'll see an 'Install XFree86' icon this > will prompt you if you really want it and then downloads and installs > it. Once installed it will not work again. Not the UX2BS, the button... ! Well XFree86 is another story I'm finding it a bit glitchy but I don't know it well yet. > The README has the config.sys > settings you need and reboot. It's large around 44MB zipped. It has > Blackbox wm installed with some UX2'isms and menu picks. It also starts > with the ux2 env. > -- T.Sikora tsikora at ntplx dot net _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 11 ==========================** Date: Sun, 31 Aug 2003 17:36:49 -0400 From: "T.Sikora" Subject: Re: XFree86 T.Sikora wrote: > The XFree86 folder you see on the UX2BS is optional. The xfree430-libs > are part of the base build system to cover dependancies needed to > complete the base but also provide coverage for X ports. This project > was born out of XFree86/OS2 so leaving it out is not an option. The > binaries are however optional. You'll see an 'Install XFree86' icon this > will prompt you if you really want it and then downloads and installs > it. Once installed it will not work again. Not the UX2BS, the button... ! Well XFree86 is another story I'm finding it a bit glitchy but I don't know it well yet. > The README has the config.sys > settings you need and reboot. It's large around 44MB zipped. It has > Blackbox wm installed with some UX2'isms and menu picks. It also starts > with the ux2 env. > -- T.Sikora tsikora at ntplx dot net **= Email 12 ==========================** Date: Sun, 31 Aug 2003 17:39:38 -0400 From: "T.Sikora" Subject: [Ux2bs] UX2BS action shots! Well Jeff here they are.... OS/2 Desktop http://os2ports.com/docs/xfree86/ux2bs.gif XFree86 http://os2ports.com/docs/xfree86/ss.gif Building http://os2ports.com/docs/xfree86/build.gif -- T.Sikora tsikora at ntplx dot net _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 13 ==========================** Date: Sun, 31 Aug 2003 17:39:38 -0400 From: "T.Sikora" Subject: UX2BS action shots! Well Jeff here they are.... OS/2 Desktop http://os2ports.com/docs/xfree86/ux2bs.gif XFree86 http://os2ports.com/docs/xfree86/ss.gif Building http://os2ports.com/docs/xfree86/build.gif -- T.Sikora tsikora at ntplx dot net