Merge branch 'staging-next' into staging

This commit is contained in:
Jan Tojnar 2020-10-11 00:27:42 +02:00
commit 1882368e8a
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4
184 changed files with 4894 additions and 3560 deletions

View File

@ -56,6 +56,8 @@ indent_size = unset
[deps.nix]
insert_final_newline = unset
[pkgs/tools/networking/dd-agent/*-deps.nix]
insert_final_newline = unset
[eggs.nix]
trim_trailing_whitespace = unset
@ -65,6 +67,8 @@ insert_final_newline = unset
[node-{composition,packages}.nix]
insert_final_newline = unset
[node-packages-generated.nix]
insert_final_newline = unset
[nixos/modules/services/networking/ircd-hybrid/*.{conf,in}]
trim_trailing_whitespace = unset
@ -98,7 +102,7 @@ trim_trailing_whitespace = unset
[pkgs/development/mobile/androidenv/generated/{addons,packages}.nix]
trim_trailing_whitespace = unset
[pkgs/development/node-packages/node-packages.nix]
[pkgs/development/node-packages/composition.nix]
insert_final_newline = unset
[pkgs/servers/dict/wordnet_structures.py]

View File

@ -66,7 +66,7 @@ let
stringLength sub substring tail;
inherit (trivial) id const pipe concat or and bitAnd bitOr bitXor
bitNot boolToString mergeAttrs flip mapNullable inNixShell min max
importJSON warn info showWarnings nixpkgsVersion version mod compare
importJSON importTOML warn info showWarnings nixpkgsVersion version mod compare
splitByAndCompare functionArgs setFunctionArgs isFunction toHexString toBaseDigits;
inherit (fixedPoints) fix fix' converge extends composeExtensions
makeExtensible makeExtensibleWithCustomName;

View File

@ -875,4 +875,21 @@ rec {
];
};
/* Use this function to import a JSON file as NixOS configuration.
importJSON -> path -> attrs
*/
importJSON = file: {
_file = file;
config = lib.importJSON file;
};
/* Use this function to import a TOML file as NixOS configuration.
importTOML -> path -> attrs
*/
importTOML = file: {
_file = file;
config = lib.importTOML file;
};
}

View File

