UnixTree for FreeBSD

Looking at http://www.unixtree.org/ or more specifically http://www.unixtree.org/details.htm#platforms

it looks like there is or was a build of UnixTree for FreeBSD, except I can't locate it.

Anyone know anything about it?

I've just downloaded the source and wondering how I would go about trying to build it. There is a build doc and a makefile but it looks fairly long and complicated for me to give it a try.

If I just run make, I get

Code:
No build environment setup. Run ". build <platform>" first.
*** Error code 1

Stop.
make: stopped in /tmp/unixtree/unixtree-3.0.4

I have already run build freebsd:-
Code:
*** Build env : "freebsd" at "/tmp/unixtree/unixtree-3.0.4"
*** Build make: GNU
*** Build mode: none
*** Build src : dokakod (91032176+dokakod@users.noreply.github.com)
*** Build info: "UnixTree" version "3.0.4" build "2064"

This created a build.opt containing 'freebsd'

Any pointers would be appreciated....


BTW I do know that misc/ytree does exists
 
use
. build freebsd
gmake
will build but it does not work properly at least for me
i had to edit env/freebsd.env and added USE_X11=no to build
then run product/xt
box characters are not display properly, cursor keys do no work
 
What to change in env/freebsd.env?

Should I insert USE_X11=no at the end of build just before the last line?
 
Bash:
$ git clone https://github.com/dokakod/unixtree
$ cd unixtree/
$ sed -e s/X11R6/local/ -i "" env/freebsd.env
$ . build freebsd
$ gmake
$ ./product/xtx
 
Bash:
$ git clone https://github.com/dokakod/unixtree
$ cd unixtree/
$ sed -e s/X11R6/local/ -i "" env/freebsd.env
$ . build freebsd
$ gmake
$ ./product/xtx
I copied the above into a shell script and ran it:-

Code:
No platform specified & cannot determine one. Bailing.                                                                                                                                             
No build environment setup. Run ". build <platform>" first.                                                                                                                                         
gmake: *** [makefile:389: build-check] Error 1                                                                                                                                                     
sh: ./product/xtx: not found

Obviously missing something...
 
sh:
$ git clone https://github.com/dokakod/unixtree
$ cd unixtree/
$ sed -e s/X11R6/local/ -i "" env/freebsd.env
$ sh build freebsd
$ . build
$ gmake
$ ./product/xtx
 
Managed to build it now, although xtx fails with:-

SIGBUS signal [Bus error] received.

However xt starts up ok but with the errors covacat mentioned above.

Could that be due to 'locale'?

Navigation is almost impossible although Commands and Function keys work.

It's nice to see the Autoview option available, but without being able to use cursor keys it's not usable.
 
A cursory look through the tarball makes me think that the problems with box characters and cursor keys lies in libecurses/....

This is from libecurses/curses.h

Code:
 * Basic key definitions                                                                                                                                                                       
 150  */                                                                                                                                                                                           
 151 #define K_INSERT                        0x00                                                                                                                                                   
 152 #define K_END                           0x01                                                                                                                                                   
 153 #define K_DOWN                          0x02                                                                                                                                                   
 154 #define K_PGDN                          0x03                                                                                                                                                   
 155 #define K_LEFT                          0x04                                                                                                                                                   
 156 #define K_MIDDLE                        0x05                                                                                                                                                   
 157 #define K_RIGHT                         0x06                                                                                                                                                   
 158 #define K_HOME                          0x07                                                                                                                                                   
 159 #define K_UP                            0x08                                                                                                                                                   
 160 #define K_PGUP                          0x09                                                                                                                                                   
 161
 
Here is something from unixtree/README :-

Code:
TERMINAL-CAPABILITIES DATABASE CONFIGURATION (Unix only)

This section is to aid in figuring out how to setup the terminal-capabilities
database configuration for a new platform.

The biggest difference in terminal processing between various Unix platforms
is in the terminal database used.  There are two different terminal databases
used in Unix: "termcap" and "terminfo".

termcap database:

        The "termcap" database consists of the text file /etc/termcap or
        /usr/share/misc/termcap.

        In general, the "termcap" database is used in BSD systems.

terminfo database:

        The "terminfo" database consists of "compiled" terminfo files kept in
        a terminfo directory (usually /usr/share/lib/terminfo), with all "a*"
        entries going into <terminfo-dir>/a/a*, etc.  OS/X on the Mac uses the
        naming convention /usr/share/lib/<hh>/<name>, where <hh> is the hex
        representation of the first character in <name>.

        In general, the "terminfo" database is used in SYSV systems (SVR3 & SVR4).

Can anyone confirm that FreeBSD uses the 'termcap' database? And how would I go about finding what is actually being referred to while building?

Also in unixtree/termfiles, there is a list of terminal types. Which of these would be appropriate for use on FreeBSD in a terminal within X?
 
What do kp0-kp9 signify? numbers 1-0 ?

I don't see any reference to enter, up, down, pgup, pgdn, left, right, etc....

How do I tell if this term has been included in my build?
 
I liked the 'Autoview' feature of Xtree. It is one of the available functions in UnixTree.

But is also learning exercise for me in getting it built.

After all, it implies in https://github.com/dokakod/unixtree/blob/main/README
that it should build on FreeBSD. Looks like the hard work as already been done, and I'm guessing it only needs a couple of tweaks to make it work properly. Unfortunately I don't have sufficient expertise in discovering those 'couple of tweaks'....

Hopefully, some knowledgeable person here can give me a few pointers.
 
that it should build on FreeBSD. Looks like the hard work as already been done, and I'm guessing it only needs a couple of tweaks to make it work properly. Unfortunately I don't have sufficient expertise in discovering those 'couple of tweaks'....
I don't see it ever being in our port tree. Not to say it won't build.
This goes back at least 20 years thanks to dvl@

 
One of my favorite XtreeGold features only works somewhat on Ytree. Moving files around.
Tagging files and moving is something I find very useful..
Ytree does not move files right but I can tag and copy quite fine. Then delete. Kinda goofy way.
Also creating new directories does not work right.
Maybe these are permission issues.
 
I do agree that viewing raw files is the number one usefulness of Ytree. Even if it opens binaries!
Autoview sounds absurd to me if it does what it sounds like.
You hit one large binary and you would need to intervene and cancel.
You want to choke your system? Send it one large binary to view.
 
I would like to see things like 'View' inside an IMG file.....
Not the binary but the disk layout.
That would be an AutoView that I could embrace.

I use Edit alot too. I change user .cshrc to my preferred editor of ee and Ytree uses that.
Very Nice.
 
On my 14.0-RC2, xt has problems but xtx displays fine and the cursor keys work.
That's good to hear. Didn't it work on 13.2-RELEASE?

How did you build it?

Using this?

Code:
$ git clone https://github.com/dokakod/unixtree
$ cd unixtree/
$ sed -e s/X11R6/local/ -i "" env/freebsd.env
$ sh build freebsd
$ . build
$ gmake
$ ./product/xtx
 
Back
Top