Gentoo Archives: gentoo-commits

From: "André Erdmann" <dywi@×××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/R_overlay:master commit in: man/, /, config/
Date: Wed, 01 Aug 2012 21:11:16
Message-Id: 1343855334.02ee937512a9261570b126ca283e4b87de0daa91.dywi@gentoo
1 commit: 02ee937512a9261570b126ca283e4b87de0daa91
2 Author: André Erdmann <dywi <AT> mailerd <DOT> de>
3 AuthorDate: Wed Aug 1 21:08:54 2012 +0000
4 Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
5 CommitDate: Wed Aug 1 21:08:54 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=02ee9375
7
8 docs
9
10 ---
11 README | 24 ++++++++++++++++--------
12 config/R-overlay.conf | 6 ++++++
13 config/repo.list | 2 ++
14 man/roverlay-deprules.5 | 12 +++++++++---
15 man/roverlay-repo.5 | 39 +++++++++++++++++++++++++++++++++++----
16 man/roverlay.1 | 4 ++++
17 6 files changed, 72 insertions(+), 15 deletions(-)
18
19 diff --git a/README b/README
20 index 3be012c..40c2201 100644
21 --- a/README
22 +++ b/README
23 @@ -2,15 +2,24 @@ R overlay -- README
24
25 == How to use ==
26
27 -There is currently no "R overlay" script, only modules that implement functionality.
28 +./roverlay.py [option(s)] [command(s)]
29
30 -=== Running tests ===
31 -# <TODO> write this section
32 +See man/roverlay.1 or ./roverlay.py --help for all options.
33
34 -Real tests are scheduled for July 10 - July 30.
35 +=== Running tests ===
36
37 -A main script is available. See man/roverlay.1 or ./roverlay.py --help for usage.
38 +Just run the main script, the '--repo-config' option can be used to use
39 +other repo config files (instead of the default one that downloads ~50GB of packages).
40 +The '--no-manifest' switch can be used to disable Manifest creation, which saves a
41 +considerable amount of time at the expense of an unusable overlay
42 +(but useful to analyze created metadata, ebuild and depres results).
43
44 +Test run example:
45 +<<
46 +#!/bin/sh
47 +./roverlay.py sync
48 +time ./main.py --nosync --stats -O /tmp/created_overlay --no-manifest
49 +>>
50
51 == Configuration ==
52
53 @@ -18,11 +27,10 @@ A main script is available. See man/roverlay.1 or ./roverlay.py --help for usage
54 see config/R-overlay.conf
55
56 * repo configuration (CRAN,...)
57 -see config/repo.list
58 +see man/roverlay-repo.5
59
60 * description field configuration
61 see config/description_fields.conf
62
63 * dependency rules configuration
64 -see config/simple-deprules.conf
65 -
66 +see man/roverlay-deprules.5
67
68 diff --git a/config/R-overlay.conf b/config/R-overlay.conf
69 index 01f0037..a1ba48c 100644
70 --- a/config/R-overlay.conf
71 +++ b/config/R-overlay.conf
72 @@ -134,6 +134,12 @@
73 # * defaults to sci-R
74 #OVERLAY_CATEGORY = 'dev-R'
75
76 +# OVERLAY_KEEP_NTH_LATEST
77 +# keep the n-th latest ebuilds per R package, removing all others
78 +# * accepted values: integer, has no effect if < 1
79 +# * defaults to <unset>, which disables this option (keep all ebuilds)
80 +#OVERLAY_KEEP_NTH_LATEST = 3
81 +
82 # EBUILD_HEADER
83 # ebuild header file that will be included in all created ebuilds
84 # *** NOT IN USE ***
85
86 diff --git a/config/repo.list b/config/repo.list
87 index f389fd7..378c03e 100644
88 --- a/config/repo.list
89 +++ b/config/repo.list
90 @@ -1,6 +1,8 @@
91 # repo.list
92 # This file explains how to write repo config files.
93
94 +# !! out of date, see man/roverlay-repo.5
95 +
96 # This file is parsed used ConfigParser syntax (known from .ini files).
97
98 # A repo entry describes
99
100 diff --git a/man/roverlay-deprules.5 b/man/roverlay-deprules.5
101 index e41beda..2af7920 100644
102 --- a/man/roverlay-deprules.5
103 +++ b/man/roverlay-deprules.5
104 @@ -105,10 +105,16 @@ dev\-lang/R when the version is \&<= the lowest version available in portage.
105 .br
106 In detail, this method matches if
107 .br
108 -\& \fIdep_string\fR ~= \fIfuzzy_string\fR \&<\fIversion_statement\fR\&>,
109 +\& \fIdep_string\fR ~= \fIfuzzy_string\fR \&<\fIversion_statement\fR\&>
110 .br
111 -where \fIversion_statment\fR is something like \&>=2.10, \&!=0.9, 1.0, \&<5,
112 -optionally enclosed with braces ((), [], {}).
113 +where \fIversion_statement\fR ::= [\&<\fIversion_modifier\fR\&>] \&<\fIversion\fR\&>
114 +.br
115 +and \fIversion_modifier\fR is one out of \&{\&<, \&>, \&=, \&!, \&<\&=, \&>\&=, \&=\&=, \&!\&=\&}.
116 +.br
117 +
118 +Examples: \&'\&>=2.10\&', \&'\&!=0.9\&', \&'1.0\&', \&'\&<5\&'.
119 +
120 +Version statements can optionally be enclosed with braces (\&'()\&', \&'[]\&', \&'{}\&').
121 Whitespace is ignored unless \fIversion_statment\fR is not enclosed,
122 in which case some whitespace (more than zero chars) must exist between
123 \fIfuzzy_string\fR and \fIversion_statment\fR.
124
125 diff --git a/man/roverlay-repo.5 b/man/roverlay-repo.5
126 index c8e1270..212aae9 100644
127 --- a/man/roverlay-repo.5
128 +++ b/man/roverlay-repo.5
129 @@ -12,11 +12,11 @@ A repo entry describes where to find R packages that will be used for overlay cr
130 and optionally where and how to get the R packages (using \fBREPO TYPES\fR).
131 It also defines how ebuilds can download the R packages (used as \fISRC_URI\fR variable in ebuilds).
132 .SS "REPO TYPES"
133 -There are two types of repos, "rsync" and "local" ones:
134 -.IP "\(bu local repositories"
135 +There are 4 types of repos, "local", "rsync", "websync_repo" and "websync_pkglist":
136 +.IP "\(bu local repositories (\&'local\&')"
137 A \fBlocal repo\fR represents a directory with R packages in it.
138 It will never be modified (i.e. synced) and has no special options.
139 -.IP "\(bu rsync repositories"
140 +.IP "\(bu rsync repositories (\&'rsync\&')"
141 An \fBrsync repo\fR uses a local directory to sync with a remote.
142 Its directory will be modified whenever syncing (using the rsync program).
143 It behaves like a local repo if syncing is disabled.
144 @@ -28,6 +28,17 @@ These rsync options are always passed to rsync:
145 \-\-dirs, \-\-prune-empty-dirs, \-\-force, \-\-delete,
146 \-\-human-readable, \-\-stats, \-\-chmod=ugo=r,u+w,Dugo+
147 \fR
148 +.IP "\(bu websync repositories (\&'websync_repo\&')"
149 +A \fBwebsync repo\fR fetches an R package list (deb-control file, typically named PACKAGES)
150 +from a remote and downloads all packages afterwards (via http). It supports file-size and basic digest
151 +verification for downloaded packages.
152 +Nosync mode support for this type of repo is limited, it will report all packages from its
153 +directory as synced.
154 +.IP "\(bu package list websync (\&'websync_pkglist\&')"
155 +This is not a real repo type, it merely reads package uris from a file
156 +(one \&'http://...\&' entry per line) and downloads them (via http).
157 +Package uri entries must end with \&'.tar.gz\&', else ebuild creation is not possible.
158 +Nosync mode support is limited, all packages that exist locally will be reported as synced.
159 .PP
160 .SH "VARIABLES"
161 Each repository is introduced with [\fIsection_name\fR] and has to declare some options.
162 @@ -37,7 +48,7 @@ Each repository is introduced with [\fIsection_name\fR] and has to declare some
163 This is used to determine the \fISRC_URI\fR variable used in ebuilds.
164 \fIuri\fR usually starts with 'http://' which can be left out,
165 "localhost/R-packages" is the same uri as "http://localhost/R-packages".
166 -Always required.
167 +Always required unless \fItype\fR is websync_pkglist in which case this option has no effect.
168 .TP
169 .BR "name" " = \fIrepo_name\fR"
170 Specify a name for the repository.
171 @@ -71,6 +82,26 @@ A whitespace-separated list of extra options that will be passed to rsync.
172 Useful to in-/exclude files/dirs, show progress while running rsync etc.
173 Options must not contain whitespace/quote chars.
174 Note that the options won't be verified - this is \fBtotally unsafe!\fR
175 +.SS "special options for websync repos"
176 +.TP
177 +.BR "pkglist_file" " = \fIfilename\fR"
178 +Name of the package list file that will be downloaded.
179 +Optional, defaults to \&'PACKAGES\&', which should be fine in
180 +most cases. Note that reading compressed package lists (e.g. \&'PACKAGES.gz\&')
181 +is not supported. Has no effect if \fBpkglist_uri\fR is set.
182 +.TP
183 +.BR "pkglist_uri" " = \fIuri\fR"
184 +Fetch \fIuri\fR and use it as package list.
185 +Optional, defaults to \fIsrc_uri\fR/\fIpkglist_file\fR.
186 +.TP
187 +.BR "digest_type" " = \fIdigest_type\fR"
188 +Verify downloaded packages using \fIdigest_type\fR.
189 +Available choices are \&'md5\&' and \&'none\&'. The remote has to support this,
190 +i.e. list digests in the \fIpkglist_file\fR.
191 +.SS "special options for package list websync"
192 +.TP
193 +.BR "pkglist_file" " = \fIfile\fR"
194 +Path to the file that lists all package uris.
195 .SH "EXAMPLES"
196 Example 1:
197 .RS 1
198
199 diff --git a/man/roverlay.1 b/man/roverlay.1
200 index 02c78ed..5d34be4 100644
201 --- a/man/roverlay.1
202 +++ b/man/roverlay.1
203 @@ -88,6 +88,10 @@ This includes ebuilds, metadata, Manifest files and the profiles/ dir.
204 .BR "\-\-stats" "\fR, " "\-\-no\-stats"
205 Print some stats after overlay creation/writing.
206 .TP
207 +.BR "\-\-no\-manifest"
208 +Skip Manifest file creation to save time. Note that the resulting overlay
209 +cannot be used with portage/emerge.
210 +.TP
211 .BR "\-\-overlay " "\fIdirectory\fR (\fB\-O\fR)"
212 Set the overlay directory to \fIdirectory\fR. Else
213 \fIOVERLAY_DIR\fR from the main config will be used.