Page 1 of 1

what is a rox-app?

Posted: Sat Aug 21, 2021 6:07 pm
by williwaw

and how does it differ from other applications? is it packaged different?
thanks


Re: what is a rox-app?

Posted: Sat Aug 21, 2021 6:53 pm
by williams2

A rox application directory (roxapp) is an ordinary directory (folder) with files in the dir. If there is an executable file named AppRun then rox filer will treat the dir as if it were an executable file. If you click a dir, rox will show you the files in the dir. If a dir is a roxapp (that is, if it has an executable AppRun file in the dir) then rox will execute AppRun.

An icon for the roxapp can be in the dir, named ,Diricon

A roxapp can add actions to the right click context menu.

You can put help files, library files, sound files, video files, any files you want in the roxapp dir.
Deleting the dir deletes the entire application, as if it a single file.

The dir can be moved, copied, deleted just like any other dir.

The Apple Macs can use application directories, similar to roxapps.

You can look inside the Trash roxapp dir:

1) right click the Trash icon on the desktop.
2) select App Dir Trash >> Look Inside


Re: what is a rox-app?

Posted: Sat Aug 21, 2021 6:57 pm
by TerryH

I can't give a very technical explanation, but a practical description. Trash is probably bestknown rox app. Rox Apps are stored in /usr/local/apps. If you left click the folder, it will run the application. When you right click on one of them, you can 'Look inside'. I have included a simple example of a Rox-app 'pfind'. The pfind script in this case is run as a rox app, by creating the appRun bash script to execute pfind.

Components of a rox-app
Components of a rox-app
roxapp.jpg (88.32 KiB) Viewed 679 times

Re: what is a rox-app?

Posted: Sat Aug 21, 2021 7:21 pm
by bigpup

It basically is a different way to package a program, with all the parts of the program in a directory/folder.
In Rox-> help ->Manual ->Chapter 17. Application directories has more detailed info.

An application directory is a directory which can be run as an application. It contains all the resources of an application — source code, binaries, documentation and so on. Keeping everything in one place make installation and uninstallation much easier for users. You can also keep multiple versions of a program by simply having several application directories. You may move and rename them as you please. Application directories make programs easier to use and install.

They're more secure too, because you can compile an application as a user and then simply copy it as root. Since you don't have to run an install script you are free from the danger of running untrusted code as root. All you have to watch out for is setuid binaries.

Example:
The Puppy Trash Rox-App contents

Screenshot.jpg
Screenshot.jpg (10.7 KiB) Viewed 675 times

.

Bundling various files in this manner allows tools for manipulating applications to be replaced by tools for manipulating the file system.
Applications can often be "installed" simply by dragging them from a distribution medium to a hard disk, and "uninstalled" by deleting the application directory.


Re: what is a rox-app?

Posted: Sat Aug 21, 2021 8:00 pm
by mikewalsh

@williwaw :-

Put it another way. ROX-apps are Puppy's established, 'native' way of doing what folks like Fredx181 & I myself have been doing with 'portable' applications for the last couple of years.

A lot of applications hold the bulk of their files in one single location.....a directory. Those few items that are not 'built-in' are easy enough to add (IF they're needed). Anything built along these kind of lines is usually a good candidate for 'portable' treatment.....re-locatable by the user, to suit their needs. :)

Mike. ;)


Re: what is a rox-app?

Posted: Sat Aug 21, 2021 11:05 pm
by williwaw
williams2 wrote: Sat Aug 21, 2021 6:53 pm

A rox application directory (roxapp) is an ordinary directory (folder) with files in the dir. If there is an executable file named AppRun then rox filer will treat the dir as if it were an executable file. If you click a dir, rox will show you the files in the dir. If a dir is a roxapp (that is, if it has an executable AppRun file in the dir) then rox will execute AppRun.

An icon for the roxapp can be in the dir, named ,Diricon

A roxapp can add actions to the right click context menu.

