Commit graph

63 commits

Author SHA1 Message Date
Alex Shinn
fad3413235
Merge pull request #609 from ilammy/snow-usr-local
Always install Snow libraries to /usr/local
2020-02-06 21:15:39 +08:00
Alexei Lozovsky
50a9c9d4d4 Use sudo when doing "snow-chibi remove"
Currently "remove" command does not know how to use sudo to remove
files installed into directories owned by root. By default Snow
installs stuff into /usr/local hierarchy and uses sudo for that.
Let's teach it to remove packages without explicit sudo too.
2020-02-02 16:46:23 +02:00
Alexei Lozovsky
26061930e9 Always install Snow libraries to /usr/local
Snow-Chibi is a local package manager, not a system one. It can install
Scheme packages into system but they are not managed by system package
manager like dpkg, RPM, pacman, ports, etc.

Traditionally (and in accordance with Filesystem Hierarchy Standard),
/usr/local hierarchy should be used for local administrator installs --
and that's what Snow-Chibi provides.

Let's make sure that Snow-Chibi installs snowballs into /usr/local
hierarchy even if Chibi is compiled for installation into the system,
with PREFIX=/usr. Introduce a distinct bunch of variables holding paths
to library installation directories, with "SNOW" prefix:

  - SNOWPREFIX    - default prefix for Snow-installed stuff
  - SNOWLIBDIR    - custom libraries required for Snow itself
  - SNOWSOLIBDIR  - shared libraries required for Snow itself
  - SNOWMODDIR    - Snow installs Scheme modules here
  - SNOWBINMODDIR - Snow installs native libraries here

All of these are set to /use/local by default, just as they are now.
However, they are not affected by regular PREFIX, LIBDIR, MODDIR, etc.
which affect only libraries bundled with Chibi.

And in order for these to work, they need to be added into the current
module path so that they can be used in parallel with system libraries.
Furthermore, we need to tweak "get-install-library-dir" function to use
those paths instead of hardcoded "/usr/local/lib" by default. Introduce
a new helper "get-install-library-dirs", similar to "get-install-dirs".
It will look up the correct installation directories in current module
path, giving preference to the ones with "/lib" in them.

With these defaults, Snow will install Scheme modules into
/usr/local/share/snow and native libraries go into /usr/local/lib/snow,
similar to how built-it libraries are installed into
/usr/local/share/chibi and /usr/local/lib/chibi is used for native code.
Of course, this can be overriden at build time by setting SNOWPREFIX or
individual SNOWMODDIR, SNOWBINMODDIR variables.
2020-02-02 16:21:21 +02:00
Robert Fisher
7f3d322407 Fix installation for Chicken 5
To get the repository path in Chicken 5, we not only have to require the
chicken.platform module, we also need to take the car of the result
since it now returns a list.
2019-08-29 11:42:21 -05:00
Robert Fisher
13d4bbf1d1 Change snow-chibi to work with Chicken 5
The method snow-chibi used to get the version of Chicken installed
doesn't work with Chicken 5. Adding "-R chicken.platform" would make it
work with Chicken 5, but then it wouldn't work with Chicken 4.

In both Chicken 4 & 5, however, csi has a -release option that will just
give the version number. So, I've changed the Chicken version detection
in snow-chibi to use this option.

Testing with...

	./chibi-scheme tools/snow-chibi.scm implementations

