Merge master into haskell-updates

This commit is contained in:
github-actions[bot]
2021-08-12 00:05:55 +00:00
committed by GitHub
152 changed files with 2357 additions and 1067 deletions
+156 -138
View File
@@ -1,44 +1,56 @@
{ lib }:
let
spdx = lic: lic // {
url = "https://spdx.org/licenses/${lic.spdxId}.html";
lib.mapAttrs (lname: lset: let
defaultLicense = rec {
shortName = lname;
free = true; # Most of our licenses are Free, explicitly declare unfree additions as such!
deprecated = false;
};
in
lib.mapAttrs (n: v: v // { shortName = n; }) ({
mkLicense = licenseDeclaration: let
applyDefaults = license: defaultLicense // license;
applySpdx = license:
if license ? spdxId
then license // { url = "https://spdx.org/licenses/${license.spdxId}.html"; }
else license;
applyRedistributable = license: { redistributable = license.free; } // license;
in lib.pipe licenseDeclaration [
applyDefaults
applySpdx
applyRedistributable
];
in mkLicense lset) ({
/* License identifiers from spdx.org where possible.
* If you cannot find your license here, then look for a similar license or
* add it to this list. The URL mentioned above is a good source for inspiration.
*/
abstyles = spdx {
abstyles = {
spdxId = "Abstyles";
fullName = "Abstyles License";
};
afl20 = spdx {
afl20 = {
spdxId = "AFL-2.0";
fullName = "Academic Free License v2.0";
};
afl21 = spdx {
afl21 = {
spdxId = "AFL-2.1";
fullName = "Academic Free License v2.1";
};
afl3 = spdx {
afl3 = {
spdxId = "AFL-3.0";
fullName = "Academic Free License v3.0";
};
agpl3Only = spdx {
agpl3Only = {
spdxId = "AGPL-3.0-only";
fullName = "GNU Affero General Public License v3.0 only";
};
agpl3Plus = spdx {
agpl3Plus = {
spdxId = "AGPL-3.0-or-later";
fullName = "GNU Affero General Public License v3.0 or later";
};
@@ -55,7 +67,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
apsl20 = spdx {
apsl20 = {
spdxId = "APSL-2.0";
fullName = "Apple Public Source License 2.0";
};
@@ -65,72 +77,72 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://www.freedesktop.org/wiki/Arphic_Public_License/";
};
artistic1 = spdx {
artistic1 = {
spdxId = "Artistic-1.0";
fullName = "Artistic License 1.0";
};
artistic2 = spdx {
artistic2 = {
spdxId = "Artistic-2.0";
fullName = "Artistic License 2.0";
};
asl20 = spdx {
asl20 = {
spdxId = "Apache-2.0";
fullName = "Apache License 2.0";
};
boost = spdx {
boost = {
spdxId = "BSL-1.0";
fullName = "Boost Software License 1.0";
};
beerware = spdx {
beerware = {
spdxId = "Beerware";
fullName = "Beerware License";
};
blueOak100 = spdx {
blueOak100 = {
spdxId = "BlueOak-1.0.0";
fullName = "Blue Oak Model License 1.0.0";
};
bsd0 = spdx {
bsd0 = {
spdxId = "0BSD";
fullName = "BSD Zero Clause License";
};
bsd1 = spdx {
bsd1 = {
spdxId = "BSD-1-Clause";
fullName = "BSD 1-Clause License";
};
bsd2 = spdx {
bsd2 = {
spdxId = "BSD-2-Clause";
fullName = ''BSD 2-clause "Simplified" License'';
};
bsd2Patent = spdx {
bsd2Patent = {
spdxId = "BSD-2-Clause-Patent";
fullName = "BSD-2-Clause Plus Patent License";
};
bsd3 = spdx {
bsd3 = {
spdxId = "BSD-3-Clause";
fullName = ''BSD 3-clause "New" or "Revised" License'';
};
bsdOriginal = spdx {
bsdOriginal = {
spdxId = "BSD-4-Clause";
fullName = ''BSD 4-clause "Original" or "Old" License'';
};
bsdOriginalUC = spdx {
bsdOriginalUC = {
spdxId = "BSD-4-Clause-UC";
fullName = "BSD 4-Clause University of California-Specific";
};
bsdProtection = spdx {
bsdProtection = {
spdxId = "BSD-Protection";
fullName = "BSD Protection License";
};
@@ -141,119 +153,119 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
clArtistic = spdx {
clArtistic = {
spdxId = "ClArtistic";
fullName = "Clarified Artistic License";
};
cc0 = spdx {
cc0 = {
spdxId = "CC0-1.0";
fullName = "Creative Commons Zero v1.0 Universal";
};
cc-by-nc-sa-20 = spdx {
cc-by-nc-sa-20 = {
spdxId = "CC-BY-NC-SA-2.0";
fullName = "Creative Commons Attribution Non Commercial Share Alike 2.0";
free = false;
};
cc-by-nc-sa-25 = spdx {
cc-by-nc-sa-25 = {
spdxId = "CC-BY-NC-SA-2.5";
fullName = "Creative Commons Attribution Non Commercial Share Alike 2.5";
free = false;
};
cc-by-nc-sa-30 = spdx {
cc-by-nc-sa-30 = {
spdxId = "CC-BY-NC-SA-3.0";
fullName = "Creative Commons Attribution Non Commercial Share Alike 3.0";
free = false;
};
cc-by-nc-sa-40 = spdx {
cc-by-nc-sa-40 = {
spdxId = "CC-BY-NC-SA-4.0";
fullName = "Creative Commons Attribution Non Commercial Share Alike 4.0";
free = false;
};
cc-by-nc-30 = spdx {
cc-by-nc-30 = {
spdxId = "CC-BY-NC-3.0";
fullName = "Creative Commons Attribution Non Commercial 3.0 Unported";
free = false;
};
cc-by-nc-40 = spdx {
cc-by-nc-40 = {
spdxId = "CC-BY-NC-4.0";
fullName = "Creative Commons Attribution Non Commercial 4.0 International";
free = false;
};
cc-by-nd-30 = spdx {
cc-by-nd-30 = {
spdxId = "CC-BY-ND-3.0";
fullName = "Creative Commons Attribution-No Derivative Works v3.00";
free = false;
};
cc-by-sa-25 = spdx {
cc-by-sa-25 = {
spdxId = "CC-BY-SA-2.5";
fullName = "Creative Commons Attribution Share Alike 2.5";
};
cc-by-30 = spdx {
cc-by-30 = {
spdxId = "CC-BY-3.0";
fullName = "Creative Commons Attribution 3.0";
};
cc-by-sa-30 = spdx {
cc-by-sa-30 = {
spdxId = "CC-BY-SA-3.0";
fullName = "Creative Commons Attribution Share Alike 3.0";
};
cc-by-40 = spdx {
cc-by-40 = {
spdxId = "CC-BY-4.0";
fullName = "Creative Commons Attribution 4.0";
};
cc-by-sa-40 = spdx {
cc-by-sa-40 = {
spdxId = "CC-BY-SA-4.0";
fullName = "Creative Commons Attribution Share Alike 4.0";
};
cddl = spdx {
cddl = {
spdxId = "CDDL-1.0";
fullName = "Common Development and Distribution License 1.0";
};
cecill20 = spdx {
cecill20 = {
spdxId = "CECILL-2.0";
fullName = "CeCILL Free Software License Agreement v2.0";
};
cecill-b = spdx {
cecill-b = {
spdxId = "CECILL-B";
fullName = "CeCILL-B Free Software License Agreement";
};
cecill-c = spdx {
cecill-c = {
spdxId = "CECILL-C";
fullName = "CeCILL-C Free Software License Agreement";
};
cpal10 = spdx {
cpal10 = {
spdxId = "CPAL-1.0";
fullName = "Common Public Attribution License 1.0";
};
cpl10 = spdx {
cpl10 = {
spdxId = "CPL-1.0";
fullName = "Common Public License 1.0";
};
curl = spdx {
curl = {
spdxId = "curl";
fullName = "curl License";
};
doc = spdx {
doc = {
spdxId = "DOC";
fullName = "DOC License";
};
@@ -264,12 +276,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
efl10 = spdx {
efl10 = {
spdxId = "EFL-1.0";
fullName = "Eiffel Forum License v1.0";
};
efl20 = spdx {
efl20 = {
spdxId = "EFL-2.0";
fullName = "Eiffel Forum License v2.0";
};
@@ -280,12 +292,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
epl10 = spdx {
epl10 = {
spdxId = "EPL-1.0";
fullName = "Eclipse Public License 1.0";
};
epl20 = spdx {
epl20 = {
spdxId = "EPL-2.0";
fullName = "Eclipse Public License 2.0";
};
@@ -296,42 +308,42 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
eupl11 = spdx {
eupl11 = {
spdxId = "EUPL-1.1";
fullName = "European Union Public License 1.1";
};
eupl12 = spdx {
eupl12 = {
spdxId = "EUPL-1.2";
fullName = "European Union Public License 1.2";
};
fdl11Only = spdx {
fdl11Only = {
spdxId = "GFDL-1.1-only";
fullName = "GNU Free Documentation License v1.1 only";
};
fdl11Plus = spdx {
fdl11Plus = {
spdxId = "GFDL-1.1-or-later";
fullName = "GNU Free Documentation License v1.1 or later";
};
fdl12Only = spdx {
fdl12Only = {
spdxId = "GFDL-1.2-only";
fullName = "GNU Free Documentation License v1.2 only";
};
fdl12Plus = spdx {
fdl12Plus = {
spdxId = "GFDL-1.2-or-later";
fullName = "GNU Free Documentation License v1.2 or later";
};
fdl13Only = spdx {
fdl13Only = {
spdxId = "GFDL-1.3-only";
fullName = "GNU Free Documentation License v1.3 only";
};
fdl13Plus = spdx {
fdl13Plus = {
spdxId = "GFDL-1.3-or-later";
fullName = "GNU Free Documentation License v1.3 or later";
};
@@ -346,7 +358,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
fullName = "Unspecified free software license";
};
ftl = spdx {
ftl = {
spdxId = "FTL";
fullName = "Freetype Project License";
};
@@ -362,22 +374,22 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
gpl1Only = spdx {
gpl1Only = {
spdxId = "GPL-1.0-only";
fullName = "GNU General Public License v1.0 only";
};
gpl1Plus = spdx {
gpl1Plus = {
spdxId = "GPL-1.0-or-later";
fullName = "GNU General Public License v1.0 or later";
};
gpl2Only = spdx {
gpl2Only = {
spdxId = "GPL-2.0-only";
fullName = "GNU General Public License v2.0 only";
};
gpl2Classpath = spdx {
gpl2Classpath = {
spdxId = "GPL-2.0-with-classpath-exception";
fullName = "GNU General Public License v2.0 only (with Classpath exception)";
};
@@ -392,17 +404,17 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://www.mysql.com/about/legal/licensing/foss-exception";
};
gpl2Plus = spdx {
gpl2Plus = {
spdxId = "GPL-2.0-or-later";
fullName = "GNU General Public License v2.0 or later";
};
gpl3Only = spdx {
gpl3Only = {
spdxId = "GPL-3.0-only";
fullName = "GNU General Public License v3.0 only";
};
gpl3Plus = spdx {
gpl3Plus = {
spdxId = "GPL-3.0-or-later";
fullName = "GNU General Public License v3.0 or later";
};
@@ -412,12 +424,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://fedoraproject.org/wiki/Licensing/GPL_Classpath_Exception";
};
hpnd = spdx {
hpnd = {
spdxId = "HPND";
fullName = "Historic Permission Notice and Disclaimer";
};
hpndSellVariant = spdx {
hpndSellVariant = {
fullName = "Historical Permission Notice and Disclaimer - sell variant";
spdxId = "HPND-sell-variant";
};
@@ -428,12 +440,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://old.calculate-linux.org/packages/licenses/iASL";
};
ijg = spdx {
ijg = {
spdxId = "IJG";
fullName = "Independent JPEG Group License";
};
imagemagick = spdx {
imagemagick = {
fullName = "ImageMagick License";
spdxId = "imagemagick";
};
@@ -450,17 +462,17 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
ipa = spdx {
ipa = {
spdxId = "IPA";
fullName = "IPA Font License";
};
ipl10 = spdx {
ipl10 = {
spdxId = "IPL-1.0";
fullName = "IBM Public License v1.0";
};
isc = spdx {
isc = {
spdxId = "ISC";
fullName = "ISC License";
};
@@ -478,52 +490,52 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
lgpl2Only = spdx {
lgpl2Only = {
spdxId = "LGPL-2.0-only";
fullName = "GNU Library General Public License v2 only";
};
lgpl2Plus = spdx {
lgpl2Plus = {
spdxId = "LGPL-2.0-or-later";
fullName = "GNU Library General Public License v2 or later";
};
lgpl21Only = spdx {
lgpl21Only = {
spdxId = "LGPL-2.1-only";
fullName = "GNU Lesser General Public License v2.1 only";
};
lgpl21Plus = spdx {
lgpl21Plus = {
spdxId = "LGPL-2.1-or-later";
fullName = "GNU Lesser General Public License v2.1 or later";
};
lgpl3Only = spdx {
lgpl3Only = {
spdxId = "LGPL-3.0-only";
fullName = "GNU Lesser General Public License v3.0 only";
};
lgpl3Plus = spdx {
lgpl3Plus = {
spdxId = "LGPL-3.0-or-later";
fullName = "GNU Lesser General Public License v3.0 or later";
};
lgpllr = spdx {
lgpllr = {
spdxId = "LGPLLR";
fullName = "Lesser General Public License For Linguistic Resources";
};
libpng = spdx {
libpng = {
spdxId = "Libpng";
fullName = "libpng License";
};
libpng2 = spdx {
libpng2 = {
spdxId = "libpng-2.0"; # Used since libpng 1.6.36.
fullName = "PNG Reference Library version 2";
};
libtiff = spdx {
libtiff = {
spdxId = "libtiff";
fullName = "libtiff License";
};
@@ -533,22 +545,22 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://opensource.franz.com/preamble.html";
};
llvm-exception = spdx {
llvm-exception = {
spdxId = "LLVM-exception";
fullName = "LLVM Exception"; # LLVM exceptions to the Apache 2.0 License
};
lppl12 = spdx {
lppl12 = {
spdxId = "LPPL-1.2";
fullName = "LaTeX Project Public License v1.2";
};
lppl13c = spdx {
lppl13c = {
spdxId = "LPPL-1.3c";
fullName = "LaTeX Project Public License v1.3c";
};
lpl-102 = spdx {
lpl-102 = {
spdxId = "LPL-1.02";
fullName = "Lucent Public License v1.02";
};
@@ -560,43 +572,43 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
# spdx.org does not (yet) differentiate between the X11 and Expat versions
# for details see https://en.wikipedia.org/wiki/MIT_License#Various_versions
mit = spdx {
mit = {
spdxId = "MIT";
fullName = "MIT License";
};
mpl10 = spdx {
mpl10 = {
spdxId = "MPL-1.0";
fullName = "Mozilla Public License 1.0";
};
mpl11 = spdx {
mpl11 = {
spdxId = "MPL-1.1";
fullName = "Mozilla Public License 1.1";
};
mpl20 = spdx {
mpl20 = {
spdxId = "MPL-2.0";
fullName = "Mozilla Public License 2.0";
};
mspl = spdx {
mspl = {
spdxId = "MS-PL";
fullName = "Microsoft Public License";
};
nasa13 = spdx {
nasa13 = {
spdxId = "NASA-1.3";
fullName = "NASA Open Source Agreement 1.3";
free = false;
};
ncsa = spdx {
ncsa = {
spdxId = "NCSA";
fullName = "University of Illinois/NCSA Open Source License";
};
nposl3 = spdx {
nposl3 = {
spdxId = "NPOSL-3.0";
fullName = "Non-Profit Open Software License 3.0";
};
@@ -613,53 +625,53 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
odbl = spdx {
odbl = {
spdxId = "ODbL-1.0";
fullName = "Open Data Commons Open Database License v1.0";
};
ofl = spdx {
ofl = {
spdxId = "OFL-1.1";
fullName = "SIL Open Font License 1.1";
};
openldap = spdx {
openldap = {
spdxId = "OLDAP-2.8";
fullName = "Open LDAP Public License v2.8";
};
openssl = spdx {
openssl = {
spdxId = "OpenSSL";
fullName = "OpenSSL License";
};
osl2 = spdx {
osl2 = {
spdxId = "OSL-2.0";
fullName = "Open Software License 2.0";
};
osl21 = spdx {
osl21 = {
spdxId = "OSL-2.1";
fullName = "Open Software License 2.1";
};
osl3 = spdx {
osl3 = {
spdxId = "OSL-3.0";
fullName = "Open Software License 3.0";
};
parity70 = spdx {
parity70 = {
spdxId = "Parity-7.0.0";
fullName = "Parity Public License 7.0.0";
url = "https://paritylicense.com/versions/7.0.0.html";
};
php301 = spdx {
php301 = {
spdxId = "PHP-3.01";
fullName = "PHP License v3.01";
};
postgresql = spdx {
postgresql = {
spdxId = "PostgreSQL";
fullName = "PostgreSQL License";
};
@@ -670,7 +682,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
psfl = spdx {
psfl = {
spdxId = "Python-2.0";
fullName = "Python Software Foundation License version 2";
url = "https://docs.python.org/license.html";
@@ -691,12 +703,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://prosperitylicense.com/versions/3.0.0.html";
};
qhull = spdx {
qhull = {
spdxId = "Qhull";
fullName = "Qhull License";
};
qpl = spdx {
qpl = {
spdxId = "QPL-1.0";
fullName = "Q Public License 1.0";
};
@@ -706,22 +718,22 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://qwt.sourceforge.io/qwtlicense.html";
};
ruby = spdx {
ruby = {
spdxId = "Ruby";
fullName = "Ruby License";
};
sendmail = spdx {
sendmail = {
spdxId = "Sendmail";
fullName = "Sendmail License";
};
sgi-b-20 = spdx {
sgi-b-20 = {
spdxId = "SGI-B-2.0";
fullName = "SGI Free Software License B v2.0";
};
sleepycat = spdx {
sleepycat = {
spdxId = "Sleepycat";
fullName = "Sleepycat License";
};
@@ -737,6 +749,10 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
fullName = "Server Side Public License";
url = "https://www.mongodb.com/licensing/server-side-public-license";
free = false;
# NOTE Debatable.
# The license a slightly modified AGPL but still considered unfree by the
# OSI for what seem like political reasons
redistributable = true; # Definitely redistributable though, it's an AGPL derivative
};
stk = {
@@ -745,7 +761,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://github.com/thestk/stk/blob/master/LICENSE";
};
tcltk = spdx {
tcltk = {
spdxId = "TCL";
fullName = "TCL/TK License";
};
@@ -763,25 +779,27 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
unfreeRedistributable = {
fullName = "Unfree redistributable";
free = false;
redistributable = true;
};
unfreeRedistributableFirmware = {
fullName = "Unfree redistributable firmware";
redistributable = true;
# Note: we currently consider these "free" for inclusion in the
# channel and NixOS images.
};
unicode-dfs-2015 = spdx {
unicode-dfs-2015 = {
spdxId = "Unicode-DFS-2015";
fullName = "Unicode License Agreement - Data Files and Software (2015)";
};
unicode-dfs-2016 = spdx {
unicode-dfs-2016 = {
spdxId = "Unicode-DFS-2016";
fullName = "Unicode License Agreement - Data Files and Software (2016)";
};
unlicense = spdx {
unlicense = {
spdxId = "Unlicense";
fullName = "The Unlicense";
};
@@ -791,7 +809,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://oss.oracle.com/licenses/upl/";
};
vim = spdx {
vim = {
spdxId = "Vim";
fullName = "Vim License";
};
@@ -802,17 +820,17 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
free = false;
};
vsl10 = spdx {
vsl10 = {
spdxId = "VSL-1.0";
fullName = "Vovida Software License v1.0";
};
watcom = spdx {
watcom = {
spdxId = "Watcom-1.0";
fullName = "Sybase Open Watcom Public License 1.0";
};
w3c = spdx {
w3c = {
spdxId = "W3C";
fullName = "W3C Software Notice and License";
};
@@ -822,12 +840,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "https://fedoraproject.org/wiki/Licensing:Wadalab?rd=Licensing/Wadalab";
};
wtfpl = spdx {
wtfpl = {
spdxId = "WTFPL";
fullName = "Do What The F*ck You Want To Public License";
};
wxWindows = spdx {
wxWindows = {
spdxId = "wxWindows";
fullName = "wxWindows Library Licence, Version 3.1";
};
@@ -837,68 +855,68 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
url = "http://mcj.sourceforge.net/authors.html#xfig"; # https is broken
};
zlib = spdx {
zlib = {
spdxId = "Zlib";
fullName = "zlib License";
};
zpl20 = spdx {
zpl20 = {
spdxId = "ZPL-2.0";
fullName = "Zope Public License 2.0";
};
zpl21 = spdx {
zpl21 = {
spdxId = "ZPL-2.1";
fullName = "Zope Public License 2.1";
};
} // {
# TODO: remove legacy aliases
agpl3 = spdx {
agpl3 = {
spdxId = "AGPL-3.0";
fullName = "GNU Affero General Public License v3.0";
deprecated = true;
};
fdl11 = spdx {
fdl11 = {
spdxId = "GFDL-1.1";
fullName = "GNU Free Documentation License v1.1";
deprecated = true;
};
fdl12 = spdx {
fdl12 = {
spdxId = "GFDL-1.2";
fullName = "GNU Free Documentation License v1.2";
deprecated = true;
};
fdl13 = spdx {
fdl13 = {
spdxId = "GFDL-1.3";
fullName = "GNU Free Documentation License v1.3";
deprecated = true;
};
gpl1 = spdx {
gpl1 = {
spdxId = "GPL-1.0";
fullName = "GNU General Public License v1.0";
deprecated = true;
};
gpl2 = spdx {
gpl2 = {
spdxId = "GPL-2.0";
fullName = "GNU General Public License v2.0";
deprecated = true;
};
gpl3 = spdx {
gpl3 = {
spdxId = "GPL-3.0";
fullName = "GNU General Public License v3.0";
deprecated = true;
};
lgpl2 = spdx {
lgpl2 = {
spdxId = "LGPL-2.0";
fullName = "GNU Library General Public License v2";
deprecated = true;
};
lgpl21 = spdx {
lgpl21 = {
spdxId = "LGPL-2.1";
fullName = "GNU Lesser General Public License v2.1";
deprecated = true;
};
lgpl3 = spdx {
lgpl3 = {
spdxId = "LGPL-3.0";
fullName = "GNU Lesser General Public License v3.0";
deprecated = true;
+2 -1
View File
@@ -11,6 +11,7 @@ let
filter
foldl'
head
tail
isAttrs
isBool
isDerivation
@@ -144,7 +145,7 @@ rec {
if def.value != first.value then
throw "The option `${showOption loc}' has conflicting definition values:${showDefs [ first def ]}"
else
first) (head defs) defs).value;
first) (head defs) (tail defs)).value;
/* Extracts values of all "value" keys of the given list.
+12
View File
@@ -6722,6 +6722,12 @@
githubId = 35892750;
name = "Maxine Aubrey";
};
maxhille = {
email = "mh@lambdasoup.com";
github = "maxhille";
githubId = 693447;
name = "Max Hille";
};
maxhbr = {
email = "nixos@maxhbr.dev";
github = "maxhbr";
@@ -6977,6 +6983,12 @@
fingerprint = "3DEE 1C55 6E1C 3DC5 54F5 875A 003F 2096 411B 5F92";
}];
};
michaeladler = {
email = "therisen06@gmail.com";
github = "michaeladler";
githubId = 1575834;
name = "Michael Adler";
};
michaelpj = {
email = "michaelpj@gmail.com";
github = "michaelpj";
@@ -182,6 +182,13 @@
from 1.0.4 to 3.0.1
</para>
</listitem>
<listitem>
<para>
The <literal>erigon</literal> ethereum node has moved to a new
database format in <literal>2021-05-04</literal>, and requires
a full resync
</para>
</listitem>
<listitem>
<para>
<literal>services.geoip-updater</literal> was broken and has
@@ -57,6 +57,8 @@ pt-services.clipcat.enable).
- The `staticjinja` package has been upgraded from 1.0.4 to 3.0.1
- The `erigon` ethereum node has moved to a new database format in `2021-05-04`, and requires a full resync
- `services.geoip-updater` was broken and has been replaced by [services.geoipupdate](options.html#opt-services.geoipupdate.enable).
- PHP 7.3 is no longer supported due to upstream not supporting this version for the entire lifecycle of the 21.11 release.
+1 -1
View File
@@ -178,7 +178,7 @@ in
radvd = 139;
zookeeper = 140;
dnsmasq = 141;
uhub = 142;
#uhub = 142; # unused
yandexdisk = 143;
mxisd = 144; # was once collectd
consul = 145;
@@ -61,7 +61,7 @@ in {
port = mkOption {
default = 8080;
type = types.int;
type = types.port;
description = ''
Specifies port number on which the jenkins HTTP interface listens.
The default is 8080.
@@ -17,7 +17,7 @@ in {
enable = mkEnableOption "Haskell documentation server";
port = mkOption {
type = types.int;
type = types.port;
default = 8080;
description = ''
Port number Hoogle will be listening to.
@@ -78,7 +78,7 @@ in {
port = mkOption {
default = 8123;
type = types.int;
type = types.port;
description = "The port on which to listen.";
};
+83 -151
View File
@@ -3,178 +3,110 @@
with lib;
let
cfg = config.services.uhub;
uhubPkg = pkgs.uhub.override { tlsSupport = cfg.enableTLS; };
pluginConfig = ""
+ optionalString cfg.plugins.authSqlite.enable ''
plugin ${uhubPkg.mod_auth_sqlite}/mod_auth_sqlite.so "file=${cfg.plugins.authSqlite.file}"
''
+ optionalString cfg.plugins.logging.enable ''
plugin ${uhubPkg.mod_logging}/mod_logging.so ${if cfg.plugins.logging.syslog then "syslog=true" else "file=${cfg.plugins.logging.file}"}
''
+ optionalString cfg.plugins.welcome.enable ''
plugin ${uhubPkg.mod_welcome}/mod_welcome.so "motd=${pkgs.writeText "motd.txt" cfg.plugins.welcome.motd} rules=${pkgs.writeText "rules.txt" cfg.plugins.welcome.rules}"
''
+ optionalString cfg.plugins.history.enable ''
plugin ${uhubPkg.mod_chat_history}/mod_chat_history.so "history_max=${toString cfg.plugins.history.max} history_default=${toString cfg.plugins.history.default} history_connect=${toString cfg.plugins.history.connect}"
'';
uhubConfigFile = pkgs.writeText "uhub.conf" ''
file_acl=${pkgs.writeText "users.conf" cfg.aclConfig}
file_plugins=${pkgs.writeText "plugins.conf" pluginConfig}
server_bind_addr=${cfg.address}
server_port=${toString cfg.port}
${lib.optionalString cfg.enableTLS "tls_enable=yes"}
${cfg.hubConfig}
'';
in
{
settingsFormat = {
type = with lib.types; attrsOf (oneOf [ bool int str ]);
generate = name: attrs:
pkgs.writeText name (lib.strings.concatStringsSep "\n"
(lib.attrsets.mapAttrsToList
(key: value: "${key}=${builtins.toJSON value}") attrs));
};
in {
options = {
services.uhub = {
services.uhub = mkOption {
default = { };
description = "Uhub ADC hub instances";
type = types.attrsOf (types.submodule {
options = {
enable = mkOption {
type = types.bool;
default = false;
description = "Whether to enable the uhub ADC hub.";
};
enable = mkEnableOption "hub instance" // { default = true; };
port = mkOption {
type = types.int;
default = 1511;
description = "TCP port to bind the hub to.";
};
address = mkOption {
type = types.str;
default = "any";
description = "Address to bind the hub to.";
};
enableTLS = mkOption {
type = types.bool;
default = false;
description = "Whether to enable TLS support.";
};
hubConfig = mkOption {
type = types.lines;
default = "";
description = "Contents of uhub configuration file.";
};
aclConfig = mkOption {
type = types.lines;
default = "";
description = "Contents of user ACL configuration file.";
};
plugins = {
authSqlite = {
enable = mkOption {
enableTLS = mkOption {
type = types.bool;
default = false;
description = "Whether to enable the Sqlite authentication database plugin";
description = "Whether to enable TLS support.";
};
file = mkOption {
type = types.path;
example = "/var/db/uhub-users";
description = "Path to user database. Use the uhub-passwd utility to create the database and add/remove users.";
};
};
logging = {
enable = mkOption {
type = types.bool;
default = false;
description = "Whether to enable the logging plugin.";
};
file = mkOption {
type = types.str;
default = "";
description = "Path of log file.";
};
syslog = mkOption {
type = types.bool;
default = false;
description = "If true then the system log is used instead of writing to file.";
};
};
welcome = {
enable = mkOption {
type = types.bool;
default = false;
description = "Whether to enable the welcome plugin.";
};
motd = mkOption {
default = "";
type = types.lines;
settings = mkOption {
inherit (settingsFormat) type;
description = ''
Welcome message displayed to clients after connecting
and with the <literal>!motd</literal> command.
Configuration of uhub.
See https://www.uhub.org/doc/config.php for a list of options.
'';
default = { };
example = {
server_bind_addr = "any";
server_port = 1511;
hub_name = "My Public Hub";
hub_description = "Yet another ADC hub";
max_users = 150;
};
};
rules = mkOption {
default = "";
type = types.lines;
description = ''
Rules message, displayed to clients with the <literal>!rules</literal> command.
'';
};
};
history = {
enable = mkOption {
type = types.bool;
default = false;
description = "Whether to enable the history plugin.";
plugins = mkOption {
description = "Uhub plugin configuration.";
type = with types;
listOf (submodule {
options = {
plugin = mkOption {
type = path;
example = literalExample
"$${pkgs.uhub}/plugins/mod_auth_sqlite.so";
description = "Path to plugin file.";
};
settings = mkOption {
description = "Settings specific to this plugin.";
type = with types; attrsOf str;
example = { file = "/etc/uhub/users.db"; };
};
};
});
default = [ ];
};
max = mkOption {
type = types.int;
default = 200;
description = "The maximum number of messages to keep in history";
};
default = mkOption {
type = types.int;
default = 10;
description = "When !history is provided without arguments, then this default number of messages are returned.";
};
connect = mkOption {
type = types.int;
default = 5;
description = "The number of chat history messages to send when users connect (0 = do not send any history).";
};
};
};
};
});
};
};
config = mkIf cfg.enable {
config = let
hubs = lib.attrsets.filterAttrs (_: cfg: cfg.enable) config.services.uhub;
in {
users = {
users.uhub.uid = config.ids.uids.uhub;
groups.uhub.gid = config.ids.gids.uhub;
};
environment.etc = lib.attrsets.mapAttrs' (name: cfg:
let
settings' = cfg.settings // {
tls_enable = cfg.enableTLS;
file_plugins = pkgs.writeText "uhub-plugins.conf"
(lib.strings.concatStringsSep "\n" (map ({ plugin, settings }:
"plugin ${plugin} ${
toString
(lib.attrsets.mapAttrsToList (key: value: ''"${key}=${value}"'')
settings)
}") cfg.plugins));
};
in {
name = "uhub/${name}.conf";
value.source = settingsFormat.generate "uhub-${name}.conf" settings';
}) hubs;
systemd.services.uhub = {
description = "high performance peer-to-peer hub for the ADC network";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "notify";
ExecStart = "${uhubPkg}/bin/uhub -c ${uhubConfigFile} -u uhub -g uhub -L";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
systemd.services = lib.attrsets.mapAttrs' (name: cfg: {
name = "uhub-${name}";
value = let pkg = pkgs.uhub.override { tlsSupport = cfg.enableTLS; };
in {
description = "high performance peer-to-peer hub for the ADC network";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
reloadIfChanged = true;
serviceConfig = {
Type = "notify";
ExecStart = "${pkg}/bin/uhub -c /etc/uhub/${name}.conf -L";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
DynamicUser = true;
};
};
};
}) hubs;
};
}
+2 -2
View File
@@ -32,9 +32,9 @@ let
description = "Bind address for ${name} endpoint.";
};
port = mkOption {
type = types.int;
type = types.port;
default = port;
description = "Bind port for ${name} endoint.";
description = "Bind port for ${name} endpoint.";
};
};
+1 -1
View File
@@ -41,7 +41,7 @@ in {
};
port = mkOption {
type = types.int;
type = types.port;
default = 9000;
description = "TCP port to listen on for http connections.";
};
@@ -520,11 +520,7 @@ in
XAuthLocation ${pkgs.xorg.xauth}/bin/xauth
''}
${if cfg.forwardX11 then ''
X11Forwarding yes
'' else ''
X11Forwarding no
''}
X11Forwarding ${if cfg.forwardX11 then "yes" else "no"}
${optionalString cfg.allowSFTP ''
Subsystem sftp ${cfg.sftpServerExecutable} ${concatStringsSep " " cfg.sftpFlags}
@@ -21,7 +21,7 @@ in
};
port = mkOption {
type = types.int;
type = types.port;
default = 8999;
description = ''
TCP port to bind to.
@@ -42,11 +42,6 @@ in {
description = ''
The interfaces <command>wpa_supplicant</command> will use. If empty, it will
automatically use all wireless interfaces.
<warning><para>
The automatic discovery of interfaces does not work reliably on boot:
it may fail and leave the system without network. When possible, specify
a known interface name.
</para></warning>
'';
};
@@ -230,14 +225,6 @@ in {
message = ''options networking.wireless."${name}".{psk,pskRaw,auth} are mutually exclusive'';
});
warnings =
optional (cfg.interfaces == [] && config.systemd.services.wpa_supplicant.wantedBy != [])
''
No network interfaces for wpa_supplicant have been configured: the service
may randomly fail to start at boot. You should specify at least one using the option
networking.wireless.interfaces.
'';
environment.systemPackages = [ package ];
services.dbus.packages = [ package ];
@@ -258,31 +245,45 @@ in {
wantedBy = [ "multi-user.target" ];
stopIfChanged = false;
path = [ package ];
path = [ package pkgs.udev ];
script = let
configStr = if cfg.allowAuxiliaryImperativeNetworks
then "-c /etc/wpa_supplicant.conf -I ${configFile}"
else "-c ${configFile}";
in ''
if [ -f /etc/wpa_supplicant.conf -a "/etc/wpa_supplicant.conf" != "${configFile}" ]
then echo >&2 "<3>/etc/wpa_supplicant.conf present but ignored. Generated ${configFile} is used instead."
if [ -f /etc/wpa_supplicant.conf -a "/etc/wpa_supplicant.conf" != "${configFile}" ]; then
echo >&2 "<3>/etc/wpa_supplicant.conf present but ignored. Generated ${configFile} is used instead."
fi
iface_args="-s -u -D${cfg.driver} ${configStr}"
${if ifaces == [] then ''
for i in $(cd /sys/class/net && echo *); do
DEVTYPE=
UEVENT_PATH=/sys/class/net/$i/uevent
if [ -e "$UEVENT_PATH" ]; then
source "$UEVENT_PATH"
if [ "$DEVTYPE" = "wlan" -o -e /sys/class/net/$i/wireless ]; then
args+="''${args:+ -N} -i$i $iface_args"
fi
fi
# detect interfaces automatically
# check if there are no wireless interface
if ! find -H /sys/class/net/* -name wireless | grep -q .; then
# if so, wait until one appears
echo "Waiting for wireless interfaces"
grep -q '^ACTION=add' < <(stdbuf -oL -- udevadm monitor -s net/wlan -pu)
# Note: the above line has been carefully written:
# 1. The process substitution avoids udevadm hanging (after grep has quit)
# until it tries to write to the pipe again. Not even pipefail works here.
# 2. stdbuf is needed because udevadm output is buffered by default and grep
# may hang until more udev events enter the pipe.
fi
# add any interface found to the daemon arguments
for name in $(find -H /sys/class/net/* -name wireless | cut -d/ -f 5); do
echo "Adding interface $name"
args+="''${args:+ -N} -i$name $iface_args"
done
'' else ''
# add known interfaces to the daemon arguments
args="${concatMapStringsSep " -N " (i: "-i${i} $iface_args") ifaces}"
''}
# finally start daemon
exec wpa_supplicant $args
'';
};
@@ -32,7 +32,7 @@ in with lib; {
};
port = mkOption {
type = types.int;
type = types.port;
default = 43110;
example = 43110;
description = "Optional zeronet web UI port.";
@@ -41,7 +41,7 @@ in with lib; {
fileserverPort = mkOption {
# Not optional: when absent zeronet tries to write one to the
# read-only config file and crashes
type = types.int;
type = types.port;
default = 12261;
example = 12261;
description = "Zeronet fileserver port.";
+1
View File
@@ -94,6 +94,7 @@ in
cri-o = handleTestOn ["x86_64-linux"] ./cri-o.nix {};
custom-ca = handleTest ./custom-ca.nix {};
croc = handleTest ./croc.nix {};
cryptpad = handleTest ./cryptpad.nix {};
deluge = handleTest ./deluge.nix {};
dendrite = handleTest ./dendrite.nix {};
dhparams = handleTest ./dhparams.nix {};
+18
View File
@@ -0,0 +1,18 @@
import ./make-test-python.nix ({ lib, ... }:
with lib;
{
name = "cryptpad";
meta.maintainers = with maintainers; [ davhau ];
nodes.machine =
{ pkgs, ... }:
{ services.cryptpad.enable = true; };
testScript = ''
machine.wait_for_unit("cryptpad.service")
machine.wait_for_open_port("3000")
machine.succeed("curl -L --fail http://localhost:3000/sheet")
'';
})
@@ -15,11 +15,11 @@
stdenv.mkDerivation rec {
pname = "svkbd";
version = "0.3";
version = "0.4";
src = fetchurl {
url = "https://dl.suckless.org/tools/svkbd-${version}.tar.gz";
sha256 = "108khx665d7dlzs04iy4g1nw3fyqpy6kd0afrwiapaibgv4xhfsk";
sha256 = "sha256-j9RW5/4cb8l3FK9jpFf206l1rQhCR5H/WMiu7I6rzV8=";
};
inherit patches;
@@ -0,0 +1,34 @@
{ stdenv
, lib
, fetchFromGitHub
, meson
, ninja
, pkg-config
, ffmpeg
, libcdio
, libcdio-paranoia
, libmusicbrainz5
, curl
}:
stdenv.mkDerivation rec {
pname = "cyanrip";
version = "0.7.0";
src = fetchFromGitHub {
owner = "cyanreg";
repo = pname;
rev = "v${version}";
sha256 = "0lgb92sfpf4w3nj5vlj6j7931mj2q3cmcx1app9snf853jk9ahmw";
};
nativeBuildInputs = [ meson ninja pkg-config ];
buildInputs = [ ffmpeg libcdio libcdio-paranoia libmusicbrainz5 curl ];
meta = with lib; {
homepage = "https://github.com/cyanreg/cyanrip";
description = "Bule-ish CD ripper";
license = licenses.lgpl3Plus;
platforms = platforms.all;
maintainers = [ maintainers.zane ];
};
}
+34
View File
@@ -0,0 +1,34 @@
{ stdenv, lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "erigon";
version = "2021.08.01";
src = fetchFromGitHub {
owner = "ledgerwatch";
repo = pname;
rev = "v${version}";
sha256 = "sha256-fjMkCCeQa/IHB4yXlL7Qi8J9wtZm90l3xIA72LeoW8M=";
};
vendorSha256 = "1vsgd19an592dblm9afasmh8cd0x2frw5pvnxkxd2fikhy2mibbs";
runVend = true;
# Build errors in mdbx when format hardening is enabled:
# cc1: error: '-Wformat-security' ignored without '-Wformat' [-Werror=format-security]
hardeningDisable = [ "format" ];
subPackages = [
"cmd/erigon"
"cmd/evm"
"cmd/rpcdaemon"
"cmd/rlpdump"
];
meta = with lib; {
homepage = "https://github.com/ledgerwatch/erigon/";
description = "Ethereum node implementation focused on scalability and modularity";
license = with licenses; [ lgpl3Plus gpl3Plus ];
maintainers = with maintainers; [ d-xo ];
};
}
@@ -1,30 +0,0 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "turbo-geth";
version = "2021.05.02";
src = fetchFromGitHub {
owner = "ledgerwatch";
repo = pname;
rev = "v${version}";
sha256 = "sha256-7sTRAAlKZOdwi/LRbIEDKWpBe1ol8pZfEf2KIC4s0xk=";
};
vendorSha256 = "1d0ahdb2b5v8nxq3kdxw151phnyv6habb8kr8qjaq3kyhcnyk6ng";
runVend = true;
subPackages = [
"cmd/tg"
"cmd/evm"
"cmd/rpcdaemon"
"cmd/rlpdump"
];
meta = with lib; {
homepage = "https://github.com/ledgerwatch/turbo-geth/";
description = "Ethereum node and geth fork focused on scalability and modularity";
license = with licenses; [ lgpl3Plus gpl3Plus ];
maintainers = with maintainers; [ d-xo ];
};
}
@@ -20,6 +20,7 @@ rustPlatform.buildRustPackage rec {
description = "A post-modern modal text editor";
homepage = "https://helix-editor.com";
license = licenses.mpl20;
mainProgram = "hx";
maintainers = with maintainers; [ yusdacra ];
};
}
@@ -3,13 +3,14 @@
, lib
, fetchFromGitHub
, fetchgit
, fetchurl
, makeWrapper
, pkg-config
, python2
, expat
, openssl
, SDL2
, fontconfig
, freetype
, ninja
, gn
, llvmPackages
@@ -21,16 +22,16 @@
}:
rustPlatform.buildRustPackage rec {
pname = "neovide";
version = "unstable-2021-06-21";
version = "unstable-2021-08-08";
src = fetchFromGitHub {
owner = "Kethku";
repo = "neovide";
rev = "4159c47ff4f30073b92b9d63fc6ab70e07b74b6d";
sha256 = "sha256-XwirJGXMGxc/NkpSeHBUc16ppvJ+H4ECnrOVu030Qfg=";
rev = "725f12cafd4a26babd0d6bbcbca9a99c181991ac";
sha256 = "sha256-ThMobWKe3wHhR15TmmKrI6Gp1wvGVfJ52MzibK0ubkc=";
};
cargoSha256 = "sha256-WCk9kt81DtBwpEEdKH9gKQSVxAvH+vkyP2y24tU+vzY=";
cargoSha256 = "sha256-5lOGncnyA8DwetY5bU6k2KXNClFgp+xIBEeA0/iwGF0=";
SKIA_SOURCE_DIR =
let
@@ -38,8 +39,8 @@ rustPlatform.buildRustPackage rec {
owner = "rust-skia";
repo = "skia";
# see rust-skia:skia-bindings/Cargo.toml#package.metadata skia
rev = "m90-0.38.3";
sha256 = "sha256-l8c4vfO1PELAT8bDyr/yQGZetZsaufAlJ6bBOXz7E1w=";
rev = "m91-0.39.4";
sha256 = "sha256-ovlR1vEZaQqawwth/UYVUSjFu+kTsywRpRClBaE1CEA=";
};
# The externals for skia are taken from skia/DEPS
externals = lib.mapAttrs (n: v: fetchgit v) (lib.importJSON ./skia-externals.json);
@@ -79,10 +80,20 @@ rustPlatform.buildRustPackage rec {
doCheck = false;
buildInputs = [
expat
openssl
SDL2
fontconfig
(fontconfig.overrideAttrs (old: {
propagatedBuildInputs = [
# skia is not compatible with freetype 2.11.0
(freetype.overrideAttrs (old: rec {
version = "2.10.4";
src = fetchurl {
url = "mirror://savannah/${old.pname}/${old.pname}-${version}.tar.xz";
sha256 = "112pyy215chg7f7fmp2l9374chhhpihbh8wgpj5nj6avj3c59a46";
};
}))
];
}))
];
postFixup = ''
+1 -1
View File
@@ -4,7 +4,7 @@
stdenv.mkDerivation rec {
pname = "vimacs";
version = vimPackage.version;
version = lib.getVersion vimPackage;
vimPackage = if useMacvim then macvim else vim_configurable;
buildInputs = [ vimPackage vimPlugins.vimacs ];
+1 -1
View File
@@ -22,7 +22,7 @@ let
inherit pname version src sourceRoot;
passthru = {
inherit executableName tests updateScript;
inherit executableName longName tests updateScript;
fhs = fhs {};
fhsWithPackages = f: fhs { additionalPkgs = f; };
};
@@ -1,4 +1,4 @@
{ lib, runCommand, buildEnv, vscode, makeWrapper
{ lib, stdenv, runCommand, buildEnv, vscode, makeWrapper
, vscodeExtensions ? [] }:
/*
@@ -42,8 +42,7 @@
*/
let
inherit (vscode) executableName;
inherit (vscode) executableName longName;
wrappedPkgVersion = lib.getVersion vscode;
wrappedPkgName = lib.removeSuffix "-${wrappedPkgVersion}" vscode.name;
@@ -52,6 +51,9 @@ let
paths = vscodeExtensions;
};
extensionsFlag = lib.optionalString (vscodeExtensions != []) ''
--add-flags "--extensions-dir ${combinedExtensionsDrv}/share/vscode/extensions"
'';
in
# When no extensions are requested, we simply redirect to the original
@@ -62,7 +64,17 @@ runCommand "${wrappedPkgName}-with-extensions-${wrappedPkgVersion}" {
dontPatchELF = true;
dontStrip = true;
meta = vscode.meta;
} ''
} (if stdenv.isDarwin then ''
mkdir -p $out/bin/
mkdir -p "$out/Applications/${longName}.app/Contents/MacOS"
for path in PkgInfo Frameworks Resources _CodeSignature Info.plist; do
ln -s "${vscode}/Applications/${longName}.app/Contents/$path" "$out/Applications/${longName}.app/Contents/"
done
makeWrapper "${vscode}/bin/${executableName}" "$out/bin/${executableName}" ${extensionsFlag}
makeWrapper "${vscode}/Applications/${longName}.app/Contents/MacOS/Electron" "$out/Applications/${longName}.app/Contents/MacOS/Electron" ${extensionsFlag}
'' else ''
mkdir -p "$out/bin"
mkdir -p "$out/share/applications"
mkdir -p "$out/share/pixmaps"
@@ -70,7 +82,5 @@ runCommand "${wrappedPkgName}-with-extensions-${wrappedPkgVersion}" {
ln -sT "${vscode}/share/pixmaps/code.png" "$out/share/pixmaps/code.png"
ln -sT "${vscode}/share/applications/${executableName}.desktop" "$out/share/applications/${executableName}.desktop"
ln -sT "${vscode}/share/applications/${executableName}-url-handler.desktop" "$out/share/applications/${executableName}-url-handler.desktop"
makeWrapper "${vscode}/bin/${executableName}" "$out/bin/${executableName}" ${lib.optionalString (vscodeExtensions != []) ''
--add-flags "--extensions-dir ${combinedExtensionsDrv}/share/vscode/extensions"
''}
''
makeWrapper "${vscode}/bin/${executableName}" "$out/bin/${executableName}" ${extensionsFlag}
'')
@@ -16,13 +16,13 @@
stdenv.mkDerivation rec {
pname = "openimageio";
version = "2.2.12.0";
version = "2.2.17.0";
src = fetchFromGitHub {
owner = "OpenImageIO";
repo = "oiio";
rev = "Release-${version}";
sha256 = "16z8lnsqhljbfaarfwx9rc95p0a9wxf4p271j6kxdfknjb88p56i";
sha256 = "0jqpb1zci911wdm928addsljxx8zsh0gzbhv9vbw6man4wi93h6h";
};
outputs = [ "bin" "out" "dev" "doc" ];
@@ -0,0 +1,56 @@
{ lib
, buildPythonApplication
, fetchPypi
, requests
, mypy-extensions
, django_3
, django_extensions
, dateparser
, youtube-dl
, python-crontab
, croniter
, w3lib
, ipython
}:
let
django_3' = django_3.overridePythonAttrs (old: rec {
pname = "Django";
version = "3.1.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-Ms55Lum2oMu+w0ASPiKayfdl3/jCpK6SR6FLK6OjZac=";
};
});
in
buildPythonApplication rec {
pname = "archivebox";
version = "0.6.2";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-zHty7lTra6yab9d0q3EqsPG3F+lrnZL6PjQAbL1A2NY=";
};
propagatedBuildInputs = [
requests
mypy-extensions
django_3'
django_extensions
dateparser
youtube-dl
python-crontab
croniter
w3lib
ipython
];
meta = with lib; {
description = "Open source self-hosted web archiving";
homepage = "https://archivebox.io";
license = licenses.mit;
maintainers = with maintainers; [ siraben ];
platforms = platforms.unix;
};
}
@@ -100,13 +100,13 @@ in {
application = mkSweetHome3D rec {
pname = lib.toLower module + "-application";
version = "6.5.2";
version = "6.6";
module = "SweetHome3D";
description = "Design and visualize your future home";
license = lib.licenses.gpl2Plus;
src = fetchurl {
url = "mirror://sourceforge/sweethome3d/${module}-${version}-src.zip";
sha256 = "1j0xm2vmcxxjmf12k8rfnisq9hd7hqaiyxrfbrbjxis9iq3kycp3";
sha256 = "sha256-CnVXpmodmyoZdqmt7OgRyzuLeDhkPhrAS/CldFM8SQs=";
};
desktopName = "Sweet Home 3D";
icons = {
@@ -99,14 +99,14 @@ in {
};
furniture-editor = mkEditorProject rec {
version = "1.27";
version = "1.28";
module = "FurnitureLibraryEditor";
pname = module;
description = "Quickly create SH3F files and edit the properties of the 3D models it contain";
license = lib.licenses.gpl2;
src = fetchurl {
url = "mirror://sourceforge/sweethome3d/${module}-${version}-src.zip";
sha256 = "1zxbcn9awgax8lalzkc05f5yfwbgnrayc17fkyv5i19j4qb3r2a0";
sha256 = "sha256-r5xJlUctUdcknJfm8rbz+bdzFhqgHsHpHwxEC4mItws=";
};
desktopName = "Sweet Home 3D - Furniture Library Editor";
};
@@ -10,11 +10,11 @@ with lib;
stdenv.mkDerivation rec {
pname = "zathura";
version = "0.4.7";
version = "0.4.8";
src = fetchurl {
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
sha256 = "1rx1fk9s556fk59lmqgvhwrmv71ashh89bx9adjq46wq5gzdn4p0";
sha256 = "1nr0ym1mi2afk4ycdf1ppmkcv7i7hyzwn4p3r4m0j2qm3nvaiami";
};
outputs = [ "bin" "man" "dev" "out" ];
@@ -0,0 +1,115 @@
{ autoPatchelfHook, makeDesktopItem, lib, stdenv, wrapGAppsHook
, alsa-lib, at-spi2-atk, at-spi2-core, atk, cairo, cups, dbus, expat, fontconfig
, freetype, gdk-pixbuf, glib, gtk3, libcxx, libdrm, libnotify, libpulseaudio, libuuid
, libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence
, mesa, nspr, nss, pango, systemd, libappindicator-gtk3, libdbusmenu
, fetchurl, fetchFromGitHub, imagemagick, copyDesktopItems
}:
let
binaryName = "AetherP2P";
in
stdenv.mkDerivation rec {
pname = "aether";
version = "2.0.0-dev.15";
srcs = [
(fetchurl {
url = "https://static.getaether.net/Releases/Aether-${version}/2011262249.19338c93/linux/Aether-${version}%2B2011262249.19338c93.tar.gz";
sha256 = "1hi8w83zal3ciyzg2m62shkbyh6hj7gwsidg3dn88mhfy68himf7";
# % in the url / canonical filename causes an error
name = "aether-tarball.tar.gz";
})
(fetchFromGitHub {
owner = "aethereans";
repo = "aether-app";
rev = "53b6c8b2a9253cbf056ea3ebb077e0e08cbc5b1d";
sha256 = "1kgkzh7ih2q9dsckdkinh5dbzvr7gdykf8yz6h8pyhvzyjhk1v0r";
})
];
sourceRoot = "Aether-${version}+2011262249.19338c93";
# there is no logo in the tarball so we grab it from github and convert it in the build phase
buildPhase = ''
convert ../source/aether-core/aether/client/src/app/ext_dep/images/Linux-Windows-App-Icon.png -resize 512x512 aether.png
'';
dontWrapGApps = true;
buildInputs = [
alsa-lib
cups
libdrm
libuuid
libXdamage
libX11
libXScrnSaver
libXtst
libxcb
libxshmfence
mesa
nss
];
nativeBuildInputs = [
imagemagick
autoPatchelfHook
wrapGAppsHook
copyDesktopItems
];
desktopItems = [
(makeDesktopItem {
name = pname;
exec = binaryName;
icon = pname;
desktopName = "Aether";
genericName = meta.description;
categories = "Network;";
mimeType = "x-scheme-handler/aether";
})
];
installPhase =
let
libPath = lib.makeLibraryPath [
libcxx systemd libpulseaudio libdrm mesa
stdenv.cc.cc alsa-lib atk at-spi2-atk at-spi2-core cairo cups dbus expat fontconfig freetype
gdk-pixbuf glib gtk3 libnotify libX11 libXcomposite libuuid
libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender
libXtst nspr nss libxcb pango systemd libXScrnSaver
libappindicator-gtk3 libdbusmenu
];
in
''
mkdir -p $out/{bin,opt/${binaryName},share/icons/hicolor/512x512/apps}
mv * $out/opt/${binaryName}
chmod +x $out/opt/${binaryName}/${binaryName}
patchelf --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \
$out/opt/${binaryName}/${binaryName}
wrapProgram $out/opt/${binaryName}/${binaryName} \
"''${gappsWrapperArgs[@]}" \
--prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}" \
--prefix LD_LIBRARY_PATH : ${libPath}
ln -s $out/opt/${binaryName}/${binaryName} $out/bin/
ln -s $out/opt/${binaryName}/aether.png $out/share/icons/hicolor/512x512/apps/
runHook postInstall
'';
meta = with lib; {
description = "Peer-to-peer ephemeral public communities";
homepage = "https://getaether.net/";
downloadPage = "https://getaether.net/download/";
license = licenses.agpl3Only;
maintainers = with maintainers; [ maxhille ];
# other platforms could be supported by building from source
platforms = [ "x86_64-linux" ];
};
}
@@ -1,16 +1,16 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "terraform-docs";
version = "0.14.1";
version = "0.15.0";
src = fetchFromGitHub {
owner = "terraform-docs";
repo = pname;
rev = "v${version}";
sha256 = "sha256-Jm0ySxn4GFW4iAH3tOIvclcDGJMKzH7m7fhWnAf4+gs=";
sha256 = "sha256-PzGlEEhootf2SCOy7+11aST7NMTNhNMQWeZO40mrMYQ=";
};
vendorSha256 = "sha256-IzmAlthE6SVvGHj72wrY1/KLehOv8Ck9VaTv5jMpt48=";
vendorSha256 = "sha256-T/jgFPBUQMATX7DoWsDR/VFjka7Vxk7F4taE25cdnTk=";
subPackages = [ "." ];
+2 -1
View File
@@ -1,6 +1,6 @@
{ stdenv, lib, fetchFromGitHub, meson, gettext, glib, gjs, ninja, python3, gtk3
, webkitgtk, gsettings-desktop-schemas, wrapGAppsHook, desktop-file-utils
, gobject-introspection }:
, gobject-introspection, glib-networking }:
stdenv.mkDerivation rec {
pname = "foliate";
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
buildInputs = [
gettext
glib
glib-networking
gjs
gtk3
webkitgtk
@@ -1,11 +1,11 @@
{ lib, stdenv, fetchurl, cln, pkg-config, readline, gmp, python3 }:
stdenv.mkDerivation rec {
name = "ginac-1.8.0";
name = "ginac-1.8.1";
src = fetchurl {
url = "${meta.homepage}/${name}.tar.bz2";
sha256 = "0l9byzfxq3f9az5pcdldnl95ws8mpirkqky46f973mvxi5541d24";
sha256 = "sha256-8WldvWsYcGHvP7pQdkjJ1tukOPczsFjBb5J4y9z14as=";
};
propagatedBuildInputs = [ cln ];
@@ -2,20 +2,26 @@
buildGoModule rec {
pname = "glab";
version = "1.18.1";
version = "1.20.0";
src = fetchFromGitHub {
owner = "profclems";
repo = pname;
rev = "v${version}";
sha256 = "sha256-ahP5y5i0SMj2+mP4RYc7MLZGElX5eLgKwiVhBYGOX2g=";
sha256 = "sha256-MHNhl6lrBqHZ6M4fVOnSDxEcF6RqfWHWx5cvUhRXJKw=";
};
vendorSha256 = "sha256-ssVmqcJ/DxUqAkHm9tn4RwWuKzTHvxoqJquXPIRy4b8=";
vendorSha256 = "sha256-9+WBKc8PI0v6bnkC+78Ygv/eocQ3D7+xBb8lcv16QTE=";
runVend = true;
# Tests are trying to access /homeless-shelter
doCheck = false;
ldflags = [
"-X main.version=${version}"
];
preCheck = ''
# failed to read configuration: mkdir /homeless-shelter: permission denied
export HOME=$TMPDIR
'';
subPackages = [ "cmd/glab" ];
@@ -1,16 +1,23 @@
{ lib, stdenv, appimageTools, gsettings-desktop-schemas, gtk3, autoPatchelfHook, zlib, fetchurl }:
{ lib, stdenv, appimageTools, gsettings-desktop-schemas, gtk3, autoPatchelfHook, zlib, fetchurl, undmg }:
let
pname = "radicle-upstream";
version = "0.2.3";
version = "0.2.9";
name = "${pname}-${version}";
src = fetchurl {
url = "https://releases.radicle.xyz/radicle-upstream-${version}.AppImage";
sha256 = "sha256-SL6plXZ+o7JchY/t/1702FK57fVjxllHqB8ZOma/43c=";
srcs = {
x86_64-linux = fetchurl {
url = "https://releases.radicle.xyz/radicle-upstream-${version}.AppImage";
sha256 = "sha256-chju3ZEFFLOzE9FakUK2izm/5ejELdL/iWMtM3bRpWY=";
};
x86_64-darwin = fetchurl {
url = "https://releases.radicle.xyz/radicle-upstream-${version}.dmg";
sha256 = "sha256-OOqe4diRcJWHHOa6jBpljPoA3FQOKlghMhKGQ242GnM=";
};
};
src = srcs.${stdenv.hostPlatform.system};
contents = appimageTools.extractType2 { inherit name src; };
contents = appimageTools.extract { inherit name src; };
git-remote-rad = stdenv.mkDerivation rec {
pname = "git-remote-rad";
@@ -25,40 +32,56 @@ let
cp ${contents}/resources/git-remote-rad $out/bin/git-remote-rad
'';
};
in
# FIXME: a dependency of the `proxy` component of radicle-upstream (radicle-macros
# v0.1.0) uses unstable rust features, making a from source build impossible at
# this time. See this PR for discussion: https://github.com/NixOS/nixpkgs/pull/105674
appimageTools.wrapType2 {
inherit name src;
# FIXME: a dependency of the `proxy` component of radicle-upstream (radicle-macros
# v0.1.0) uses unstable rust features, making a from source build impossible at
# this time. See this PR for discussion: https://github.com/NixOS/nixpkgs/pull/105674
linux = appimageTools.wrapType2 {
inherit name src meta;
profile = ''
export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
'';
profile = ''
export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
'';
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
# this automatically adds the git-remote-rad binary to the users `PATH` so
# they don't need to mess around with shell profiles...
ln -s ${git-remote-rad}/bin/git-remote-rad $out/bin/git-remote-rad
# this automatically adds the git-remote-rad binary to the users `PATH` so
# they don't need to mess around with shell profiles...
ln -s ${git-remote-rad}/bin/git-remote-rad $out/bin/git-remote-rad
# desktop item
install -m 444 -D ${contents}/${pname}.desktop $out/share/applications/${pname}.desktop
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
# desktop item
install -m 444 -D ${contents}/${pname}.desktop $out/share/applications/${pname}.desktop
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
# icon
install -m 444 -D ${contents}/${pname}.png \
$out/share/icons/hicolor/512x512/apps/${pname}.png
'';
# icon
install -m 444 -D ${contents}/${pname}.png \
$out/share/icons/hicolor/512x512/apps/${pname}.png
'';
};
darwin = stdenv.mkDerivation {
inherit pname version src meta;
nativeBuildInputs = [ undmg ];
sourceRoot = ".";
installPhase = ''
mkdir -p $out/Applications
cp -r *.app $out/Applications
'';
};
meta = with lib; {
description = "A decentralized app for code collaboration";
homepage = "https://radicle.xyz/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ d-xo ];
platforms = [ "x86_64-linux" ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
};
}
in
if stdenv.isDarwin
then darwin
else linux
@@ -13,11 +13,11 @@ let
in
stdenv.mkDerivation rec {
pname = "gitkraken";
version = "7.7.1";
version = "7.7.2";
src = fetchzip {
url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz";
sha256 = "sha256-nFXj40PfHctymBcZoiJNzkvAsFnABD300/aUqNpUn2c=";
sha256 = "sha256-jL0XLw0V0ED+lDBn3sGaJmm96zQwXue333UuYGHjB64=";
};
dontBuild = true;
@@ -14,13 +14,13 @@
stdenv.mkDerivation rec {
pname = "ccextractor";
version = "0.91";
version = "0.92";
src = fetchFromGitHub {
owner = "CCExtractor";
repo = pname;
rev = "v${version}";
sha256 = "sha256-VqJQaYzH8psQJfnDariV4q7SkDiXRz9byR51C8DzVEs=";
sha256 = "sha256-cEC0SF69CDLKQyTPIOZYPgxNR29mJVnzOZraGvPQjdg=";
};
sourceRoot = "source/src";
+15 -7
View File
@@ -1,4 +1,6 @@
{ config, lib, stdenv
{ config
, lib
, stdenv
, mkDerivation
, fetchFromGitHub
, addOpenGLRunpath
@@ -41,7 +43,8 @@
let
inherit (lib) optional optionals;
in mkDerivation rec {
in
mkDerivation rec {
pname = "obs-studio";
version = "27.0.0";
@@ -61,7 +64,13 @@ in mkDerivation rec {
./Change-product_version-to-user_agent_product.patch
];
nativeBuildInputs = [ addOpenGLRunpath cmake pkg-config ];
nativeBuildInputs = [
addOpenGLRunpath
cmake
pkg-config
makeWrapper
]
++ optional scriptingSupport swig;
buildInputs = [
curl
@@ -81,10 +90,9 @@ in mkDerivation rec {
wayland
x264
libvlc
makeWrapper
mbedtls
]
++ optionals scriptingSupport [ luajit swig python3 ]
++ optionals scriptingSupport [ luajit python3 ]
++ optional alsaSupport alsa-lib
++ optional pulseaudioSupport libpulseaudio
++ optional pipewireSupport pipewire;
@@ -132,7 +140,7 @@ in mkDerivation rec {
'';
homepage = "https://obsproject.com";
maintainers = with maintainers; [ jb55 MP2E V ];
license = licenses.gpl2;
platforms = [ "x86_64-linux" "i686-linux" ];
license = licenses.gpl2Plus;
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
};
}
+1 -1
View File
@@ -134,7 +134,7 @@ let self = stdenv.mkDerivation rec {
PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev";
passthru = {
libdir = "${self}/lib/mutter-7";
libdir = "${self}/lib/mutter-8";
tests = {
libdirExists = runCommand "mutter-libdir-exists" {} ''
@@ -13,6 +13,8 @@
"lockkeys@vaina.lt" = "lock-keys";
"lockkeys@fawtytoo" = "lock-keys-2";
"system-monitor@paradoxxx.zero.gmail.com" = "system-monitor"; # manually packaged
"System_Monitor@bghome.gmail.com" = "system-monitor-2";
# ############################################################################
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "1yjqjri753w0fzmxcyz687nvd97sbc9rsqrxzpq720na47hwh3fr";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "0x1j8ngf1zj63wlnns9vlibafq48qcm72p4jpaxkmkb4qw0grwfy";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
NIX_CFLAGS_COMPILE = [
"-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0"
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "1950rg294izdwkaasi7yjrmadc9mzdd5paf0q63jjcq2m3rdbj5l";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, src, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, src, cmake, python3, libllvm, libcxxabi }:
let
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
inherit src;
sourceRoot = "source/compiler-rt";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "0ipd4jdxpczgr2w6lzrabymz6dhzj69ywmyybjjc1q397zgrvziy";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "1fcr3jn24yr8lh36nc0c4ikli4744i2q9m1ik67p1jymwwaixkgl";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "1n48p8gjarihkws0i2bay5w9bdwyxyxxbpwyng7ba58jb30dlyq5";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "0dqqf8f930l8gag4d9qjgn1n0pj0nbv2anviqqhdi1rkhas8z0hi";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi }:
let
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
inherit version;
src = fetch "compiler-rt" "0xwh79g3zggdabxgnd0bphry75asm1qz7mv3hcqihqwqr6aspgy2";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, version, src, cmake, python3, llvm, libcxxabi }:
{ lib, stdenv, llvm_meta, version, src, cmake, python3, libllvm, libcxxabi }:
let
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
inherit src;
sourceRoot = "source/compiler-rt";
nativeBuildInputs = [ cmake python3 llvm.dev ];
nativeBuildInputs = [ cmake python3 libllvm.dev ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
NIX_CFLAGS_COMPILE = [
@@ -5,7 +5,7 @@
libchipcard.version = "5.0.4";
libchipcard.sha256 = "0fj2h39ll4kiv28ch8qgzdbdbnzs8gl812qnm660bw89rynpjnnj";
libchipcard.releaseId = "158";
aqbanking.version = "6.2.10";
aqbanking.sha256 = "13dbpi58mw09gnsza11pxy5c8j99r11nkyg2j53y4lqk47rmyhvq";
aqbanking.releaseId = "368";
aqbanking.version = "6.3.0";
aqbanking.sha256 = "1k2mhdnk0jc0inq1hmp74m3y7azxrjm8r07x5k1pp4ic0yi5vs50";
aqbanking.releaseId = "372";
}
@@ -1,11 +1,11 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation {
stdenv.mkDerivation rec {
pname = "dyncall";
version = "1.2";
src = fetchurl {
url = "https://www.dyncall.org/r1.2/dyncall-1.2.tar.gz";
url = "https://www.dyncall.org/r${version}/dyncall-${version}.tar.gz";
# https://www.dyncall.org/r1.2/SHA256
sha256 = "sha256-6IFUwCQ0IVYHBPXHKUr73snpka+gYB1a3/UELqgYCNc=";
};
+29 -5
View File
@@ -1,4 +1,7 @@
{ lib, stdenv, fetchurl, cmake
{ lib
, stdenv
, fetchurl
, cmake
, glib
, nss
, nspr
@@ -52,18 +55,39 @@ let
cups
libxshmfence
];
in stdenv.mkDerivation rec {
platforms = {
"aarch64-linux" = {
platformStr = "linuxarm64";
projectArch = "arm64";
sha256 = "1j93qawh9h6k2ic70i10npppv5f9dch961lc1wxwsi68daq8r081";
};
"i686-linux" = {
platformStr = "linux32";
projectArch = "x86";
sha256 = "0ki4zr8ih06kirgbpxbinv4baw3qvacx208q6qy1cvpfh6ll4fwb";
};
"x86_64-linux" = {
platformStr = "linux64";
projectArch = "x86_64";
sha256 = "1ja711x9fdlf21qw1k9xn3lvjc5zsfgnjga1w1r8sysam73jk7xj";
};
};
platformInfo = builtins.getAttr stdenv.targetPlatform.system platforms;
in
stdenv.mkDerivation rec {
pname = "cef-binary";
version = "90.6.7";
gitRevision = "19ba721";
chromiumVersion = "90.0.4430.212";
src = fetchurl {
url = "https://cef-builds.spotifycdn.com/cef_binary_${version}+g${gitRevision}+chromium-${chromiumVersion}_linux64_minimal.tar.bz2";
sha256 = "1ja711x9fdlf21qw1k9xn3lvjc5zsfgnjga1w1r8sysam73jk7xj";
url = "https://cef-builds.spotifycdn.com/cef_binary_${version}+g${gitRevision}+chromium-${chromiumVersion}_${platformInfo.platformStr}_minimal.tar.bz2";
inherit (platformInfo) sha256;
};
nativeBuildInputs = [ cmake ];
cmakeFlags = "-DPROJECT_ARCH=${platformInfo.projectArch}";
makeFlags = [ "libcef_dll_wrapper" ];
dontStrip = true;
dontPatchELF = true;
@@ -83,6 +107,6 @@ in stdenv.mkDerivation rec {
homepage = "https://cef-builds.spotifycdn.com/index.html";
maintainers = with maintainers; [ puffnfresh ];
license = licenses.bsd3;
platforms = with platforms; linux;
platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ];
};
}
@@ -11,11 +11,11 @@
stdenv.mkDerivation rec {
pname = "libnbd";
version = "1.9.2";
version = "1.9.3";
src = fetchurl {
url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-development/${pname}-${version}.tar.gz";
hash = "sha256-UDLH5IMuKI6mAO/9VNmI8pCbxv94tCCQYRKZn2DBclg=";
hash = "sha256-qF9IFZGj+9Zuw00+9pbgAhBUk+eUIAxhYNJAMWxmWo0=";
};
nativeBuildInputs = [
@@ -0,0 +1,63 @@
{ stdenvNoCC
, lib
, fetchFromGitHub
, bash
, gnused
, gawk
, coreutils
}:
stdenvNoCC.mkDerivation {
pname = "optparse-bash-unstable";
version = "2021-06-13";
src = fetchFromGitHub {
owner = "nk412";
repo = "optparse";
rev = "d86ec17d15368e5b54eb2d47b001b0b61d68bbd0";
sha256 = "sha256-vs7Jo1+sV0tPse4Wu2xtzSX1IkahwLgO3e4Riz3uMmI=";
};
postPatch = ''
substituteInPlace optparse.bash \
--replace sed "${gnused}/bin/sed" \
--replace awk "${gawk}/bin/awk" \
--replace printf "${coreutils}/bin/printf"
'';
dontBuild = true;
doCheck = true;
checkInputs = [ bash ];
# `#!/usr/bin/env` isn't okay for OfBorg
# Need external bash to run
checkPhase = ''
runHook preCheck
bash ./sample_head.sh -v --file README.md
runHook postCheck
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
mv optparse.bash $out/bin/
mkdir -p $out/share/doc/optparse-bash
mv README.md sample_head.sh $out/share/doc/optparse-bash/
runHook postInstall
'';
# As example code,
# sample_head.sh shows how users can use opt-parse in their script,
# and its shebang (`/usr/bin/env bash`) should not be patched.
dontPatchShebangs = true;
meta = with lib; {
description = "A BASH wrapper for getopts, for simple command-line argument parsing";
homepage = "https://github.com/nk412/optparse";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ ShamrockLee ];
};
}
@@ -2,13 +2,17 @@
stdenv.mkDerivation rec {
pname = "portmidi";
version = "217";
version = "234";
src = fetchurl {
url = "mirror://sourceforge/portmedia/portmidi-src-${version}.zip";
sha256 = "03rfsk7z6rdahq2ihy5k13qjzgx757f75yqka88v3gc0pn9ais88";
url = "mirror://sourceforge/portmedia/portmedia-code-r${version}.zip";
sha256 = "1g7i8hgarihycadbgy2f7lifiy5cbc0mcrcazmwnmbbh1bqx6dyp";
};
prePatch = ''
cd portmidi/trunk
'';
cmakeFlags = let
#base = "${jdk}/jre/lib/${jdk.architecture}";
in [
@@ -58,7 +62,7 @@ stdenv.mkDerivation rec {
'';
postInstall = let ext = stdenv.hostPlatform.extensions.sharedLibrary; in ''
ln -s libportmidi.${ext} "$out/lib/libporttime.${ext}"
ln -s libportmidi${ext} "$out/lib/libporttime${ext}"
'';
nativeBuildInputs = [ unzip cmake ];
@@ -12,17 +12,17 @@ index 4919b78..758eccb 100644
if(UNIX)
diff --git a/pm_common/CMakeLists.txt b/pm_common/CMakeLists.txt
index e171047..aafa09c 100644
index cbeeade..f765430 100644
--- a/pm_common/CMakeLists.txt
+++ b/pm_common/CMakeLists.txt
@@ -22,7 +22,7 @@ else(APPLE OR WIN32)
endif(APPLE OR WIN32)
if(APPLE)
- set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk CACHE
- set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.6.sdk CACHE
+ set(CMAKE_OSX_SYSROOT / CACHE
PATH "-isysroot parameter for compiler" FORCE)
set(CMAKE_C_FLAGS "-mmacosx-version-min=10.5" CACHE
PATH "-isysroot parameter for compiler")
set(CMAKE_C_FLAGS "-mmacosx-version-min=10.6" CACHE
STRING "needed in conjunction with CMAKE_OSX_SYSROOT" FORCE)
@@ -54,10 +54,6 @@ if(UNIX)
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "spglib";
version = "1.16.1";
version = "1.16.2";
src = fetchFromGitHub {
owner = "atztogo";
repo = "spglib";
rev = "v${version}";
sha256 = "1sk59nnar9npka4mdcfh4154ja46i35y4gbq892kwqidzyfs80in";
sha256 = "1sbrk26xyvlhqxxv9cq2ycxwbiafgmh7lf221377zpqq8q3iavd7";
};
nativeBuildInputs = [ cmake ];
@@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "aioambient";
version = "1.2.5";
version = "1.2.6";
format = "pyproject";
disabled = pythonOlder "3.6";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
owner = "bachya";
repo = pname;
rev = version;
sha256 = "1v8xr69y9cajyrdfz8wdksz1hclh5cvgxppf9lpygwfj4q70wh88";
sha256 = "sha256-EppnuZP62YTFI3UJUzBUj2m5TvFh1WiDz9smHY7We60=";
};
nativeBuildInputs = [
@@ -11,11 +11,11 @@
buildPythonPackage rec {
pname = "bleach";
version = "3.3.0";
version = "3.3.1";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-mLMXBznl6D3Z3BljPwdHJ62EjL7bYCZwjIrC07aXpDM=";
sha256 = "1yma53plrlw2llaqxv8yk0g5al0vvlywwzym18b78m3rm6jq6r1h";
};
checkInputs = [ pytest pytest-runner ];
@@ -12,11 +12,11 @@
buildPythonPackage rec {
pname = "eventlet";
version = "0.31.0";
version = "0.31.1";
src = fetchPypi {
inherit pname version;
sha256 = "b36ec2ecc003de87fc87b93197d77fea528aa0f9204a34fdf3b2f8d0f01e017b";
sha256 = "0xldgwjf9jkp28rn0pg0i32bg6m7pdh7dwgi0grcvqzs0iii5sdr";
};
propagatedBuildInputs = [ dnspython greenlet monotonic six ]
@@ -17,14 +17,14 @@
buildPythonPackage rec {
pname = "fastapi";
version = "0.67.0";
version = "0.68.0";
format = "flit";
src = fetchFromGitHub {
owner = "tiangolo";
repo = "fastapi";
rev = version;
sha256 = "15zbalyib7ndcbxvf9prj0n9n6qb4bfzhmaacsjrvdmjzmqdjgw0";
sha256 = "00cjkc90h0qlca30g981zvwlxh2wc3rfipw25v667jdl9x5gxv9p";
};
postPatch = ''
@@ -15,13 +15,13 @@
buildPythonPackage rec {
pname = "hass-nabucasa";
version = "0.45.1";
version = "0.46.0";
src = fetchFromGitHub {
owner = "nabucasa";
repo = pname;
rev = version;
sha256 = "sha256-ZDPlYoLAQLXiV+LUMdu/8v3TrG5/Zz4+r4PtThrLAas=";
sha256 = "109ma1qlhifj5hs530zfnvc6mqv5grfmcq3s57wawq9nzq0gpfy8";
};
propagatedBuildInputs = [
@@ -1,10 +1,7 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, autopep8
, nose
, pycodestyle
, twine
}:
buildPythonPackage rec {
@@ -18,10 +15,11 @@ buildPythonPackage rec {
sha256 = "idF5JQGnAye6z3c3YU9rsHaebB3rlHJfA8vSpjDnFeM=";
};
checkInputs = [ autopep8 nose pycodestyle twine ];
checkInputs = [ nose ];
checkPhase = ''
nosetests tests/
'';
pythonImportsCheck = [ "opensimplex" ];
meta = with lib; {
description = "OpenSimplex Noise functions for 2D, 3D and 4D";
@@ -19,13 +19,13 @@
buildPythonPackage rec {
pname = "plugwise";
version = "0.11.2";
version = "0.12.0";
src = fetchFromGitHub {
owner = pname;
repo = "python-plugwise";
rev = version;
sha256 = "sha256-ywVCa6PfyQ1SiejE2IYkf/IpQM0iDXJPpCm0vDtlrw8=";
sha256 = "sha256-fZ0mhsM7LroJgIyBO4eRzZaz2OQxa4Hhj1rNufHXvHI=";
};
propagatedBuildInputs = [
@@ -8,11 +8,11 @@
buildPythonPackage rec {
pname = "pybotvac";
version = "0.0.21";
version = "0.0.22";
src = fetchPypi {
inherit pname version;
sha256 = "1hf692w44dmalv7hlcpwzbnr6xhvnmdv5nl1jcy2jhiwp89lkhzv";
sha256 = "sha256-hl8UmoVUbbHCSpCWdUTxoIlop5di+rUmGUQI9UWq3ik=";
};
propagatedBuildInputs = [
@@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "pylutron";
version = "0.2.8";
version = "0.2.9";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-Jg2waoIxvBvX+hoAgt/yoM87XdShCHQOZXbsHG3b4cw=";
sha256 = "sha256-xy5XPNOrvdPZMCfa2MYA+xtUcFdGSurW5QYL6H7n2VI=";
};
# Project has no tests
@@ -1,9 +1,11 @@
{ lib
{ stdenv
, lib
, buildPythonPackage
, fetchPypi
, python
, cffi
, pytestCheckHook
, ApplicationServices
}:
buildPythonPackage rec {
@@ -17,6 +19,9 @@ buildPythonPackage rec {
};
propagatedBuildInputs = [ cffi ];
buildInputs = lib.optionals stdenv.isDarwin [
ApplicationServices
];
preBuild = ''
${python.interpreter} setup.py build_ext --inplace
@@ -26,11 +31,13 @@ buildPythonPackage rec {
pytestFlagsArray = [
"pymunk/tests"
];
pythonImportsCheck = [ "pymunk" ];
meta = with lib; {
description = "2d physics library";
homepage = "https://www.pymunk.org";
license = with licenses; [ mit ];
maintainers = with maintainers; [ angustrau ];
platforms = platforms.linux ++ [ "x86_64-darwin" ];
};
}
@@ -1,7 +1,6 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, mupdf
, swig
, freetype
@@ -26,10 +25,7 @@ buildPythonPackage rec {
patches = [
# Add NIX environment support.
# Should be removed next pyMuPDF release.
(fetchpatch {
url = "https://github.com/pymupdf/PyMuPDF/commit/d9b2d42019e5705a1c6621ea0cdfa26da1ce9ad5.patch";
sha256 = "fc3f6ad88c8f3933ed9ab9d4db9ebec8bc30ed5113f6ca9d72080b56dfa52ad6";
})
./nix-support.patch
];
postPatch = ''
@@ -0,0 +1,17 @@
--- a/setup.py
+++ b/setup.py
@@ -36,10 +36,14 @@ LIBRARIES = {
"opensuse": OPENSUSE,
"fedora": FEDORA,
"alpine": ALPINE,
+ "nix": FEDORA,
}
def load_libraries():
+ if os.getenv("NIX_STORE"):
+ return LIBRARIES["nix"]
+
try:
import distro
@@ -2,6 +2,7 @@
, aiohttp
, aresponses
, asynctest
, backoff
, buildPythonPackage
, fetchFromGitHub
, poetry-core
@@ -13,19 +14,22 @@
buildPythonPackage rec {
pname = "pyopenuv";
version = "2.0.2";
version = "2.1.0";
format = "pyproject";
src = fetchFromGitHub {
owner = "bachya";
repo = pname;
rev = version;
sha256 = "sha256-QVgNwu/NXSV9nbRN0POBCdKCv6xdp4uSEzFAiHkhVaQ=";
sha256 = "sha256-S2X7cTArjiWOFjQGnrZ4AuhgN8t18wf9d6i9X5thRZg=";
};
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [ aiohttp ];
propagatedBuildInputs = [
aiohttp
backoff
];
checkInputs = [
aresponses
@@ -10,12 +10,12 @@
buildPythonPackage rec {
pname = "python-gitlab";
version = "2.9.0";
version = "2.10.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-LFGxTN2aaAKDFaKw6IUl03YJZziPmfqlfeiQK0VGW+Y=";
sha256 = "sha256-N2s+mCOBzsc0RxxQKz2ixueFio300DyZNJnmp1k5UOY=";
};
propagatedBuildInputs = [
@@ -0,0 +1,28 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "pyuseragents";
version = "1.0.5";
src = fetchFromGitHub {
owner = "Animenosekai";
repo = "useragents";
rev = "v${version}";
sha256 = "D7Qs3vsfkRH2FDkbfakrR+FfWzQFiOCQM7q9AdJavyU=";
};
checkInputs = [ pytestCheckHook ];
pytestFlagsArray = [ "test.py" ];
pythonImportsCheck = [ "pyuseragents" ];
meta = with lib; {
description = "Giving you a random User-Agent Header";
homepage = "https://github.com/Animenosekai/useragents";
license = with licenses; [ mit ];
maintainers = with maintainers; [ angustrau ];
};
}
@@ -14,11 +14,11 @@
buildPythonPackage rec {
pname = "pywebpush";
version = "1.13.0";
version = "1.14.0";
src = fetchPypi {
inherit pname version;
sha256 = "97ef000a685cd1f63d9d3553568508508904bfe419485df2b83b025d94e9ae54";
sha256 = "sha256-bDbhZ5JoIZ5pO6lA2yvyVMJAygJmTeECtyaa/DxUVzE=";
};
propagatedBuildInputs = [
@@ -36,6 +36,8 @@ buildPythonPackage rec {
pytestCheckHook
];
pythonImportsCheck = [ "pywebpush" ];
meta = with lib; {
description = "Webpush Data encryption library for Python";
homepage = "https://github.com/web-push-libs/pywebpush";
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "requests-cache";
version = "0.7.2";
version = "0.7.3";
disabled = pythonOlder "3.6";
format = "pyproject";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "reclosedev";
repo = "requests-cache";
rev = "v${version}";
sha256 = "055dfyjm8dqwr62v86lyvq4r04692gmvlgp86218vwvzgm7p3p2c";
sha256 = "sha256-QGh/ThI5bKE65luVHDSsr6RQq5RReugdZrVvR1R0pUU=";
};
nativeBuildInputs = [
@@ -0,0 +1,42 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, requests
, beautifulsoup4
, pyuseragents
, inquirer
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "translatepy";
version = "2.0";
src = fetchFromGitHub {
owner = "Animenosekai";
repo = "translate";
rev = "v${version}";
sha256 = "Rt6FvB4kZVaB/jxxqOHsnkReTFCCyiEaZf240n0zVZs=";
};
propagatedBuildInputs = [
requests
beautifulsoup4
pyuseragents
inquirer
];
checkInputs = [ pytestCheckHook ];
disabledTestPaths = [
# Requires network connection
"tests/test_translators.py"
];
pythonImportsCheck = [ "translatepy" ];
meta = with lib; {
description = "A module grouping multiple translation APIs";
homepage = "https://github.com/Animenosekai/translate";
license = with licenses; [ agpl3Only ];
maintainers = with maintainers; [ angustrau ];
};
}
@@ -9,11 +9,11 @@
buildPythonPackage rec {
pname = "transmission-rpc";
version = "3.2.5";
version = "3.2.6";
src = fetchPypi {
inherit pname version;
sha256 = "59598c9aa338703951686420fea292d9ba2d83d2a81361f16b64c2603c4ebb45";
sha256 = "1k4yyrbdqxp43zsmcg37a99x4s2kwsm7yyajf810y2wx61nq49d1";
};
propagatedBuildInputs = [
@@ -3,28 +3,34 @@
, fetchPypi
, pythonOlder
, pytestCheckHook
, pysocks
, python-socks
}:
buildPythonPackage rec {
pname = "websocket-client";
version = "1.1.0";
version = "1.2.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-to5JWdcEdo+iDjXJ1QjI3Cu8BB/Y0mfA1zRc/+KCRWg=";
sha256 = "sha256-dmW6bGRZibKLYWcIdKt1PmkpF56fyQVlrOasCQ9ZxVk=";
};
checkInputs = [ pytestCheckHook pysocks ];
propagatedBuildInputs = [
python-socks
];
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [ "websocket" ];
meta = with lib; {
description = "Websocket client for Python";
homepage = "https://github.com/websocket-client/websocket-client";
changelog = "https://github.com/websocket-client/websocket-client/blob/v${version}/ChangeLog";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ fab ];
changelog = "https://github.com/websocket-client/websocket-client/blob/v${version}/ChangeLog";
};
}
@@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "yeelight";
version = "0.6.3";
version = "0.7.2";
disabled = pythonOlder "3.4";
src = fetchFromGitLab {
owner = "stavros";
repo = "python-yeelight";
rev = "v${version}";
sha256 = "sha256-71ncPGcqTRSldWVhJ2uZ2AEgkv1KO2i6UtAUTcJcru8=";
sha256 = "06pg5q50dw5a0h6jnln8419asi8nahzvlk0s65ymykqq0jxac31y";
};
propagatedBuildInputs = [
@@ -9,12 +9,12 @@
buildPythonPackage rec {
pname = "yfinance";
version = "0.1.61";
version = "0.1.63";
# GitHub source releases aren't tagged
src = fetchPypi {
inherit pname version;
sha256 = "sha256-+tc0rwweGFaBkrl7LBHdsff98PuupqovKh4nRP3hRJ0=";
sha256 = "0k1saz0wknxv31vpqcfyi35mzi68c75hlqpw8lf83xqw9zllydhi";
};
propagatedBuildInputs = [
@@ -12,7 +12,7 @@
stdenv.mkDerivation rec {
pname = "codeql";
version = "2.5.8";
version = "2.5.9";
dontConfigure = true;
dontBuild = true;
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
src = fetchzip {
url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip";
sha256 = "sha256-XfxzvzGiSBhPVIvdtDifKjkcGK2afWXVWul3Pah3tKo=";
sha256 = "sha256-r3Jm+VYjn0Dz4BCSbADbgTWL1owbyIXlkoj6mOmZcZk=";
};
nativeBuildInputs = [
@@ -1,4 +1,4 @@
{ fetchurl, lib, stdenv, pkg-config, libxml2, llvm }:
{ fetchurl, lib, stdenv, pkg-config, libxml2, llvm, perl }:
stdenv.mkDerivation rec {
pname = "sparse";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
'';
nativeBuildInputs = [ pkg-config ];
buildInputs = [ libxml2 llvm ];
buildInputs = [ libxml2 llvm perl ];
doCheck = true;
meta = {
+21 -10
View File
@@ -7,29 +7,32 @@
buildGoModule rec {
pname = "buf";
version = "0.46.0";
version = "0.49.0";
src = fetchFromGitHub {
owner = "bufbuild";
repo = pname;
rev = "v${version}";
sha256 = "sha256-5mjk31HuPNO/RhmMhIm3dAZAED/Kk33ObjC8KbPKRxk=";
leaveDotGit = true; # Required by TestWorkspaceGit
sha256 = "sha256-xP2UbcHwimN09IXrGp3zhBLL74l/8YKotqBNRTITF18=";
};
vendorSha256 = "sha256-K8UZDEhAvD292RCEDKfY9PdZGS389vLF3oukcBndUF4=";
vendorSha256 = "sha256-WgQSLe99CbOwJC8ewDcSq6PcBJdmiPRmvAonq8drQ1w=";
patches = [
# Skip a test that requires networking to be available to work.
./skip_test_requiring_network.patch
# Skip TestWorkspaceGit which requires .git and commits.
./skip_test_requiring_dotgit.patch
];
nativeBuildInputs = [ protobuf ];
# Required for TestGitCloner
checkInputs = [ git ];
ldflags = [ "-s" "-w" ];
preCheck = ''
export PATH=$PATH:$GOPATH/bin
# The tests need access to some of the built utilities
export PATH="$PATH:$GOPATH/bin"
# To skip TestCloneBranchAndRefToBucket
export CI=true
'';
@@ -38,24 +41,32 @@ buildGoModule rec {
runHook preInstall
mkdir -p "$out/bin"
dir="$GOPATH/bin"
# Only install required binaries, don't install testing binaries
for file in \
for FILE in \
"buf" \
"protoc-gen-buf-breaking" \
"protoc-gen-buf-lint" \
"protoc-gen-buf-check-breaking" \
"protoc-gen-buf-check-lint"; do
cp "$dir/$file" "$out/bin/"
cp "$GOPATH/bin/$FILE" "$out/bin/"
done
runHook postInstall
'';
doInstallCheck = true;
installCheckPhase = ''
runHook preInstallCheck
$out/bin/buf --help
$out/bin/buf --version 2>&1 | grep "${version}"
runHook postInstallCheck
'';
meta = with lib; {
description = "Create consistent Protobuf APIs that preserve compatibility and comply with design best-practices";
homepage = "https://buf.build";
changelog = "https://github.com/bufbuild/buf/releases/tag/v${version}";
description = "Create consistent Protobuf APIs that preserve compatibility and comply with design best-practices";
license = licenses.asl20;
maintainers = with maintainers; [ raboof ];
maintainers = with maintainers; [ raboof jk ];
};
}
@@ -0,0 +1,14 @@
diff --git a/internal/buf/cmd/buf/workspace_test.go b/internal/buf/cmd/buf/workspace_test.go
index e051690..8887837 100644
--- a/internal/buf/cmd/buf/workspace_test.go
+++ b/internal/buf/cmd/buf/workspace_test.go
@@ -335,6 +335,9 @@ func TestWorkspaceNestedArchive(t *testing.T) {
}
func TestWorkspaceGit(t *testing.T) {
+ // Requires .git directory which we do not retain due to
+ // `leaveDotGit` non-determinism
+ t.Skip()
// Directory paths specified as a git reference within a workspace.
t.Parallel()
testRunStdout(
+3 -3
View File
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "conftest";
version = "0.26.0";
version = "0.27.0";
src = fetchFromGitHub {
owner = "open-policy-agent";
repo = "conftest";
rev = "v${version}";
sha256 = "sha256-AIFZhe0N6FT06IrDVF2OVfSwmQVg62ZglOcnnDL9TK8=";
sha256 = "sha256-Yc/aejGLMbAqpIRTVQQ3lv7/oyr7tVAy41Gx6198Eos=";
};
vendorSha256 = "sha256-7wj1n5ggYYrmMrDuQkbbJ2C1S1LHawkkj91owHDIwr0=";
vendorSha256 = "sha256-jI5bX6S2C0ckiiieVlaRNEsLS/5gGkC3o/xauDtCOjA=";
doCheck = false;
+2 -2
View File
@@ -2,7 +2,7 @@
buildGoModule rec {
pname = "doctl";
version = "1.62.0";
version = "1.63.1";
vendorSha256 = null;
@@ -31,7 +31,7 @@ buildGoModule rec {
owner = "digitalocean";
repo = "doctl";
rev = "v${version}";
sha256 = "sha256-5YqGNuC1mmsIsEtnbgumaLuZGy3k6L9jZNbVwZln8WY=";
sha256 = "sha256-SSjTrCR5H+3nIKHKEfrQX917HjgpViS6H1RwmRe4coI=";
};
meta = with lib; {
@@ -0,0 +1,49 @@
{ lib, stdenvNoCC, fetchurl, makeWrapper, copyDesktopItems, makeDesktopItem, unzip, imagemagick, jre }:
stdenvNoCC.mkDerivation rec {
pname = "mars-mips";
version = "4.5";
src = fetchurl {
url = "https://courses.missouristate.edu/KenVollmar/MARS/MARS_${lib.replaceStrings ["."] ["_"] version}_Aug2014/Mars${lib.replaceStrings ["."] ["_"] version}.jar";
sha256 = "15kh1fahkkbbf4wvb6ijzny4fi5dh4pycxyzp5325dm2ddkhnd5c";
};
dontUnpack = true;
nativeBuildInputs = [ makeWrapper copyDesktopItems unzip imagemagick ];
desktopItems = [
(makeDesktopItem {
name = pname;
desktopName = "MARS";
exec = "mars-mips";
icon = "mars-mips";
comment = "An IDE for programming in MIPS assembly language";
categories = "Development;IDE;";
})
];
installPhase = ''
runHook preInstall
export JAR=$out/share/java/${pname}/${pname}.jar
install -D $src $JAR
makeWrapper ${jre}/bin/java $out/bin/${pname} \
--add-flags "-jar $JAR"
unzip ${src} images/MarsThumbnail.gif
mkdir -p $out/share/pixmaps
convert images/MarsThumbnail.gif $out/share/pixmaps/mars-mips.png
runHook postInstall
'';
meta = with lib; {
description = "An IDE for programming in MIPS assembly language intended for educational-level use";
homepage = "https://courses.missouristate.edu/KenVollmar/MARS/";
license = licenses.mit;
maintainers = with maintainers; [ angustrau ];
platforms = platforms.all;
};
}
@@ -26,6 +26,7 @@ let
CatalystPluginAccessLog
CatalystPluginAuthorizationRoles
CatalystPluginCaptcha
CatalystPluginPrometheusTiny
CatalystPluginSessionStateCookie
CatalystPluginSessionStoreFastMmap
CatalystPluginSmartURI
@@ -59,6 +60,7 @@ let
NetPrometheus
NetStatsd
PadWalker
PrometheusTinyShared
Readonly
SQLSplitStatement
SetScalar
@@ -2,12 +2,12 @@
{
hydra-unstable = callPackage ./common.nix {
version = "2021-05-03";
version = "2021-08-11";
src = fetchFromGitHub {
owner = "NixOS";
repo = "hydra";
rev = "886e6f85e45a1f757e9b77d2a9e4539fbde29468";
sha256 = "t7Qb57Xjc0Ou+VDGC1N5u9AmeODW6MVOwKSrYRJq5f0=";
rev = "9bce425c3304173548d8e822029644bb51d35263";
sha256 = "sha256-tGzwKNW/odtAYcazWA9bPVSmVXMGKfXsqCA1UYaaxmU=";
};
nix = nixUnstable;
+3 -3
View File
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "pscale";
version = "0.60.0";
version = "0.63.0";
src = fetchFromGitHub {
owner = "planetscale";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-hrWSieWeVAg28f3Fh9mElr+mDh4v4T5JI1c3+Hrm7c0=";
sha256 = "sha256-LYVR8vcMS6ErYH4sGRi1JT9E4ElYe5mloc3C1TudzSE=";
};
vendorSha256 = "sha256-h4YUQWmFYouEvHup8Pu6OqfHf1EoPszVFzklU9SbJZQ=";
vendorSha256 = "sha256-3LuzdvwLYSL7HaGbKDfrqBz2FV2yr6YUdI5kXXiIvbU=";
meta = with lib; {
homepage = "https://www.planetscale.com/";
+3 -3
View File
@@ -17,15 +17,15 @@
rustPlatform.buildRustPackage rec {
pname = "deno";
version = "1.12.2";
version = "1.13.0";
src = fetchFromGitHub {
owner = "denoland";
repo = pname;
rev = "v${version}";
sha256 = "sha256-xIFJv/roTD7sq7vCy4JDwe8gYDMuZd34vyjS08xeijI=";
sha256 = "sha256-iSL9YAcYdeZ9E5diAJG1oHzujPmfblOvheewOu9QIu8=";
};
cargoSha256 = "sha256-aETAFh5yTE+ZonDC0ITdaZ2YN3/SpYROsXP47aNEICE=";
cargoSha256 = "sha256-1aibJwZ3o3bU5PWPVPBsRpjGo4JgOsNAgnPVAk1ZQHE=";
# Install completions post-install
nativeBuildInputs = [ installShellFiles ];
+5 -5
View File
@@ -11,11 +11,11 @@ let
};
in
fetch_librusty_v8 {
version = "0.25.3";
version = "0.26.0";
shas = {
x86_64-linux = "sha256-Z3lEJT3QVhP8PoDiM6Fw0sm5rXWvasBqASBO5tZA5zM=";
aarch64-linux = "sha256-pbcd1zV7IIEqCIp8vsRiO0KBGrOv52SvMZ4gthxuN/I=";
x86_64-darwin = "sha256-BwYdgd1kK8EQFfDc9RgtNvwvx7agt9hYNVmBGwHoqz0=";
aarch64-darwin = "sha256-/RHeNuR7VjhfwdjZXWMMX3UnweAjJblSCUq9eIwGvWc=";
x86_64-linux = "sha256-eYvfsgkLuV//4NmnxTNgB5vGoQ2JdSpXwF34d1kNxBw=";
aarch64-linux = "sha256-t+0/bJI4q2XElYz398aig/widJEOAascOmv4qnnKMQY=";
x86_64-darwin = "sha256-lYJcx5Oe/nuF3l5coH4WIMbBbiFMwxNWlIYojrdiJfI=";
aarch64-darwin = "sha256-5blisZ4Z/f68fZg7aDr5WK4MNvL5IRZZSJrvFb9N5oY=";
};
}
+3 -3
View File
@@ -2,13 +2,13 @@
buildGoModule rec {
pname = "flyctl";
version = "0.0.229";
version = "0.0.230";
src = fetchFromGitHub {
owner = "superfly";
repo = "flyctl";
rev = "v${version}";
sha256 = "sha256-mw+rTMFj41+T6lDe/MOQpmRcjt/gJhOCfaHcBkpjcsg=";
sha256 = "sha256-TI6pBtpUfI1vPsi+tq7FduFaZv9CvkAooqFmHCGslzI=";
};
preBuild = ''
@@ -17,7 +17,7 @@ buildGoModule rec {
subPackages = [ "." ];
vendorSha256 = "sha256-NnHnSfm3XYiwgGn56GsthFKiflJvhYhjoxmm8ogm+Uc=";
vendorSha256 = "sha256-6t2aLSr78pEhrYI53OMQpfJqa65wQAxlz6+ksUtxzmI=";
doCheck = false;
-87
View File
@@ -1,87 +0,0 @@
{ stdenv, lib, fetchurl }:
stdenv.mkDerivation rec {
pname = "now-cli";
version = "15.8.7";
# TODO: switch to building from source, if possible
src = fetchurl {
url = "https://github.com/zeit/now-cli/releases/download/${version}/now-linux.gz";
sha256 = "1x6nsn9qmsy4hk7l2dsyabc7fxkwwwl1y1852vs4dgxi8w1hax93";
};
sourceRoot = ".";
unpackCmd = ''
gunzip -c $curSrc > now-linux
'';
dontBuild = true;
installPhase = ''
mkdir $out
mkdir $out/bin
cp now-linux $out/bin/now
'';
# now is a node program packaged using zeit/pkg.
# thus, it contains hardcoded offsets.
# patchelf shifts these locations when it expands headers.
# this could probably be generalised into allowing any program packaged
# with zeit/pkg to be run on nixos.
preFixup = let
libPath = lib.makeLibraryPath [stdenv.cc.cc];
in ''
orig_size=$(stat --printf=%s $out/bin/now)
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/bin/now
patchelf --set-rpath ${libPath} $out/bin/now
chmod +x $out/bin/now
new_size=$(stat --printf=%s $out/bin/now)
###### zeit-pkg fixing starts here.
# we're replacing plaintext js code that looks like
# PAYLOAD_POSITION = '1234 ' | 0
# [...]
# PRELUDE_POSITION = '1234 ' | 0
# ^-----20-chars-----^^------22-chars------^
# ^-- grep points here
#
# var_* are as described above
# shift_by seems to be safe so long as all patchelf adjustments occur
# before any locations pointed to by hardcoded offsets
var_skip=20
var_select=22
shift_by=$(expr $new_size - $orig_size)
function fix_offset {
# $1 = name of variable to adjust
location=$(grep -obUam1 "$1" $out/bin/now | cut -d: -f1)
location=$(expr $location + $var_skip)
value=$(dd if=$out/bin/now iflag=count_bytes,skip_bytes skip=$location \
bs=1 count=$var_select status=none)
value=$(expr $shift_by + $value)
echo -n $value | dd of=$out/bin/now bs=1 seek=$location conv=notrunc
}
fix_offset PAYLOAD_POSITION
fix_offset PRELUDE_POSITION
'';
dontStrip = true;
meta = with lib; {
homepage = "https://zeit.co/now";
description = "The Command Line Interface for Now - Global Serverless Deployments";
license = licenses.asl20;
platforms = platforms.linux;
maintainers = [ maintainers.bhall ];
};
}
+14 -3
View File
@@ -2,20 +2,31 @@
stdenv.mkDerivation rec {
pname = "antsimulator";
version = "1.2";
version = "3.1";
src = fetchFromGitHub {
owner = "johnBuffer";
repo = "AntSimulator";
rev = "v${version}";
sha256 = "0wz80971rf86kb7mcnxwrq75vriwhmyir5s5n3wzml12rzfnj5f1";
sha256 = "sha256-1KWoGbdjF8VI4th/ZjAzASgsLEuS3xiwObulzxQAppA=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ sfml ];
postPatch = ''
substituteInPlace src/main.cpp \
--replace "res/" "$out/opt/antsimulator/"
substituteInPlace include/simulation/config.hpp \
--replace "res/" "$out/opt/antsimulator/"
substituteInPlace include/render/colony_renderer.hpp \
--replace "res/" "$out/opt/antsimulator/"
'';
installPhase = ''
mkdir -p $out/bin
install -Dm644 -t $out/opt/antsimulator res/*
install -Dm755 ./AntSimulator $out/bin/antsimulator
'';
+30
View File
@@ -0,0 +1,30 @@
{ lib, fetchFromSourcehut, python3Packages }:
python3Packages.buildPythonApplication rec {
pname = "brutalmaze";
version = "1.1.1";
format = "flit";
disabled = python3Packages.pythonOlder "3.7";
src = fetchFromSourcehut {
owner = "~cnx";
repo = pname;
rev = version;
sha256 = "1m105iq378mypj64syw59aldbm6bj4ma4ynhc50gafl656fabg4y";
};
propagatedBuildInputs = with python3Packages; [
loca
palace
pygame
];
doCheck = false; # there's no test
meta = with lib; {
description = "Minimalist thrilling shoot 'em up game";
homepage = "https://brutalmaze.rtfd.io";
license = licenses.agpl3Plus;
maintainers = [ maintainers.McSinyx ];
};
}
+2 -2
View File
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "crispy-doom";
version = "5.10.1";
version = "5.10.2";
src = fetchFromGitHub {
owner = "fabiangreffrath";
repo = pname;
rev = "${pname}-${version}";
sha256 = "sha256-5doytVxemqaXWXiqDSQUEAe71xmY0pOLASj/NJNyM5g=";
sha256 = "sha256-NUBodIojvlw46yLZ9Bn2pCpBwyVW8noOHQMM4uGmO3U=";
};
postPatch = ''

Some files were not shown because too many files have changed in this diff Show More