You can put help files, library files, sound files, video files, any files you want in the roxapp dir.
Deleting the dir deletes the entire application, as if it a single file.

The dir can be moved, copied, deleted just like any other dir.

very clear, williams2 Thanks.

mikewalsh wrote: Sat Aug 21, 2021 8:00 pm

Put it another way. ROX-apps are Puppy's established, 'native' way of doing what folks like Fredx181 & I myself have been doing with 'portable' applications for the last couple of years.

A lot of applications hold the bulk of their files in one single location.....a directory. Those few items that are not 'built-in' are easy enough to add (IF they're needed). Anything built along these kind of lines is usually a good candidate for 'portable' treatment.....re-locatable by the user, to suit their needs. :)

Mike. ;)

Mike, I can certainly see the portable aspects to a rox-app. I guess my understanding of Portable is a bit too specific, in that to be truly portable, a portable app also has its user configurations inside the common folder and not placed in /root or /root/.configs, which may or may not be the case with a rox-app?


Re: what is a rox-app?

Posted: Sun Aug 22, 2021 12:04 am
by mikewalsh

@williwaw :-

As I understand it, ROX-apps ARE 'portable' in that you can move them around. However, AFAIK, they still produce config files'n'stuff in the usual locations.

Fred and I try, whenever possible, to keep the config stuff internal to the portable itself.....either running it directly from within, or as in the case of my recent variants, sym-linking the internal config files out to where the app would expect to find them, at run-time, if it was installed in the "normal" way. The sym-link is then removed again when you close the application.

That's MY definition of a true 'portable' application; being able to run it entirely from a flash drive (if required), so you can move the whole thing from one machine/location to another if so needed. I take my inspiration from the Windoze apps at PortableApps.com; ever since moving to Puppy several years ago I've always wanted to replicate that functionality. Even on the same machine, if you run several different Pups in your kennels, it permits 'sharing' a single application between multiple OSs. Cuts down enormously on duplication, AND wasted space.

Hope that helps to 'clarify' things a bit..!

Mike. ;)


Re: what is a rox-app?

Posted: Sun Aug 22, 2021 3:46 am
by MochiMoppel
mikewalsh wrote: Sat Aug 21, 2021 8:00 pm

Put it another way. ROX-apps are Puppy's established, 'native' way of doing what folks like Fredx181 & I myself have been doing with 'portable' applications for the last couple of years.

As far as I remember your 'portable' applications are not built as ROX-apps. Is there a special reason why not?


Re: what is a rox-app?

Posted: Sun Aug 22, 2021 10:20 am
by mikewalsh
MochiMoppel wrote: Sun Aug 22, 2021 3:46 am
mikewalsh wrote: Sat Aug 21, 2021 8:00 pm

Put it another way. ROX-apps are Puppy's established, 'native' way of doing what folks like Fredx181 & I myself have been doing with 'portable' applications for the last couple of years.

As far as I remember your 'portable' applications are not built as ROX-apps. Is there a special reason why not?

I never really got "into" ROX-apps, Mochi. It's as simple as that...no special reason that I'm aware of. Now that I DO know what they are, I may experiment with them. We'll see how it goes. :)

Mike. ;)


Re: what is a rox-app?

Posted: Sun Aug 22, 2021 11:52 am
by MochiMoppel
mikewalsh wrote: Sun Aug 22, 2021 10:20 am

I may experiment with them. We'll see how it goes. :)

Just rename your "LAUNCH" scripts to "AppRun". That's all ;)


Re: what is a rox-app?

Posted: Sun Aug 22, 2021 7:24 pm
by williwaw
mikewalsh wrote: Sun Aug 22, 2021 12:04 am

@williwaw :-
Hope that helps to 'clarify' things a bit..!
Mike. ;)

Yes, it does. Thanks

Is your launch script a wrapper? where can I find it? So far I have been using portabalize.tar.gz on seamonkey courtesy of fredx181. not sure what it will take to do the same for a different browser, though.