...then seemed to work with both Chicken 4 & 5.
2019-08-29 09:16:36 -05:00
Alex Shinn
afd887e672 update-repository shouldn't exit 2019-01-11 08:48:45 +08:00
Alex Shinn
8589333868 fix previous change for inline docs 2017-07-03 07:00:25 +09:00
Alex Shinn
c3e298757b Merge branch 'master' of https://github.com/ashinn/chibi-scheme 2017-07-03 06:57:13 +09:00
Alex Shinn
7b68f141c6 allow urls for snow docs 2017-07-03 06:57:09 +09:00
arthurmaciel
264a4a4ede Added support for Cyclone to Snow 2017-07-02 16:55:38 -03:00
Alex Shinn
806d92aa15 adding --scheme-script and --scheme-program-command args to snow (issue #400) 2017-03-26 21:30:53 +09:00
Alex Shinn
1a1dfc64ca supporting installing srfi's for chicken 2017-01-31 22:47:01 +09:00
Alex Shinn
812dc59b20 removing debug output 2017-01-30 22:51:52 +09:00
Alex Shinn
7c12b0aaf3 sort libs within a package before installing,
plus other small fixes for (chibi iset) for chicken
2017-01-30 22:48:02 +09:00
Alex Shinn
302ee50075 fixing path resolution for include-library-declarations 2017-01-14 15:52:06 +09:00
Alex Shinn
f691ae6a76 determining chicken-binary-version from (##sys#fudge 42) 2017-01-14 15:00:21 +09:00
Alex Shinn
396baa752f Updating chicken install path to 8. 2017-01-14 14:54:06 +09:00
Alex Shinn
64f3be9c99 use blocking io by default in snow 2015-06-22 20:51:20 +09:00
Alex Shinn
4ab97dd9bd adding experimental --use-curl option 2015-06-19 00:02:05 +09:00
Alex Shinn
c9a856b8f6 fix path adjustment of inline test files in snow-chibi package command 2015-06-15 23:39:38 +09:00
Alex Shinn
19df6e7578 strip leading parents in package test 2015-06-13 22:06:12 +09:00
Alex Shinn
a05b94f3c2 fixing bug in extract-program-dependencies 2015-06-13 20:59:01 +09:00
Alex Shinn
9f00ad0695 trying version-file relative to the library file first 2015-05-10 22:19:41 +09:00
Alex Shinn
9fe8dbf893 chmod 644 installed meta files 2015-05-09 22:32:05 +09:00
Alex Shinn
71ce04861d Actually installing compiled ffi bindings when present in chibi. 2015-05-09 22:28:32 +09:00
Alex Shinn
d96f1c9fc5 Supporting foreign library dependencies for chibi. 2015-05-09 21:52:07 +09:00
Alex Shinn
f92586d694 don't install a file onto itself 2015-05-09 16:42:53 +09:00
Alex Shinn
99b4a9aa83 Removing trailing space from process output for default install paths. 2015-05-09 16:17:28 +09:00
Alex Shinn
c8efdd0b58 Don't verify signature if not present even if checks forced. 2015-05-09 08:28:21 +09:00
Alex Shinn
70143023ba fixing missing repository-uri 2015-05-09 01:00:42 +09:00
Alex Shinn
5b6ca8e760 Handling case when impl version can't be detected. 2015-05-08 07:24:02 +09:00
Alex Shinn
9688f01afd Don't upgrade transitive dependencies by default. 2015-05-08 00:46:39 +09:00
Alex Shinn
cee04731f9 Don't install libraries that are only (use-for test) by default. 2015-05-07 23:03:49 +09:00
Alex Shinn
9b5fe665cc Supporting multiple repositories and siblings traversal.
Annotating (use-for test) for test libraries.
2015-05-07 00:10:34 +09:00
Alex Shinn
d05b5c2d92 Sane handling of multiple repos basing the local cache name on the remote uri.
Still need to support a list of repos and/or sibling repos.
2015-05-06 15:25:34 +09:00
Alex Shinn
7fa00eb48a Handling periods in tags when extracting the first doc sentence. 2015-05-03 08:39:00 +09:00
Alex Shinn
92e2f16c41 Fixing bug in package-docs on trivial docs. 2015-05-03 08:10:27 +09:00
Alex Shinn
a11ef977a8 Handling missing rsa signatures in verify command.
Making automatic verification opt-in.
2015-05-02 21:45:54 +09:00
Alex Shinn
f958a82028 Don't rsa sign packages by default, but do provide digests. 2015-05-01 21:57:23 +09:00
Alex Shinn
8ed0eaf1cb Recognizing default install (scheme *), (srfi *), (impl *) libraries.
Fixing default install path for Chicken.
2015-04-29 08:53:13 +09:00
Alex Shinn
705260f78e Fixing installs of packages with library files not matching their names. 2015-04-27 10:40:38 +09:00
Alex Shinn
13699a160c don't bother with (make-path "." base) 2015-04-27 00:12:07 +09:00
Alex Shinn
31997cb514 Don't use rsa keys by default for now. 2015-04-26 23:45:43 +09:00
Alex Shinn
93406a98ee Fixing upload with passwords. 2015-04-26 10:42:38 +09:00
Alex Shinn
a8848793e4 Adding a preserve thunk to call-with-temp-file/dir. 2015-04-24 22:52:13 +09:00
Alex Shinn
2ac6b0f271 Adding "implementations" command, along with impl version checks where needed. 2015-04-24 18:22:29 +09:00
Alex Shinn
b40f5284fc Refactoring some utils. 2015-04-24 16:32:06 +09:00
Alex Shinn
ac53193e5d Adding initial chibi-ffi support to snow-chibi. 2015-04-24 14:10:37 +09:00
Alex Shinn
db16fc693c Using absolute import paths for kawa, since relative paths break on chained dependencies. 2015-04-23 18:36:44 +09:00
Alex Shinn
9b328359b5 Chibi still wants to run tests in pwd in case we're running snow-tests from the chibi build dir. 2015-04-23 18:32:15 +09:00