r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL2 Releases] Discuss 2.x releases

Andreas
29-Jun-2010
[1926]
brianh: what you call "profile" i call "package"
Maxim
29-Jun-2010
[1927]
the installer would just setup the values it can find, or leave some 
of these values as run-time functions (some which would rummage registry 
keys, or call routines)
BrianH
29-Jun-2010
[1928]
All packages will need to be supported by the same executable then, 
in one package.
Andreas
29-Jun-2010
[1929]
Hu?
Maxim
29-Jun-2010
[1930]
its ironic because as much as REBOL istelf is abstracted internally 
(opening windows, loading fonts, events, etc), none of the abstraction 
is availble to the scripts so they can also abstract properly at 
their level.
BrianH
29-Jun-2010
[1931]
Viewtop is built in to the executable. All we are placing is data 
files.
Andreas
29-Jun-2010
[1932x2]
Using Debian packaging as an example: you'd just have a rebol-view.deb 
which installs the binary. And another rebol-viewtop.deb which installs 
a script to launch to viewtop and depends on rebol-view being installed.
Maybe the disconnect we have here is that "installers" in a Windows 
sense are absolutely atypical on Linux
BrianH
29-Jun-2010
[1934]
If you want to build without viewtop, use the SDK. But you aren't 
building R2/View, you're building /Face. The no-install profile is 
just the /View executable not running viewtop.
Andreas
29-Jun-2010
[1935]
We don't build anything, we're discussion how to sanely install /View 
on Linux.
BrianH
29-Jun-2010
[1936]
Maybe the disconnect here is that you are getting distracted by the 
word "installer" and not realizing is that what we are discussing 
is determining the places where stuff is put, both files and settings. 
And that the runtime needs to look for the same stuff in the same 
place where it is put. And that for Linux, it might be put there 
manually, but it still needs to find stuff at runtime.
Andreas
29-Jun-2010
[1937]
The "runtime" is an app, no :) ?
Maxim
29-Jun-2010
[1938]
some of it is view internals, some of it is for the script, so it 
can comply as well.
BrianH
29-Jun-2010
[1939]
The runtime is /View doing something other than installing itself. 
And it needs settings, cross-platform settings that are made available 
inside /View without any script needing to check the registry of 
call GET-ENV, for scripts to know where to put or look for the stuff 
they need to run.
Maxim
29-Jun-2010
[1940x2]
one of the problems of the current R2 is that some of that information 
is either not known at all or cannot be changed even internally by 
view.


so it assumes (pretty badly) to use the current-dir for some things.
so we end up with folders being created everywhere on disk, even 
on your desktop...
Andreas
29-Jun-2010
[1942]
Well, I guess you need to refine system/options then.
BrianH
29-Jun-2010
[1943]
The biggest problem with /View on Windows is that it puts its runtime 
settings in the wrong place, almost every time. Global stuff in user-specific 
places, user-specific stuff in global places.
Andreas
29-Jun-2010
[1944]
I once again assume you mean the viewtop.
BrianH
29-Jun-2010
[1945x2]
They fixed this a little for the files, but the registry settings 
are still all wrong.
No, I mean /View.
Maxim
29-Jun-2010
[1947]
and you cannot overide how IT wants to install in cases where you 
know exactly what YOU want it to do.  for rebol it wouldn't be too 
bad, but for scripts which are more than your little 100 line reblet, 
this gets VERY annoying real fast.
Andreas
29-Jun-2010
[1948x3]
What files does /View create?
And what registry settings does it write?
Well, nevermind.
BrianH
29-Jun-2010
[1951x2]
File associations. A setting saying which version is installed. A 
setting saying where the program is installed.
They make a global install, but save the global settings in the user-specific 
locations, and the use-specific stuff in global locations.
Andreas
29-Jun-2010
[1953]
What would you call a REBOL binary that comes with GUI capabilities 
on Windows?
BrianH
29-Jun-2010
[1954x2]
It depends. If it has all of View, with the viewtop, I would call 
it /View (or /View/Pro with library support). If it has none of that 
I would call it /Face. If it has all of that plus /Command stuff, 
I would call it /Command/View. There are 3 graphics builds on Windows, 
license depending.
All of them except /Face use the same registry settings, the wrong 
ones.
Andreas
29-Jun-2010
[1956]
On Linux, there's two versions of REBOL immediately available: /Core 
and /View. /Core is a REBOL binary w/o GUI capabilities, /View is 
a REBOL binary with GUI capabilities (and beyond that, it comes bundled 
with a self-installer and the Viewtop app).
Maxim
29-Jun-2010
[1957]
as a reboler, I don't want to write system specific and environment 
 resolving code.  


my script should be able to ply itself to whatever system its installed 
on and still read/write its files in proper OS expected places.


This is what we are talking about Andreas... viewtop specifically 
has nothing to do with this.  this is for ALL scripts to be compliant.


if I had a command which allowed me to build a system-compliant "application 
data path" then it would write stuff in ~/application/ on linux and 
whatever profile/app data/application   path is being used by your 
flavour of windows.


right now, I'd have to write a library which determines this and 
it probably will screw up on ubuntu, or Mac Or the latest windows.
BrianH
29-Jun-2010
[1958]
Nope, /Face uses the wrong registry settings too, just less of them.
Maxim
29-Jun-2010
[1959x2]
things like user names and user folders have to be extracted within 
a routine using proper OS calls, either WinAPi or Env values if that 
is what your OS uses.
though Env values are a security risk since they can easily be highjacked.
Andreas
29-Jun-2010
[1961]
maxim, i totally understand this. but it's this kind of cross-plattform 
stuff is a pipe dream in the general case.
Maxim
29-Jun-2010
[1962]
I have had to build such tools in the past, so no, it can really 
be done... just look at view itself... it abstracts all of the windowing 
/event etc into a common layer.
BrianH
29-Jun-2010
[1963]
And that is stuff the runtime should be doing, so that scripts can 
be cross-platform. Platform-specific stuff has no business being 
in scripts, or the mezzanine code for that matter.
Andreas
29-Jun-2010
[1964]
the only sensible solution is to be mostly platform ignorant and 
build a rebol-specific packaging and distribution system. which, 
iirc, you did a few times in R2.
AdrianS
29-Jun-2010
[1965]
Maxim, see this about passing arguments to apps started by file association:


http://stackoverflow.com/questions/444388/how-can-i-pass-command-line-arguments-via-file-association-in-vista-64


Re. shortcuts having arguments, yes they can - Vista shortcuts could 
as well, though.
BrianH
29-Jun-2010
[1966x2]
Then the runtime would still need to look stuff up from the platform, 
and put the answers in nice, cross-platform REBOL settings in system/options, 
system/user, etc.
That is the runtime's job, to gloss over all of those pesky platform-specific 
differences.
Andreas
29-Jun-2010
[1968]
Good luck with that :)
BrianH
29-Jun-2010
[1969]
It's the same job performed by the host code in R3.
Maxim
29-Jun-2010
[1970]
adrian, when I edited the shortcut on vista, and added the arguments 
it wouldn't save it, telling me the path to the executable didn't 
exist  :-(
BrianH
29-Jun-2010
[1971x2]
Works just fine on 7.
Are you using .lnk format shortcuts?
Maxim
29-Jun-2010
[1973x3]
and yes... you have to manually change the command-line arguments, 
but then the OS' editors break up in what I can't remember, I think 
rebol disapeared from the "installed applications" list, although 
the file association still worked.
I don't have vista installed anymore... but i'd just go on the desktop 
and right-click, create shortcut.
(using XP for as long as I can)