@ -281,6 +281,12 @@ rec {
importJSON = path:
builtins.fromJSON (builtins.readFile path);
/* Reads a TOML file.
Type :: path -> any
*/
importTOML = path:
builtins.fromTOML (builtins.readFile path);
## Warnings

View File

@ -3319,6 +3319,12 @@
githubId = 10654650;
name = "Guillaume Koenig";
};
guserav = {
email = "guserav@users.noreply.github.com";
github = "guserav";
githubId = 28863828;
name = "guserav";
};
guyonvarch = {
email = "joris@guyonvarch.me";
github = "guyonvarch";

View File

@ -64,6 +64,12 @@
Python 3 now defaults to Python 3.8 instead of 3.7.
</para>
</listitem>
<listitem>
<para>
Python 3.5 has reached its upstream EOL at the end of September 2020: it
has been removed from the list of available packages.
</para>
</listitem>
<listitem>
<para>
Two new options, <link linkend="opt-services.openssh.authorizedKeysCommand">authorizedKeysCommand</link>
@ -605,8 +611,8 @@ systemd.services.nginx.serviceConfig.ReadWritePaths = [ "/var/www" ];
<listitem>
<para>
In addition to the hostname, the fully qualified domain name (FQDN),
which consists of <literal>${cfg.hostName}</literal> and
<literal>${cfg.domain}</literal> is now added to
which consists of <literal>${networking.hostName}</literal> and
<literal>${networking.domain}</literal> is now added to
<literal>/etc/hosts</literal>, to allow local FQDN resolution, as used by the
<literal>hostname --fqdn</literal> command and other applications that
try to determine the FQDN. These new entries take precedence over entries
@ -626,6 +632,10 @@ systemd.services.nginx.serviceConfig.ReadWritePaths = [ "/var/www" ];
or digit, and have as interior characters only letters, digits, and
hyphen. The maximum length is 63 characters. Additionally it is
recommended to only use lower-case characters.
If (e.g. for legacy reasons) a FQDN is required as the Linux kernel network node hostname
(<literal>uname --nodename</literal>) the option
<literal>boot.kernel.sysctl."kernel.hostname"</literal>
can be used as a workaround (but be aware of the 64 character limit).
</para>
</listitem>
<listitem>
@ -1132,8 +1142,10 @@ services.transmission.settings.rpc-bind-address = "0.0.0.0";
</listitem>
<listitem>
<para>
The <literal>fontconfig</literal> module stopped generating fontconfig 2.10.x config and cache.
Fontconfig 2.10.x was removed from Nixpkgs - it hasn't been used in any nixpkgs package anymore.
The <literal>fontconfig</literal> module stopped generating config and cache files for fontconfig 2.10.x, the <filename>/etc/fonts/fonts.conf</filename> now belongs to the latest fontconfig, just like on other Linux distributions, and we will <link xlink:href="https://github.com/NixOS/nixpkgs/pull/95358">no longer</link> be versioning the config directories.
</para>
<para>
Fontconfig 2.10.x was removed from Nixpkgs since it hasnt been used in any Nixpkgs package for years now.
</para>
</listitem>
<listitem>
@ -1223,5 +1235,20 @@ services.transmission.settings.rpc-bind-address = "0.0.0.0";
</para>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para>
For AMD GPUs, Vulkan can now be used by adding <literal>amdvlk</literal>
to <literal>hardware.opengl.extraPackages</literal>.
</para>
</listitem>
<listitem>
<para>
Similarly, still for AMD GPUs, the ROCm OpenCL stack can now be used by adding
<literal>rocm-opencl-icd</literal> to
<literal>hardware.opengl.extraPackages</literal>.
</para>
</listitem>
</itemizedlist>
</section>
</section>

View File

@ -121,6 +121,16 @@ in
services.dbus.packages = [ pkgs.snapper ];
systemd.services.snapperd = {
description = "DBus interface for snapper";
inherit documentation;
serviceConfig = {
Type = "dbus";
BusName = "org.opensuse.Snapper";
ExecStart = "${pkgs.snapper}/bin/snapperd";
};
};
systemd.services.snapper-timeline = {
description = "Timeline of Snapper Snapshots";
inherit documentation;

View File

@ -29,8 +29,6 @@ in {
config = mkIf cfg.enable {
systemd.services.ssm-agent = {
users.extraUsers.ssm-user = {};
inherit (cfg.package.meta) description;
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
@ -43,5 +41,26 @@ in {
RestartSec = "15min";
};
};
# Add user that Session Manager needs, and give it sudo.
# This is consistent with Amazon Linux 2 images.
security.sudo.extraRules = [
{
users = [ "ssm-user" ];
commands = [
{
command = "ALL";
options = [ "NOPASSWD" ];
}
];
}
];
# On Amazon Linux 2 images, the ssm-user user is pretty much a
# normal user with its own group. We do the same.
users.groups.ssm-user = {};
users.users.ssm-user = {
isNormalUser = true;
group = "ssm-user";
};
};
}

View File

@ -474,6 +474,13 @@ in
)
[dms wms]
);
# Make xsessions and wayland sessions installed at
# /run/current-system/sw/share as some programs
# have behavior that depends on them being installed
environment.systemPackages = [
cfg.displayManager.sessionData.desktops
];
};
imports = [

View File

@ -391,6 +391,10 @@ in
end with a letter or digit, and have as interior characters only
letters, digits, and hyphen. The maximum length is 63 characters.
Additionally it is recommended to only use lower-case characters.
If (e.g. for legacy reasons) a FQDN is required as the Linux kernel
network node hostname (uname --nodename) the option
boot.kernel.sysctl."kernel.hostname" can be used as a workaround (but
the 64 character limit still applies).
'';
};
@ -470,7 +474,7 @@ in
networking.search = mkOption {
default = [];
example = [ "example.com" "local.domain" ];
example = [ "example.com" "home.arpa" ];
type = types.listOf types.str;
description = ''
The list of search paths used when resolving domain names.
@ -479,7 +483,7 @@ in
networking.domain = mkOption {
default = null;
example = "home";
example = "home.arpa";
type = types.nullOr types.str;
description = ''
The domain. It can be left empty if it is auto-detected through DHCP.

View File

@ -15,13 +15,13 @@ assert withGtk3 -> gtk3 != null;
stdenv.mkDerivation rec {
pname = "carla";
version = "2.1.1";
version = "2.2.0";
src = fetchFromGitHub {
owner = "falkTX";
repo = pname;
rev = "v${version}";
sha256 = "0c3y4a6cgi4bv1mg57i3qn5ia6pqjqlaylvkapj6bmpsw71ig22g";
sha256 = "B4xoRuNEW4Lz9haP8fqxOTcysGTNEXFOq9UXqUJLSFw=";
};
nativeBuildInputs = [

View File

@ -32,9 +32,8 @@ in py.buildPythonApplication rec {
./unlock_constraints.patch
];
postFixup = ''
wrapQtApp $out/bin/friture
wrapQtApp $out/bin/.friture-wrapped
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = with lib; {

View File

@ -5,14 +5,14 @@
stdenv.mkDerivation rec {
pname = "helio-workstation";
version = "2.2";
version = "3.1";
src = fetchFromGitHub {
owner = "helio-fm";
repo = pname;
rev = version;
fetchSubmodules = true;
sha256 = "16iwj4mjs1nm8dlk70q97svp3vkcgs7hdj9hfda9h67acn4a8vvk";
sha256 = "10pna4k43g648gapviykq2zk82iwy5rqff4lbfh5vzxqpg5v4ma6";
};
buildInputs = [
@ -22,7 +22,10 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig makeWrapper ];
preBuild = "cd Projects/LinuxMakefile";
preBuild = ''
cd Projects/LinuxMakefile
substituteInPlace Makefile --replace alsa "alsa jack"
'';
buildFlags = [ "CONFIG=Release64" ];
installPhase = ''

View File

@ -1,4 +1,4 @@
{ stdenv, mkDerivation, fetchFromGitHub, cmake, qtbase, alsaLib, makeDesktopItem }:
{ stdenv, mkDerivation, fetchFromGitHub, cmake, qtbase, alsaLib, makeDesktopItem, libjack2 }:
let
desktopItem = makeDesktopItem rec {
@ -9,14 +9,14 @@ let
categories = "Audio;AudioVideo;";
};
in mkDerivation rec {
version = "2.4.0";
version = "2.4.1";
pname = "munt";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = with stdenv.lib.versions; "libmt32emu_${major version}_${minor version}_${patch version}";
sha256 = "0521i7js5imlsxj6n7181w5szfjikam0k4vq1d2ilkqgcwrkg6ln";
sha256 = "0bszhkbz24hhx32f973l6h5lkyn4lxhqrckiwmv765d1sba8n5bk";
};
postInstall = ''
@ -26,7 +26,7 @@ in mkDerivation rec {
dontFixCmake = true;
nativeBuildInputs = [ cmake ];
buildInputs = [ qtbase alsaLib ];
buildInputs = [ qtbase alsaLib libjack2 ];
meta = with stdenv.lib; {
description = "Multi-platform software synthesiser emulating Roland MT-32, CM-32L, CM-64 and LAPC-I devices";

View File

@ -30,5 +30,6 @@ python3Packages.buildPythonApplication rec {
license = licenses.gpl3;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.linux;
broken = true; # Needs Qt wrapping
};
}

View File

@ -28,8 +28,8 @@ buildPythonApplication rec {
# QT setup in tests broken.
doCheck = false;
postFixup = ''
wrapQtApp $out/bin/vorta
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = with lib; {

View File

@ -9,9 +9,9 @@ let
inherit buildFHSUserEnv;
};
stableVersion = {
version = "4.0.1.0"; # "Android Studio 4.0.1"
build = "193.6626763";
sha256Hash = "15vm7fvi8c286wx9f28z6ysvm8wqqda759qql0zy9simwx22gy7j";
version = "4.0.2.0"; # "Android Studio 4.0.2"
build = "193.6821437";
sha256Hash = "sha256-v3lug8XCl4tekMBP4N1wS925FnDaSMDf6SIJhwKydzY=";
};
betaVersion = {
version = "4.1.0.18"; # "Android Studio 4.1 RC 3"

View File

@ -46,11 +46,13 @@ in python.pkgs.buildPythonApplication {
propagatedBuildInputs = [ pythonEnv ];
postInstall = ''
wrapQtApp "$out/bin/retext" \
--set ASPELL_CONF "dict-dir ${buildEnv {
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
makeWrapperArgs+=(
"--set" "ASPELL_CONF" "dict-dir ${buildEnv {
name = "aspell-all-dicts";
paths = map (path: "${path}/lib/aspell") enchantAspellDicts;
}}"
)
'';
meta = with stdenv.lib; {

View File

@ -11,8 +11,8 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = {
x86_64-linux = "103p0daf13zsqz2481pw6zpr6n0vaf57dq89i4djcm449i9c959i";
x86_64-darwin = "0bxggvi0wzsy801iylszqp8rv6kij6j2v05b6qyf6af7j3cmd1qf";
x86_64-linux = "12nrv037an4f6h8hrbmysc0lk5wm492hywa7lp64n4d308zg5567";
x86_64-darwin = "1z22hn2ngx2x5l9h6zsblpyzr85lyjzv2ayplscbgaa9ff52l429";
}.${system};
in
callPackage ./generic.nix rec {
@ -21,7 +21,7 @@ in
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.49.3";
version = "1.50.0";
pname = "vscode";
executableName = "code" + lib.optionalString isInsiders "-insiders";

View File

@ -10,7 +10,7 @@ let
[ qscintilla-qt5 gdal jinja2 numpy psycopg2
chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
in mkDerivation rec {
version = "3.10.9";
version = "3.10.10";
pname = "qgis";
name = "${pname}-unwrapped-${version}";
@ -18,7 +18,7 @@ in mkDerivation rec {
owner = "qgis";
repo = "QGIS";
rev = "final-${lib.replaceStrings ["."] ["_"] version}";
sha256 = "0d646hvrhhgsw789qc2g3iblmsvr64qh15jck1jkaljzrj3qbml6";
sha256 = "yZBG+bpJA7iKkUEjVo45d+bmRp9WS7mk8z96FLf0ZQ0=";
};
passthru = {

View File

@ -0,0 +1,57 @@
{ mkDerivation
, lib
, fetchFromGitLab
, qmake
, qtbase
, qtcharts
, qtsvg
, marble
, qtwebengine
, ldutils
}:
mkDerivation rec {
pname = "zombietrackergps";
version = "1.01";
src = fetchFromGitLab {
owner = "ldutils-projects";
repo = pname;
rev = "v_${version}";
sha256 = "0h354ydbahy8rpkmzh5ym5bddbl6irjzklpcg6nbkv6apry84d48";
};
buildInputs = [
ldutils
qtbase
qtcharts
qtsvg
marble.dev
qtwebengine
];
nativeBuildInputs = [
qmake
];
prePatch = ''
sed -ie "s,INCLUDEPATH += /usr/include/libldutils,INCLUDEPATH += ${ldutils}," ZombieTrackerGPS.pro
'';
preConfigure = ''
export LANG=en_US.UTF-8
export INSTALL_ROOT=$out
'';
postConfigure = ''
substituteInPlace Makefile --replace '$(INSTALL_ROOT)' ""
'';
meta = with lib; {
description = "GPS track manager for Qt using KDE Marble maps";
homepage = "https://gitlab.com/ldutils-projects/zombietrackergps";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ sohalt ];
platforms = platforms.linux;
};
}

View File

@ -1,13 +1,14 @@
{ stdenv, fetchgit, cmake, itk4, Cocoa }:
{ stdenv, fetchFromGitHub, cmake, itk4, Cocoa }:
stdenv.mkDerivation {
stdenv.mkDerivation rec {
pname = "c3d";
version = "unstable-2019-10-22";
version = "unstable-2020-10-05";
src = fetchgit {
url = "https://github.com/pyushkevich/c3d";
rev = "c04e2b84568654665c64d8843378c8bbd58ba9b0";
sha256 = "0lzldxvshl9q362mg76byc7s5zc9qx7mxf2wgyij5vysx8mihx3q";
src = fetchFromGitHub {
owner = "pyushkevich";
repo = pname;
rev = "0a87e3972ea403babbe2d05ec6d50855e7c06465";
sha256 = "0wsmkifqrcfy13fnwvinmnq1m0lkqmpyg7bgbwnb37mbrlbq06wf";
};
nativeBuildInputs = [ cmake ];
@ -15,11 +16,11 @@ stdenv.mkDerivation {
++ stdenv.lib.optional stdenv.isDarwin Cocoa;
meta = with stdenv.lib; {
homepage = "http://www.itksnap.org/c3d";
homepage = "https://github.com/pyushkevich/c3d";
description = "Medical imaging processing tool";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.gpl2;
license = licenses.gpl3;
broken = stdenv.isAarch64;
# /build/git-3453f61/itkextras/OneDimensionalInPlaceAccumulateFilter.txx:311:10: fatal error: xmmintrin.h: No such file or directory
};

View File

@ -2,6 +2,7 @@
, mkDerivationWith
, python3Packages
, fetchFromGitHub
, wrapQtAppsHook
}:
mkDerivationWith python3Packages.buildPythonApplication rec {
@ -27,8 +28,9 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
requests
];
postFixup = ''
wrapQtApp "$out/bin/cq-editor"
nativeBuildInputs = [ wrapQtAppsHook ];
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
checkInputs = with python3Packages; [

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitLab, cmake, vtk_9, libX11, libGL, Cocoa, OpenGL }:
stdenv.mkDerivation rec {
pname = "f3d";
version = "1.0.1";
src = fetchFromGitLab {
domain = "gitlab.kitware.com";
owner = "f3d";
repo = "f3d";
rev = "v${version}";
sha256 = "0a6r0jspkhl735f6zmnhby1g4dlmjqd5izgsp5yfdcdhqj4j63mg";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ vtk_9 ]
++ stdenv.lib.optionals stdenv.isLinux [ libGL libX11 ]
++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa OpenGL ];
meta = with stdenv.lib; {
description = "Fast and minimalist 3D viewer using VTK";
homepage = "https://kitware.github.io/F3D";
license = licenses.bsd3;
maintainers = with maintainers; [ bcdarwin ];
platforms = with platforms; unix;
};
}

View File

@ -7,24 +7,24 @@ let
bgrabitmap = fetchFromGitHub {
owner = "bgrabitmap";
repo = "bgrabitmap";
rev = "v11.1";
sha256 = "0bcmiiwly4a7w8p3m5iskzvk8rz87qhc0gcijrdvwg87cafd88gz";
rev = "v11.2.4";
sha256 = "1zk88crfn07md16wg6af4i8nlx4ikkhxq9gfk49jirwimgwbf1md";
};
bgracontrols = fetchFromGitHub {
owner = "bgrabitmap";
repo = "bgracontrols";
rev = "v6.7.2";
sha256 = "0cwxzv0rl6crkf6f67mvga5cn5pyhr6ksm8cqhpxjiqi937dnyxx";
rev = "v6.9";
sha256 = "0hwjlqlwqs4fqxlgay84hccs1lm3c6i9nmq9sxzrip410mggnjyw";
};
in stdenv.mkDerivation rec {
pname = "lazpaint";
version = "7.1.3";
version = "7.1.4";
src = fetchFromGitHub {
owner = "bgrabitmap";
repo = "lazpaint";
rev = "v${version}";
sha256 = "1sfb5hmhzscz3nv4cmc192jimkg70l4z3q3yxkivhw1hwwsv9cbg";
sha256 = "19b0wrjjyvz3g2d2gdsz8ihc1clda5v22yb597an8j9sblp9m0nf";
};
nativeBuildInputs = [ lazarus fpc makeWrapper ];

View File

@ -40,15 +40,15 @@ python3Packages.buildPythonApplication rec {
# Avoid double wrapping Python programs.
dontWrapQtApps = true;
preFixup = ''
# TODO: A bug in python wrapper
# see https://github.com/NixOS/nixpkgs/pull/75054#discussion_r357656916
preFixup = ''
makeWrapperArgs="''${qtWrapperArgs[@]}"
'';
postFixup = ''
# Executable in $out/bin is a symlink to $out/share/dupeguru/run.py
# so wrapPythonPrograms hook does not handle it automatically.
postFixup = ''
wrapPythonProgramsIn "$out/share/dupeguru" "$out $pythonPath"
'';
@ -58,5 +58,6 @@ python3Packages.buildPythonApplication rec {
license = licenses.bsd3;
platforms = platforms.linux;
maintainers = [ maintainers.novoxudonoser ];
broken = true; # mv: cannot stat '_block.cpython-38m*.so': No such file or directory
};
}

View File

@ -3,13 +3,13 @@
python3Packages.buildPythonApplication rec {
pname = "electron-cash";
version = "4.1.0";
version = "4.1.1";
src = fetchFromGitHub {
owner = "Electron-Cash";
repo = "Electron-Cash";
rev = version;
sha256 = "1ccfm6kkmbkvykfdzrisxvr0lx9kgq4l43ixk6v3xnvhnbfwz4s2";
sha256 = "1fllz2s20lg4hrppzmnlgjy9mrq7gaq66l2apb3vz1avzvsjw3gm";
};
propagatedBuildInputs = with python3Packages; [
@ -36,15 +36,6 @@ python3Packages.buildPythonApplication rec {
nativeBuildInputs = [ wrapQtAppsHook ];
patches = [
# Patch a failed test, this can be removed in next version
(fetchpatch {
url =
"https://github.com/Electron-Cash/Electron-Cash/commit/1a9122d59be0c351b14c174a60880c2e927e6168.patch";
sha256 = "0zw629ypn9jxb1y124s3dkbbf2q3wj1i97j16lzdxpjy3sk0p5hk";
})
];
postPatch = ''
substituteInPlace contrib/requirements/requirements.txt \
--replace "qdarkstyle==2.6.8" "qdarkstyle<3"
@ -70,9 +61,11 @@ python3Packages.buildPythonApplication rec {
# Electron Cash was unable to find the secp256k1 library on this system.
# Elliptic curve cryptography operations will be performed in slow
# Python-only mode.
postFixup = ''
wrapQtApp $out/bin/electron-cash \
--prefix LD_LIBRARY_PATH : ${secp256k1}/lib
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
makeWrapperArgs+=(
"--prefix" "LD_LIBRARY_PATH" ":" "${secp256k1}/lib"
)
'';
doInstallCheck = true;

View File

@ -36,8 +36,8 @@ python3Packages.buildPythonApplication rec {
sed -i '/Created: .*/d' gui/qt/icons_rc.py
'';
postFixup = ''
wrapQtApp $out/bin/electrum-ltc
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
checkPhase = ''

View File

@ -2,13 +2,13 @@
mkDerivation rec {
pname = "gpxsee";
version = "7.32";
version = "7.33";
src = fetchFromGitHub {
owner = "tumic0";
repo = "GPXSee";
rev = version;
sha256 = "0mcd6zv71laykg1208vkqmaxv1v12mqq47156gb78a5ww8paa0ka";
sha256 = "1k4zl7knlpwxrpqk1axkmy8x12915z15h3q2sjnx3jcnx6qw73ja";
};
patches = (substituteAll {

View File

@ -1,6 +1,7 @@
{ mkDerivation
, lib
, fetchurl
, fetchpatch
, extra-cmake-modules
, kcmutils
, kconfigwidgets
@ -13,25 +14,55 @@
, libfakekey
, libXtst
, qtx11extras
, qtmultimedia
, qtgraphicaleffects
, sshfs
, makeWrapper
, kwayland
, kio
, kpeoplevcard
, kpeople
, kirigami2
, pulseaudio-qt
}:
mkDerivation rec {
pname = "kdeconnect";
version = "1.3.5";
version = "20.08.1";
src = fetchurl {
url = "mirror://kde/stable/${pname}/${version}/${pname}-kde-${version}.tar.xz";
sha256 = "02lr3xx5s2mgddac4n3lkgr7ppf1z5m6ajs90rjix0vs8a271kp5";
url = "https://download.kde.org/stable/release-service/${version}/src/${pname}-kde-${version}.tar.xz";
sha256 = "0s76djgpx08jfmh99c7kx18mnr3w7bv4hdra120nicq89mmy7gwf";
};
patches = [
# https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/328
(fetchpatch {
url = "https://invent.kde.org/network/kdeconnect-kde/-/commit/6101ef3ad07d865958d58a3d2736f5536f1c5719.diff";
sha256 = "17mr7k13226vzcgxlmfs6q2mdc5j7vwp4iri9apmh6xlf6r591ac";
})
];
buildInputs = [
libfakekey libXtst
ki18n kiconthemes kcmutils kconfigwidgets kdbusaddons knotifications
qca-qt5 qtx11extras makeWrapper kwayland kio
libfakekey
libXtst
qtmultimedia
qtgraphicaleffects
pulseaudio-qt
kpeoplevcard
kpeople
kirigami2
ki18n
kiconthemes
kcmutils
kconfigwidgets
kdbusaddons
knotifications
qca-qt5
qtx11extras
makeWrapper
kwayland
kio
];
nativeBuildInputs = [ extra-cmake-modules kdoctools ];

View File

@ -1,6 +1,14 @@
--- a/build.xml 2019-08-26 23:22:55.104829846 +0300
+++ b/build.xml 2019-08-27 00:11:07.366257594 +0300
@@ -227,7 +227,7 @@
--- a/build.xml (revision 4555)
+++ a/build.xml (working copy)
@@ -222,13 +222,13 @@
<property name="svn.version.build" value="none"/>
<propertyfile file="${build.classes}/mkgmap-version.properties">
- <entry key="svn.version" value="${svn.version.build}" />
- <entry key="build.timestamp" value="${build.timestamp}" />
+ <entry key="svn.version" value="@version@" />
+ <entry key="build.timestamp" value="unknown" />
</propertyfile>
</target>
<!-- Compile the product itself (no tests). -->
@ -9,3 +17,30 @@
description="main compilation">
<javac srcdir="${src}" destdir="${build.classes}" encoding="utf-8" debug="true" includeantruntime="false">
@@ -263,7 +263,7 @@
</target>
<!-- Compile the test classes -->
- <target name="build-test" depends="build, resolve-test">
+ <target name="build-test" depends="build">
<mkdir dir="${build.test}" />
<javac srcdir="${test}" destdir="${build.test}" encoding="utf-8" debug="true" includeantruntime="false">
<include name="**/*.java" />
@@ -271,7 +271,7 @@
</javac>
</target>
- <target name="test" depends="build-test, obtain-test-input-files" description="Run the junit tests">
+ <target name="test" depends="build-test" description="Run the junit tests">
<mkdir dir="tmp/report"/>
<junit printsummary="yes" failureproperty="junit.failure" forkmode="once">
@@ -351,7 +351,7 @@
ignoreerrors="true"/>
</target>
- <target name="dist" depends="build, check-version, version-file"
+ <target name="dist" depends="build, version-file"
description="Make the distribution area">
<mkdir dir="${dist}"/>

View File

@ -1,56 +1,84 @@
{ stdenv, fetchurl, fetchsvn, jdk, jre, ant, makeWrapper }:
{ stdenv
, fetchurl
, fetchsvn
, jdk
, jre
, ant
, makeWrapper
, doCheck ? true
, withExamples ? false
}:
let
fastutil = fetchurl {
url = "http://ivy.mkgmap.org.uk/repo/it.unimi.dsi/fastutil/6.5.15-mkg.1b/jars/fastutil.jar";
sha256 = "0d88m0rpi69wgxhnj5zh924q4zsvxq8m4ybk7m9mr3gz1hx0yx8c";
};
osmpbf = fetchurl {
url = "http://ivy.mkgmap.org.uk/repo/crosby/osmpbf/1.3.3/jars/osmpbf.jar";
sha256 = "0zb4pqkwly5z30ww66qhhasdhdrzwmrw00347yrbgyk2ii4wjad3";
};
protobuf = fetchurl {
url = "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar";
sha256 = "0x6c4pbsizvk3lm6nxcgi1g2iqgrxcna1ip74lbn01f0fm2wdhg0";
};
in
version = "4565";
sha256 = "0cfh0msky5812l28mavy6p3k2zgyxb698xk79mvla9l45zcicnvw";
stdenv.mkDerivation rec {
deps = import ./deps.nix { inherit fetchurl; };
testInputs = import ./testinputs.nix { inherit fetchurl; };
in
stdenv.mkDerivation {
pname = "mkgmap";
version = "4432";
inherit version;
src = fetchsvn {
inherit sha256;
url = "https://svn.mkgmap.org.uk/mkgmap/mkgmap/trunk";
rev = version;
sha256 = "1z1ppf9v1b9clnx20v15xkmdrfw6q4h7i15drzxsdh2wl6bafzvx";
};
# This patch removes from the build process
# the automatic download of dependencies (see configurePhase)
patches = [ ./build.xml.patch ];
patches = [
# Disable automatic download of dependencies
./build.xml.patch
# Fix testJavaRules test
./fix-failing-test.patch
];
postPatch = with deps; ''
substituteInPlace build.xml \
--subst-var-by version ${version}
mkdir -p lib/compile
cp ${fastutil} lib/compile/${fastutil.name}
cp ${osmpbf} lib/compile/${osmpbf.name}
cp ${protobuf} lib/compile/${protobuf.name}
'' + stdenv.lib.optionalString doCheck ''
mkdir -p lib/test
cp ${fastutil} lib/test/${fastutil.name}
cp ${osmpbf} lib/test/${osmpbf.name}
cp ${protobuf} lib/test/${protobuf.name}
cp ${jaxb-api} lib/test/${jaxb-api.name}
cp ${junit} lib/test/${junit.name}
cp ${hamcrest-core} lib/test/${hamcrest-core.name}
mkdir -p test/resources/in/img
${stdenv.lib.concatMapStringsSep "\n" (res: ''
cp ${res} test/resources/in/${builtins.replaceStrings [ "__" ] [ "/" ] res.name}
'') testInputs}
'';
nativeBuildInputs = [ jdk ant makeWrapper ];
configurePhase = ''
mkdir -p lib/compile
cp ${fastutil} ${osmpbf} ${protobuf} lib/compile/
'';
buildPhase = "ant";
inherit doCheck;
checkPhase = "ant test";
installPhase = ''
cd dist
install -Dm644 mkgmap.jar $out/share/java/mkgmap/mkgmap.jar
install -Dm644 doc/mkgmap.1 $out/share/man/man1/mkgmap.1
cp -r lib/ $out/share/java/mkgmap/
install -Dm644 dist/mkgmap.jar $out/share/java/mkgmap/mkgmap.jar
install -Dm644 dist/doc/mkgmap.1 $out/share/man/man1/mkgmap.1
cp -r dist/lib/ $out/share/java/mkgmap/
makeWrapper ${jre}/bin/java $out/bin/mkgmap \
--add-flags "-jar $out/share/java/mkgmap/mkgmap.jar"
'' + stdenv.lib.optionalString withExamples ''
mkdir -p $out/share/mkgmap
cp -r dist/examples $out/share/mkgmap/
'';
meta = with stdenv.lib; {
description = "Create maps for Garmin GPS devices from OpenStreetMap (OSM) data";
homepage = "http://www.mkgmap.org.uk";
license = licenses.gpl2;
license = licenses.gpl2Only;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.all;
};

31
pkgs/applications/misc/mkgmap/deps.nix generated Normal file
View File

@ -0,0 +1,31 @@
{ fetchurl }:
{
fastutil = fetchurl {
url = "http://ivy.mkgmap.org.uk/repo/it.unimi.dsi/fastutil/6.5.15-mkg.1b/jars/fastutil.jar";
sha256 = "0d88m0rpi69wgxhnj5zh924q4zsvxq8m4ybk7m9mr3gz1hx0yx8c";
};
osmpbf = fetchurl {
url = "http://ivy.mkgmap.org.uk/repo/crosby/osmpbf/1.3.3/jars/osmpbf.jar";
sha256 = "0zb4pqkwly5z30ww66qhhasdhdrzwmrw00347yrbgyk2ii4wjad3";
};
protobuf = fetchurl {
url = "https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar";
sha256 = "0x6c4pbsizvk3lm6nxcgi1g2iqgrxcna1ip74lbn01f0fm2wdhg0";
};
xpp3 = fetchurl {
url = "https://repo1.maven.org/maven2/xpp3/xpp3/1.1.4c/xpp3-1.1.4c.jar";
sha256 = "1f9ifnxxj295xb1494jycbfm76476xm5l52p7608gf0v91d3jh83";
};
jaxb-api = fetchurl {
url = "https://repo1.maven.org/maven2/javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar";
sha256 = "00rxpc0m30d3jc572ni01ryxq8gcbnr955xsabrijg9pknc0fc48";
};
junit = fetchurl {
url = "https://repo1.maven.org/maven2/junit/junit/4.11/junit-4.11.jar";
sha256 = "1zh6klzv8w30dx7jg6pkhllk4587av4znflzhxz8x97c7rhf3a4h";
};
hamcrest-core = fetchurl {
url = "https://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar";
sha256 = "1sfqqi8p5957hs9yik44an3lwpv8ln2a6sh9gbgli4vkx68yzzb6";
};
}

View File

@ -0,0 +1,22 @@
--- a/test/uk/me/parabola/imgfmt/app/srt/SrtCollatorTest.java (revision 4555)
+++ a/test/uk/me/parabola/imgfmt/app/srt/SrtCollatorTest.java (working copy)
@@ -125,7 +125,7 @@
assertEquals("prim: different letter", -1, collator.compare("aaac", "aaad"));
assertEquals("prim: different letter", 1, collator.compare("aaae", "aaad"));
assertEquals(0, collator.compare("aaaa", "aaaa"));
- assertEquals(0, collator.compare("aáÄâ", "aaaa"));
+ //assertEquals(0, collator.compare("aáÄâ", "aaaa"));
collator.setStrength(Collator.SECONDARY);
assertEquals(0, collator.compare("AabBb", "aabbb"));
@@ -132,8 +132,8 @@
assertEquals(0, collator.compare("aabBb", "aabBb"));
assertEquals(0, collator.compare("aabbB", "aabBb"));
assertEquals(1, collator.compare("aáÄâ", "aaaa"));
- assertEquals("prim len diff", -1, collator.compare("aáÄâ", "aaaaa"));
- assertEquals(-1, collator.compare("aáÄâa", "aaaab"));
+ //assertEquals("prim len diff", -1, collator.compare("aáÄâ", "aaaaa"));
+ //assertEquals(-1, collator.compare("aáÄâa", "aaaab"));
collator.setStrength(Collator.TERTIARY);
assertEquals("prim: different case", 1, collator.compare("AabBb", "aabbb"));

View File

@ -0,0 +1,54 @@
--- a/build.xml (revision 597)
+++ a/build.xml (working copy)
@@ -207,12 +207,12 @@
<property name="svn.version.build" value="unknown"/>
<propertyfile file="${build.classes}/splitter-version.properties">
- <entry key="svn.version" value="${svn.version.build}" />
- <entry key="build.timestamp" value="${build.timestamp}" />
+ <entry key="svn.version" value="@version@" />
+ <entry key="build.timestamp" value="unknown" />
</propertyfile>
</target>
- <target name="compile" depends="prepare, resolve-compile" description="main compilation">
+ <target name="compile" depends="prepare" description="main compilation">
<javac srcdir="${src}" destdir="${build.classes}" debug="yes" includeantruntime="false">
<include name="**/*.java"/>
<classpath refid="classpath"/>
@@ -219,7 +219,7 @@
</javac>
</target>
- <target name="compile.tests" depends="prepare, resolve-test" description="test compilation">
+ <target name="compile.tests" depends="prepare" description="test compilation">
<javac srcdir="${test}" destdir="${build.test-classes}" debug="yes" includeantruntime="false">
<include name="**/*.java"/>
<classpath refid="test.classpath"/>
@@ -261,7 +261,7 @@
<fail if="junit.failure" message="Test failed. See test-reports/index.html"/>
</target>
- <target name="dist" depends="build, check-version, version-file" description="Make the distribution area">
+ <target name="dist" depends="build, version-file" description="Make the distribution area">
<mkdir dir="${dist}"/>
<mkdir dir="${dist}/doc/api"/>
@@ -324,7 +324,7 @@
</target>
<!-- Main -->
- <target name="build" depends="compile,compile.tests,run.tests">
+ <target name="build" depends="compile">
<copy todir="${build.classes}">
<fileset dir="${resources}">
<include name="*.properties"/>
@@ -349,7 +349,7 @@
ignoreerrors="true"/>
</target>
- <target name="run.func-tests" depends="compile,compile.tests,obtain-test-input-files" description="Run the functional tests">
+ <target name="run.func-tests" depends="compile,compile.tests" description="Run the functional tests">
<mkdir dir="tmp/report"/>
<junit printsummary="yes" failureproperty="junit.failure" forkmode="once">

View File

@ -0,0 +1,78 @@
{ stdenv
, fetchurl
, fetchsvn
, jdk
, jre
, ant
, makeWrapper
, doCheck ? true
}:
let
version = "597";
sha256 = "1al3160amw0gdarrc707dsppm0kcai9mpkfak7ffspwzw9alsndx";
deps = import ../deps.nix { inherit fetchurl; };
testInputs = import ./testinputs.nix { inherit fetchurl; };
in
stdenv.mkDerivation {
pname = "splitter";
inherit version;
src = fetchsvn {
inherit sha256;
url = "https://svn.mkgmap.org.uk/mkgmap/splitter/trunk";
rev = version;
};
patches = [
# Disable automatic download of dependencies
./build.xml.patch
# Fix func.SolverAndProblemGeneratorTest test
./fix-failing-test.patch
];
postPatch = with deps; ''
substituteInPlace build.xml \
--subst-var-by version ${version}
mkdir -p lib/compile
cp ${fastutil} lib/compile/${fastutil.name}
cp ${osmpbf} lib/compile/${osmpbf.name}
cp ${protobuf} lib/compile/${protobuf.name}
cp ${xpp3} lib/compile/${xpp3.name}
'' + stdenv.lib.optionalString doCheck ''
mkdir -p lib/test
cp ${junit} lib/test/${junit.name}
cp ${hamcrest-core} lib/test/${hamcrest-core.name}
mkdir -p test/resources/in/osm
${stdenv.lib.concatMapStringsSep "\n" (res: ''
cp ${res} test/resources/in/${builtins.replaceStrings [ "__" ] [ "/" ] res.name}
'') testInputs}
'';
nativeBuildInputs = [ jdk ant makeWrapper ];
buildPhase = "ant";
inherit doCheck;
checkPhase = "ant run.tests && ant run.func-tests";
installPhase = ''
install -Dm644 dist/splitter.jar $out/share/java/splitter/splitter.jar
install -Dm644 doc/splitter.1 $out/share/man/man1/splitter.1
cp -r dist/lib/ $out/share/java/splitter/
makeWrapper ${jre}/bin/java $out/bin/splitter \
--add-flags "-jar $out/share/java/splitter/splitter.jar"
'';
meta = with stdenv.lib; {
description = "Utility for splitting OpenStreetMap maps into tiles";
homepage = "http://www.mkgmap.org.uk";
license = licenses.gpl2Only;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.all;
};
}

View File

@ -0,0 +1,11 @@
--- a/test/func/SolverAndProblemGeneratorTest.java (revision 597)
+++ a/test/func/SolverAndProblemGeneratorTest.java (working copy)
@@ -89,7 +89,7 @@
for (String l : lines) {
realSize += l.length();
}
- assertEquals(f + " has wrong size", expectedSize, realSize);
+ //assertEquals(f + " has wrong size", expectedSize, realSize);
}
}

View File

@ -0,0 +1,18 @@
{ fetchurl }:
let
fetchTestInput = { res, sha256 }: fetchurl {
inherit sha256;
url = "http://www.mkgmap.org.uk/testinput/${res}";
name = builtins.replaceStrings [ "/" ] [ "__" ] res;
};
in
[
(fetchTestInput {
res = "osm/alaska-2016-12-27.osm.pbf";
sha256 = "0hmb5v71a1bxgvrg1cbfj5l27b3vvdazs4pyggpmhcdhbwpw7ppm";
})
(fetchTestInput {
res = "osm/hamburg-2016-12-26.osm.pbf";
sha256 = "08bny4aavwm3z2114q99fv3fi2w905zxi0fl7bqgjyhgk0fxjssf";
})
]

View File

@ -0,0 +1,66 @@
{ fetchurl }:
let
fetchTestInput = { res, sha256 }: fetchurl {
inherit sha256;
url = "http://www.mkgmap.org.uk/testinput/${res}";
name = builtins.replaceStrings [ "/" ] [ "__" ] res;
};
in
[
(fetchTestInput {
res = "osm/lon1.osm.gz";
sha256 = "1r8sl67hayjgybxy9crqwp7f1w0ljxvxh0apqcvr888yhsbb8drv";
})
(fetchTestInput {
res = "osm/uk-test-1.osm.gz";
sha256 = "0jdngkjn22jvi8q7hrzpqb9mnjlz82h1dwdmc4qrb64kkhzm4dfk";
})
(fetchTestInput {
res = "osm/uk-test-2.osm.gz";
sha256 = "05mw0qcdgki151ldmxayry0gqlb72jm5wrvxq3dkwq5i7jb21qs4";
})
(fetchTestInput {
res = "osm/is-in-samples.osm";
sha256 = "18vqfbq25ys59bj6dl6dq3q4m2ri3ki2xazim14fm94k1pbyhbh3";
})
(fetchTestInput {
res = "mp/test1.mp";
sha256 = "1dykr0z84c3fqgm9kdp2dzvxc3galjbx0dn9zxjw8cfk7mvnspj2";
})
(fetchTestInput {
res = "img/63240001.img";
sha256 = "1wmqgy940q1svazw85z8di20xyjm3vpaiaj9hizr47b549klw74q";
})
(fetchTestInput {
res = "img/63240002.img";
sha256 = "12ivywkiw6lrglyk0clnx5ff2wqj4z0c3f5yqjsqlsaawbmxqa1f";
})
(fetchTestInput {
res = "img/63240003.img";
sha256 = "19mgxqv6kqk8ahs8s819sj7cc79id67373ckwfsq7vvqyfrbasz1";
})
(fetchTestInput {
res = "hgt/N00W090.hgt.zip";
sha256 = "16hb06bgf47sz2mfbbx3xqmrh1nmm04wj4ngm512sng4rjhksxgn";
})
(fetchTestInput {
res = "hgt/N00W091.hgt.zip";
sha256 = "153j4wj7170qj81nr7sr6dp9zar62gnrkh6ww62bygpfqqyzdr1x";
})
(fetchTestInput {
res = "hgt/S01W090.hgt.zip";
sha256 = "0czgs9rhp7bnzmzm7907vprj3nhm2lj6q1piafk8dm9rcqkfg8sj";
})
(fetchTestInput {
res = "hgt/S01W091.hgt.zip";
sha256 = "0z58q3ai499mflxfjqhqv9i1di3fmp05pkv39886k1na107g3wbn";
})
(fetchTestInput {
res = "hgt/S02W090.hgt.zip";
sha256 = "0q7817gdxk2vq73ci6ffks288zqywc21f5ns73b6p5ds2lrxhf5n";
})
(fetchTestInput {
res = "hgt/S02W091.hgt.zip";
sha256 = "1mwpgd85v9n99gmx2bn8md7d312wvhq86w3c9k92y8ayrs20lmdr";
})
]

View File

@ -13,7 +13,7 @@ mkChromiumDerivation (base: rec {
installPhase = ''
mkdir -p "$libExecPath"
cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
cp -v "$buildPath/"*.so "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
cp -v "$buildPath/icudtl.dat" "$libExecPath/"
cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
cp -v "$buildPath/chrome" "$libExecPath/$packageName"

View File

@ -13,7 +13,6 @@
, bison, gperf
, glib, gtk3, dbus-glib
, glibc
, xorg
, libXScrnSaver, libXcursor, libXtst, libGLU, libGL
, protobuf, speechd, libXdamage, cups
, ffmpeg_3, libxslt, libxml2, at-spi2-core
@ -131,7 +130,6 @@ let
ninja which python2Packages.python perl pkgconfig
python2Packages.ply python2Packages.jinja2 nodejs
gnutar python2Packages.setuptools
(xorg.xcbproto.override { python = python2Packages.python; })
];
buildInputs = defaultDependencies ++ [
@ -150,13 +148,10 @@ let
++ optional pulseSupport libpulseaudio
++ optionals useOzone [ libdrm wayland mesa_drivers libxkbcommon ];
patches = optionals (versionRange "68" "86") [
./patches/nix_plugin_paths_68.patch
] ++ [
patches = [
./patches/remove-webp-include-69.patch
./patches/no-build-timestamps.patch
./patches/widevine-79.patch
./patches/dont-use-ANGLE-by-default.patch
# Unfortunately, chromium regularly breaks on major updates and
# then needs various patches backported in order to be compiled with GCC.
# Good sources for such patches and other hints:
@ -166,18 +161,18 @@ let
#
# ++ optionals (channel == "dev") [ ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" ) ]
# ++ optional (versionRange "68" "72") ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" )
] ++ optionals (useVaapi && versionRange "68" "86") [ # Improvements for the VA-API build:
./patches/enable-vdpau-support-for-nvidia.patch # https://aur.archlinux.org/cgit/aur.git/tree/vdpau-support.patch?h=chromium-vaapi
./patches/enable-video-acceleration-on-linux.patch # Can be controlled at runtime (i.e. without rebuilding Chromium)
] ++ optionals (useVaapi) [
# Check for enable-accelerated-video-decode on Linux:
(githubPatch "54deb9811ca9bd2327def5c05ba6987b8c7a0897" "11jvxjlkzz1hm0pvfyr88j7z3zbwzplyl5idkx92l2lzv4459c8d")
];
postPatch = optionalString (!versionRange "0" "86") ''
postPatch = ''
# Required for patchShebangs (unsupported interpreter directive, basename: invalid option -- '*', etc.):
substituteInPlace native_client/SConstruct \
--replace "#! -*- python -*-" ""
substituteInPlace third_party/harfbuzz-ng/src/src/update-unicode-tables.make \
--replace "/usr/bin/env -S make -f" "/usr/bin/make -f"
'' + ''
# We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX
substituteInPlace sandbox/linux/suid/client/setuid_sandbox_host.cc \
--replace \
@ -195,11 +190,6 @@ let
'/usr/share/locale/' \
'${glibc}/share/locale/'
substituteInPlace ui/gfx/x/BUILD.gn \
--replace \
'/usr/share/xcb' \
'${xorg.xcbproto}/share/xcb/'
sed -i -e 's@"\(#!\)\?.*xdg-@"\1${xdg_utils}/bin/xdg-@' \
chrome/browser/shell_integration_linux.cc

View File

@ -1,5 +1,5 @@
{ newScope, config, stdenv, fetchurl, makeWrapper
, llvmPackages_10, llvmPackages_11, ed, gnugrep, coreutils, xdg_utils
, llvmPackages_11, ed, gnugrep, coreutils, xdg_utils
, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
, libva ? null
, pipewire_0_2
@ -15,7 +15,7 @@
, enablePepperFlash ? false
, enableWideVine ? false
, useVaapi ? false # Deprecated, use enableVaapi instead!
, enableVaapi ? false # Disabled by default due to unofficial support and issues on radeon
, enableVaapi ? false # Disabled by default due to unofficial support
, useOzone ? false
, cupsSupport ? true
, pulseSupport ? config.pulseaudio or stdenv.isLinux
@ -23,7 +23,7 @@
}:
let
llvmPackages = llvmPackages_10;
llvmPackages = llvmPackages_11;
stdenv = llvmPackages.stdenv;
callPackage = newScope chromium;
@ -37,16 +37,6 @@ let
inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs
cupsSupport pulseSupport useOzone;
# TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-05-19";
src = fetchgit {
url = "https://gn.googlesource.com/gn";
rev = "d0a6f072070988e7b038496c4e7d6c562b649732";
sha256 = "0197msabskgfbxvhzq73gc3wlr3n9cr4bzrhy5z5irbvy05lxk17";
};
});
} // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "86") {
llvmPackages = llvmPackages_11;
gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-07-20";
src = fetchgit {
@ -56,7 +46,6 @@ let
};
});
} // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "87") {
llvmPackages = llvmPackages_11;
useOzone = true; # YAY: https://chromium-review.googlesource.com/c/chromium/src/+/2382834 \o/
gnChromium = gn.overrideAttrs (oldAttrs: {
version = "2020-08-17";
@ -163,8 +152,8 @@ let
Chromium's useVaapi was replaced by enableVaapi and you don't need to pass
"--ignore-gpu-blacklist" anymore (also no rebuilds are required anymore).
'' else lib.optionalString
(!enableVaapi)
"--add-flags --disable-accelerated-video-decode --add-flags --disable-accelerated-video-encode";
(enableVaapi)
"--add-flags --enable-accelerated-video-decode";
in stdenv.mkDerivation {
name = "chromium${suffix}-${version}";
inherit version;

View File

@ -1,26 +0,0 @@
A field trial currently enables the passthrough command decoder, which causes
gl_factory.cc to try kGLImplementationEGLANGLE first, which causes Chromium to fail
to load libGLESv2.so on NixOS. It somehow does not try kGLImplementationDesktopGL,
and so there is no GL support at all.
Revert to using the validating command decoder, which prevents gl_factory.cc
from touching allowed_impls, allowing it to successfully use kGLImplementationDesktopGL.
diff --git a/ui/gl/gl_utils.cc b/ui/gl/gl_utils.cc
index 697cbed5fe2d..8419bdb21a2f 100644
--- a/ui/gl/gl_utils.cc
+++ b/ui/gl/gl_utils.cc
@@ -71,9 +71,10 @@ bool UsePassthroughCommandDecoder(const base::CommandLine* command_line) {
} else if (switch_value == kCmdDecoderValidatingName) {
return false;
} else {
- // Unrecognized or missing switch, use the default.
- return base::FeatureList::IsEnabled(
- features::kDefaultPassthroughCommandDecoder);
+ // Ignore the field trial that enables it; disable it until
+ // gl_factory.cc kGLImplementationEGLANGLE issues are sorted
+ // out on NixOS.
+ return false;
}
}
}

View File

@ -1,65 +0,0 @@
--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
@@ -641,6 +641,7 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
// |vpp_vaapi_wrapper_| for VaapiPicture to DownloadFromSurface() the VA's
// internal decoded frame.
if (buffer_allocation_mode_ != BufferAllocationMode::kNone &&
+ buffer_allocation_mode_ != BufferAllocationMode::kWrapVdpau &&
!vpp_vaapi_wrapper_) {
vpp_vaapi_wrapper_ = VaapiWrapper::Create(
VaapiWrapper::kVideoProcess, VAProfileNone,
@@ -665,7 +666,8 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
PictureBuffer buffer = buffers[i];
buffer.set_size(requested_pic_size_);
std::unique_ptr<VaapiPicture> picture = vaapi_picture_factory_->Create(
- (buffer_allocation_mode_ == BufferAllocationMode::kNone)
+ ((buffer_allocation_mode_ == BufferAllocationMode::kNone) ||
+ (buffer_allocation_mode_ == BufferAllocationMode::kWrapVdpau))
? vaapi_wrapper_
: vpp_vaapi_wrapper_,
make_context_current_cb_, bind_image_cb_, buffer);
@@ -1093,6 +1095,12 @@ VaapiVideoDecodeAccelerator::GetSupportedProfiles() {
VaapiVideoDecodeAccelerator::BufferAllocationMode
VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ // NVIDIA blobs use VDPAU
+ if (VaapiWrapper::GetImplementationType() == VAImplementation::kNVIDIAVDPAU) {
+ LOG(INFO) << "VA-API driver on VDPAU backend";
+ return BufferAllocationMode::kWrapVdpau;
+ }
+
// TODO(crbug.com/912295): Enable a better BufferAllocationMode for IMPORT
// |output_mode_| as well.
if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.h
+++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.h
@@ -204,6 +204,7 @@ class MEDIA_GPU_EXPORT VaapiVideoDecodeAccelerator
// Using |client_|s provided PictureBuffers and as many internally
// allocated.
kNormal,
+ kWrapVdpau,
};
// Decides the concrete buffer allocation mode, depending on the hardware
--- a/media/gpu/vaapi/vaapi_wrapper.cc
+++ b/media/gpu/vaapi/vaapi_wrapper.cc
@@ -131,6 +131,9 @@ media::VAImplementation VendorStringToImplementationType(
} else if (base::StartsWith(va_vendor_string, "Intel iHD driver",
base::CompareCase::SENSITIVE)) {
return media::VAImplementation::kIntelIHD;
+ } else if (base::StartsWith(va_vendor_string, "Splitted-Desktop Systems VDPAU",
+ base::CompareCase::SENSITIVE)) {
+ return media::VAImplementation::kNVIDIAVDPAU;
}
return media::VAImplementation::kOther;
}
--- a/media/gpu/vaapi/vaapi_wrapper.h
+++ b/media/gpu/vaapi/vaapi_wrapper.h
@@ -79,6 +79,7 @@ enum class VAImplementation {
kIntelIHD,
kOther,
kInvalid,
+ kNVIDIAVDPAU,
};
// This class handles VA-API calls and ensures proper locking of VA-API calls

View File

@ -1,48 +0,0 @@
From b2144fd28e09cd52e7a88a62a9d9b54cf9922f9f Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Tue, 14 Apr 2020 14:16:10 +0200
Subject: [PATCH] Enable accelerated video decode on Linux
This will enable accelerated video decode on Linux by default (i.e.
without "--ignore-gpu-blacklist"), but on NixOS we'll provide
"--disable-accelerated-video-decode" and
"--disable-accelerated-video-encode" by default to avoid regressions
(e.g. VA-API doesn't work properly for some radeon drivers).
Video acceleration can then be enabled via:
chromium.override { enableVaapi = true; }
without rebuilding Chromium.
---
gpu/config/software_rendering_list.json | 16 ----------------
1 file changed, 16 deletions(-)
diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
index 22712bdbf38f..a06dd19a50e4 100644
--- a/gpu/config/software_rendering_list.json
+++ b/gpu/config/software_rendering_list.json
@@ -336,22 +336,6 @@
]
},
{
- "id": 48,
- "description": "Accelerated video decode is unavailable on Linux",
- "cr_bugs": [137247, 1032907],
- "os": {
- "type": "linux"
- },
- "exceptions": [
- {
- "machine_model_name": ["Chromecast"]
- }
- ],
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
"id": 50,
"description": "Disable VMware software renderer on older Mesa",
"cr_bugs": [145531, 332596, 571899, 629434],
--
2.11.0

View File

@ -1,61 +0,0 @@
diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc
index f4e119d..d9775bd 100644
--- a/chrome/common/chrome_paths.cc
+++ b/chrome/common/chrome_paths.cc
@@ -68,21 +68,14 @@ static base::LazyInstance<base::FilePath>
g_invalid_specified_user_data_dir = LAZY_INSTANCE_INITIALIZER;
// Gets the path for internal plugins.
-bool GetInternalPluginsDirectory(base::FilePath* result) {
-#if defined(OS_MACOSX)
- // If called from Chrome, get internal plugins from a subdirectory of the
- // framework.
- if (base::mac::AmIBundled()) {
- *result = chrome::GetFrameworkBundlePath();
- DCHECK(!result->empty());
- *result = result->Append("Internet Plug-Ins");
- return true;
- }
- // In tests, just look in the module directory (below).
-#endif
-
- // The rest of the world expects plugins in the module directory.
- return base::PathService::Get(base::DIR_MODULE, result);
+bool GetInternalPluginsDirectory(base::FilePath* result,
+ const std::string& ident) {
+ std::string full_env = std::string("NIX_CHROMIUM_PLUGIN_PATH_") + ident;
+ const char* value = getenv(full_env.c_str());
+ if (value == NULL)
+ return base::PathService::Get(base::DIR_MODULE, result);
+ else
+ *result = base::FilePath(value);
}
// Gets the path for bundled implementations of components. Note that these
@@ -272,7 +265,7 @@ bool PathProvider(int key, base::FilePath* result) {
create_dir = true;
break;
case chrome::DIR_INTERNAL_PLUGINS:
- if (!GetInternalPluginsDirectory(&cur))
+ if (!GetInternalPluginsDirectory(&cur, "ALL"))
return false;
break;
case chrome::DIR_COMPONENTS:
@@ -280,7 +273,7 @@ bool PathProvider(int key, base::FilePath* result) {
return false;
break;
case chrome::DIR_PEPPER_FLASH_PLUGIN:
- if (!GetInternalPluginsDirectory(&cur))
+ if (!GetInternalPluginsDirectory(&cur, "PEPPERFLASH"))
return false;
cur = cur.Append(kPepperFlashBaseDirectory);
break;
@@ -358,7 +351,7 @@ bool PathProvider(int key, base::FilePath* result) {
cur = cur.DirName();
}
#else
- if (!GetInternalPluginsDirectory(&cur))
+ if (!GetInternalPluginsDirectory(&cur, "PNACL"))
return false;
#endif
cur = cur.Append(FILE_PATH_LITERAL("pnacl"));

View File

@ -1,17 +1,17 @@
{
"stable": {
"version": "85.0.4183.121",
"sha256": "0a1xn39kmvyfpal6pgnylpy30z0322p3v7sx6vxi0r2naiz58670",
"sha256bin64": "08vqf1v91703aik47344bl409rsl4myar9bsd2lsvzqncncwsaca"
"version": "86.0.4240.75",
"sha256": "1ddw4p9zfdzhi5hrd8x14k4w326znljzprnpfi2f917rlpnl2ynx",
"sha256bin64": "17isxkd80rccqim6izzl08vw4yr52qsk6djp1rmhhijzg9rsvghz"
},
"beta": {
"version": "86.0.4240.42",
"sha256": "06cfhiym9xmz2q86v6b6xcicrrp2pmr7karavylzz4fqvwd2v6fa",
"sha256bin64": "1z5zmdc2i31iimps7p5z43vv4qi83c8ljb7x68zc1rvf8x62p7xj"
"version": "86.0.4240.75",
"sha256": "1ddw4p9zfdzhi5hrd8x14k4w326znljzprnpfi2f917rlpnl2ynx",
"sha256bin64": "16snxdka5bkbvybx6x0dzgfbfaifv0jcc1dcny6vlqqp2fmb2v39"
},
"dev": {
"version": "87.0.4263.3",
"sha256": "1ybfrlm4417lpbg5qcwhq5p6nnxrw68wzyy5zvb1sg1ma8s9hhkk",
"sha256bin64": "1f7a272kalglmdwmrrzb4iw3crvvpv3mhxca5jh75qpldn4gby6m"
"version": "87.0.4278.0",
"sha256": "1ywmv4iwn2as7vk2n0pslnmr300fl5y809ynxiw5xqcx9j6i8w85",
"sha256bin64": "15dvwvk6l6n7l04085hr48hlvsijypasyk7d8iq3s6cxai3wx4cl"
}
}

View File

@ -1,34 +0,0 @@
# Generated by debian-patches.sh from debian-patches.txt
let
prefix = "https://sources.debian.org/data/main/e/elinks/0.13.2-1/debian/patches";
in
[
{
url = "${prefix}/03_459467_ui.leds.enable_0.diff";
sha256 = "0l35lglmnvyzz3xyy18nksra14gsp7yc67rskbzmr61szg8b9jqr";
}
{
url = "${prefix}/04_436817_nostrip.diff";
sha256 = "0ixvxaba1ww375gpdh7r67srp3xsfb5vyz2sfv1pgj6mczwg8v24";
}
{
url = "${prefix}/07_617713_cache_control.diff";
sha256 = "0drn4r33ywvmihr0drsp2jwz7mlf5z5fv8ra7fpkdavx45xqaf15";
}
{
url = "${prefix}/10-reproducible-build.diff";
sha256 = "024yp3xsh0hw29l1wikfmk9j3mqval6pdr4xi7rzffrlaknh58h5";
}
{
url = "${prefix}/14_debug_disable_Werror.diff";
sha256 = "0s620r88ikfljflb5nd133cww2wc0i85ag8lzpvrsmg0q00hfmax";
}
{
url = "${prefix}/16_POST_BUFFER_SIZE.diff";
sha256 = "17vkvy0d0rabmgk8iqwgdsrgjn6dbb9cf6760qbz82zlb37s09nh";
}
{
url = "${prefix}/11-reproducible-build.diff";
sha256 = "1z17g9z68lh12fs6fkralfghh8bs1bs5mlq83d15l4bn3za3s0sl";
}
]

View File

@ -1,8 +0,0 @@
elinks/0.13.2-1
03_459467_ui.leds.enable_0.diff
04_436817_nostrip.diff
07_617713_cache_control.diff
10-reproducible-build.diff
14_debug_disable_Werror.diff
16_POST_BUFFER_SIZE.diff
11-reproducible-build.diff

View File

@ -1,42 +1,38 @@
{ stdenv, fetchurl, fetchpatch, ncurses, xlibsWrapper, bzip2, zlib, brotli, openssl, autoconf, automake, gettext, pkgconfig, libev
, gpm
{ stdenv, fetchFromGitHub, fetchpatch, ncurses, xlibsWrapper, bzip2, zlib
, brotli, zstd, lzma, openssl, autoreconfHook, gettext, pkgconfig, libev
, gpm, libidn, tre, expat
, # Incompatible licenses, LGPLv3 - GPLv2
enableGuile ? false, guile ? null
, enablePython ? false, python ? null
, enablePerl ? (stdenv.hostPlatform == stdenv.buildPlatform), perl ? null
, enableSpidermonkey ? (stdenv.hostPlatform == stdenv.buildPlatform), spidermonkey_38 ? null
# re-add javascript support when upstream supports modern spidermonkey
}:
assert enableGuile -> guile != null;
assert enablePython -> python != null;
stdenv.mkDerivation rec {
pname = "elinks-0.13.2";
version = "0.13.2";
pname = "elinks";
version = "0.13.5";
src = fetchurl {
url = "https://deb.debian.org/debian/pool/main/e/elinks/elinks_${version}.orig.tar.gz";
sha256 = "0xkpqnqy0x8sizx4snca0pw3q98gkhnw5a05yf144j1x1y2nb14c";
src = fetchFromGitHub {
owner = "rkd77";
repo = "felinks";
rev = "v${version}";
sha256 = "067l9m47j40039q8mvvnxd1amwrac3x6vv0c0svimfpvj4ammgkg";
};
patches = map fetchurl (import ./debian-patches.nix);
postPatch = (stdenv.lib.optional stdenv.isDarwin) ''
patch -p0 < ${fetchpatch {
url = "https://raw.githubusercontent.com/macports/macports-ports/72bed7749e76b9092ddd8d9fe2d8449c5afb1d71/www/elinks/files/patch-perl.diff";
sha256 = "14q9hk3kg2n2r5b062hvrladp7b4yzysvhq07903w9kpg4zdbyqh";
}}
'';
buildInputs = [ ncurses xlibsWrapper bzip2 zlib brotli openssl libev ]
buildInputs = [
ncurses xlibsWrapper bzip2 zlib brotli zstd lzma
openssl libidn tre expat libev
]
++ stdenv.lib.optional stdenv.isLinux gpm
++ stdenv.lib.optional enableGuile guile
++ stdenv.lib.optional enablePython python
++ stdenv.lib.optional enablePerl perl
++ stdenv.lib.optional enableSpidermonkey spidermonkey_38
;
nativeBuildInputs = [ autoconf automake gettext pkgconfig ];
nativeBuildInputs = [ autoreconfHook gettext pkgconfig ];
configureFlags = [
"--enable-finger"
@ -46,23 +42,20 @@ stdenv.mkDerivation rec {
"--enable-bittorrent"
"--enable-nntp"
"--enable-256-colors"
"--enable-true-color"
"--with-lzma"
"--with-libev"
"--with-terminfo"
] ++ stdenv.lib.optional enableGuile "--with-guile"
++ stdenv.lib.optional enablePython "--with-python"
++ stdenv.lib.optional enablePerl "--with-perl"
++ stdenv.lib.optional enableSpidermonkey "--with-spidermonkey=${spidermonkey_38}"
;
preConfigure = ''
patchShebangs ./autogen.sh
./autogen.sh
'';
meta = with stdenv.lib; {
description = "Full-featured text-mode web browser (package based on the fork felinks)";
homepage = "https://github.com/rkd77/felinks";
license = licenses.gpl2;
platforms = with platforms; linux ++ darwin;
maintainers = with maintainers; [ iblech ];
maintainers = with maintainers; [ iblech gebner ];
};
}

View File

@ -11,7 +11,7 @@
buildGoModule rec {
pname = "minikube";
version = "1.13.0";
version = "1.13.1";
vendorSha256 = "09bcp7pqbs9j06z1glpad70dqlsnrf69vn75l00bdjknbrvbzrb9";
@ -21,7 +21,7 @@ buildGoModule rec {
owner = "kubernetes";
repo = "minikube";
rev = "v${version}";
sha256 = "1xlz07q0nlsq6js58b5ad0wxajwganaqcvwglj4w6fgmiqm9s1ny";
sha256 = "1x4x40nwcdshxzpg22v8nlzaprz1c6sizam47mwvqmb53p9qv90q";
};
nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ];
@ -49,7 +49,7 @@ buildGoModule rec {
homepage = "https://minikube.sigs.k8s.io";
description = "A tool that makes it easy to run Kubernetes locally";
license = licenses.asl20;
maintainers = with maintainers; [ ebzzry copumpkin vdemeester atkinschang ];
maintainers = with maintainers; [ ebzzry copumpkin vdemeester atkinschang Chili-Man ];
platforms = platforms.unix;
};
}

View File

@ -2,22 +2,24 @@
, buildGoPackage
, fetchFromGitHub
, callPackage
, runtimeShell
}:
let
list = import ./data.nix;
list = lib.importJSON ./providers.json;
toDrv = data:
buildGoPackage rec {
inherit (data) owner repo rev version sha256;
name = "${repo}-${version}";
goPackagePath = "github.com/${owner}/${repo}";
toDrv = name: data:
buildGoPackage {
pname = data.repo;
version = data.version;
goPackagePath = "github.com/${data.owner}/${data.repo}";
subPackages = [ "." ];
src = fetchFromGitHub {
inherit owner repo rev sha256;
inherit (data) owner repo rev sha256;
};
# Terraform allow checking the provider versions, but this breaks
# if the versions are not provided via file paths.
postBuild = "mv $NIX_BUILD_TOP/go/bin/${repo}{,_v${version}}";
postBuild = "mv $NIX_BUILD_TOP/go/bin/${data.repo}{,_v${data.version}}";
passthru = data;
};
# Google is now using the vendored go modules, which works a bit differently
@ -48,7 +50,7 @@ let
});
# These providers are managed with the ./update-all script
automated-providers = lib.mapAttrs (_: toDrv) list;
automated-providers = lib.mapAttrs (toDrv) list;
# These are the providers that don't fall in line with the default model
special-providers = {
@ -57,6 +59,13 @@ let
google-beta = patchGoModVendor automated-providers.google-beta;
ibm = patchGoModVendor automated-providers.ibm;
acme = automated-providers.acme.overrideAttrs (attrs: {
prePatch = attrs.prePatch or "" + ''
substituteInPlace go.mod --replace terraform-providers/terraform-provider-acme getstackhead/terraform-provider-acme
substituteInPlace main.go --replace terraform-providers/terraform-provider-acme getstackhead/terraform-provider-acme
'';
});
# providers that were moved to the `hashicorp` organization,
# but haven't updated their references yet:

View File

@ -4,7 +4,7 @@
}:
buildGoModule rec {
name = "terraform-provider-keycloak-${version}";
pname = "terraform-provider-keycloak";
version = "1.20.0";
src = fetchFromGitHub {

File diff suppressed because it is too large Load Diff

View File

@ -1,177 +0,0 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p bash coreutils jq nix gitAndTools.hub
# vim: ft=sh sw=2 et
# shellcheck shell=bash
#
# This scripts scans the github terraform-providers repo for new releases,
# generates the corresponding nix code and finally generates an index of
# all the providers given in ./providers.txt.
set -euo pipefail
# the maximum number of attempts before giving up inside of GET and prefetch_github
readonly maxAttempts=30
get_tf_providers_org() {
# returns all terraform providers in a given organization, and their the
# latest tags, in the format
# $org/$repo $rev
local org=$1
hub api --paginate graphql -f query="
query(\$endCursor: String) {
repositoryOwner(login: \"${org}\") {
repositories(first: 100, after: \$endCursor) {
nodes {
nameWithOwner
name
refs(first: 1, refPrefix: \"refs/tags/\", orderBy: {field: TAG_COMMIT_DATE, direction: DESC}) {
nodes {
name
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
}" | \
jq -r '.data.repositoryOwner.repositories.nodes[] | select(.name | startswith("terraform-provider-")) | select((.refs.nodes | length) > 0) | .nameWithOwner + " " + .refs.nodes[0].name'
# filter the result with jq:
# - repos need to start with `teraform-provider-`
# - they need to have at least one tag
# for each of the remaining repos, assemble a string $org/$repo $rev
}
get_latest_repo_tag() {
# of a given repo and owner, retrieve the latest tag
local owner=$1
local repo=$2
hub api --paginate "https://api.github.com/repos/$owner/$repo/git/refs/tags" | \
jq -r '.[].ref' | \
grep -v 'v\.' | \
cut -d '/' -f 3- | \
sort --version-sort | \
tail -1
}
prefetch_github() {
# of a given owner, repo and rev, fetch the tarball and return the output of
# `nix-prefetch-url`
local owner=$1
local repo=$2
local rev=$3
local retry=1
while ! nix-prefetch-url --unpack "https://github.com/$owner/$repo/archive/$rev.tar.gz"; do
echo "The nix-prefetch-url command has failed. Attempt $retry/${maxAttempts}" >&2
if [[ "${retry}" -eq "${maxAttempts}" ]]; then
exit 1
fi
retry=$(( retry + 1 ))
sleep 5
done
}
echo_entry() {
local owner=$1
local repo=$2
local rev=$3
local version=${rev#v}
local sha256=$4
cat <<EOF
{
owner = "$owner";
repo = "$repo";
rev = "$rev";
version = "$version";
sha256 = "$sha256";
};
EOF
}
indent() { sed 's/^/ /'; }
add_provider() {
org="${1}"
repo="${2}"
rev="${3}"
echo "*** $org/$repo $rev ***"
name=$(echo "$repo" | cut -d - -f 3-)
sha256=$(prefetch_github "$org" "$repo" "$rev")
{
echo " $name ="
echo_entry "$org" "$repo" "$rev" "$sha256" | indent
} >> data.nix
}
## Main ##
cd "$(dirname "$0")"
# individual repos to fetch
slugs=(
IBM-Cloud/terraform-provider-ibm
ajbosco/terraform-provider-segment
camptocamp/terraform-provider-pass
carlpett/terraform-provider-sops
poseidon/terraform-provider-matchbox
poseidon/terraform-provider-ct
tweag/terraform-provider-nixos
tweag/terraform-provider-secret
)
# a list of providers to ignore
blacklist=(
terraform-providers/terraform-provider-azure-classic
terraform-providers/terraform-provider-cidr
terraform-providers/terraform-provider-circonus
terraform-providers/terraform-provider-cloudinit
terraform-providers/terraform-provider-quorum
hashicorp/terraform-provider-time
terraform-providers/terraform-provider-vmc
)
cat <<HEADER > data.nix
# Generated with ./update-all
{
HEADER
# assemble list of terraform providers
providers=$(get_tf_providers_org "terraform-providers")
providers=$(echo "$providers";get_tf_providers_org "hashicorp")
# add terraform-providers from slugs
for slug in "${slugs[@]}"; do
# retrieve latest tag
org=${slug%/*}
repo=${slug#*/}
rev=$(get_latest_repo_tag "$org" "$repo")
# add to list
providers=$(echo "$providers";echo "$org/$repo $rev")
done
# filter out all providers on the blacklist
for repo in "${blacklist[@]}"; do
providers=$(echo "$providers" | grep -v "^${repo} ")
done
# sort results alphabetically by repo name
providers=$(echo "$providers" | sort -t "/" --key=2)
# render list
IFS=$'\n'
for provider in $providers; do
org=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f1)
repo=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f2)
rev=$(echo "$provider" | cut -d " " -f 2)
add_provider "${org}" "${repo}" "${rev}"
done
cat <<FOOTER >> data.nix
}
FOOTER
echo Done.

View File

@ -0,0 +1,22 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p jq
# shellcheck shell=bash
# Update all providers which have specified provider source address
set -euo pipefail
providers=$(
jq -r 'to_entries
| map_values(.value + { alias: .key })
| .[]
| select(."provider-source-address"?)
| .alias' providers.json
)
echo "Will update providers:"
echo "$providers"
for provider in $providers; do
echo "Updating $provider"
./update-provider "$provider"
done

View File

@ -0,0 +1,77 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p coreutils curl jq
# shellcheck shell=bash
#
# Update a terraform provider to the latest version advertised at
# the provider source address.
set -euo pipefail
USAGE=$(cat<<DOC
Specify the terraform provider name to update.
Example:
To update nixpkgs.terraform-providers.aws run:
./update-provider aws
DOC
)
provider_name="${1:-}"
if [ -z "$provider_name" ]; then
echo "No providers specified!"
echo
echo "$USAGE"
exit 1
fi
provider_source_address="$(jq -r ".$provider_name.\"provider-source-address\"" providers.json)"
if [ "$provider_source_address" == "null" ]; then
echo "No provider source address specified with provider: $provider_name"
exit 1
fi
# The provider source address (used inside Terraform `required_providers` block) is
# used to compute the registry API endpoint
#
# registry.terraform.io/hashicorp/aws (provider source address)
# registry.terraform.io/providers/hashicorp/aws (provider URL for the website)
# registry.terraform.io/v1/providers/hashicorp/aws (provider URL for the JSON API)
registry_response=$(curl -s https://"${provider_source_address/\///v1/providers/}")
prefetch_github() {
# of a given owner, repo and rev, fetch the tarball and return the output of
# `nix-prefetch-url`
local owner=$1
local repo=$2
local rev=$3
nix-prefetch-url --unpack "https://github.com/$owner/$repo/archive/$rev.tar.gz"
}
provider_source_url="$(jq -r '.source' <<< "$registry_response")"
org="$(echo "$provider_source_url" | cut -d '/' -f 4)"
repo="$(echo "$provider_source_url" | cut -d '/' -f 5)"
rev="$(jq -r '.tag' <<< "$registry_response")"
sha256=$(prefetch_github "$org" "$repo" "$rev")
version="$(jq -r '.version' <<< "$registry_response")"
updated_provider="$(mktemp)"
cat <<EOF >> "$updated_provider"
{
"$provider_name": {
"owner": "$org",
"repo": "$repo",
"rev": "$rev",
"sha256": "$sha256",
"version": "$version",
"provider-source-address": "$provider_source_address"
}
}
EOF
original_provider_list="$(mktemp)"
cat providers.json > "$original_provider_list"
jq --sort-keys --slurp '.[0] * .[1]' "$original_provider_list" "$updated_provider" > providers.json

View File

@ -1,5 +1,5 @@
{ stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils
, runCommand, writeText, terraform-providers, fetchpatch }:
, runCommand, runtimeShell, writeText, terraform-providers, fetchpatch }:
let
goPackagePath = "github.com/hashicorp/terraform";
@ -43,12 +43,13 @@ let
homepage = "https://www.terraform.io/";
license = licenses.mpl20;
maintainers = with maintainers; [
zimbatm
peterhoeg
Chili-Man
babariviere
kalbasit
marsam
babariviere
Chili-Man
peterhoeg
timstott
zimbatm
];
};
} // attrs');
@ -59,6 +60,35 @@ let
let
actualPlugins = plugins terraform.plugins;
# Make providers available in Terraform 0.13 and 0.12 search paths.
pluginDir = lib.concatMapStrings (pl: let
inherit (pl) version GOOS GOARCH;
pname = pl.pname or (throw "${pl.name} is missing a pname attribute");
# This is just the name, without the terraform-provider- prefix
plugin_name = lib.removePrefix "terraform-provider-" pname;
slug = pl.passthru.provider-source-address or "registry.terraform.io/nixpkgs/${plugin_name}";
shim = writeText "shim" ''
#!${runtimeShell}
exec ${pl}/bin/${pname}_v${version} "$@"
'';
in ''
TF_0_13_PROVIDER_PATH=$out/plugins/${slug}/${version}/${GOOS}_${GOARCH}/${pname}_v${version}
mkdir -p "$(dirname $TF_0_13_PROVIDER_PATH)"
cp ${shim} "$TF_0_13_PROVIDER_PATH"
chmod +x "$TF_0_13_PROVIDER_PATH"
TF_0_12_PROVIDER_PATH=$out/plugins/${pname}_v${version}
cp ${shim} "$TF_0_12_PROVIDER_PATH"
chmod +x "$TF_0_12_PROVIDER_PATH"
''
) actualPlugins;
# Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries
wrapperInputs = lib.unique (lib.flatten
(lib.catAttrs "propagatedBuildInputs"
@ -87,15 +117,10 @@ let
inherit (terraform) name;
buildInputs = [ makeWrapper ];
buildCommand = ''
buildCommand = pluginDir + ''
mkdir -p $out/bin/
makeWrapper "${terraform}/bin/terraform" "$out/bin/terraform" \
--set NIX_TERRAFORM_PLUGIN_DIR "${
buildEnv {
name = "tf-plugin-env";
paths = actualPlugins;
}
}/bin" \
--set NIX_TERRAFORM_PLUGIN_DIR $out/plugins \
--prefix PATH : "${lib.makeBinPath wrapperInputs}"
'';

View File

@ -25,10 +25,8 @@ buildPythonApplication rec {
xvfb-run -s '-screen 0 800x600x24' ./test-runner
'';
postInstall = ''
for program in $out/bin/*; do
wrapQtApp $program --prefix PYTHONPATH : $PYTHONPATH
done
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
meta = with stdenv.lib; {

View File

@ -1,7 +1,7 @@
{ callPackage, libsForQt5 }:
let
stableVersion = "2.2.14";
stableVersion = "2.2.15";
previewVersion = stableVersion;
addVersion = args:
let version = if args.stable then stableVersion else previewVersion;
@ -26,8 +26,8 @@ let
};
mkGui = args: libsForQt5.callPackage (import ./gui.nix (addVersion args // extraArgs)) { };
mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { };
guiSrcHash = "0y0dkyky2vw8ixm8nx4qhsj5b6hk0lv2cayrj4879icmp8zc4dy3";
serverSrcHash = "1vpsvvisw0sivlbjwawskkyiavl092qxaqxi13khkimz5fk0d3rc";
guiSrcHash = "149yphmxc47bhc2f942lp4bx354qj3cyrpn10s1xabkn2hwrsm0d";
serverSrcHash = "03cfg48xzgz362ra5x853k8r244dgbrmszcprs2lg70i3m722345";
in {
guiStable = mkGui {
stable = true;

View File

@ -4,11 +4,11 @@
}:
mkDerivation rec {
pname = "hpmyroom";
version = "12.0.0.0220";
version = "12.1.1.0257";
src = fetchurl {
url = "https://www.myroom.hpe.com/downloadfiles/${pname}-${version}.x86_64.rpm";
sha256 = "0gajj2s6l7jj8520agrv2dyisg7hhacbwzqlsp9a0xdxr0v71jhr";
sha256 = "1xm41v324zq1x5awgb7fr238f7ml7vq6jrfh84358i5shgha1g2k";
};
nativeBuildInputs = [

View File

@ -3,18 +3,18 @@
}:
let
version = "0.7.6";
version = "0.7.7";
in stdenv.mkDerivation rec {
pname = "rambox";
inherit version;
src = {
x86_64-linux = fetchurl {
url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-amd64.deb";
sha256 = "1v9l5nfd25mq448457hg0mj5bzylh0krk411kbr73s7lbaaww1jl";
sha256 = "0bij4f1bkg94gc8pq7r6yfym5zcvwc2ymdnmnmh5m4h1pa1gk6x9";
};
i686-linux = fetchurl {
url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-i386.deb";
sha256 = "0zhn5hnpl6fpgshp1vwghq6f1hz3f7gds7rjnhky1352cb6cr89i";
sha256 = "1nhgqjha10jvyf9nsghvlkibg7byj8qz140639ygag9qlpd51rfs";
};
}.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");

View File

@ -7,14 +7,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "maestral-qt";
version = "1.2.0";
version = "1.2.1";
disabled = python3.pkgs.pythonOlder "3.6";
src = fetchFromGitHub {
owner = "SamSchott";
repo = "maestral-qt";
rev = "v${version}";
sha256 = "sha256-bEVxtp2MqEsjQvcVXmrWcwys3AMg+lPcdYn4IlYhyqw=";
sha256 = "sha256-7qpVyQUbT+GChJl1TnKOONSyRDvzQ0M2z9RdN7PNl9U=";
};
propagatedBuildInputs = with python3.pkgs; [
@ -22,6 +22,7 @@ python3.pkgs.buildPythonApplication rec {
click
markdown2
maestral
packaging
pyqt5
];

View File

@ -16,7 +16,7 @@
# Available plugins (can be overriden)
, availablePlugins
# Used in the withPlugins interface at passthru, can be overrided directly, or
# prefarably via e.g: `mailnag.withPlugins(["goa"])`
# prefarably via e.g: `mailnag.withPlugins([mailnag.availablePlugins.goa])`
, mailnag
, userPlugins ? [ ]
, pluginsDeps ? [ ]
@ -72,7 +72,10 @@ python3Packages.buildPythonApplication rec {
pluginsDeps = lib.flatten (lib.catAttrs "buildInputs" plugs);
self = mailnag;
in
self.override { userPlugins = plugs; };
self.override {
userPlugins = plugs;
inherit pluginsDeps;
};
};
# See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped

View File

@ -0,0 +1,75 @@
{ stdenv
, boost
, coreutils
, cppzmq
, curl
, epoxy
, fetchFromGitHub
, glm
, gnome3
, lib
, libgit2
, librsvg
, libuuid
, libzip
, opencascade
, pkgconfig
, podofo
, python3
, sqlite
, wrapGAppsHook
, zeromq
}:
stdenv.mkDerivation rec {
pname = "horizon-eda";
version = "1.2.1";
src = fetchFromGitHub {
owner = "horizon-eda";
repo = "horizon";
rev = "v${version}";
sha256 = "0b1bi99xdhbkb2vdb9y6kyqm0h8y0q168jf2xi8kd0z7kww8li2p";
};
buildInputs = [
cppzmq
curl
epoxy
glm
gnome3.gtkmm
libgit2
librsvg
libuuid
libzip
opencascade
podofo
python3
sqlite
zeromq
];
nativeBuildInputs = [
boost.dev
pkgconfig
wrapGAppsHook
];
CASROOT = opencascade;
installFlags = [
"INSTALL=${coreutils}/bin/install"
"DESTDIR=$(out)"
"PREFIX="
];
enableParallelBuilding = true;
meta = with lib; {
description = "A free EDA software to develop printed circuit boards";
homepage = "https://horizon-eda.org";
maintainers = with maintainers; [ guserav ];
license = licenses.gpl3;
platforms = platforms.linux;
};
}

View File

@ -1,23 +1,51 @@
{ lib, stdenv, fetchFromGitLab, cmake, libGLU, libGL, zlib, wxGTK
, libX11, gettext, glew, glm, cairo, curl, openssl, boost, pkgconfig
, doxygen, pcre, libpthreadstubs, libXdmcp, fetchpatch, lndir, callPackages
{ lib
, stdenv
, fetchFromGitLab
, cmake
, libGLU
, libGL
, zlib
, wxGTK
, libX11
, gettext
, glew
, glm
, cairo
, curl
, openssl
, boost
, pkgconfig
, doxygen
, pcre
, libpthreadstubs
, libXdmcp
, fetchpatch
, lndir
, callPackages
, stable ? true
, baseName ? "kicad"
, versions ? { }
, oceSupport ? false, opencascade
, withOCCT ? true, opencascade-occt
, ngspiceSupport ? true, libngspice
, scriptingSupport ? true, swig, python, wxPython
, debug ? false, valgrind
, oceSupport ? false
, opencascade
, withOCCT ? true
, opencascade-occt
, ngspiceSupport ? true
, libngspice
, scriptingSupport ? true
, swig
, python
, wxPython
, debug ? false
, valgrind
, withI18n ? true
, gtk3
}:
assert ngspiceSupport -> libngspice != null;
with lib;
let
versionConfig = versions.${baseName};
# oce on aarch64 fails a test
@ -95,8 +123,22 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake doxygen pkgconfig lndir ];
buildInputs = [
libGLU libGL zlib libX11 wxGTK pcre libXdmcp gettext
glew glm libpthreadstubs cairo curl openssl boost
libGLU
libGL
zlib
libX11
wxGTK
pcre
libXdmcp
gettext
glew
glm
libpthreadstubs
cairo
curl
openssl
boost
gtk3
]
++ optionals (scriptingSupport) [ swig python wxPython ]
++ optional (ngspiceSupport) libngspice

View File

@ -58,7 +58,6 @@ file="${here}/versions.nix"
# just in case this runs in parallel
tmp="${here}/,versions.nix.${RANDOM}"
# libraries currently on github, move to $gitlab/libraries planned
libs=( symbols templates footprints packages3d )
get_rev="git ls-remote --heads --tags"
@ -67,9 +66,6 @@ gitlab="https://gitlab.com/kicad"
# append commit hash or tag
gitlab_pre="https://gitlab.com/api/v4/projects/kicad%2Fcode%2Fkicad/repository/archive.tar.gz?sha="
# append "-$lib/archive/[hash or tag].tar.gz
github="https://github.com/kicad/kicad"
# not a lib, but separate and already moved to gitlab
i18n="${gitlab}/code/kicad-i18n.git"
i18n_pre="https://gitlab.com/api/v4/projects/kicad%2Fcode%2Fkicad-i18n/repository/archive.tar.gz?sha="
@ -147,8 +143,8 @@ for version in "${all_versions[@]}"; do
for lib in "${libs[@]}"; do
echo "Checking ${lib}" >&2
url="${github}-${lib}.git"
lib_rev="$(${get_rev} "${url}" "${version}" | cut -f1)"
url="${gitlab}/libraries/kicad-${lib}.git"
lib_rev="$(${get_rev} "${url}" "${version}" | cut -f1 | head -n1)"
has_rev="$(grep -sm 1 "\"${pname}\"" -A 19 "${file}" | grep -sm 1 "${lib_rev}" || true)"
has_hash="$(grep -sm 1 "\"${pname}\"" -A 20 "${file}" | grep -sm 1 "${lib}.sha256")"
if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
@ -161,7 +157,7 @@ for version in "${all_versions[@]}"; do
esac
printf "\"%s\";\n" "${lib_rev}"
printf "%8s%s.sha256 =\t\"%s\";\n" "" \
"${lib}" "$(${prefetch} "${github}-${lib}/archive/${lib_rev}.tar.gz")"
"${lib}" "$(${prefetch} "https://gitlab.com/api/v4/projects/kicad%2Flibraries%2Fkicad-${lib}/repository/archive.tar.gz?sha=${lib_rev}")"
count=$((count+1))
fi
done

View File

@ -27,25 +27,25 @@
};
"kicad-unstable" = {
kicadVersion = {
version = "2020-08-22";
version = "2020-10-09";
src = {
rev = "a2341f0f335b0abb9fc8cb86d19cbe6f9b38fade";
sha256 = "0167yb39f800xarq3khn7sbdkgcx9j2ayhy8c7lhhks6kh7459g0";
rev = "560428a70f0196fb4ade620042c5ddefc1685ebe";
sha256 = "0rzn83bpl06v1d49lcvwfg93nirn684bqqq536zxhmjm0ayx29ka";
};
};
libVersion = {
version = "2020-08-22";
version = "2020-10-09";
libSources = {
i18n.rev = "cbbb1efd940094bf0c3168280698b2b059a8c509";
i18n.sha256 = "1q4jakn6m8smnr2mg7jgb520nrb6fag9mdvlcpx3smp3qbxka818";
symbols.rev = "9ca6a5348cdeb88e699582d4ed051ff7303b44d3";
symbols.sha256 = "13w6pb34rhz96rnar25z7kiscy6q1fm8l39hq1bpb8g9yn86ssz4";
templates.rev = "ae16953b81055855bcede4a33305413599d86a15";
templates.sha256 = "1pkv90p3liy3bj4nklxsvpzh9m56p0k5ldr22armvgqfaqaadx9v";
footprints.rev = "f94c2d5d619d16033f69a555b449f59604d97865";
footprints.sha256 = "1g71sk77jvqaf9xvgq6dkyvd9pij2lb4n0bn0dqnwddhwam935db";
packages3d.rev = "f699b0e3c13fe75618086913e39279c85da14cc7";
packages3d.sha256 = "0m5rb5axa946v729z35ga84in76y4zpk32qzi0hwqx957zy72hs9";
i18n.rev = "d24af2da8cab4ce1081c401909a4a880514e5549";
i18n.sha256 = "0r0sv52k84sw4jxf10lrmzwmn58d2fv5h57fdrspnmvnh10q63xf";
symbols.rev = "9c50f4333bafc5a1abf7786436db5ffb6a66758d";
symbols.sha256 = "06ic59svz0256isy93863i5ay4k8wshvp1kspnqrc776wmq03l3k";
templates.rev = "41eae4ccd3ac02fdb969e3aa272c07ab51dcf5af";
templates.sha256 = "0xxfkpsgbnafmpaxpz1747zn7fhqp0kfl32rzjrx4vzxyp25q805";
footprints.rev = "50015af7e603cc499199c7e1c6daa7c85dd732ae";
footprints.sha256 = "16bic67klbj7sgj7cab8ha2fg3ypp9ap82gxkn6ijvpl7dka8bhb";
packages3d.rev = "df0dc0074491bb665b2c3ce569cbd4aa16118ad6";
packages3d.sha256 = "027jlcp9fpryldjkcxhb1b5bpwqna9kl6r0lnkd86x238kj3rd8v";
};
};
};

View File

@ -14,6 +14,7 @@ stdenv.mkDerivation {
patches = [
./compat.patch
./pythia83xx.patch
];
preConfigure = ''

View File

@ -0,0 +1,55 @@
diff --git a/include/Sacrifice/UserHooksFactory.hh b/include/Sacrifice/UserHooksFactory.hh
index 04b105b..19f2b4f 100644
--- a/include/Sacrifice/UserHooksFactory.hh
+++ b/include/Sacrifice/UserHooksFactory.hh
@@ -12,7 +12,7 @@
namespace Sacrifice{
- using Pythia8::UserHooks;
+ using Pythia8::UserHooksPtr;
using std::string;
using std::map;
@@ -21,7 +21,7 @@ namespace Sacrifice{
public:
- static UserHooks* create(const string &hookName);
+ static UserHooksPtr create(const string &hookName);
/**
* Loads a library of UserHooks
@@ -39,7 +39,7 @@ namespace Sacrifice{
class ICreator{
public:
- virtual UserHooks *create() const = 0;
+ virtual UserHooksPtr create() const = 0;
virtual ~ICreator(){};
};
@@ -61,8 +61,8 @@ namespace Sacrifice{
}
}
- UserHooks *create()const{
- return new T;
+ UserHooksPtr create()const{
+ return std::make_shared<T>();
}
private:
diff --git a/src/UserHooksFactory.cxx b/src/UserHooksFactory.cxx
index 84a485b..5274119 100644
--- a/src/UserHooksFactory.cxx
+++ b/src/UserHooksFactory.cxx
@@ -11,7 +11,7 @@ namespace Sacrifice{
using std::ifstream;
//////////////////////////////////////////////////////////////////////////////
- UserHooks *UserHooksFactory::create(const string &name){
+ UserHooksPtr UserHooksFactory::create(const string &name){
map<string, const ICreator*>::const_iterator it = s_creators().find(name);
if(it == s_creators().end()){
//eek!

View File

@ -1,4 +1,4 @@
{ stdenv, buildPythonApplication, fetchFromGitHub, pyqt5, git-annex-adapter }:
{ stdenv, buildPythonApplication, fetchFromGitHub, pyqt5, qt5, git-annex-adapter }:
buildPythonApplication rec {
pname = "git-annex-metadata-gui";
@ -15,6 +15,12 @@ buildPythonApplication rec {
substituteInPlace setup.py --replace "'PyQt5', " ""
'';
nativeBuildInputs = [ qt5.wrapQtAppsHook ];
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
propagatedBuildInputs = [ pyqt5 git-annex-adapter ];
meta = with stdenv.lib; {

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "git-trim";
version = "0.3.2";
version = "0.4.0";
src = fetchFromGitHub {
owner = "foriequal0";
repo = pname;
rev = "v${version}";
sha256 = "079kavm3n776wvmy25jq1g4qdvmhh3d3x1vdpb1f6pw5rkky8lyw";
sha256 = "0w6qrr53wal4p4jvz35f9mpqwz1vfcymj17sz418n9p9lw45f24n";
};
cargoSha256 = "1ii5l7z9avg0gzlaav2gnfbr8wkbp008i5rz6k6bs2sfqnpnn5k6";
cargoSha256 = "1mlvkvgcln59bi249z87v8i0ixq1a7walkzsjml6d219rmy5550h";
nativeBuildInputs = [ pkg-config ];

View File

@ -1,4 +1,4 @@
{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig
{ mkDerivation, lib, fetchFromGitHub, fetchpatch, cmake, pkgconfig
, qtbase, qtmultimedia, qtsvg, qttools, krdc
, libvncserver, libvirt, pcre, pixman, qtermwidget, spice-gtk, spice-protocol
, libselinux, libsepol, utillinux
@ -20,6 +20,15 @@ mkDerivation rec {
"-DQTERMWIDGET_INCLUDE_DIRS=${qtermwidget}/include/qtermwidget5"
];
patches = [
(fetchpatch {
# Maintainer note: Check whether this patch is still needed when a new version is released
name = "krdc-variable-name-changes.patch";
url = "https://github.com/fadenb/qt-virt-manager/commit/4640f5f64534ed7c8a1ecc6851f1c7503988de6d.patch";
sha256 = "1chl58nra1mj96n8jmnjbsyr6vlwkhn38afhwqsbr0bgyg23781v";
})
];
buildInputs = [
qtbase qtmultimedia qtsvg krdc
libvirt libvncserver pcre pixman qtermwidget spice-gtk spice-protocol

View File

@ -1,13 +1,13 @@
{ lib, fetchzip }:
let
version = "2008.25";
version = "2009.22";
in
fetchzip {
name = "cascadia-code-${version}";
url = "https://github.com/microsoft/cascadia-code/releases/download/v${version}/CascadiaCode-${version}.zip";
sha256 = "182ssznm6f5fhykmqqvimq7ihmxkc64gh76faqxg1ihdyzqgi2y6";
sha256 = "0wdkjzaf5a14yfiqqqn6wvi6db6r7g1m5r07cg9730b0mkzhfyhl";
postFetch = ''
mkdir -p $out/share/fonts/

View File

@ -0,0 +1,46 @@
{ stdenv
, fetchFromGitHub
, gdk-pixbuf
, gtk-engine-murrine
, gtk_engines
, librsvg
}:
stdenv.mkDerivation rec {
pname = "marwaita-pop_os";
version = "0.9";
src = fetchFromGitHub {
owner = "darkomarko42";
repo = pname;
rev = version;
sha256 = "1fpzsch9rpq7dmg01ny7jc2vd6dks0fqxxp2rb9jcs0vx5d2fdc6";
};
buildInputs = [
gdk-pixbuf
gtk_engines
librsvg
];
propagatedUserEnvPkgs = [
gtk-engine-murrine
];
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/themes
cp -a Marwaita* $out/share/themes
runHook postInstall
'';
meta = with stdenv.lib; {
description = "Marwaita GTK theme with Pop_os Linux style";
homepage = "https://www.pling.com/p/1377894/";
license = licenses.gpl3Only;
platforms = platforms.unix;
maintainers = [ maintainers.romildo ];
};
}

View File

@ -0,0 +1,46 @@
{ stdenv
, fetchFromGitHub
, gdk-pixbuf
, gtk-engine-murrine
, gtk_engines
, librsvg
}:
stdenv.mkDerivation rec {
pname = "skeu";
version = "0.5.1";
src = fetchFromGitHub {
owner = "darkomarko42";
repo = pname;
rev = version;
sha256 = "0lbl09p0h493ya978fh7cib68qlmxfxahmbj0mpa3b65ynxda645";
};
buildInputs = [
gdk-pixbuf
gtk_engines
librsvg
];
propagatedUserEnvPkgs = [
gtk-engine-murrine
];
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/themes
cp -a Skeu* $out/share/themes
runHook postInstall
'';
meta = with stdenv.lib; {
description = "GTK theme with skeuomorphism design";
homepage = "https://www.pling.com/p/1363834/";
license = licenses.gpl3Only;
platforms = platforms.unix;
maintainers = [ maintainers.romildo ];
};
}

View File

@ -5,15 +5,14 @@
}:
stdenv.mkDerivation rec {
pname = "gnome-shell-dash-to-dock-unstable";
version = "2020-04-20";
pname = "gnome-shell-dash-to-dock";
version = "69";
src = fetchFromGitHub {
owner = "micheleg";
repo = "dash-to-dock";
# rev = "extensions.gnome.org-v" + version;
rev = "1788f31b049b622f78d0e65c56bef76169022ca9";
sha256 = "1s8ychvs5l4mbjp8chc5nk62s4887q6vd3dj6spk4gimni2nayrk";
rev = "extensions.gnome.org-v" + version;
hash = "sha256-YuLtC7E8dK57JSuFdbDQe5Ml+KQfl9qSdrHdVhFaNiE=";
};
nativeBuildInputs = [

View File

@ -18,13 +18,13 @@
stdenv.mkDerivation rec {
pname = "lobster";
version = "unstable-2020-07-27";
version = "unstable-2020-10-04";
src = fetchFromGitHub {
owner = "aardappel";
repo = pname;
rev = "9d68171494a79c83931426b624a0249a9c51882c";
sha256 = "0d4gn71jym662i00rdmynv53ng1lgl81s5lw1sdddgn41wzs28dd";
rev = "4c5e78f021ce9d06592fb3a66388e5e31fac1adb";
sha256 = "1wnbc8kr1dyfs53nlcxah22ghphmazzrlcj9z47cgkdsj1qfy84x";
};
nativeBuildInputs = [ cmake ];

View File

@ -43,7 +43,9 @@ stdenv.mkDerivation {
inherit (param) rev sha256;
};
buildInputs = with coq.ocamlPackages; [ ocaml camlp5 findlib coq ];
buildInputs = with coq.ocamlPackages; [ ocaml findlib coq ]
++ stdenv.lib.optional (!stdenv.lib.versionAtLeast coq.coq-version "8.10") camlp5
;
installFlags = [ "COQLIB=$(out)/lib/coq/${coq.coq-version}/" ];

View File

@ -26,8 +26,7 @@ stdenv.mkDerivation rec {
inherit (param) sha256;
};
buildInputs = with coq.ocamlPackages; [ ocaml camlp5 ];
propagatedBuildInputs = [ coq ];
buildInputs = [ coq ];
enableParallelBuilding = true;

View File

@ -53,7 +53,8 @@ stdenv.mkDerivation {
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ coq ]
++ (with coq.ocamlPackages; [ ocaml camlp5 findlib ocamlgraph ]);
++ (with coq.ocamlPackages; [ ocaml findlib ocamlgraph ]
++ stdenv.lib.optional (!stdenv.lib.versionAtLeast coq.coq-version "8.10") camlp5);
# dpd_compute.ml uses deprecated Pervasives.compare
# Versions prior to 0.6.5 do not have the WARN_ERR build flag

View File

@ -69,7 +69,7 @@ self: super: {
name = "git-annex-${super.git-annex.version}-src";
url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + super.git-annex.version;
sha256 = "19ipaalp9g25zhg44rialwhp2fv5n8q5fzqw72rfcjcca5iy6r72";
sha256 = "05yvl09ksyvzykibs95996rni9x6w03yfqyv2fadd73z1m6lq5bf";
};
}).override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
@ -1211,7 +1211,7 @@ self: super: {
# we need an override because ghcide is tracking haskell-lsp closely.
ghcide = dontCheck (super.ghcide.overrideScope (self: super: {
hie-bios = dontCheck super.hie-bios_0_7_1;
lsp-test = dontCheck self.lsp-test_0_11_0_6;
lsp-test = dontCheck self.lsp-test_0_11_0_7;
}));
# hasnt bumped upper bounds
@ -1471,6 +1471,9 @@ self: super: {
url = "https://github.com/jaspervdj/stylish-haskell/commit/9550aa1cd177aa6fe271d075177109d66a79e67f.patch";
sha256 = "1ffnbd2s4fx0ylnnlcyyag119yxb32p5r20b38l39lsa0jwv229f";
});
# The test suite attempts to read `/etc/resolv.conf`, which doesn't work in the sandbox.
domain-auth = dontCheck super.domain-auth;
# INSERT NEW OVERRIDES ABOVE THIS LINE
} // (let
@ -1481,7 +1484,7 @@ self: super: {
ghcide = dontCheck hls-ghcide;
# we are faster than stack here
hie-bios = dontCheck super.hie-bios_0_7_1;
lsp-test = dontCheck super.lsp-test_0_11_0_6;
lsp-test = dontCheck super.lsp-test_0_11_0_7;
# fourmolu cant compile with an older aeson
aeson = dontCheck super.aeson_1_5_2_0;
# brittany has an aeson upper bound of 1.5
@ -1490,8 +1493,7 @@ self: super: {
ghc-exactprint = dontCheck super.ghc-exactprint_0_6_3_2;
};
in {
# jailbreaking for hie-bios 0.7.0 (upstream PR: https://github.com/haskell/haskell-language-server/pull/357)
haskell-language-server = dontCheck (doJailbreak (super.haskell-language-server.overrideScope hlsScopeOverride));
haskell-language-server = dontCheck (super.haskell-language-server.overrideScope hlsScopeOverride);
hls-ghcide = dontCheck (super.hls-ghcide.overrideScope hlsScopeOverride);
hls-brittany = dontCheck (super.hls-brittany.overrideScope hlsScopeOverride);
fourmolu = dontCheck (super.fourmolu.overrideScope hlsScopeOverride);

View File

@ -782,6 +782,11 @@ self: super: builtins.intersectAttrs super {
testToolDepends = [ pkgs.git pkgs.mercurial ];
});
nix-output-monitor = overrideCabal super.nix-output-monitor {
# Can't ran the golden-tests with nix, because they call nix
testTarget = "unit-tests";
};
haskell-language-server = overrideCabal super.haskell-language-server (drv: {
postInstall = let
inherit (pkgs.lib) concatStringsSep take splitString;

File diff suppressed because it is too large Load Diff

View File

@ -25,6 +25,8 @@ self: super: {
hls-ghcide = self.callPackage ../tools/haskell/haskell-language-server/hls-ghcide.nix { };
hls-brittany = self.callPackage ../tools/haskell/haskell-language-server/hls-brittany.nix { };
nix-output-monitor = self.callPackage ../../tools/nix/nix-output-monitor { };
# cabal2nix --revision <rev> https://github.com/hasura/ci-info-hs.git
ci-info = self.callPackage ../misc/haskell/hasura/ci-info {};
# cabal2nix --revision <rev> https://github.com/hasura/pg-client-hs.git

View File

@ -0,0 +1,51 @@
{ stdenv, fetchFromGitHub, libck, darwin }:
let
version = "0.21";
bootstrap = stdenv.mkDerivation {
pname = "cyclone-bootstrap";
inherit version;
src = fetchFromGitHub {
owner = "justinethier";
repo = "cyclone-bootstrap";
rev = "v${version}";
sha256 = "0bb3a7x7vzmdyhm4nilm8bcn4q50pwqryggnxz21n16v6xakwjmr";
};
enableParallelBuilding = true;
nativeBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ darwin.cctools ];
buildInputs = [ libck ];
makeFlags = [ "PREFIX=${placeholder "out"}" ];
};
in
stdenv.mkDerivation {
pname = "cyclone";
inherit version;
src = fetchFromGitHub {
owner = "justinethier";
repo = "cyclone";
rev = "v${version}";
sha256 = "1vb4yaprs2bwbxmxx2zkqvysxx8r9qww2q1nqkz8yps3ji715jw7";
};
enableParallelBuilding = true;
nativeBuildInputs = [ bootstrap ]
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.cctools ];
buildInputs = [ libck ];
makeFlags = [ "PREFIX=${placeholder "out"}" ];
meta = with stdenv.lib; {
homepage = "https://justinethier.github.io/cyclone/";
description = "A brand-new compiler that allows practical application development using R7RS Scheme";
license = licenses.mit;
maintainers = with maintainers; [ siraben ];
};
}

View File

@ -20,12 +20,12 @@ let
in stdenv.mkDerivation rec {
pname = "arrow-cpp";
version = "1.0.0";
version = "1.0.1";
src = fetchurl {
url =
"mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz";
sha256 = "0hzjrhr4brqpmy9f8fbj9p5a482ya8kjhkycz6maa0w2nkzbkpc6";
sha256 = "0p67dni8dwqbwq96gfdq3pyk799id6dgdl9h7cpp9icsjsmad70l";
};
sourceRoot = "apache-arrow-${version}/cpp";

View File

@ -2,12 +2,12 @@
, enablePython ? false, python ? null, swig ? null}:
stdenv.mkDerivation rec {
version = "3.0.7";
version = "3.0.8";
pname = "gdcm";
src = fetchurl {
url = "mirror://sourceforge/gdcm/${pname}-${version}.tar.bz2";
sha256 = "1mm1190fv059k2vrilh3znm8z1ilygwld1iazdgh5s04mi1qljni";
sha256 = "1q9p0r7wszn51yak9wdp61fd9i0wj3f8ja2frmhk7d1gxic7j1rk";
};
dontUseCmakeBuildDir = true;

View File

@ -7,7 +7,7 @@ assert x11Support -> libX11 != null && cairo != null;
with stdenv.lib;
let
version = "2.2.0";
version = "2.3.0";
versmm = versions.major version + "." + versions.minor version;
name = "hwloc-${version}";
@ -16,7 +16,7 @@ in stdenv.mkDerivation {
src = fetchurl {
url = "https://www.open-mpi.org/software/hwloc/v${versmm}/downloads/${name}.tar.bz2";
sha256 = "0li27a3lnmb77qxpijj0kpblz32wmqd3b386sypq8ar7vy9vhw5f";
sha256 = "0r4a07ag1fv48ql2g64px0wrjpxlvkh6c7mhnkv9xxkkg04zc1xn";
};
configureFlags = [

View File

@ -0,0 +1,40 @@
{ mkDerivation
, lib
, fetchurl
, cmake
, extra-cmake-modules
, pkg-config
, kcoreaddons
, kpeople
, kcontacts
}:
mkDerivation rec {
pname = "kpeoplevcard";
version = "0.1";
src = fetchurl {
url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.xz";
sha256 = "1hv3fq5k0pps1wdvq9r1zjnr0nxf8qc3vwsnzh9jpvdy79ddzrcd";
};
buildInputs = [
kcoreaddons
kpeople
kcontacts
];
nativeBuildInputs = [
pkg-config
cmake
extra-cmake-modules
];
meta = with lib; {
description = "Pulseaudio bindings for Qt";
homepage = "KPeople VCard Support";
license = with licenses; [ lgpl2 ];
maintainers = with maintainers; [ doronbehar ];
};
}

View File

@ -0,0 +1,41 @@
{ mkDerivation
, lib
, fetchFromGitLab
, qtbase
, qtcharts
, qtsvg
, qmake
}:
mkDerivation rec {
pname = "ldutils";
version = "1.01";
src = fetchFromGitLab {
owner = "ldutils-projects";
repo = pname;
rev = "v_${version}";
sha256 = "09k2d5wj70xfr3sb4s9ajczq0lh65705pggs54zqqqjxazivbmgk";
};
buildInputs = [
qtbase
qtcharts
qtsvg
];
nativeBuildInputs = [
qmake
];
LDUTILS_LIB=placeholder "out";
LDUTILS_INCLUDE=placeholder "out";
meta = with lib; {
description = "Headers and link library for other ldutils projects";
homepage = "https://gitlab.com/ldutils-projects/ldutils";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ sohalt ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,60 @@
{ stdenv
, fetchFromGitHub
, libaom
, cmake
, pkg-config
, zlib
, libpng
, libjpeg
, dav1d
}:
stdenv.mkDerivation rec {
pname = "libavif";
version = "0.8.1";
src = fetchFromGitHub {
owner = "AOMediaCodec";
repo = pname;
rev = "v${version}";
sha256 = "1fs222cn1d60pv5fjsr92axk5dival70b6yqw0wng5ikk9zsdkhy";
};
# reco: encode libaom slowest but best, decode dav1d fastest
cmakeFlags = [
"-DBUILD_SHARED_LIBS=ON"
"-DAVIF_CODEC_AOM=ON"
"-DAVIF_CODEC_DAV1D=ON"
"-DAVIF_BUILD_APPS=ON"
];
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
libaom
zlib
libpng
libjpeg
dav1d
];
meta = with stdenv.lib; {
description = "C implementation of the AV1 Image File Format";
longDescription = ''
Libavif aims to be a friendly, portable C implementation of the
AV1 Image File Format. It is a work-in-progress, but can already
encode and decode all AOM supported YUV formats and bit depths
(with alpha). It also features an encoder and a decoder
(avifenc/avifdec).
'';
homepage = "https://github.com/AOMediaCodec/libavif";
changelog = "https://github.com/AOMediaCodec/libavif/blob/v${version}/CHANGELOG.md";
maintainers = with maintainers; [ mkg20001 ];
platforms = platforms.all;
license = licenses.bsd2;
};
}

View File

@ -4,18 +4,18 @@
, cmake
, blas
# Check Inputs
, python2
, python
}:
stdenv.mkDerivation rec {
pname = "libcint";
version = "3.1.1";
version = "4.0.2";
src = fetchFromGitHub {
owner = "sunqm";
repo = "libcint";
rev = "v${version}";
sha256 = "0z1gavi7aacx68fmyzy90vzv5kff844lnxc6habs6y377dr3rwwy";
sha256 = "0j8fkkp3vb1936qy80sc08c327b47qxh0x2aadd1225jjq6xqxmn";
};
nativeBuildInputs = [ cmake ];
@ -27,8 +27,7 @@ stdenv.mkDerivation rec {
];
doCheck = true;
# Test syntax (like print statements) is written in python2. Fixed when #33 merged: https://github.com/sunqm/libcint/pull/33
checkInputs = [ python2.pkgs.numpy ];
checkInputs = [ python.pkgs.numpy ];
meta = with lib; {
description = "General GTO integrals for quantum chemistry";
@ -39,6 +38,7 @@ stdenv.mkDerivation rec {
'';
homepage = "http://wiki.sunqm.net/libcint";
downloadPage = "https://github.com/sunqm/libcint";
changelog = "https://github.com/sunqm/libcint/blob/master/ChangeLog";
license = licenses.bsd2;
maintainers = with maintainers; [ drewrisinger ];
};

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
'';
license = with licenses; [ asl20 bsd2 ];
homepage = "http://concurrencykit.org/";
platforms = platforms.linux;
platforms = platforms.unix;
maintainers = with maintainers; [ chessai ];
};
}

View File

@ -1,15 +1,15 @@
{ stdenv, fetchurl, boost, fastjet, hepmc2, lhapdf, rsync, zlib }:
{ stdenv, fetchurl, boost, fastjet, hepmc, lhapdf, rsync, zlib }:
stdenv.mkDerivation rec {
pname = "pythia";
version = "8.244";
version = "8.303";
src = fetchurl {
url = "http://home.thep.lu.se/~torbjorn/pythia8/pythia${builtins.replaceStrings ["."] [""] version}.tgz";
sha256 = "1jlj9hgmk2gcm5p0zqsiz0dpv9vvj8ip261si7frrwfsk7wq0j73";
sha256 = "0gli6zf8931i7kyminppisc9d0q69xxnalvhld5fgnkh4q82nz6d";
};
buildInputs = [ boost fastjet hepmc2 zlib rsync lhapdf ];
buildInputs = [ boost fastjet hepmc zlib rsync lhapdf ];
preConfigure = ''
patchShebangs ./configure
@ -17,9 +17,12 @@ stdenv.mkDerivation rec {
configureFlags = [
"--enable-shared"
"--with-hepmc2=${hepmc2}"
"--with-lhapdf6=${lhapdf}"
];
] ++ (if stdenv.lib.versions.major hepmc.version == "3" then [
"--with-hepmc3=${hepmc}"
] else [
"--with-hepmc2=${hepmc}"
]);
enableParallelBuilding = true;

View File

@ -0,0 +1,35 @@
{ mkDerivation
, lib
, fetchurl
, cmake
, extra-cmake-modules
, pkg-config
, pulseaudio
}:
mkDerivation rec {
pname = "pulseaudio-qt";
version = "1.2.0";
src = fetchurl {
url = "mirror://kde/stable/${pname}/${pname}-${lib.versions.majorMinor version}.tar.xz";
sha256 = "1i0ql68kxv9jxs24rsd3s7jhjid3f2fq56fj4wbp16zb4wd14099";
};
buildInputs = [
pulseaudio
];
nativeBuildInputs = [
pkg-config
cmake
extra-cmake-modules
];
meta = with lib; {
description = "Pulseaudio bindings for Qt";
homepage = "https://invent.kde.org/libraries/pulseaudio-qt";
license = with licenses; [ lgpl2 ];
maintainers = with maintainers; [ doronbehar ];
};
}

View File

@ -6,17 +6,17 @@
let
pname = "qscintilla-qt${if withQt5 then "5" else "4"}";
version = "2.11.2";
version = "2.11.5";
in stdenv.mkDerivation rec {
inherit pname version;
src = fetchurl {
url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/${version}/QScintilla_gpl-${version}.tar.gz";
sha256 = "18glb2v07mwfz6p8qmwhzcaaczyc36x3gn9wx8ndm7q6d93xr6q2";
url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/${version}/QScintilla-${version}.tar.gz";
sha256 = "k2Hib9f7e1gZp+uSxcGIChjem9PtndLrAI5XOIaWcWs=";
};
sourceRoot = "QScintilla_gpl-${version}/Qt4Qt5";
sourceRoot = "QScintilla-${version}/Qt4Qt5";
buildInputs = [ (if withQt5 then qtbase else qt4) ];
@ -63,7 +63,7 @@ in stdenv.mkDerivation rec {
background colours and multiple fonts.
'';
homepage = "https://www.riverbankcomputing.com/software/qscintilla/intro";
license = with licenses; [ gpl2 gpl3 ]; # and commercial
license = with licenses; [ gpl3 ]; # and commercial
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.unix;
};

View File

@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, cmake, expat, nifticlib, zlib }:
stdenv.mkDerivation rec {
pname = "gifticlib";
version = "unstable-2020-07-07";
src = fetchFromGitHub {
owner = "NIFTI-Imaging";
repo = "gifti_clib";
rev = "5eae81ba1e87ef3553df3b6ba585f12dc81a0030";
sha256 = "0gcab06gm0irjnlrkpszzd4wr8z0fi7gx8f7966gywdp2jlxzw19";
};
cmakeFlags = [ "-DUSE_SYSTEM_NIFTI=ON" "-DDOWNLOAD_TEST_DATA=OFF" ];
nativeBuildInputs = [ cmake ];
buildInputs = [ expat nifticlib zlib ];
# without the test data, this is only a few basic tests
doCheck = !stdenv.isDarwin;
checkPhase = ''
runHook preCheck
ctest -LE 'NEEDS_DATA'
runHook postCheck
'';
meta = with stdenv.lib; {
homepage = "https://www.nitrc.org/projects/gifti";
description = "Medical imaging geometry format C API";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.publicDomain;
};
}

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