##// END OF EJS Templates
beaker: add patch for metadata re-use
marcink -
r2758:23866423 default
parent child Browse files
Show More
@@ -0,0 +1,13 b''
1 diff -rup Beaker-1.9.1-orig/beaker/ext/database.py Beaker-1.9.1/beaker/ext/database.py
2 --- Beaker-1.9.1-orig/beaker/ext/database.py 2018-05-22 18:22:34.802619619 +0200
3 +++ Beaker-1.9.1/beaker/ext/database.py 2018-05-22 17:07:14.048335196 +0200
4 @@ -91,7 +91,8 @@ class DatabaseNamespaceManager(OpenResou
5 sa.Column('created', types.DateTime, nullable=False),
6 sa.Column('data', types.PickleType, nullable=False),
7 sa.UniqueConstraint('namespace'),
8 - schema=schema_name if schema_name else meta.schema
9 + schema=schema_name if schema_name else meta.schema,
10 + extend_existing=True
11 )
12 cache.create(checkfirst=True)
13 return cache
@@ -1,250 +1,251 b''
1 # Overrides for the generated python-packages.nix
1 # Overrides for the generated python-packages.nix
2 #
2 #
3 # This function is intended to be used as an extension to the generated file
3 # This function is intended to be used as an extension to the generated file
4 # python-packages.nix. The main objective is to add needed dependencies of C
4 # python-packages.nix. The main objective is to add needed dependencies of C
5 # libraries and tweak the build instructions where needed.
5 # libraries and tweak the build instructions where needed.
6
6
7 { pkgs, basePythonPackages }:
7 { pkgs, basePythonPackages }:
8
8
9 let
9 let
10 sed = "sed -i";
10 sed = "sed -i";
11 localLicenses = {
11 localLicenses = {
12 repoze = {
12 repoze = {
13 fullName = "Repoze License";
13 fullName = "Repoze License";
14 url = http://www.repoze.org/LICENSE.txt;
14 url = http://www.repoze.org/LICENSE.txt;
15 };
15 };
16 };
16 };
17
17
18 in
18 in
19
19
20 self: super: {
20 self: super: {
21
21
22 appenlight-client = super.appenlight-client.override (attrs: {
22 appenlight-client = super.appenlight-client.override (attrs: {
23 meta = {
23 meta = {
24 license = [ pkgs.lib.licenses.bsdOriginal ];
24 license = [ pkgs.lib.licenses.bsdOriginal ];
25 };
25 };
26 });
26 });
27
27
28 beaker = super.beaker.override (attrs: {
28 beaker = super.beaker.override (attrs: {
29 patches = [
29 patches = [
30 ./patch-beaker-lock-func-debug.diff
30 ./patch-beaker-lock-func-debug.diff
31 ./patch-beaker-metadata-reuse.diff
31 ];
32 ];
32 });
33 });
33
34
34 future = super.future.override (attrs: {
35 future = super.future.override (attrs: {
35 meta = {
36 meta = {
36 license = [ pkgs.lib.licenses.mit ];
37 license = [ pkgs.lib.licenses.mit ];
37 };
38 };
38 });
39 });
39
40
40 testpath = super.testpath.override (attrs: {
41 testpath = super.testpath.override (attrs: {
41 meta = {
42 meta = {
42 license = [ pkgs.lib.licenses.mit ];
43 license = [ pkgs.lib.licenses.mit ];
43 };
44 };
44 });
45 });
45
46
46 gnureadline = super.gnureadline.override (attrs: {
47 gnureadline = super.gnureadline.override (attrs: {
47 buildInputs = attrs.buildInputs ++ [
48 buildInputs = attrs.buildInputs ++ [
48 pkgs.ncurses
49 pkgs.ncurses
49 ];
50 ];
50 patchPhase = ''
51 patchPhase = ''
51 substituteInPlace setup.py --replace "/bin/bash" "${pkgs.bash}/bin/bash"
52 substituteInPlace setup.py --replace "/bin/bash" "${pkgs.bash}/bin/bash"
52 '';
53 '';
53 });
54 });
54
55
55 gunicorn = super.gunicorn.override (attrs: {
56 gunicorn = super.gunicorn.override (attrs: {
56 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
57 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
57 # johbo: futures is needed as long as we are on Python 2, otherwise
58 # johbo: futures is needed as long as we are on Python 2, otherwise
58 # gunicorn explodes if used with multiple threads per worker.
59 # gunicorn explodes if used with multiple threads per worker.
59 self.futures
60 self.futures
60 ];
61 ];
61 });
62 });
62
63
63 nbconvert = super.nbconvert.override (attrs: {
64 nbconvert = super.nbconvert.override (attrs: {
64 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
65 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
65 # marcink: plug in jupyter-client for notebook rendering
66 # marcink: plug in jupyter-client for notebook rendering
66 self.jupyter-client
67 self.jupyter-client
67 ];
68 ];
68 });
69 });
69
70
70 ipython = super.ipython.override (attrs: {
71 ipython = super.ipython.override (attrs: {
71 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
72 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
72 self.gnureadline
73 self.gnureadline
73 ];
74 ];
74 });
75 });
75
76
76 lxml = super.lxml.override (attrs: {
77 lxml = super.lxml.override (attrs: {
77 # johbo: On 16.09 we need this to compile on darwin, otherwise compilation
78 # johbo: On 16.09 we need this to compile on darwin, otherwise compilation
78 # fails on Darwin.
79 # fails on Darwin.
79 hardeningDisable = if pkgs.stdenv.isDarwin then [ "format" ] else null;
80 hardeningDisable = if pkgs.stdenv.isDarwin then [ "format" ] else null;
80 buildInputs = with self; [
81 buildInputs = with self; [
81 pkgs.libxml2
82 pkgs.libxml2
82 pkgs.libxslt
83 pkgs.libxslt
83 ];
84 ];
84 });
85 });
85
86
86 mysql-python = super.mysql-python.override (attrs: {
87 mysql-python = super.mysql-python.override (attrs: {
87 buildInputs = attrs.buildInputs ++ [
88 buildInputs = attrs.buildInputs ++ [
88 pkgs.openssl
89 pkgs.openssl
89 ];
90 ];
90 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
91 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
91 pkgs.libmysql
92 pkgs.libmysql
92 pkgs.zlib
93 pkgs.zlib
93 ];
94 ];
94 });
95 });
95
96
96 psutil = super.psutil.override (attrs: {
97 psutil = super.psutil.override (attrs: {
97 buildInputs = attrs.buildInputs ++
98 buildInputs = attrs.buildInputs ++
98 pkgs.lib.optional pkgs.stdenv.isDarwin pkgs.darwin.IOKit;
99 pkgs.lib.optional pkgs.stdenv.isDarwin pkgs.darwin.IOKit;
99 });
100 });
100
101
101 psycopg2 = super.psycopg2.override (attrs: {
102 psycopg2 = super.psycopg2.override (attrs: {
102 buildInputs = attrs.buildInputs ++
103 buildInputs = attrs.buildInputs ++
103 pkgs.lib.optional pkgs.stdenv.isDarwin pkgs.openssl;
104 pkgs.lib.optional pkgs.stdenv.isDarwin pkgs.openssl;
104 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
105 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
105 pkgs.postgresql
106 pkgs.postgresql
106 ];
107 ];
107 meta = {
108 meta = {
108 license = pkgs.lib.licenses.lgpl3Plus;
109 license = pkgs.lib.licenses.lgpl3Plus;
109 };
110 };
110 });
111 });
111
112
112 pycurl = super.pycurl.override (attrs: {
113 pycurl = super.pycurl.override (attrs: {
113 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
114 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
114 pkgs.curl
115 pkgs.curl
115 pkgs.openssl
116 pkgs.openssl
116 ];
117 ];
117 preConfigure = ''
118 preConfigure = ''
118 substituteInPlace setup.py --replace '--static-libs' '--libs'
119 substituteInPlace setup.py --replace '--static-libs' '--libs'
119 export PYCURL_SSL_LIBRARY=openssl
120 export PYCURL_SSL_LIBRARY=openssl
120 '';
121 '';
121 meta = {
122 meta = {
122 # TODO: It is LGPL and MIT
123 # TODO: It is LGPL and MIT
123 license = pkgs.lib.licenses.mit;
124 license = pkgs.lib.licenses.mit;
124 };
125 };
125 });
126 });
126
127
127 pyramid = super.pyramid.override (attrs: {
128 pyramid = super.pyramid.override (attrs: {
128 postFixup = ''
129 postFixup = ''
129 wrapPythonPrograms
130 wrapPythonPrograms
130 # TODO: johbo: "wrapPython" adds this magic line which
131 # TODO: johbo: "wrapPython" adds this magic line which
131 # confuses pserve.
132 # confuses pserve.
132 ${sed} '/import sys; sys.argv/d' $out/bin/.pserve-wrapped
133 ${sed} '/import sys; sys.argv/d' $out/bin/.pserve-wrapped
133 '';
134 '';
134 meta = {
135 meta = {
135 license = localLicenses.repoze;
136 license = localLicenses.repoze;
136 };
137 };
137 });
138 });
138
139
139 pyramid-debugtoolbar = super.pyramid-debugtoolbar.override (attrs: {
140 pyramid-debugtoolbar = super.pyramid-debugtoolbar.override (attrs: {
140 meta = {
141 meta = {
141 license = [ pkgs.lib.licenses.bsdOriginal localLicenses.repoze ];
142 license = [ pkgs.lib.licenses.bsdOriginal localLicenses.repoze ];
142 };
143 };
143 });
144 });
144
145
145 pysqlite = super.pysqlite.override (attrs: {
146 pysqlite = super.pysqlite.override (attrs: {
146 propagatedBuildInputs = [
147 propagatedBuildInputs = [
147 pkgs.sqlite
148 pkgs.sqlite
148 ];
149 ];
149 meta = {
150 meta = {
150 license = [ pkgs.lib.licenses.zlib pkgs.lib.licenses.libpng ];
151 license = [ pkgs.lib.licenses.zlib pkgs.lib.licenses.libpng ];
151 };
152 };
152 });
153 });
153
154
154 pytest-runner = super.pytest-runner.override (attrs: {
155 pytest-runner = super.pytest-runner.override (attrs: {
155 propagatedBuildInputs = [
156 propagatedBuildInputs = [
156 self.setuptools-scm
157 self.setuptools-scm
157 ];
158 ];
158 });
159 });
159
160
160 python-ldap = super.python-ldap.override (attrs: {
161 python-ldap = super.python-ldap.override (attrs: {
161 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
162 propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
162 pkgs.cyrus_sasl
163 pkgs.cyrus_sasl
163 pkgs.openldap
164 pkgs.openldap
164 pkgs.openssl
165 pkgs.openssl
165 ];
166 ];
166 # TODO: johbo: Remove the "or" once we drop 16.03 support.
167 # TODO: johbo: Remove the "or" once we drop 16.03 support.
167 NIX_CFLAGS_COMPILE = "-I${pkgs.cyrus_sasl.dev or pkgs.cyrus_sasl}/include/sasl";
168 NIX_CFLAGS_COMPILE = "-I${pkgs.cyrus_sasl.dev or pkgs.cyrus_sasl}/include/sasl";
168 });
169 });
169
170
170 python-pam = super.python-pam.override (attrs:
171 python-pam = super.python-pam.override (attrs:
171 let
172 let
172 includeLibPam = pkgs.stdenv.isLinux;
173 includeLibPam = pkgs.stdenv.isLinux;
173 in {
174 in {
174 # TODO: johbo: Move the option up into the default.nix, we should
175 # TODO: johbo: Move the option up into the default.nix, we should
175 # include python-pam only on supported platforms.
176 # include python-pam only on supported platforms.
176 propagatedBuildInputs = attrs.propagatedBuildInputs ++
177 propagatedBuildInputs = attrs.propagatedBuildInputs ++
177 pkgs.lib.optional includeLibPam [
178 pkgs.lib.optional includeLibPam [
178 pkgs.pam
179 pkgs.pam
179 ];
180 ];
180 # TODO: johbo: Check if this can be avoided, or transform into
181 # TODO: johbo: Check if this can be avoided, or transform into
181 # a real patch
182 # a real patch
182 patchPhase = pkgs.lib.optionals includeLibPam ''
183 patchPhase = pkgs.lib.optionals includeLibPam ''
183 substituteInPlace pam.py \
184 substituteInPlace pam.py \
184 --replace 'find_library("pam")' '"${pkgs.pam}/lib/libpam.so.0"'
185 --replace 'find_library("pam")' '"${pkgs.pam}/lib/libpam.so.0"'
185 '';
186 '';
186 });
187 });
187
188
188 urlobject = super.urlobject.override (attrs: {
189 urlobject = super.urlobject.override (attrs: {
189 meta = {
190 meta = {
190 license = {
191 license = {
191 spdxId = "Unlicense";
192 spdxId = "Unlicense";
192 fullName = "The Unlicense";
193 fullName = "The Unlicense";
193 url = http://unlicense.org/;
194 url = http://unlicense.org/;
194 };
195 };
195 };
196 };
196 });
197 });
197
198
198 docutils = super.docutils.override (attrs: {
199 docutils = super.docutils.override (attrs: {
199 meta = {
200 meta = {
200 license = pkgs.lib.licenses.bsd2;
201 license = pkgs.lib.licenses.bsd2;
201 };
202 };
202 });
203 });
203
204
204 colander = super.colander.override (attrs: {
205 colander = super.colander.override (attrs: {
205 meta = {
206 meta = {
206 license = localLicenses.repoze;
207 license = localLicenses.repoze;
207 };
208 };
208 });
209 });
209
210
210 pyramid-beaker = super.pyramid-beaker.override (attrs: {
211 pyramid-beaker = super.pyramid-beaker.override (attrs: {
211 meta = {
212 meta = {
212 license = localLicenses.repoze;
213 license = localLicenses.repoze;
213 };
214 };
214 });
215 });
215
216
216 pyramid-mako = super.pyramid-mako.override (attrs: {
217 pyramid-mako = super.pyramid-mako.override (attrs: {
217 meta = {
218 meta = {
218 license = localLicenses.repoze;
219 license = localLicenses.repoze;
219 };
220 };
220 });
221 });
221
222
222 repoze.lru = super.repoze.lru.override (attrs: {
223 repoze.lru = super.repoze.lru.override (attrs: {
223 meta = {
224 meta = {
224 license = localLicenses.repoze;
225 license = localLicenses.repoze;
225 };
226 };
226 });
227 });
227
228
228 python-editor = super.python-editor.override (attrs: {
229 python-editor = super.python-editor.override (attrs: {
229 meta = {
230 meta = {
230 license = pkgs.lib.licenses.asl20;
231 license = pkgs.lib.licenses.asl20;
231 };
232 };
232 });
233 });
233
234
234 translationstring = super.translationstring.override (attrs: {
235 translationstring = super.translationstring.override (attrs: {
235 meta = {
236 meta = {
236 license = localLicenses.repoze;
237 license = localLicenses.repoze;
237 };
238 };
238 });
239 });
239
240
240 venusian = super.venusian.override (attrs: {
241 venusian = super.venusian.override (attrs: {
241 meta = {
242 meta = {
242 license = localLicenses.repoze;
243 license = localLicenses.repoze;
243 };
244 };
244 });
245 });
245
246
246 # Avoid that setuptools is replaced, this leads to trouble
247 # Avoid that setuptools is replaced, this leads to trouble
247 # with buildPythonPackage.
248 # with buildPythonPackage.
248 setuptools = basePythonPackages.setuptools;
249 setuptools = basePythonPackages.setuptools;
249
250
250 }
251 }
General Comments 0
You need to be logged in to leave comments. Login now