Merge branch 'master' into haskell-updates

This commit is contained in:
Malte Brandy 2021-06-15 20:39:41 +02:00
commit 4327400c1b
No known key found for this signature in database
GPG key ID: 226A2D41EF5378C9
310 changed files with 9221 additions and 6527 deletions

View file

@ -32,7 +32,7 @@ fix-misc-xml:
.PHONY: clean
clean:
rm -f ${MD_TARGETS} doc-support/result .version manual-full.xml functions/library/locations.xml functions/library/generated
rm -rf ./out/ ./highlightjs
rm -rf ./out/ ./highlightjs ./media
.PHONY: validate
validate: manual-full.xml doc-support/result

View file

@ -1907,6 +1907,16 @@
githubId = 3392199;
name = "Calum MacRae";
};
cmars = {
email = "nix@cmars.tech";
github = "cmars";
githubId = 23741;
name = "Casey Marshall";
keys = [{
longkeyid = "rsa3072/0x6DEC2758ACD5A973";
fingerprint = "6B78 7E5F B493 FA4F D009 5D10 6DEC 2758 ACD5 A973";
}];
};
cmcdragonkai = {
email = "roger.qiu@matrix.ai";
github = "cmcdragonkai";
@ -2365,6 +2375,12 @@
github = "delan";
githubId = 465303;
};
deliciouslytyped = {
email = "47436522+deliciouslytyped@users.noreply.github.com";
github = "deliciouslytyped";
githubId = 47436522;
name = "deliciouslytyped";
};
delroth = {
email = "delroth@gmail.com";
github = "delroth";
@ -4265,6 +4281,12 @@
githubId = 3661115;
name = "Ingo Blechschmidt";
};
icy-thought = {
name = "Icy-Thought";
email = "gilganyx@pm.me";
github = "Icy-Thought";
githubId = 53710398;
};
idontgetoutmuch = {
email = "dominic@steinitz.org";
github = "idontgetoutmuch";
@ -4613,12 +4635,6 @@
githubId = 1982341;
name = "Jack Cummings";
};
jD91mZM2 = {
email = "me@krake.one";
github = "jD91mZM2";
githubId = 12830969;
name = "jD91mZM2";
};
jdagilliland = {
email = "jdagilliland@gmail.com";
github = "jdagilliland";
@ -6416,12 +6432,6 @@
githubId = 2649304;
name = "M. Baeten";
};
mbakke = {
email = "mbakke@fastmail.com";
github = "mbakke";
githubId = 1269099;
name = "Marius Bakke";
};
mbaillie = {
email = "martin@baillie.id";
github = "martinbaillie";
@ -7201,12 +7211,28 @@
githubId = 818502;
name = "Nathan Yong";
};
natto1784 = {
email = "natto@weirdnatto.in";
github = "natto1784";
githubId = 56316606;
name = "Amneesh Singh";
};
nbren12 = {
email = "nbren12@gmail.com";
github = "nbren12";
githubId = 1386642;
name = "Noah Brenowitz";
};
ncfavier = {
email = "n@monade.li";
github = "ncfavier";
githubId = 4323933;
name = "Naïm Favier";
keys = [{
longkeyid = "rsa2048/0x49B07322580B7EE2";
fingerprint = "51A0 705E 7DD2 3CBC 5EAA B43E 49B0 7322 580B 7EE2";
}];
};
nckx = {
email = "github@tobias.gr";
github = "nckx";
@ -8155,6 +8181,12 @@
githubId = 1829032;
name = "Paul Hendry";
};
polygon = {
email = "polygon@wh2.tu-dresden.de";
name = "Polygon";
github = "polygon";
githubId = 51489;
};
polyrod = {
email = "dc1mdp@gmail.com";
github = "polyrod";
@ -11689,6 +11721,16 @@
github = "pulsation";
githubId = 1838397;
};
princemachiavelli = {
name = "Josh Hoffer";
email = "jhoffer@sansorgan.es";
github = "princemachiavelli";
githubId = 2730968;
keys = [{
longkeyid = "ed25519/0x83124F97A318EA18";
fingerprint = "DD54 130B ABEC B65C 1F6B 2A38 8312 4F97 A318 EA18";
}];
};
ydlr = {
name = "ydlr";
email = "ydlr@ydlr.io";

View file

@ -14,8 +14,30 @@ rec {
fsNeededForBoot = fs: fs.neededForBoot || elem fs.mountPoint pathsNeededForBoot;
# Check whenever `b` depends on `a` as a fileSystem
fsBefore = a: b: a.mountPoint == b.device
|| hasPrefix "${a.mountPoint}${optionalString (!(hasSuffix "/" a.mountPoint)) "/"}" b.mountPoint;
fsBefore = a: b:
let
# normalisePath adds a slash at the end of the path if it didn't already
# have one.
#
# The reason slashes are added at the end of each path is to prevent `b`
# from accidentally depending on `a` in cases like
# a = { mountPoint = "/aaa"; ... }
# b = { device = "/aaaa"; ... }
# Here a.mountPoint *is* a prefix of b.device even though a.mountPoint is
# *not* a parent of b.device. If we add a slash at the end of each string,
# though, this is not a problem: "/aaa/" is not a prefix of "/aaaa/".
normalisePath = path: "${path}${optionalString (!(hasSuffix "/" path)) "/"}";
normalise = mount: mount // { device = normalisePath mount.device;
mountPoint = normalisePath mount.mountPoint;
depends = map normalisePath mount.depends;
};
a' = normalise a;
b' = normalise b;
in hasPrefix a'.mountPoint b'.device
|| hasPrefix a'.mountPoint b'.mountPoint
|| any (hasPrefix a'.mountPoint) b'.depends;
# Escape a path according to the systemd rules, e.g. /dev/xyzzy
# becomes dev-xyzzy. FIXME: slow.

View file

@ -114,6 +114,19 @@ let
'';
};
discardPolicy = mkOption {
default = null;
example = "once";
type = types.nullOr (types.enum ["once" "pages" "both" ]);
description = ''
Specify the discard policy for the swap device. If "once", then the
whole swap space is discarded at swapon invocation. If "pages",
asynchronous discard on freed pages is performed, before returning to
the available pages pool. With "both", both policies are activated.
See swapon(8) for more information.
'';
};
deviceName = mkOption {
type = types.str;
internal = true;

View file

@ -680,6 +680,12 @@ in
"upperdir=/nix/.rw-store/store"
"workdir=/nix/.rw-store/work"
];
depends = [
"/nix/.ro-store"
"/nix/.rw-store/store"
"/nix/.rw-store/work"
];
};
boot.initrd.availableKernelModules = [ "squashfs" "iso9660" "uas" "overlay" ];

View file

@ -57,6 +57,12 @@ with lib;
"upperdir=/nix/.rw-store/store"
"workdir=/nix/.rw-store/work"
];
depends = [
"/nix/.ro-store"
"/nix/.rw-store/store"
"/nix/.rw-store/work"
];
};
boot.initrd.availableKernelModules = [ "squashfs" "overlay" ];

View file

@ -0,0 +1,74 @@
{ config, lib, pkgs, ... }:
with lib;
let
name = "roon-bridge";
cfg = config.services.roon-bridge;
in {
options = {
services.roon-bridge = {
enable = mkEnableOption "Roon Bridge";
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Open ports in the firewall for the bridge.
UDP: 9003
TCP: 9100 - 9200
'';
};
user = mkOption {
type = types.str;
default = "roon-bridge";
description = ''
User to run the Roon bridge as.
'';
};
group = mkOption {
type = types.str;
default = "roon-bridge";
description = ''
Group to run the Roon Bridge as.
'';
};
};
};
config = mkIf cfg.enable {
systemd.services.roon-bridge = {
after = [ "network.target" ];
description = "Roon Bridge";
wantedBy = [ "multi-user.target" ];
environment.ROON_DATAROOT = "/var/lib/${name}";
serviceConfig = {
ExecStart = "${pkgs.roon-bridge}/start.sh";
LimitNOFILE = 8192;
User = cfg.user;
Group = cfg.group;
StateDirectory = name;
};
};
networking.firewall = mkIf cfg.openFirewall {
allowedTCPPortRanges = [
{ from = 9100; to = 9200; }
];
allowedUDPPorts = [ 9003 ];
};
users.groups.${cfg.group} = {};
users.users.${cfg.user} =
if cfg.user == "roon-bridge" then {
isSystemUser = true;
description = "Roon Bridge user";
group = cfg.group;
extraGroups = [ "audio" ];
}
else {};
};
}

View file

@ -12,7 +12,13 @@ in {
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.auto-cpufreq ];
systemd.packages = [ pkgs.auto-cpufreq ];
systemd.services.auto-cpufreq.path = with pkgs; [ bash coreutils ];
systemd = {
packages = [ pkgs.auto-cpufreq ];
services.auto-cpufreq = {
# Workaround for https://github.com/NixOS/nixpkgs/issues/81138
wantedBy = [ "multi-user.target" ];
path = with pkgs; [ bash coreutils ];
};
};
};
}

View file

@ -66,7 +66,9 @@ in {
meta.maintainers = teams.home-assistant.members;
options.services.home-assistant = {
enable = mkEnableOption "Home Assistant";
# Running home-assistant on NixOS is considered an installation method that is unsupported by the upstream project.
# https://github.com/home-assistant/architecture/blob/master/adr/0012-define-supported-installation-method.md#decision
enable = mkEnableOption "Home Assistant. Please note that this installation method is unsupported upstream";
configDir = mkOption {
default = "/var/lib/hass";

View file

@ -70,6 +70,26 @@ in
type = types.bool;
description = "Whether the Synergy server should be started automatically.";
};
tls = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether TLS encryption should be used.
Using this requires a TLS certificate that can be
generated by starting the Synergy GUI once and entering
a valid product key.
'';
};
cert = mkOption {
type = types.nullOr types.str;
default = null;
example = "~/.synergy/SSL/Synergy.pem";
description = "The TLS certificate to use for encryption.";
};
};
};
};
@ -95,7 +115,7 @@ in
description = "Synergy server";
wantedBy = optional cfgS.autoStart "graphical-session.target";
path = [ pkgs.synergy ];
serviceConfig.ExecStart = ''${pkgs.synergy}/bin/synergys -c ${cfgS.configFile} -f ${optionalString (cfgS.address != "") "-a ${cfgS.address}"} ${optionalString (cfgS.screenName != "") "-n ${cfgS.screenName}" }'';
serviceConfig.ExecStart = ''${pkgs.synergy}/bin/synergys -c ${cfgS.configFile} -f${optionalString (cfgS.address != "") " -a ${cfgS.address}"}${optionalString (cfgS.screenName != "") " -n ${cfgS.screenName}"}${optionalString cfgS.tls.enable " --enable-crypto"}${optionalString (cfgS.tls.cert != null) (" --tls-cert=${cfgS.tls.cert}")}'';
serviceConfig.Restart = "on-failure";
};
})

View file

@ -15,6 +15,12 @@ in {
description = "The port to listen on for tunnel traffic (0=autoselect).";
};
interfaceName = mkOption {
type = types.str;
default = "tailscale0";
description = ''The interface name for tunnel traffic. Use "userspace-networking" (beta) to not use TUN.'';
};
package = mkOption {
type = types.package;
default = pkgs.tailscale;
@ -29,7 +35,10 @@ in {
systemd.services.tailscaled = {
wantedBy = [ "multi-user.target" ];
path = [ pkgs.openresolv ];
serviceConfig.Environment = "PORT=${toString cfg.port}";
serviceConfig.Environment = [
"PORT=${toString cfg.port}"
''"FLAGS=--tun ${lib.escapeShellArg cfg.interfaceName}"''
];
};
};
}

View file

@ -202,7 +202,7 @@ let
let
documentRoot = if hostOpts.documentRoot != null
then hostOpts.documentRoot
else pkgs.runCommand "empty" { preferLocalBuild = true; } "mkdir -p $out"
else pkgs.emptyDirectory
;
mkLocations = locations: concatStringsSep "\n" (map (config: ''

View file

@ -24,13 +24,15 @@ let
specialFSTypes = [ "proc" "sysfs" "tmpfs" "ramfs" "devtmpfs" "devpts" ];
nonEmptyWithoutTrailingSlash = addCheckDesc "non-empty without trailing slash" types.str
(s: isNonEmpty s && (builtins.match ".+/" s) == null);
coreFileSystemOpts = { name, config, ... }: {
options = {
mountPoint = mkOption {
example = "/mnt/usb";
type = addCheckDesc "non-empty without trailing slash" types.str
(s: isNonEmpty s && (builtins.match ".+/" s) == null);
type = nonEmptyWithoutTrailingSlash;
description = "Location of the mounted the file system.";
};
@ -55,6 +57,20 @@ let
type = types.listOf nonEmptyStr;
};
depends = mkOption {
default = [ ];
example = [ "/persist" ];
type = types.listOf nonEmptyWithoutTrailingSlash;
description = ''
List of paths that should be mounted before this one. This filesystem's
<option>device</option> and <option>mountPoint</option> are always
checked and do not need to be included explicitly. If a path is added
to this list, any other filesystem whose mount point is a parent of
the path will be mounted before this filesystem. The paths do not need
to actually be the <option>mountPoint</option> of some other filesystem.
'';
};
};
config = {
@ -238,8 +254,11 @@ in
skipCheck = fs: fs.noCheck || fs.device == "none" || builtins.elem fs.fsType fsToSkipCheck;
# https://wiki.archlinux.org/index.php/fstab#Filepath_spaces
escape = string: builtins.replaceStrings [ " " "\t" ] [ "\\040" "\\011" ] string;
swapOptions = sw: "defaults"
+ optionalString (sw.priority != null) ",pri=${toString sw.priority}";
swapOptions = sw: concatStringsSep "," (
[ "defaults" ]
++ optional (sw.priority != null) "pri=${toString sw.priority}"
++ optional (sw.discardPolicy != null) "discard${optionalString (sw.discardPolicy != "both") "=${toString sw.discardPolicy}"}"
);
in ''
# This is a generated file. Do not edit!
#

View file

@ -178,6 +178,12 @@ let
# export parts of the build environment
for script in "$out"/bin/*; do
# e.g. NIX_CC_WRAPPER_TARGET_HOST_x86_64_unknown_linux_gnu
nix_cc_wrapper_target_host="$(printenv | grep ^NIX_CC_WRAPPER_TARGET_HOST | sed 's/=.*//')"
# e.g. NIX_BINTOOLS_WRAPPER_TARGET_HOST_x86_64_unknown_linux_gnu
nix_bintools_wrapper_target_host="$(printenv | grep ^NIX_BINTOOLS_WRAPPER_TARGET_HOST | sed 's/=.*//')"
wrapProgram "$script" \
--set FAUSTLDDIR "${faust}/lib" \
--set FAUSTLIB "${faust}/share/faust" \
@ -187,7 +193,9 @@ let
--prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \
--set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \
--set NIX_LDFLAGS "$NIX_LDFLAGS -lpthread" \
--prefix LIBRARY_PATH $libPath
--set "$nix_cc_wrapper_target_host" "''${!nix_cc_wrapper_target_host}" \
--set "$nix_bintools_wrapper_target_host" "''${!nix_bintools_wrapper_target_host}" \
--prefix LIBRARY_PATH "$libPath"
done
'';
});

View file

@ -1,28 +1,32 @@
{ lib, stdenv, fetchFromGitHub, libpulseaudio }:
{ lib, stdenv, fetchFromGitHub, installShellFiles, libpulseaudio, nas }:
stdenv.mkDerivation {
name = "gbsplay-2016-12-17";
stdenv.mkDerivation rec {
pname = "gbsplay";
version = "0.0.94";
src = fetchFromGitHub {
owner = "mmitch";
repo = "gbsplay";
rev = "2c4486e17fd4f4cdea8c3fd79ae898c892616b70";
sha256 = "1214j67sr87zfhvym41cw2g823fmqh4hr451r7y1s9ql3jpjqhpz";
rev = version;
sha256 = "VpaXbjotmc/Ref1geiKkBX9UhbPxfAGkFAdKVxP8Uxo=";
};
buildInputs = [ libpulseaudio ];
configureFlags = [
"--without-test" # See mmitch/gbsplay#62
"--without-contrib"
];
configureFlags =
[ "--without-test" "--without-contrib" "--disable-devdsp"
"--enable-pulse" "--disable-alsa" "--disable-midi"
"--disable-nas" "--disable-dsound" "--disable-i18n" ];
nativeBuildInputs = [ installShellFiles ];
buildInputs = [ libpulseaudio nas ];
makeFlags = [ "tests=" ];
postInstall = ''
installShellCompletion --bash --name gbsplay contrib/gbsplay.bashcompletion
'';
meta = with lib; {
description = "gameboy sound player";
description = "Gameboy sound player";
license = licenses.gpl1;
platforms = ["i686-linux" "x86_64-linux"];
platforms = [ "i686-linux" "x86_64-linux" ];
maintainers = with maintainers; [ dasuxullebt ];
};
}

View file

@ -0,0 +1,88 @@
{ mkDerivation
, alsa-lib
, autoPatchelfHook
, fetchurl
, flac
, lib
, libmicrohttpd
, llvmPackages_10
, qtcharts
, qtdeclarative
, qtquickcontrols2
, qtwebengine
, qtwebview
, rpmextract
, wavpack
}:
mkDerivation rec {
pname = "hqplayer-desktop";
version = "4.12.0-34";
src = fetchurl {
url = "https://www.signalyst.eu/bins/hqplayer/fc33/hqplayer4desktop-${version}.fc33.x86_64.rpm";
sha256 = "sha256-9kLKmi5lNtnRm9b4HnO01cO/C+Sg0DcKD64N5WBbYOE=";
};
unpackPhase = ''
${rpmextract}/bin/rpmextract $src
'';
nativeBuildInputs = [ autoPatchelfHook rpmextract ];
buildInputs = [
alsa-lib
flac
libmicrohttpd
llvmPackages_10.openmp
qtquickcontrols2
qtcharts
qtdeclarative
qtwebengine
qtwebview
wavpack
];
dontConfigure = true;
dontBuild = true;
installPhase = ''
# main executable
mkdir -p $out/bin
cp ./usr/bin/* $out/bin
# desktop files
mkdir -p $out/share/applications
cp ./usr/share/applications/* $out/share/applications
# documentation
mkdir -p $out/share/doc/${pname}
cp ./usr/share/doc/hqplayer4desktop/* $out/share/doc/${pname}
# pixmaps
mkdir -p $out/share/pixmaps
cp ./usr/share/pixmaps/* $out/share/pixmaps
'';
postInstall = ''
for desktopFile in $out/share/applications/*; do
substituteInPlace "$desktopFile" \
--replace '/usr/bin/' '$out/bin/' \
--replace '/usr/share/doc/' '$out/share/doc/'
done
gunzip $out/share/doc/${pname}/*.gz
'';
postFixup = ''
patchelf --replace-needed libomp.so.5 libomp.so $out/bin/.hqplayer4desktop-wrapped
'';
meta = with lib; {
homepage = "https://www.signalyst.com/custom.html";
description = "High-end upsampling multichannel software HD-audio player";
changelog = "https://www.signalyst.eu/bins/${pname}/fc33/hqplayer4desktop-${version}fc33.x86_64.changes";
license = licenses.unfree;
maintainers = with maintainers; [ lovesegfault ];
};
}

View file

@ -1,6 +1,7 @@
{ lib
, python3
, fetchFromGitHub
, fetchpatch
, appstream-glib
, desktop-file-utils
, gettext
@ -29,6 +30,14 @@ python3.pkgs.buildPythonApplication rec {
sha256 = "sha256-AfR5n1dIm9X5OoPiikQEhHBFQq0rmQH4h7cCJ2yXoXI=";
};
patches = [
(fetchpatch {
name = "fix-ABI-breakage-from-libadwaita.patch";
url = "https://github.com/SeaDve/Mousai/commit/e3db2d9d1949300f49399209b56d667746e539df.patch";
sha256 = "078kvmyhw4jd1m2npai0yl00lwh47jys2n03pkgxp6jf873y83vs";
})
];
postPatch = ''
patchShebangs build-aux/meson
'';

View file

@ -17,11 +17,12 @@
stdenv.mkDerivation rec {
pname = "reaper";
version = "6.28";
version = "6.29";
src = fetchurl {
url = "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_x86_64.tar.xz";
hash = "sha256-38HSjR+rQWPzMOjq1abLn/MP3DCz5YzBg0v2kBsQmR4=";
url = "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_${stdenv.targetPlatform.qemuArch}.tar.xz";
hash = if stdenv.isx86_64 then "sha256-DOul6J2Y7szy4+Q4SeO0uG6PSuU+MELE7ky8W3mSpTQ="
else "sha256-67iTi6bFlbQtyCjnPIjK8K/3aV+zaCsWBRCWmgYonM4=";
};
nativeBuildInputs = [
@ -74,7 +75,7 @@ stdenv.mkDerivation rec {
description = "Digital audio workstation";
homepage = "https://www.reaper.fm/";
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
platforms = [ "x86_64-linux" "aarch64-linux" ];
maintainers = with maintainers; [ jfrankenau ilian ];
};
}

View file

@ -25,6 +25,10 @@ rustPlatform.buildRustPackage rec {
buildInputs = [ alsa-lib gtk3 openssl ffmpeg ];
postInstall = ''
mv packaging/rootfs/usr/share $out/share
'';
meta = with lib; {
description = "An open-source Shazam client for Linux, written in Rust";
homepage = "https://github.com/marin-m/SongRec";

View file

@ -307,12 +307,12 @@ in
mps = buildMps rec {
name = "mps-${version}";
version = "2020.3.3"; /* updated by script */
version = "2021.1"; /* updated by script */
description = "Create your own domain-specific language";
license = lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/mps/2020.3/MPS-${version}.tar.gz";
sha256 = "0sb50f7d4272dzx84njc326xvhbqn3xwrphvdq4zl3pk3wl8f4nz"; /* updated by script */
url = "https://download.jetbrains.com/mps/${version}/MPS-${version}.tar.gz";
sha256 = "0fdh8lzsi2zryi0xs961vrf3l8kqk5imlj56dhifywi7xkhs3vwn"; /* updated by script */
};
wmClass = "jetbrains-mps";
update-channel = "MPS RELEASE";
@ -320,12 +320,12 @@ in
phpstorm = buildPhpStorm rec {
name = "phpstorm-${version}";
version = "2021.1.2"; /* updated by script */
version = "2021.1.3"; /* updated by script */
description = "Professional IDE for Web and PHP developers";
license = lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
sha256 = "02s75fqd9hfh302zha4jw6qynpgm9nkrlq7s78nk3fc3d3hw8v5y"; /* updated by script */
sha256 = "05hjv1nz1b82bkakadjvsy23v0qv8fyni6h31lcg9198h1890f7v"; /* updated by script */
};
wmClass = "jetbrains-phpstorm";
update-channel = "PhpStorm RELEASE";
@ -333,12 +333,12 @@ in
pycharm-community = buildPycharm rec {
name = "pycharm-community-${version}";
version = "2021.1.1"; /* updated by script */
version = "2021.1.2"; /* updated by script */
description = "PyCharm Community Edition";
license = lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "04bs9sz872b0h1zzax23irvj6q5wxnzp6fl4f177j94kh4116cqh"; /* updated by script */
sha256 = "0sp7w1xrl0y36dai08kqfd0jk06yr7jdbaf1a9f3fgxp5pmspxp1"; /* updated by script */
};
wmClass = "jetbrains-pycharm-ce";
update-channel = "PyCharm RELEASE";
@ -346,12 +346,12 @@ in
pycharm-professional = buildPycharm rec {
name = "pycharm-professional-${version}";
version = "2021.1.1"; /* updated by script */
version = "2021.1.2"; /* updated by script */
description = "PyCharm Professional Edition";
license = lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "0wc9j7nilakmm7scf7a71zb3k9vixgih05ni3n3pp4iznvwb3nxg"; /* updated by script */
sha256 = "0ny7rbl8g5azpqnlcq8l6bwh6hrp8rgp06lf4a8gdr9rpvw9xsqb"; /* updated by script */
};
wmClass = "jetbrains-pycharm";
update-channel = "PyCharm RELEASE";
@ -372,12 +372,12 @@ in
ruby-mine = buildRubyMine rec {
name = "ruby-mine-${version}";
version = "2021.1.1"; /* updated by script */
version = "2021.1.2"; /* updated by script */
description = "The Most Intelligent Ruby and Rails IDE";
license = lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
sha256 = "05sfjf5523idsl7byc7400r4xqv1d65gpmkh5x0lbgf1k3bx2wlm"; /* updated by script */
sha256 = "0r80y8y38rdxgc9sim0q2p7bmgxlp4pdxydr0w9gjikwnjxnvz51"; /* updated by script */
};
wmClass = "jetbrains-rubymine";
update-channel = "RubyMine RELEASE";

View file

@ -61,8 +61,9 @@ sub update_nix_block {
# try to interpret some nix
my ($name) = $block =~ /name\s*=\s*"([^"]+)"/;
$name =~ s/\$\{version\}/$latest_versions{$channel}/;
$url =~ s/\$\{name\}/$name/;
$url =~ s/\$\{version\}/$latest_versions{$channel}/;
# Some url paattern contain variables more than once
$url =~ s/\$\{name\}/$name/g;
$url =~ s/\$\{version\}/$latest_versions{$channel}/g;
die "$url still has some interpolation" if $url =~ /\$/;
my ($sha256) = get("$url.sha256") =~ /^([0-9a-f]{64})/;
my $version_string = $latest_versions{$channel};

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "mg";
version = "6.8.1";
version = "6.9";
src = fetchFromGitHub {
owner = "ibara";
repo = "mg";
rev = "mg-6.8.1";
sha256 = "0fyqyi5sag13jx8bc22bvkgybddvsr0wdili9ikxnpnqg2w84fx7";
rev = "mg-${version}";
sha256 = "1w49yb9v1657rv1w5w7rc9ih1d2vzv6ym3mzhf2wgmh04pdm6hid";
};
enableParallelBuilding = true;

View file

@ -16,11 +16,11 @@ let
in stdenv.mkDerivation rec {
pname = "nano";
version = "5.7";
version = "5.8";
src = fetchurl {
url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
sha256 = "1ynarilx0ca0a5h6hl5bf276cymyy8s9wr5l24vyy7f15v683cfl";
sha256 = "133nhxg4xfxisjzi85rn2l575hdbvcax1s13l4m6wcvq5zdn6fz4";
};
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;

View file

@ -13,10 +13,10 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = {
x86_64-linux = "1gw2273ab0gdyav6mz7wk7d6g6cwcdvx0xaghvm610m1pvkbvxkz";
x86_64-darwin = "1zfzsr8gybmpmxc3jlfj6sx3m6ny6hc3dxvpgffni7k5zgv651df";
aarch64-linux = "079bp48h0qfpsbyir2qg3w1f43dc68ngmxqdqb3jnkx721affjzs";
armv7l-linux = "1d9243hk07xawv44909lk6y6bnvy0wjhy8xl13n3a11pg3djn5bm";
x86_64-linux = "1pjqw0chyhmamgnbih05ach94xgz6kglx7n958y2652ps2q5fzhw";
x86_64-darwin = "0k9rinsy0zz48pxprkyxshksgh6shk1h69fkrdi2q0f4mkvzmi3a";
aarch64-linux = "0hd3kxg5pwkf0rhbq4f246x82nic24splpqj4h68qfw856p2zg7d";
armv7l-linux = "0219yagcdiv1n3xbbk1rs94n4zwfv9s70yqrc0all7jl5xl1mbwh";
}.${system};
sourceRoot = {
@ -31,7 +31,7 @@ in
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.56.2";
version = "1.57.0";
pname = "vscodium";
executableName = "codium";

View file

@ -16,13 +16,13 @@ in
stdenv.mkDerivation rec {
pname = "imagemagick";
version = "6.9.12-14";
version = "6.9.12-15";
src = fetchFromGitHub {
owner = "ImageMagick";
repo = "ImageMagick6";
rev = version;
sha256 = "sha256-RK6N4koHVAqol16QXLFWUgI6N5Rph2QCIHxmDFs3Jfk=";
sha256 = "sha256-bel4p45eQfQPIp5/sawhTYTfyuYRQ5nFuGh4qqt1zDs=";
};
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big

View file

@ -5,7 +5,6 @@
, cmocka
, docbook_xsl
, libxslt
, fontconfig
, meson
, ninja
, pkg-config
@ -90,6 +89,12 @@ stdenv.mkDerivation rec {
] ++ windowSystems."${withWindowSystem}"
++ builtins.map (b: backends."${b}") withBackends;
postInstall = ''
# fix the executable path and install the desktop item
substituteInPlace ../files/imv.desktop --replace "imv %F" "$out/bin/imv %F"
install -Dm644 ../files/imv.desktop $out/share/applications/
'';
postFixup = lib.optionalString (withWindowSystem == "all") ''
# The `bin/imv` script assumes imv-wayland or imv-x11 in PATH,
# so we have to fix those to the binaries we installed into the /nix/store
@ -104,7 +109,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A command line image viewer for tiling window managers";
homepage = "https://github.com/eXeC64/imv";
license = licenses.gpl2;
license = licenses.mit;
maintainers = with maintainers; [ rnhmjoj markus1189 ];
platforms = platforms.all;
};

View file

@ -0,0 +1,27 @@
{ lib, rustPlatform, fetchFromGitHub, sqlite, xdg-utils}:
rustPlatform.buildRustPackage rec {
pname = "anup";
version = "0.4.0";
src = fetchFromGitHub {
owner = "Acizza";
repo = "anup";
rev = version;
sha256 = "sha256-4pXF4p4K8+YihVB9NdgT6bOidmQEgWXUbcbvgXJ0IDA=";
};
buildInputs = [
sqlite
xdg-utils
];
cargoSha256 = "sha256-1TA2HDHKA3twFtlAWaC2zcRzS8TJwcbBt1OTQ3hC3qM=";
meta = with lib; {
homepage = "https://github.com/Acizza/anup";
description = "An anime tracker for AniList featuring a TUI";
license = licenses.agpl3Only;
maintainers = with maintainers; [ natto1784 ];
};
}

View file

@ -91,6 +91,7 @@ stdenv.mkDerivation rec {
];
meta = with lib; {
broken = true; # https://gitlab.gnome.org/World/Authenticator/-/issues/271
description = "Two-factor authentication code generator for GNOME";
homepage = "https://gitlab.gnome.org/World/Authenticator";
license = licenses.gpl3Plus;

View file

@ -3,13 +3,13 @@
buildGoModule rec {
pname = "cheat";
version = "4.2.1";
version = "4.2.2";
src = fetchFromGitHub {
owner = "cheat";
repo = "cheat";
rev = version;
sha256 = "sha256-wH0MTTwUmi/QZXo3vWgRYmlPxMxgfhghrTIZAwdVjQ0=";
sha256 = "sha256-YKGCZm0BaFLi+kujl04B4IU1qay15XNfvelxfUkCP8o=";
};
subPackages = [ "cmd/cheat" ];

View file

@ -2,7 +2,7 @@
let
pname = "joplin-desktop";
version = "1.7.11";
version = "1.8.5";
name = "${pname}-${version}";
inherit (stdenv.hostPlatform) system;
@ -16,8 +16,8 @@ let
src = fetchurl {
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}";
sha256 = {
x86_64-linux = "11vjipvhfvf6wxldcg743anma005j8dbbngqk6sq9hlf677ahxii";
x86_64-darwin = "1l7m86jlf1m066n6rwmh5fkpx2pj3wj5h9ncxdd24v0zll6ki8vs";
x86_64-linux = "11csbr72i5kac2bk7wpa877lay2z1n58s0yildkfnjy552ihdxny";
x86_64-darwin = "1n0ni3ixml99ag83bcn5wg6f0kldjhwkkddd9km37ykr8vxxl952";
}.${system} or throwSystem;
};

View file

@ -1,8 +1,6 @@
{ lib, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, makeWrapper
, qttools
, darwin
@ -43,13 +41,13 @@ with lib;
stdenv.mkDerivation rec {
pname = "keepassxc";
version = "2.6.4";
version = "2.6.6";
src = fetchFromGitHub {
owner = "keepassxreboot";
repo = "keepassxc";
rev = version;
sha256 = "02ajfkw818cmalvkl0kqvza85rgdgs59kw2v7b3c4v8kv00c41j3";
sha256 = "15rm3avdmc2x2n92zq6w1zbcranak4j6dds2sxmgdqi1ffc0a3ci";
};
NIX_CFLAGS_COMPILE = optionalString stdenv.cc.isClang [
@ -92,10 +90,9 @@ stdenv.mkDerivation rec {
runHook postCheck
'';
nativeBuildInputs = [ cmake wrapQtAppsHook qttools pkg-config ];
nativeBuildInputs = [ asciidoctor cmake wrapQtAppsHook qttools pkg-config ];
buildInputs = [
asciidoctor
curl
glibcLocales
libXi

View file

@ -1,7 +1,7 @@
{ lib, fetchFromGitHub, makeDesktopItem, prusa-slicer }:
let
appname = "SuperSlicer";
version = "2.2.54.2";
version = "2.3.56.5";
pname = "super-slicer";
description = "PrusaSlicer fork with more features and faster development cycle";
override = super: {
@ -10,20 +10,19 @@ let
src = fetchFromGitHub {
owner = "supermerill";
repo = "SuperSlicer";
sha256 = "sha256-ThmsxFXI1uReK+JwpHrIWzHpBdIOP77kDjv+QaK+Azk=";
sha256 = "sha256-Gg+LT1YKyUGNJE9XvWE1LSlIQ6Vq5GfVBTUw/A7Qx7E=";
rev = version;
fetchSubmodules = true;
};
# We don't need PS overrides anymore, and gcode-viewer is embedded in the binary.
postInstall = null;
# See https://github.com/supermerill/SuperSlicer/issues/432
cmakeFlags = super.cmakeFlags ++ [
"-DSLIC3R_BUILD_TESTS=0"
];
postInstall = ''
mkdir -p "$out/share/pixmaps/"
ln -s "$out/share/SuperSlicer/icons/Slic3r.png" "$out/share/pixmaps/${appname}.png"
'';
desktopItems = [
(makeDesktopItem {
name = appname;

View file

@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
description = "Window switcher, run dialog and dmenu replacement";
homepage = "https://github.com/davatorium/rofi";
license = licenses.mit;
maintainers = with maintainers; [ mbakke ];
maintainers = with maintainers; [ ];
platforms = with platforms; linux;
};
}

View file

@ -1,4 +1,4 @@
{ lib, fetchFromGitHub, gobject-introspection, gtk3, gtksourceview3, wrapGAppsHook, python3Packages }:
{ lib, fetchFromGitHub, gobject-introspection, gtk3, gtksourceview3, webkitgtk, wrapGAppsHook, python3Packages }:
python3Packages.buildPythonApplication rec {
pname = "skytemple";
@ -11,7 +11,15 @@ python3Packages.buildPythonApplication rec {
sha256 = "0l2c4qngv58j6zkp0va6m96zksx8gqn3mjc3isqybfnhjr6nd3v9";
};
buildInputs = [ gobject-introspection gtk3 gtksourceview3 ];
buildInputs = [
gobject-introspection
gtk3
gtksourceview3
# webkitgkt is used for rendering interactive statistics graph which
# can be seen by opening a ROM, entering Pokemon section, selecting
# any Pokemon, and clicking Stats and Moves tab.
webkitgtk
];
nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
propagatedBuildInputs = with python3Packages; [
natsort

View file

@ -5,13 +5,13 @@
}:
let
version = "4.9.10";
version = "5.0.1";
subsurfaceSrc = (fetchFromGitHub {
owner = "Subsurface";
repo = "subsurface";
rev = "v${version}";
sha256 = "12ndhjplz3cwndwzhfc959dc0i6rm2qf3v2d8n9kba8nj63iblfs";
sha256 = "01r836ckvrmgprjf4cqxn2n3w5w4pa2fjrhspjndsspic8nwlrwg";
fetchSubmodules = true;
});
@ -40,13 +40,13 @@ let
googlemaps = stdenv.mkDerivation rec {
pname = "googlemaps";
version = "2018-06-02";
version = "2021-03-19";
src = fetchFromGitHub {
owner = "vladest";
repo = "googlemaps";
rev = "54a357f9590d9cf011bf1713589f66bad65e00eb";
sha256 = "159kslp6rj0qznzxijppwvv8jnswlfgf2pw4x8ladi8vp6bzxnzi";
rev = "8f7def10c203fd3faa5ef96c5010a7294dca0759";
sha256 = "1irz398g45hk6xizwzd07qcx1ln8f7l6bhjh15f56yc20waqpx1x";
};
nativeBuildInputs = [ qmake ];

View file

@ -10,6 +10,7 @@
, hicolor-icon-theme
, librsvg
, wrapGAppsHook
, makeWrapper
}:
with python37Packages;
@ -27,10 +28,14 @@ buildPythonApplication rec {
nativeBuildInputs = [ intltool wrapGAppsHook ];
buildInputs = [ distutils_extra ];
buildInputs = [ makeWrapper distutils_extra ];
doCheck = false;
postInstall = ''
wrapProgram $out/bin/variety --suffix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}/
'';
prePatch = ''
substituteInPlace variety_lib/varietyconfig.py \
--replace "__variety_data_directory__ = \"../data\"" "__variety_data_directory__ = \"$out/share/variety\""
@ -76,7 +81,7 @@ buildPythonApplication rec {
blur, as well as options to layer quotes and a clock onto the background.
'';
license = licenses.gpl3;
maintainers = with maintainers; [ AndersonTorres zfnmxt ];
maintainers = with maintainers; [ p3psi AndersonTorres zfnmxt ];
platforms = with platforms; linux;
};
}

View file

@ -12,7 +12,7 @@ buildGoModule rec {
nativeBuildInputs = [ installShellFiles ];
vendorSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
vendorSha256 = null;
outputs = [ "out" "man" ];

View file

@ -1,8 +1,8 @@
{
"stable": {
"version": "91.0.4472.101",
"sha256": "1d3y621iclkq6nvxrapk5aihv50x13hjha0c2gcp2xxfma96253q",
"sha256bin64": "12j5q5b9v0jpiznjnh89831w8lv399vd1z4ljhbsnsidbsygrbr1",
"version": "91.0.4472.106",
"sha256": "1fxy1l2dl0f6v8566lykcng18ma6fv4nlwxmdb0hh06fgp6khpjl",
"sha256bin64": "11l88fqrl1r7b02j78zgrr6kajayl8kw8mb8b91ard18w5kz1xvd",
"deps": {
"gn": {
"version": "2021-04-06",
@ -12,9 +12,9 @@
}
},
"chromedriver": {
"version": "91.0.4472.19",
"sha256_linux": "0pg9y55644i87qxa0983lvfizbmfiak9bg9249xhifl5kykghrb2",
"sha256_darwin": "07v5k07100vrzsbm6r59xg8j80ffzs3gnnf2kcfgqrzprx284gf2"
"version": "91.0.4472.101",
"sha256_linux": "0dzx565z2rd0y4i57rv5kd7dsm69sffza96y3c773hqaghm4y1ng",
"sha256_darwin": "0nff1jmmrn6a4clfvhyzrhfp8hx85z72563jwk28apflqmnm0k68"
}
},
"beta": {
@ -44,9 +44,9 @@
}
},
"ungoogled-chromium": {
"version": "91.0.4472.77",
"sha256": "0c8vj3gq3nmb7ssiwj6875g0a8hcprss1a4gqw9h7llqywza9ma5",
"sha256bin64": "0caf47xam5igdnbhipal1iyicnxxvadhi61k199rwysrvyv5sdad",
"version": "91.0.4472.101",
"sha256": "1d3y621iclkq6nvxrapk5aihv50x13hjha0c2gcp2xxfma96253q",
"sha256bin64": "12j5q5b9v0jpiznjnh89831w8lv399vd1z4ljhbsnsidbsygrbr1",
"deps": {
"gn": {
"version": "2021-04-06",
@ -55,8 +55,8 @@
"sha256": "199xkks67qrn0xa5fhp24waq2vk8qb78a96cb3kdd8v1hgacgb8x"
},
"ungoogled-patches": {
"rev": "91.0.4472.77-1",
"sha256": "1jfmmkw1y4rcjfgsm7b4v2lrgd3sks5qpajvq0djflbhkpsqxfk0"
"rev": "91.0.4472.101-1",
"sha256": "1ca8gjxz3w730446qns253ibs9lx22iysxq5sphb3pw2w0069q8r"
}
}
}

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "helmfile";
version = "0.139.7";
version = "0.139.8";
src = fetchFromGitHub {
owner = "roboll";
repo = "helmfile";
rev = "v${version}";
sha256 = "sha256-mxnl5ALave2E61AqJAHlLHDLHOwA2wwjs3sb4WnG82A=";
sha256 = "sha256-4QNtjVc2/diJO92xn4J2ZJO7JYDHmPgOE4kGndU5RW0=";
};
vendorSha256 = "sha256-tdsQx2AvbRC8l7YZFBg2xVqo0CLrOOwA9Nmuei+1ozw=";
vendorSha256 = "sha256-GY2+oecRbI5hEVI5lCsTuU3WYIfUGceINyXGPjorisE=";
doCheck = false;

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "kube3d";
version = "4.4.4";
version = "4.4.5";
src = fetchFromGitHub {
owner = "rancher";
repo = "k3d";
rev = "v${version}";
sha256 = "sha256-pfyU25MASKQMwd49IbNyyEiz3gmSOBmLdWtIKhYU2wg=";
sha256 = "sha256-nT/17R1Gky9509U077tgwS7iQKRMJUk8rwQiHSHcP+s=";
};
vendorSha256 = null;

View file

@ -0,0 +1,49 @@
{ lib
, buildGoModule
, fetchFromGitHub
, installShellFiles
, makeWrapper
, git
, go
}:
buildGoModule rec {
pname = "kubebuilder";
version = "3.1.0";
src = fetchFromGitHub {
owner = "kubernetes-sigs";
repo = "kubebuilder";
rev = "v${version}";
sha256 = "1726j2b5jyvllvnk60g6px3g2jyyphd9pc4vgid45mis9b60sh8a";
};
vendorSha256 = "0zxyd950ksjswja64rfri5v2yaalfg6qmq8215ildgrcavl9974n";
subPackages = ["cmd" "pkg/..."];
preBuild = ''
export buildFlagsArray+=("-ldflags=-X main.kubeBuilderVersion=v${version} \
-X main.goos=$GOOS \
-X main.goarch=$GOARCH \
-X main.gitCommit=v${version} \
-X main.buildDate=v${version}")
'';
doCheck = true;
postInstall = ''
mv $out/bin/cmd $out/bin/kubebuilder
wrapProgram $out/bin/kubebuilder \
--prefix PATH : ${lib.makeBinPath [ go ]}
'';
allowGoReference = true;
nativeBuildInputs = [ makeWrapper git ];
meta = with lib; {
homepage = "https://github.com/kubernetes-sigs/kubebuilder";
description = "SDK for building Kubernetes APIs using CRDs";
license = licenses.asl20;
maintainers = with maintainers; [ cmars ];
};
}

View file

@ -11,7 +11,7 @@ buildGoModule rec {
sha256 = "18vp53cda93qjssxygwqp55yc80a93781839gf3138awngf731yq";
};
vendorSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
vendorSha256 = null;
meta = with lib; {
description = "kubectl plugin for retrieving resource example YAMLs";

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "tanka";
version = "0.15.1";
version = "0.16.0";
src = fetchFromGitHub {
owner = "grafana";
repo = pname;
rev = "v${version}";
sha256 = "sha256-aCgr56nXZCkG8k/ZGH2/cDOaqkznnyb6JLEcImqLH64=";
sha256 = "sha256-KvQIVJZD/VvLE5RocWLRVGbb8faLY2cBeFSE/6E7x50=";
};
vendorSha256 = "sha256-vpm2y/CxRNWkz6+AOMmmZH5AjRQWAa6WD5Fnx5lqJYw=";

View file

@ -513,10 +513,10 @@
"owner": "Mongey",
"provider-source-address": "registry.terraform.io/Mongey/kafka",
"repo": "terraform-provider-kafka",
"rev": "v0.2.12",
"sha256": "0jm592chliiph5643rymzpwnlcq7q6bpwg2h86x5qmbzbiyqsi83",
"vendorSha256": "08wg16g4mvn6kl8xwn89195a826cb132ijvrgf32c6p7zp4lgmjd",
"version": "0.2.12"
"rev": "v0.3.3",
"sha256": "10il2mmsrk27zgzdkwn495sfhlad2nnc2xa7qzn7rlqzh92bb8rb",
"vendorSha256": "1gxx561s7jghiq6kqb2nns52bbcp0ks2dylrb1lvy7g2798cpspf",
"version": "0.3.3"
},
"kafka-connect": {
"owner": "Mongey",

View file

@ -1,10 +1,21 @@
{ stdenv, lib, buildGoModule, fetchFromGitHub, makeWrapper, coreutils
, runCommand, runtimeShell, writeText, terraform-providers, fetchpatch }:
{ stdenv
, lib
, buildGoModule
, fetchFromGitHub
, makeWrapper
, coreutils
, runCommand
, runtimeShell
, writeText
, terraform-providers
, fetchpatch
}:
let
generic = { version, sha256, vendorSha256 ? null, ... }@attrs:
let attrs' = builtins.removeAttrs attrs [ "version" "sha256" "vendorSha256" ];
in buildGoModule ({
in
buildGoModule ({
name = "terraform-${version}";
inherit vendorSha256;
@ -62,33 +73,37 @@ 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;
pluginDir = lib.concatMapStrings
(pl:
let
inherit (pl) version GOOS GOARCH;
pname = pl.pname or (throw "${pl.name} is missing a pname attribute");
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;
# 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}";
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)"
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"
cp ${shim} "$TF_0_13_PROVIDER_PATH"
chmod +x "$TF_0_13_PROVIDER_PATH"
TF_0_12_PROVIDER_PATH=$out/plugins/${pname}_v${version}
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;
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
@ -110,9 +125,10 @@ let
};
# Don't bother wrapping unless we actually have plugins, since the wrapper will stop automatic downloading
# of plugins, which might be counterintuitive if someone just wants a vanilla Terraform.
in if actualPlugins == [ ] then
in
if actualPlugins == [ ] then
terraform.overrideAttrs
(orig: { passthru = orig.passthru // passthru; })
(orig: { passthru = orig.passthru // passthru; })
else
lib.appendToName "with-plugins" (stdenv.mkDerivation {
inherit (terraform) name meta;
@ -127,76 +143,47 @@ let
inherit passthru;
});
in withPlugins (_: [ ]);
in
withPlugins (_: [ ]);
plugins = removeAttrs terraform-providers [
"override"
"overrideDerivation"
"recurseForDerivations"
];
in rec {
terraform_0_12 = pluggable (generic {
version = "0.12.31";
sha256 = "03p698xdbk5gj0f9v8v1fpd74zng3948dyy4f2hv7zgks9hid7fg";
patches = [
./provider-path.patch
(fetchpatch {
name = "fix-mac-mojave-crashes.patch";
url = "https://github.com/hashicorp/terraform/commit/cd65b28da051174a13ac76e54b7bb95d3051255c.patch";
sha256 = "1k70kk4hli72x8gza6fy3vpckdm3sf881w61fmssrah3hgmfmbrs";
}) ];
passthru = { inherit plugins; };
});
in
rec {
# Constructor for other terraform versions
mkTerraform = attrs: pluggable (generic attrs);
terraform_0_13 = pluggable (generic {
version = "0.13.7";
sha256 = "1cahnmp66dk21g7ga6454yfhaqrxff7hpwpdgc87cswyq823fgjn";
patches = [ ./provider-path.patch ];
passthru = { inherit plugins; };
});
terraform_0_14 = pluggable (generic {
version = "0.14.11";
sha256 = "1yi1jj3n61g1kn8klw6l78shd23q79llb7qqwigqrx3ki2mp279j";
vendorSha256 = "1d93aqkjdrvabkvix6h1qaxpjzv7w1wa7xa44czdnjs2lapx4smm";
patches = [ ./provider-path.patch ];
passthru = { inherit plugins; };
});
terraform_0_15 = pluggable (generic {
version = "0.15.5";
sha256 = "18f4a6l24s3cym7gk40agxikd90i56q84wziskw1spy9rgv2yx6d";
vendorSha256 = "12hrpxay6k3kz89ihyhl91c4lw4wp821ppa245w9977fq09fhnx0";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };
});
terraform_1_0_0 = pluggable (generic {
terraform_1_0 = mkTerraform {
version = "1.0.0";
sha256 = "sha256-ddcT/I2Qn1pKFyhXgh+CcD3fSv2steSNmjyyiS2SE/o=";
vendorSha256 = "sha256-oFvoEsDunJR4IULdGwS6nHBKWEgUehgT+nNM41W/GYo=";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };
});
};
# Tests that the plugins are being used. Terraform looks at the specific
# file pattern and if the plugin is not found it will try to download it
# from the Internet. With sandboxing enable this test will fail if that is
# the case.
terraform_plugins_test = let
mainTf = writeText "main.tf" ''
resource "random_id" "test" {}
'';
terraform = terraform_0_12.withPlugins (p: [ p.random ]);
test =
runCommand "terraform-plugin-test" { buildInputs = [ terraform ]; } ''
set -e
# make it fail outside of sandbox
export HTTP_PROXY=http://127.0.0.1:0 HTTPS_PROXY=https://127.0.0.1:0
cp ${mainTf} main.tf
terraform init
touch $out
terraform_plugins_test =
let
mainTf = writeText "main.tf" ''
resource "random_id" "test" {}
'';
in test;
terraform = terraform_1_0.withPlugins (p: [ p.random ]);
test =
runCommand "terraform-plugin-test" { buildInputs = [ terraform ]; } ''
set -e
# make it fail outside of sandbox
export HTTP_PROXY=http://127.0.0.1:0 HTTPS_PROXY=https://127.0.0.1:0
cp ${mainTf} main.tf
terraform init
touch $out
'';
in
test;
}

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "terragrunt";
version = "0.29.9";
version = "0.30.3";
src = fetchFromGitHub {
owner = "gruntwork-io";
repo = pname;
rev = "v${version}";
sha256 = "sha256-xgoKxA8lc72yhFVHeFkbF5j5/vGAd9TTaJ/aDEYL8Wg=";
sha256 = "sha256-kGeGqn0Jgim3gpZUwhIMPV84XD8yYEyH5YMtzidxWRU=";
};
vendorSha256 = "sha256-qlSCQtiGHmlk3DyETMoQbbSYhuUSZTsvAnBKuDJI8x8=";
vendorSha256 = "sha256-OgNNq1qRhCufcWemLxh50pzs432RxZpWWcyBB7xeiOs=";
doCheck = false;

View file

@ -11,6 +11,7 @@
, pugixml
, sqlite
, tinyxml
, wrapGAppsHook
, wxGTK30-gtk3
, xdg-utils
}:
@ -35,7 +36,7 @@ stdenv.mkDerivation rec {
"--disable-autoupdatecheck"
];
nativeBuildInputs = [ autoreconfHook pkg-config ];
nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
buildInputs = [
dbus

View file

@ -0,0 +1,25 @@
{ lib, stdenv, buildGoModule, fetchFromGitHub, iproute2mac }:
buildGoModule rec {
pname = "hyprspace";
version = "0.1.2";
propagatedBuildInputs = lib.optional stdenv.isDarwin iproute2mac;
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "sha256-YQJaK6i4GWEGSlf/1+hzjVhdN6ZjZC55v8w9KEedNg4=";
};
vendorSha256 = "sha256-ErqK2jDTpqUyvll+epdGKRYCJvyvCa90W1GVbbhF0a4=";
meta = with lib; {
description = "A Lightweight VPN Built on top of Libp2p for Truly Distributed Networks.";
homepage = "https://github.com/hyprspace/hyprspace";
license = licenses.asl20;
maintainers = with maintainers; [ yusdacra ];
platforms = platforms.linux ++ platforms.darwin;
};
}

View file

@ -12,7 +12,8 @@
, coreutils
, gawk
, xdg-utils
, systemd }:
, systemd
, enableRectOverlay ? false }:
stdenv.mkDerivation rec {
pname = "teams";
@ -57,9 +58,11 @@ stdenv.mkDerivation rec {
ln -s $out/opt/teams/teams $out/bin/
${lib.optionalString (!enableRectOverlay) ''
# Work-around screen sharing bug
# https://docs.microsoft.com/en-us/answers/questions/42095/sharing-screen-not-working-anymore-bug.html
rm $out/opt/teams/resources/app.asar.unpacked/node_modules/slimcore/bin/rect-overlay
''}
runHook postInstall
'';

View file

@ -6,13 +6,13 @@ with lib;
perlPackages.buildPerlPackage rec {
pname = "convos";
version = "6.11";
version = "6.24";
src = fetchFromGitHub {
owner = "convos-chat";
repo = pname;
rev = "v${version}";
sha256 = "19nzm7f3glvj34nj9pvnp0h9xx6baq58c11ddkqfmq7w3sci49hi";
sha256 = "0hrz74fybypkjf9hraknylxrhnz7bhk00pk6wla2wfg8s2798zlx";
};
nativeBuildInputs = [ makeWrapper ]

View file

@ -27,14 +27,14 @@ let
in
assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
stdenv.mkDerivation rec {
version = "3.1";
version = "3.2";
pname = "weechat";
hardeningEnable = [ "pie" ];
src = fetchurl {
url = "https://weechat.org/files/src/weechat-${version}.tar.bz2";
sha256 = "06w147wzrzp6xbqiz6s5nq5xdjy7jn3f18xajxy50pynjd6vmfh5";
sha256 = "0pck4lczkk52mgwa1n0habp1xqi9xsgsh5q6bbsjmdbandvy5vc8";
};
outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;

View file

@ -0,0 +1,33 @@
{ appimageTools, lib, fetchurl }:
let
pname = "electron-mail";
version = "4.12.2";
name = "ElectronMail-${version}";
src = fetchurl {
url = "https://github.com/vladimiry/ElectronMail/releases/download/v${version}/electron-mail-${version}-linux-x86_64.AppImage";
sha256 = "D+0qoIb0EwUVbgKOiKQpqoLDgm8l/UKDWm/BjhW4MYU=";
};
appimageContents = appimageTools.extract { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
'';
meta = with lib; {
description = "ElectronMail is an Electron-based unofficial desktop client for ProtonMail";
homepage = "https://github.com/vladimiry/ElectronMail";
license = licenses.mit;
maintainers = [ maintainers.princemachiavelli ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -29,6 +29,7 @@ stdenv.mkDerivation rec {
'';
preBuild = ''
FPCDIR=${fpc}/lib/fpc/${fpc.version} fpcmake -w
lazbuild -B transgui.lpr --lazarusdir=${lazarus}/share/lazarus
'';

View file

@ -1,22 +1,34 @@
{ stdenv, lib, fetchFromGitHub, autoreconfHook, ldc, installShellFiles, pkg-config
, curl, sqlite, libnotify
, withSystemd ? stdenv.isLinux, systemd ? null }:
{ stdenv
, lib
, fetchFromGitHub
, autoreconfHook
, ldc
, installShellFiles
, pkg-config
, curl
, sqlite
, libnotify
, withSystemd ? stdenv.isLinux
, systemd
}:
stdenv.mkDerivation rec {
pname = "onedrive";
version = "2.4.11";
version = "2.4.12";
src = fetchFromGitHub {
owner = "abraunegg";
repo = pname;
rev = "v${version}";
sha256 = "sha256-ioOrkhVeHHqIjoEXcYo8ATJW+2+nZOehf3XbAJUEXpY=";
sha256 = "sha256-rG9W90+wGLnhnfhqJjUIFGP6ZcmaxGkrdhPxQVRyxoc=";
};
nativeBuildInputs = [ autoreconfHook ldc installShellFiles pkg-config ];
buildInputs = [
curl sqlite libnotify
curl
sqlite
libnotify
] ++ lib.optional withSystemd systemd;
configureFlags = [
@ -36,8 +48,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A complete tool to interact with OneDrive on Linux";
homepage = "https://github.com/abraunegg/onedrive";
license = licenses.gpl3;
maintainers = with maintainers; [ srgom ianmjones ];
license = licenses.gpl3Only;
maintainers = with maintainers; [ srgom peterhoeg ];
platforms = platforms.linux;
};
}

View file

@ -476,11 +476,11 @@
md5name = "b24890e2bb46e12e72a79f7e965f409f4e16466d00e1dd15d93d73ee6b592523-libjpeg-turbo-1.5.3.tar.gz";
}
{
name = "language-subtag-registry-2020-12-18.tar.bz2";
url = "https://dev-www.libreoffice.org/src/language-subtag-registry-2020-12-18.tar.bz2";
sha256 = "62ce680d5db0f28001b64bd57db47f388c13629cdefc9af8e8af0fbe93689ba1";
name = "language-subtag-registry-2021-03-05.tar.bz2";
url = "https://dev-www.libreoffice.org/src/language-subtag-registry-2021-03-05.tar.bz2";
sha256 = "ce80e8face06bf2ada363e0c159e3f990c4116fdae9232ca43e6369aa82bf16a";
md5 = "";
md5name = "62ce680d5db0f28001b64bd57db47f388c13629cdefc9af8e8af0fbe93689ba1-language-subtag-registry-2020-12-18.tar.bz2";
md5name = "ce80e8face06bf2ada363e0c159e3f990c4116fdae9232ca43e6369aa82bf16a-language-subtag-registry-2021-03-05.tar.bz2";
}
{
name = "JLanguageTool-1.7.0.tar.bz2";

View file

@ -8,7 +8,7 @@ rec {
major = "7";
minor = "1";
patch = "3";
patch = "4";
tweak = "2";
subdir = "${major}.${minor}.${patch}";
@ -17,13 +17,13 @@ rec {
src = fetchurl {
url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
sha256 = "1gr9c8kv7nc9kaag1sw9r36843pfba1my80afx7p0lxj0k8pzbrm";
sha256 = "1jsskhnlyra7q6d12kkc8dxq5fgrnd8grl32bdck7j9hkwv6d13m";
};
# FIXME rename
translations = fetchSrc {
name = "translations";
sha256 = "09xkr6jmnwq55savw9xjsy8l8zcyflnsg4nfwhknvm3ls8sqj4w6";
sha256 = "0cslzhp5ic1w7hnl6wbyxrxhczdmap1g1hh1nj9sgpw9iqdryqj7";
};
# the "dictionaries" archive is not used for LO build because we already build hunspellDicts packages from
@ -31,6 +31,6 @@ rec {
help = fetchSrc {
name = "help";
sha256 = "0dc981vmxfdwlyfgq84axkr99d8chm1ypknj39v0cmaqn56lpwg0";
sha256 = "091yhm1qkxgvv130a1yzmmikchvxvp8109mcdrlpybp4gc276l8q";
};
}

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, boost165 }:
{ lib, stdenv, fetchFromGitHub, boost165, zlib }:
stdenv.mkDerivation rec {
pname = "starspace";
@ -11,13 +11,17 @@ stdenv.mkDerivation rec {
sha256 = "0sc7a37z1skb9377a1qs8ggwrkz0nmpybx7sms38xj05b702kbvj";
};
buildInputs = [ boost165 ];
buildInputs = [ boost165 zlib ];
makeFlags = [
"CXX=${stdenv.cc.targetPrefix}c++"
"BOOST_DIR=${boost165.dev}/include"
];
preBuild = ''
cp makefile_compress makefile
'';
installPhase = ''
mkdir -p $out/bin
mv starspace $out/bin

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, cmake, boost169, flatbuffers, fmt, rapidjson, spdlog, zlib }:
{ lib, stdenv, fetchFromGitHub, cmake, boost, flatbuffers, fmt, rapidjson, spdlog, zlib }:
stdenv.mkDerivation rec {
pname = "vowpal-wabbit";
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
buildInputs = [
boost169
boost
flatbuffers
fmt
rapidjson

View file

@ -21,14 +21,14 @@
with python3Packages;
buildPythonApplication rec {
pname = "kitty";
version = "0.21.0";
version = "0.21.1";
format = "other";
src = fetchFromGitHub {
owner = "kovidgoyal";
repo = "kitty";
rev = "v${version}";
sha256 = "sha256-n8ipIQAfKPVApJhuTrlSSsd6dlPeCUvk7rdiVmL9i+4=";
sha256 = "sha256-/+OSVjC4++A4kaxEfI2kIgjXxL67lfoXCdH2PykLWxA=";
};
buildInputs = [
@ -68,17 +68,21 @@ buildPythonApplication rec {
dontConfigure = true;
buildPhase = if stdenv.isDarwin then ''
${python.interpreter} setup.py kitty.app \
--update-check-interval=0 \
--disable-link-time-optimization
make man
'' else ''
${python.interpreter} setup.py linux-package \
--update-check-interval=0 \
--egl-library='${lib.getLib libGL}/lib/libEGL.so.1' \
--startup-notification-library='${libstartup_notification}/lib/libstartup-notification-1.so' \
--canberra-library='${libcanberra}/lib/libcanberra.so'
buildPhase = ''
runHook preBuild
${if stdenv.isDarwin then ''
${python.interpreter} setup.py kitty.app \
--update-check-interval=0 \
--disable-link-time-optimization
make man
'' else ''
${python.interpreter} setup.py linux-package \
--update-check-interval=0 \
--egl-library='${lib.getLib libGL}/lib/libEGL.so.1' \
--startup-notification-library='${libstartup_notification}/lib/libstartup-notification-1.so' \
--canberra-library='${libcanberra}/lib/libcanberra.so'
''}
runHook postBuild
'';
checkInputs = [ pillow ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "gitstatus";
version = "1.4.4";
version = "1.5.1";
src = fetchFromGitHub {
owner = "romkatv";
repo = "gitstatus";
rev = "v${version}";
sha256 = "1w5kpca2v6iii912riywp1jscq7cpr5xv93mglr30pjnar1mk8gs";
sha256 = "1ffgh5826985phc8amvzl9iydvsnij5brh4gczfh201vfmw9d4hh";
};
buildInputs = [ (callPackage ./romkatv_libgit2.nix {}) ];

View file

@ -1,13 +1,13 @@
{
"version": "13.12.2",
"repo_hash": "1wzbjw21pan5cfiz1jd03c3w9sgyvmn35f6dm2sr2k54acsw034p",
"version": "13.12.4",
"repo_hash": "1jp97vwwfnh3iqkh58y0zqcx6lsvqcpnxy8ipd4j9hbmag1jr36i",
"owner": "gitlab-org",
"repo": "gitlab",
"rev": "v13.12.2-ee",
"rev": "v13.12.4-ee",
"passthru": {
"GITALY_SERVER_VERSION": "13.12.2",
"GITALY_SERVER_VERSION": "13.12.4",
"GITLAB_PAGES_VERSION": "1.39.0",
"GITLAB_SHELL_VERSION": "13.18.0",
"GITLAB_WORKHORSE_VERSION": "13.12.2"
"GITLAB_WORKHORSE_VERSION": "13.12.4"
}
}

View file

@ -21,14 +21,14 @@ let
};
};
in buildGoModule rec {
version = "13.12.2";
version = "13.12.4";
pname = "gitaly";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
sha256 = "sha256-jZg/OlecYlGjDxlxsayAuqzptil1OPtyPjOe1WYT0HY=";
sha256 = "sha256-5I06tzeOfVdtblgqI7neKBgwzXuU9hI/0V3gYEPMJJ0=";
};
vendorSha256 = "sha256-drS0L0olEFHYJVC0VYwEZeNYa8fjwrfxlhrEQa4pqzY=";

View file

@ -5,7 +5,7 @@ in
buildGoModule rec {
pname = "gitlab-workhorse";
version = "13.12.2";
version = "13.12.4";
src = fetchFromGitLab {
owner = data.owner;

View file

@ -309,12 +309,12 @@ gem 'rack-attack', '~> 6.3.0'
gem 'sentry-raven', '~> 3.0'
# PostgreSQL query parsing
gem 'pg_query', '~> 2.0.3'
gem 'pg_query', '~> 1.3.0'
gem 'premailer-rails', '~> 1.10.3'
# LabKit: Tracing and Correlation
gem 'gitlab-labkit', '~> 0.17.1'
gem 'gitlab-labkit', '~> 0.16.2'
# Thrift is a dependency of gitlab-labkit, we want a version higher than 0.14.0
# because of https://gitlab.com/gitlab-org/gitlab/-/issues/321900
gem 'thrift', '>= 0.14.0'
@ -485,7 +485,7 @@ gem 'gitaly', '~> 13.12.0.pre.rc1'
gem 'grpc', '~> 1.30.2'
gem 'google-protobuf', '~> 3.15.8'
gem 'google-protobuf', '~> 3.14.0'
gem 'toml-rb', '~> 1.0.0'

View file

@ -460,13 +460,13 @@ GEM
fog-xml (~> 0.1.0)
google-api-client (>= 0.44.2, < 0.51)
google-cloud-env (~> 1.2)
gitlab-labkit (0.17.1)
gitlab-labkit (0.16.2)
actionpack (>= 5.0.0, < 7.0.0)
activesupport (>= 5.0.0, < 7.0.0)
grpc (~> 1.19)
jaeger-client (~> 1.1)
opentracing (~> 0.4)
pg_query (~> 2.0)
pg_query (~> 1.3)
redis (> 3.0.0, < 5.0.0)
gitlab-license (1.5.0)
gitlab-mail_room (0.0.9)
@ -509,7 +509,7 @@ GEM
signet (~> 0.12)
google-cloud-env (1.4.0)
faraday (>= 0.17.3, < 2.0)
google-protobuf (3.15.8)
google-protobuf (3.14.0)
googleapis-common-protos-types (1.0.6)
google-protobuf (~> 3.14)
googleauth (0.14.0)
@ -896,8 +896,7 @@ GEM
peek (1.1.0)
railties (>= 4.0.0)
pg (1.2.3)
pg_query (2.0.3)
google-protobuf (~> 3.15.5)
pg_query (1.3.0)
plist (3.6.0)
png_quantizator (0.2.1)
po_to_json (1.0.1)
@ -1473,7 +1472,7 @@ DEPENDENCIES
gitlab-experiment (~> 0.5.4)
gitlab-fog-azure-rm (~> 1.0.1)
gitlab-fog-google (~> 1.13)
gitlab-labkit (~> 0.17.1)
gitlab-labkit (~> 0.16.2)
gitlab-license (~> 1.5)
gitlab-mail_room (~> 0.0.9)
gitlab-markup (~> 1.7.1)
@ -1485,7 +1484,7 @@ DEPENDENCIES
gitlab_omniauth-ldap (~> 2.1.1)
gon (~> 6.4.0)
google-api-client (~> 0.33)
google-protobuf (~> 3.15.8)
google-protobuf (~> 3.14.0)
gpgme (~> 2.0.19)
grape (~> 1.5.2)
grape-entity (~> 0.9.0)
@ -1565,7 +1564,7 @@ DEPENDENCIES
parslet (~> 1.8)
peek (~> 1.1)
pg (~> 1.1)
pg_query (~> 2.0.3)
pg_query (~> 1.3.0)
png_quantizator (~> 0.2.1)
premailer-rails (~> 1.10.3)
prometheus-client-mmap (~> 0.12.0)

View file

@ -1978,10 +1978,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1y1sk3xmxj14nzx7v2zgq4q4d5lh4v1pvhs03n03j3kp4fbrj469";
sha256 = "0184rq6sal3xz4f0w5iaa5zf3q55i4dh0rlvr25l1g0s2imwr3fa";
type = "gem";
};
version = "0.17.1";
version = "0.16.2";
};
gitlab-license = {
groups = ["default"];
@ -2127,10 +2127,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0d9ayd4c69iag9nny7yydjx6dw4ymd52x1kv917ngv3vmsdkv51x";
sha256 = "0pbm2kjhxvazx9d5c071bxcjx5cbip6d2y36dii2a4558nqjd12p";
type = "gem";
};
version = "3.15.8";
version = "3.14.0";
};
googleapis-common-protos-types = {
dependencies = ["google-protobuf"];
@ -3811,15 +3811,14 @@
version = "1.2.3";
};
pg_query = {
dependencies = ["google-protobuf"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1mii63kgppy2zil2qn54c94z93b6ama6x7gq6rbv4xxlfk8ncrag";
sha256 = "1i9l3y502ddm2lq3ajhxhqq17vs9hgxkxm443yw221ccibcfh6qf";
type = "gem";
};
version = "2.0.3";
version = "1.3.0";
};
plist = {
groups = ["default"];

View file

@ -0,0 +1,45 @@
{ lib, fetchFromGitHub, stdenv
, ffmpeg, frei0r, sox, gtk3, python3, ladspaPlugins
, gobject-introspection, makeWrapper, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "flowblade";
version = "2.8.0.3";
src = fetchFromGitHub {
owner = "jliljebl";
repo = pname;
rev = "v${version}";
sha256 = "sha256-/EkI3qiceB5eKTVQnpG+z4e6yaE9hDtn6I+iN/J+h/g=";
};
buildInputs = [
ffmpeg frei0r sox gtk3 gobject-introspection ladspaPlugins
(python3.withPackages (ps: with ps; [ mlt pygobject3 dbus-python numpy pillow ]))
];
nativeBuildInputs = [ gobject-introspection makeWrapper wrapGAppsHook ];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -a ${src}/flowblade-trunk $out/flowblade
makeWrapper $out/flowblade/flowblade $out/bin/flowblade \
--set FREI0R_PATH ${frei0r}/lib/frei0r-1 \
--set LADSPA_PATH ${ladspaPlugins}/lib/ladspa \
''${gappsWrapperArgs[@]}
runHook postInstall
'';
meta = with lib; {
description = "Multitrack Non-Linear Video Editor";
homepage = "https://jliljebl.github.io/flowblade/";
license = with licenses; [ gpl3Plus ];
platforms = platforms.linux;
maintainers = with maintainers; [ polygon ];
};
}

View file

@ -0,0 +1,26 @@
From 635772c4c5ecf11a0f84e6c9fc273dce6b9a5688 Mon Sep 17 00:00:00 2001
From: V <v@anomalous.eu>
Date: Thu, 10 Jun 2021 18:36:22 +0200
Subject: [PATCH] Change product_version to user_agent_product
This is its name as of CEF 91.1.0.
---
obs-browser-plugin.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/obs-browser-plugin.cpp b/obs-browser-plugin.cpp
index 1a6a009..5eb379e 100644
--- a/plugins/obs-browser/obs-browser-plugin.cpp
+++ b/plugins/obs-browser/obs-browser-plugin.cpp
@@ -298,7 +298,7 @@ static void BrowserInit(void)
prod_ver << std::to_string(obs_maj) << "." << std::to_string(obs_min)
<< "." << std::to_string(obs_pat);
- CefString(&settings.product_version) = prod_ver.str();
+ CefString(&settings.user_agent_product) = prod_ver.str();
#ifdef USE_QT_LOOP
settings.external_message_pump = true;
--
2.31.1

View file

@ -0,0 +1,36 @@
From 0de0a90f8fe5e1e48fa4ec7aa7c825ef88770f9d Mon Sep 17 00:00:00 2001
From: Ryan Foster <RytoEX@gmail.com>
Date: Mon, 9 Sep 2019 23:55:02 -0400
Subject: [PATCH] Enable file access and universal access for file URLs
When loading a local file, instead of disabling CEF's web security,
enable file access and universal access for file URLs. This should allow
local files to make CORS requests without completely disabling CEF's
security model.
---
obs-browser-source.cpp | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/obs-browser-source.cpp b/obs-browser-source.cpp
index ab1181e..c775283 100644
--- a/plugins/obs-browser/obs-browser-source.cpp
+++ b/plugins/obs-browser/obs-browser-source.cpp
@@ -179,9 +179,12 @@ bool BrowserSource::CreateBrowser()
#if ENABLE_LOCAL_FILE_URL_SCHEME
if (is_local) {
- /* Disable web security for file:// URLs to allow
- * local content access to remote APIs */
- cefBrowserSettings.web_security = STATE_DISABLED;
+ /* Enable file access and universal access from file://
+ * URLs to allow local content access to remote APIs */
+ cefBrowserSettings.file_access_from_file_urls =
+ STATE_ENABLED;
+ cefBrowserSettings.universal_access_from_file_urls =
+ STATE_ENABLED;
}
#endif
--
2.31.1

View file

@ -53,6 +53,14 @@ in mkDerivation rec {
fetchSubmodules = true;
};
patches = [
# Lets obs-browser build against CEF 90.1.0+
./Enable-file-access-and-universal-access-for-file-URL.patch
# Lets obs-browser build against CEF 91.1.0+
./Change-product_version-to-user_agent_product.patch
];
nativeBuildInputs = [ addOpenGLRunpath cmake pkg-config ];
buildInputs = [

View file

@ -11,7 +11,7 @@ rec {
, tiniRev, tiniSha256, buildxSupport ? false
# package dependencies
, stdenv, fetchFromGitHub, buildGoPackage
, makeWrapper, installShellFiles, pkg-config
, makeWrapper, installShellFiles, pkg-config, glibc
, go-md2man, go, containerd, runc, docker-proxy, tini, libtool
, sqlite, iproute2, lvm2, systemd, docker-buildx
, btrfs-progs, iptables, e2fsprogs, xz, util-linux, xfsprogs, git
@ -56,7 +56,9 @@ rec {
};
# Do not remove static from make files as we want a static binary
patchPhase = "";
postPatch = "";
buildInputs = [ glibc glibc.static ];
NIX_CFLAGS_COMPILE = "-DMINIMAL=ON";
});

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, cmake, glibc }:
{ lib, stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
version = "0.19.0";
@ -11,12 +11,11 @@ stdenv.mkDerivation rec {
sha256 ="1hnnvjydg7gi5gx6nibjjdnfipblh84qcpajc08nvr44rkzswck4";
};
patchPhase = "sed -i /tini-static/d CMakeLists.txt";
postPatch = "sed -i /tini-static/d CMakeLists.txt";
NIX_CFLAGS_COMPILE = "-DPR_SET_CHILD_SUBREAPER=36 -DPR_GET_CHILD_SUBREAPER=37";
nativeBuildInputs = [ cmake ];
buildInputs = [ glibc glibc.static ];
meta = with lib; {
description = "A tiny but valid init for containers";

View file

@ -571,6 +571,22 @@ rec {
installPhase = "cp -R ./ $out";
};
/* An immutable file in the store with a length of 0 bytes. */
emptyFile = runCommand "empty-file" {
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = "0ip26j2h11n1kgkz36rl4akv694yz65hr72q4kv4b3lxcbi65b3p";
preferLocalBuild = true;
} "touch $out";
/* An immutable empty directory in the store. */
emptyDirectory = runCommand "empty-directory" {
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
preferLocalBuild = true;
} "mkdir $out";
/* Checks the command output contains the specified version
*
* Although simplistic, this test assures that the main program

View file

@ -12,4 +12,8 @@ in
norefs = writeText "hi" "hello";
helloRef = writeText "hi" "hello ${hello}";
helloFigletRef = writeText "hi" "hello ${hello} ${figlet}";
inherit (pkgs)
emptyFile
emptyDirectory
;
}

View file

@ -0,0 +1,54 @@
{ lib, stdenv, fetchzip, libfaketime, xorg }:
stdenv.mkDerivation rec {
pname = "efont-unicode";
version = "0.4.2";
src = fetchzip {
url = "http://openlab.ring.gr.jp/efont/dist/unicode-bdf/${pname}-bdf-${version}.tar.bz2";
sha256 = "0bib3jgikq8s1m96imw4mlgbl5cbq1bs5sqig74s2l2cdfx3jaqc";
};
nativeBuildInputs = with xorg;
[ libfaketime bdftopcf fonttosfnt mkfontscale ];
buildPhase = ''
runHook preBuild
# convert bdf fonts to pcf
for f in *.bdf; do
bdftopcf -t -o "''${f%.bdf}.pcf" "$f"
done
gzip -n -9 *.pcf
# convert bdf fonts to otb
for f in *.bdf; do
faketime -f "1970-01-01 00:00:01" \
fonttosfnt -v -m 2 -o "''${f%.bdf}.otb" "$f"
done
runHook postBuild
'';
installPhase = ''
runHook preInstall
dir=share/fonts/misc
install -D -m 644 -t "$out/$dir" *.otb *.pcf.gz
install -D -m 644 -t "$bdf/$dir" *.bdf
mkfontdir "$out/$dir"
mkfontdir "$bdf/$dir"
runHook postInstall
'';
outputs = [ "out" "bdf" ];
meta = with lib; {
description = "The /efont/ Unicode bitmap font";
homepage = "http://openlab.ring.gr.jp/efont/unicode/";
license = licenses.bsd3;
platforms = platforms.all;
maintainers = [ maintainers.ncfavier ];
};
}

View file

@ -1,7 +1,7 @@
{ lib, fetchzip }:
let
version = "3.2.0";
version = "5.0.0";
in fetchzip {
name = "emacs-all-the-icons-fonts-${version}";
@ -12,7 +12,7 @@ in fetchzip {
unzip -j $downloadedFile \*.ttf -d $out/share/fonts/all-the-icons
'';
sha256 = "0ps8q9nkx67ivgn8na4s012360v36jwr0951rsg7j6dyyw9g41jq";
sha256 = "0vc9bkm4pcc05llcd2c9zr3d88h3zmci0izla5wnw8hg1n0rsrii";
meta = with lib; {
description = "Icon fonts for emacs all-the-icons";

View file

@ -1,22 +1,18 @@
{ lib
, stdenv
, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
stdenv.mkDerivation {
stdenvNoCC.mkDerivation {
pname = "google-fonts";
version = "unstable-2021-01-19";
version = "unstable-2021-06-12";
outputs = [ "out" "adobeBlank" ];
src = fetchFromGitHub {
owner = "google";
repo = "fonts";
rev = "a3a831f0fe44cd58465c6937ea06873728f2ba0d";
sha256 = "19abx2bj7mkysv2ihr43m3kpyf6kv6v2qjlm1skxc82rb72xqhix";
rev = "370c795d7e5f9b02db9a793c2779e2c8f94c6adc";
sha256 = "sha256-XKjxmupY2KuefCtKZMXWaba1TnNwdYM/P0xGXOtBGmM=";
};
phases = [ "unpackPhase" "patchPhase" "installPhase" ];
patchPhase = ''
# These directories need to be removed because they contain
# older or duplicate versions of fonts also present in other
@ -33,6 +29,8 @@ stdenv.mkDerivation {
fi
'';
dontBuild = true;
installPhase = ''
adobeBlankDest=$adobeBlank/share/fonts/truetype
install -m 444 -Dt $adobeBlankDest ofl/adobeblank/AdobeBlank-Regular.ttf

View file

@ -10,7 +10,7 @@ let
(builtins.attrNames (builtins.removeAttrs variantHashes [ "iosevka" ]));
in stdenv.mkDerivation rec {
pname = "${name}-bin";
version = "5.0.5";
version = "7.0.4";
src = fetchurl {
url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/ttc-${name}-${version}.zip";

View file

@ -1,26 +1,27 @@
# This file was autogenerated. DO NOT EDIT!
{
iosevka = "1fva80sxdcmsl8y3m23ndif3ff54if37g1xqpda1f13yrbd9ii8q";
iosevka-aile = "0fy58yd17k8k41j5f48572d4vad3zz7c2mbc6vsiii9abfkwwalr";
iosevka-curly = "1lxw8na3qvc5g04prczl7qprdkvd0zf91ybmv276dnkq27abnjn4";
iosevka-curly-slab = "19b6xr5vjnb20j34x2ynfji63qibczn0mm2j76d01py304839bws";
iosevka-etoile = "0fhcn69idb6w8abpmmvpdp9c08zdhy0zwn8nbyy9jcznwj8vwb7m";
iosevka-slab = "0jlm3l13p9c965zx6z4df65lzxzj9yjjvpwlnx94ipayinxa1iff";
iosevka-ss01 = "1i6bvslpxj87p3xi198l486ba40ixicdkmj29vcb1d7w1hhr6wnm";
iosevka-ss02 = "1raczi1ja4barvjg5cp3j96kyph4aj8qlp9i10q7835sy29q3285";
iosevka-ss03 = "0cn9hi5w9rx8xhbh9a75c7s9pxa3dkqfhd24lbp72hwfgv5nk1v0";
iosevka-ss04 = "0v8fvif71604vyqanphq9mmlmx4xy0y2bykvplhrj1zmrj6v2ing";
iosevka-ss05 = "1fh99av3ml2zhjvdif02r2f82n4hsswpgd2i42d964swjdplxdga";
iosevka-ss06 = "0b0kl49djpc77qpmr1g2nzrg0q477xkjiqxb2i33pkrjsxn4vhn7";
iosevka-ss07 = "1d2by3najsambqxyzapnmd200hah39jq0mqdalidb2kjh5lx9n6k";
iosevka-ss08 = "05m03zn9pfl1khvl9xvgmlaygh1ni67lj2pc8zjgqydyls1vmxl4";
iosevka-ss09 = "1hzglj7sclg6h4jc9ibb1777apl11885w1gpscv81b8n1h0qhnb7";
iosevka-ss10 = "1fr52sclgp10k0lh86scjn3aylvsfnr7msg7jfsr3bkg61f5x1da";
iosevka-ss11 = "1cmdjmlqvhn3qvqdfflwa4wgza364jn9gbj5vq8rsd6qili175ix";
iosevka-ss12 = "0bk56hh9894z59rpkk5s9hhmkz1b2gmvfys46frijg3am54xh03q";
iosevka-ss13 = "1kgxlxz1cdkzrfbnkavscf48im9lwiya9rcqlaa10k0ssas28br5";
iosevka-ss14 = "06djgn86r2yy3ll2ask5mr9qhqibqzr7v95db5dzxcbz7hrmaaxf";
iosevka-ss15 = "0qcld7h38c7cif518sa84x50igxjkh38ckav9qhhv7ls1n5h0jpm";
iosevka-ss16 = "0qa6h8qx60rajbpp0v4wxia5n3yinp2nvwy2dsi1270prra7r49x";
iosevka-ss17 = "1s04vlkll42am6w3lcka518zv2dlrwwnykdid0sp81najwmq0fk3";
iosevka = "10aa8bsykkfi3aplw4j7smj0brcbni3jxqzjbpsbv5b15wzvkm7y";
iosevka-aile = "0pa79n41xha9rdj4vzz8cpmdhf0h4fjyphjl12i9qxh5znjr4yyz";
iosevka-curly = "0shk75qdm5acfbxdvv985gnhaz3dys8wpshiis6y2raz8sam48qg";
iosevka-curly-slab = "0z297s1bl2rrrmr3a4cds4cx4cw69p2y05jv999bkw9vrd6a5ij9";
iosevka-etoile = "05h62ybd6b54b51h6m6dq3phvrw4jfcc6cyp1x44shj4az2ia17w";
iosevka-slab = "07rp7rp3rjzzn6vnx3zbfizd924xhl702kcyq9qlif9g285l85nl";
iosevka-ss01 = "1rvshgyhcq2cay9dssap9mhinhljn92adrbf8lbkaabf3fcyd19h";
iosevka-ss02 = "0bscxfjhm1is7b7amr5jjj5wpxm1yps4cns47r4w26a0ad4lzf6b";
iosevka-ss03 = "1l4mzv1w7wkjs4629hrj7svd3wwhjfvby0qsbq2fr71ngz4gdvva";
iosevka-ss04 = "0mj5l316bji6mazgkzi5vigbfbgfnif0llmgacg0l5qayzaafqb1";
iosevka-ss05 = "1gfc7b05fvf1m5vhlvbzxzim8qfcqf16dg8qmzdv625dk1mg2llf";
iosevka-ss06 = "1n3mfn8h9gmf7ymc6f5ky5n70nn0nb2l8grj26hm9047cvbxcjqm";
iosevka-ss07 = "0bffazcb6k7qd3c3fxg426mcgjzc5xncv8nsiz71frhi9crplprv";
iosevka-ss08 = "1kv6v7n2qbgl185kfh401mjvs2iim6l3cw9zzghhfx6qv7xy0dcd";
iosevka-ss09 = "0da9kcsxk4vllnxjlslm394lr3bhdsw4a2mi95szplipbf748jcp";
iosevka-ss10 = "0935y7m603n3rfv38gmja7jhjmc6xrcx61psb3sznp7mlmi0dn7x";
iosevka-ss11 = "1hh0b8qaas4bxz0sa8zi5sr4rmqrpgxfzaq53fsmxy7pzjkhjz09";
iosevka-ss12 = "118ibl1i7981kjvf8g0rqrckh2chnxvyivk5wwmxhkw43x06ffjf";
iosevka-ss13 = "1licqy5dy5z4s91yh086i0m362lavaqq6zr13715zaqh7ard7hva";
iosevka-ss14 = "0y1f5hva9kpj9l3a56n6vbr8zbydd9c0knvsbpg68lcgmybfc97m";
iosevka-ss15 = "11pm6frf74y27ym4kmh98pn2cqlab6msj0cxpah36ckpzkm5zdqq";
iosevka-ss16 = "0z77549ydrbdhw96gc1zl3sg4s16cq7l56pwkfk9ificm1rwf1nm";
iosevka-ss17 = "0zm34lfgrlcb97a8dx1g056qy6rr7722b1k6hm9dp676mi5va2cw";
iosevka-ss18 = "0jmz975gny6fc7vf5cn8a4bl0y8pzdwlvfh0km9x7ijp711pw42p";
}

View file

@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
version = "4.1.1";
src = fetchurl {
url = "http://www.yusa.lab.uec.ac.jp/~yusa/ricty/ricty_generator-${version}.sh";
url = "https://rictyfonts.github.io/files/ricty_generator-${version}.sh";
sha256 = "03fngb8f5hl7ifigdm5yljhs4z2x80cq8y8kna86d07ghknhzgw6";
};
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A high-quality Japanese font based on Inconsolata and Migu 1M";
homepage = "http://www.yusa.lab.uec.ac.jp/~yusa/ricty.html";
homepage = "https://rictyfonts.github.io";
license = licenses.unfree;
maintainers = [ maintainers.mikoim ];
};

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "kora-icon-theme";
version = "1.4.2";
version = "1.4.3";
src = fetchFromGitHub {
owner = "bikass";
repo = "kora";
rev = "v${version}";
sha256 = "1qnqz0h2c5kilch3308l8nfshgsrkllyysvqn0mxy70iziw895rv";
sha256 = "sha256-tSkTwhhugvDTzzcxIln1xq3ZY6boHJR0LRGy20ONO5U=";
};
nativeBuildInputs = [

View file

@ -0,0 +1,63 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, gtk3
, gnome
, gnome-icon-theme
, hicolor-icon-theme
}:
stdenvNoCC.mkDerivation rec {
pname = "Whitesur-icon-theme";
version = "2021-05-20";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "KboUYozTleOBKNun66g2oj7u/36hyQsPtRSk/x/LAWo=";
};
nativeBuildInputs = [ gtk3 ];
buildInputs = [
gnome-icon-theme
gnome.adwaita-icon-theme
hicolor-icon-theme
];
dontDropIconThemeCache = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/icons/WhiteSur{,-dark}/status
echo "$out/share/icons/WhiteSur/status $out/share/icons/WhiteSur-dark/status" | xargs -n 1 cp -r src/status/{16,22,24,32,symbolic}
echo "$out/share/icons/WhiteSur $out/share/icons/WhiteSur-dark" | xargs -n 1 cp -r ./{COPYING,AUTHORS} src/index.theme src/{actions,animations,apps,categories,devices,emblems,mimes,places} links/{actions,apps,categories,devices,emblems,mimes,places,status}
# Change icon color for dark theme
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/{actions,devices,places,status}/{16,22,24}/*
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/actions/32/*
sed -i "s/#363636/#dedede/g" $out/share/icons/WhiteSur-dark/{actions,apps,categories,emblems,devices,mimes,places,status}/symbolic/*
for f in actions animations apps categories devices emblems mimes places status; do
ln -sf $out/share/icons/WhiteSur/$f $out/share/icons/WhiteSur/$f@2x
ln -sf $out/share/icons/WhiteSur-dark/$f $out/share/icons/WhiteSur-dark/$f@2x
done
for theme in $out/share/icons/*; do
gtk-update-icon-cache $theme
done
runHook postInstall
'';
meta = with lib; {
description = "MacOS Big Sur style icon theme for Linux desktops";
homepage = "https://github.com/vinceliuice/WhiteSur-icon-theme";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ icy-thought ];
};
}

View file

@ -27,6 +27,6 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/ubuntu/yaru";
license = with licenses; [ cc-by-sa-40 gpl3Plus lgpl21Only lgpl3Only ];
platforms = platforms.linux;
maintainers = [ maintainers.jD91mZM2 ];
maintainers = with maintainers; [ ];
};
}

View file

@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "bulky";
version = "1.1";
version = "1.3";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "bulky";
rev = version;
sha256 = "NBlP10IM/+u8IRds4bdFyGWg3pJLRmlSLsdlndMVQqg=";
sha256 = "sha256-jBGrfE8jYQStIs9h/b/1yBu8OEQdPOMHZ/U/KczfX+4=";
};
nativeBuildInputs = [

View file

@ -19,14 +19,14 @@
stdenv.mkDerivation rec {
pname = "aisleriot";
version = "3.22.16";
version = "3.22.17";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = pname;
rev = version;
sha256 = "0arjnm5kgnb4pir53hlm94iym80d0srs256sm2hwhwwc5fr1w79i";
sha256 = "sha256-14z/EdEz1XFDrQZlpoeHW73G187XuZX/uQXp+bAUsmI=";
};
nativeBuildInputs = [

View file

@ -4,17 +4,12 @@
mkXfceDerivation {
category = "apps";
pname = "ristretto";
version = "0.10.0";
version = "0.11.0";
sha256 = "07h7wbq3xh2ac6q4kp2ai1incfn0zfxxngap7hzqx47a5xw2mrm8";
sha256 = "07np4n6kg6lpd7acrb4aga3l6502c8lhjzf867b38n90cx1nh5gf";
buildInputs = [ glib gtk3 libexif libxfce4ui libxfce4util xfconf ];
postPatch = ''
# exo-csource has been dropped from exo
substituteInPlace src/Makefile.am --replace exo-csource xdt-csource
'';
meta = {
description = "A fast and lightweight picture-viewer for the Xfce desktop environment";
};

View file

@ -3,10 +3,10 @@
mkXfceDerivation {
category = "apps";
pname = "xfce4-screenshooter";
version = "1.9.8";
version = "1.9.9";
odd-unstable = false;
sha256 = "0pbzjcaxm8gk0s75s99kvzygmih4yghp7ngf2mxymjiywcxqr40d";
sha256 = "1myzm9sk968bcl9yqh6zyaa3ck42rw01hbcqn8z4sipiwsbhkrj0";
buildInputs = [ exo gtk3 libsoup libxfce4ui libxfce4util xfce4-panel glib-networking ];

View file

@ -47,7 +47,7 @@ let
};
meta = with lib; {
homepage = "https://gitlab.xfce.org/${category}/${pname}/about";
homepage = "https://gitlab.xfce.org/${category}/${pname}";
license = licenses.gpl2Plus; # some libraries are under LGPLv2+
platforms = platforms.linux;
};

View file

@ -0,0 +1,31 @@
{ stdenv, lib, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
pname = "armips";
version = "0.11.0";
src = fetchFromGitHub {
owner = "Kingcom";
repo = "armips";
rev = "v${version}";
sha256 = "sha256-L+Uxww/WtvDJn1xZqoqA6Pkzq/98sy1qTxZbv6eEjbA=";
};
nativeBuildInputs = [ cmake ];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp armips $out/bin
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/Kingcom/armips";
description = "Assembler for various ARM and MIPS platforms.";
license = licenses.mit;
maintainers = with maintainers; [ marius851000 ];
};
}

View file

@ -1,125 +0,0 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, makeWrapper
, coqPackages, ocamlPackages, coq2html
, tools ? stdenv.cc
, version ? "3.9"
}:
let
ocaml-pkgs = with ocamlPackages; [ ocaml findlib menhir menhirLib ];
ccomp-platform = if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux";
inherit (coqPackages) coq flocq;
inherit (lib) optional optionalString;
in
let param = {
"3.7" = {
sha256 = "1h4zhk9rrqki193nxs9vjvya7nl9yxjcf07hfqb6g77riy1vd2jr";
patches = [
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/0a2db0269809539ccc66f8ec73637c37fbd23580.patch";
sha256 = "0n8qrba70x8f422jdvq9ddgsx6avf2dkg892g4ldh3jiiidyhspy";
})
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/5e29f8b5ba9582ecf2a1d0baeaef195873640607.patch";
sha256 = "184nfdgxrkci880lkaj5pgnify3plka7xfgqrgv16275sqppc5hc";
})
];
};
"3.8" = {
sha256 = "1gzlyxvw64ca12qql3wnq3bidcx9ygsklv9grjma3ib4hvg7vnr7";
patches = [
# Support for Coq 8.12.2
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/06956421b4307054af221c118c5f59593c0e67b9.patch";
sha256 = "1f90q6j3xfvnf3z830bkd4d8526issvmdlrjlc95bfsqs78i1yrl";
})
# Support for Coq 8.13.0
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/0895388e7ebf9c9f3176d225107e21968919fb97.patch";
sha256 = "0qhkzgb2xl5kxys81pldp3mr39gd30lvr2l2wmplij319vp3xavd";
})
# Support for Coq 8.13.1
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/6bf310dd678285dc193798e89fc2c441d8430892.patch";
sha256 = "026ahhvpj5pksy90f8pnxgmhgwfqk4kwyvcf8x3dsanvz98d4pj5";
})
# Drop support for Coq < 8.9
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/7563a5df926a4c6fb1489a7a4c847641c8a35095.patch";
sha256 = "05vkslzy399r3dm6dmjs722rrajnyfa30xsyy3djl52isvn4gyfb";
})
# Support for Coq 8.13.2
(fetchpatch {
url = "https://github.com/AbsInt/CompCert/commit/48bc183167c4ce01a5c9ea86e49d60530adf7290.patch";
sha256 = "0j62lppfk26d1brdp3qwll2wi4gvpx1k70qivpvby5f7dpkrkax1";
})
];
useExternalFlocq = true;
};
"3.9" = {
sha256 = "1srcz2dqrvmbvv5cl66r34zqkm0hsbryk7gd3i9xx4slahc9zvdb";
useExternalFlocq = true;
};
}."${version}"; in
stdenv.mkDerivation rec {
pname = "compcert";
inherit version;
src = fetchFromGitHub {
owner = "AbsInt";
repo = "CompCert";
rev = "v${version}";
inherit (param) sha256;
};
patches = param.patches or [];
nativeBuildInputs = [ makeWrapper ];
buildInputs = ocaml-pkgs ++ [ coq coq2html ];
propagatedBuildInputs = optional (param.useExternalFlocq or false) flocq;
enableParallelBuilding = true;
postPatch = ''
substituteInPlace ./configure \
--replace \$\{toolprefix\}ar 'ar' \
--replace '{toolprefix}gcc' '{toolprefix}cc'
'';
configurePhase = ''
./configure -clightgen \
-prefix $out \
-coqdevdir $lib/lib/coq/${coq.coq-version}/user-contrib/compcert/ \
-toolprefix ${tools}/bin/ \
${optionalString (param.useExternalFlocq or false) "-use-external-Flocq"} \
${ccomp-platform}
'';
installTargets = "documentation install";
postInstall = ''
# move man into place
mkdir -p $man/share
mv $out/share/man/ $man/share/
# move docs into place
mkdir -p $doc/share/doc/compcert
mv doc/html $doc/share/doc/compcert/
# wrap ccomp to undefine _FORTIFY_SOURCE; ccomp invokes cc1 which sets
# _FORTIFY_SOURCE=2 by default, but undefines __GNUC__ (as it should),
# which causes a warning in libc. this suppresses it.
for x in ccomp clightgen; do
wrapProgram $out/bin/$x --add-flags "-U_FORTIFY_SOURCE"
done
'';
outputs = [ "out" "lib" "doc" "man" ];
meta = with lib; {
description = "Formally verified C compiler";
homepage = "https://compcert.org";
license = licenses.inria-compcert;
platforms = [ "x86_64-linux" "x86_64-darwin" ];
maintainers = with maintainers; [ thoughtpolice jwiegley vbgl ];
};
}

View file

@ -18,18 +18,19 @@
}:
let
release_version = "12.0.0";
release_version = "13.0.0";
candidate = ""; # empty or "rcN"
dash-candidate = lib.optionalString (candidate != "") "-${candidate}";
rev = ""; # When using a Git commit
version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs
rev = "50c0aaed47b518beea550a6858c2967eaeaef7eb"; # When using a Git commit
rev-version = "unstable-2021-06-04"; # When using a Git commit
version = if rev != "" then rev-version else "${release_version}${dash-candidate}";
targetConfig = stdenv.targetPlatform.config;
src = fetchFromGitHub {
owner = "llvm";
repo = "llvm-project";
rev = if rev != "" then rev else "llvmorg-${version}";
sha256 = "07jz8pywc2qqa1srdnqg5p2y4lx3ki1inpigarzgxc3j20r4gb58";
sha256 = "1w1ahcg707yh3xiy6y28b90ag03dwjplj0bg39l4w72krqr28661";
};
llvm_meta = {
@ -256,9 +257,7 @@ let
libunwind = callPackage ./libunwind {
inherit llvm_meta;
stdenv = if stdenv.hostPlatform.useLLVM or false
then overrideCC stdenv buildLlvmTools.clangNoLibcxx
else stdenv;
stdenv = overrideCC stdenv buildLlvmTools.clangNoLibcxx;
};
openmp = callPackage ./openmp {

View file

@ -1,4 +1,4 @@
{ lib, stdenv, llvm_meta, src, cmake, python3, libcxxabi, fixDarwinDylibNames, version
{ lib, stdenv, llvm_meta, src, cmake, python3, fixDarwinDylibNames, version
, enableShared ? !stdenv.hostPlatform.isStatic
}:
@ -24,10 +24,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake python3 ]
++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
buildInputs = [ libcxxabi ];
cmakeFlags = [
"-DLIBCXX_CXX_ABI=libcxxabi"
] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
++ lib.optional stdenv.hostPlatform.isWasm [

View file

@ -1,5 +1,5 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9bf1a02f0908..612cd4aab76c 100644
index 06ee1d74a03e..6c3c6f8f8d47 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -28,6 +28,8 @@ set(LIBCXX_BINARY_INCLUDE_DIR "${LIBCXX_BINARY_DIR}/include/c++build")
@ -9,92 +9,73 @@ index 9bf1a02f0908..612cd4aab76c 100644
+ include(GNUInstallDirs)
+
set(PACKAGE_NAME libcxx)
set(PACKAGE_VERSION 12.0.0)
set(PACKAGE_VERSION 13.0.0git)
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
@@ -402,7 +404,7 @@ endif ()
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
@@ -409,7 +411,7 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE})
set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1")
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LLVM_BINARY_DIR}/include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1")
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1")
if(LIBCXX_LIBDIR_SUBDIR)
string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
@@ -410,11 +412,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
@@ -420,14 +422,14 @@ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1")
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}")
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}")
else()
set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
set(LIBCXX_HEADER_DIR ${CMAKE_BINARY_DIR})
set(LIBCXX_GENERATED_INCLUDE_DIR "${CMAKE_BINARY_DIR}/include/c++/v1")
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}")
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}")
endif()
file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
index 5d2764e870e9..bb1ec5de6ca2 100644
index 5a8a4a270a1a..c06bae0001aa 100644
--- a/cmake/Modules/HandleLibCXXABI.cmake
+++ b/cmake/Modules/HandleLibCXXABI.cmake
@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
if (LIBCXX_INSTALL_HEADERS)
install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
- DESTINATION include/c++/v1/${dstdir}
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
COMPONENT cxx-headers
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
)
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
index 29a317b8ae9a..4747263cfd1b 100644
--- a/include/CMakeLists.txt
+++ b/include/CMakeLists.txt
@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
foreach(file ${files})
get_filename_component(dir ${file} DIRECTORY)
install(FILES ${file}
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
COMPONENT cxx-headers
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
)
@@ -260,7 +260,7 @@ if (LIBCXX_INSTALL_HEADERS)
# Install the generated header as __config.
install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
RENAME __config
COMPONENT cxx-headers)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 9965104cb5b2..9b55dbb1d822 100644
index 87b71f7ba334..d20a783079b7 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -352,21 +352,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
@@ -369,21 +369,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
install(TARGETS cxx_shared
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION bin COMPONENT cxx)
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
endif()
if (LIBCXX_INSTALL_STATIC_LIBRARY)
install(TARGETS cxx_static
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION bin COMPONENT cxx)
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
endif()
if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
install(TARGETS cxx_experimental
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
- RUNTIME DESTINATION bin COMPONENT cxx)
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
endif()
# NOTE: This install command must go after the cxx install command otherwise

View file

@ -1,5 +1,6 @@
{ lib, stdenv, llvm_meta, cmake, python3, src, libunwind, version
, enableShared ? !stdenv.hostPlatform.isStatic
, libcxx
}:
stdenv.mkDerivation rec {
@ -26,7 +27,9 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake python3 ];
buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
cmakeFlags = [
"-DLIBCXXABI_LIBCXX_INCLUDES=${libcxx.dev}/include/c++/v1"
] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [
"-DLLVM_ENABLE_LIBCXX=ON"
"-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
] ++ lib.optionals stdenv.hostPlatform.isWasm [

View file

@ -1,5 +1,5 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 426c855288fc..a9812a994f53 100644
index 1e8b73aa38cc..6f7b2a25d205 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -27,6 +27,8 @@ set(LIBCXXABI_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
@ -9,26 +9,28 @@ index 426c855288fc..a9812a994f53 100644
+ include(GNUInstallDirs)
+
set(PACKAGE_NAME libcxxabi)
set(PACKAGE_VERSION 11.0.0)
set(PACKAGE_VERSION 11.0.0git)
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
@@ -180,17 +182,17 @@ set(CMAKE_MODULE_PATH
@@ -196,7 +198,7 @@ set(CMAKE_MODULE_PATH
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
set(LIBCXXABI_HEADER_DIR ${LLVM_BINARY_DIR})
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE})
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
if(LIBCXX_LIBDIR_SUBDIR)
string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
endif()
@@ -204,11 +206,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
set(LIBCXXABI_HEADER_DIR ${LLVM_BINARY_DIR})
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
else()
set(LIBCXXABI_HEADER_DIR ${CMAKE_BINARY_DIR})
set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
endif()
set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBCXXABI_LIBRARY_DIR})

View file

@ -1,5 +1,5 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 48cb8e004e08..fec8144fb95a 100644
index a2c03fd3f8aa..98de2f8ea7c8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -23,6 +23,8 @@ set(LIBUNWIND_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
@ -9,14 +9,14 @@ index 48cb8e004e08..fec8144fb95a 100644
+ include(GNUInstallDirs)
+
set(PACKAGE_NAME libunwind)
set(PACKAGE_VERSION 12.0.0)
set(PACKAGE_VERSION 13.0.0git)
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
@@ -115,17 +117,17 @@ set(CMAKE_MODULE_PATH
@@ -116,17 +118,17 @@ set(CMAKE_MODULE_PATH
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
- set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE})
- set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
if(LIBCXX_LIBDIR_SUBDIR)
string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
string(APPEND LIBUNWIND_INSTALL_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
@ -24,11 +24,11 @@ index 48cb8e004e08..fec8144fb95a 100644
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
- set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
else()
set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX})
- set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
endif()
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBUNWIND_LIBRARY_DIR})

View file

@ -12,6 +12,7 @@
, version
, release_version
, zlib
, which
, buildLlvmTools
, debugVersion ? false
, enableManpages ? false
@ -47,15 +48,10 @@ in stdenv.mkDerivation (rec {
propagatedBuildInputs = [ ncurses zlib ];
checkInputs = [ which ];
patches = [
./gnu-install-dirs.patch
# On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
(fetchpatch {
name = "uops-CMOV16rm-noreg.diff";
url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
stripLen = 1;
})
] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
postPatch = optionalString stdenv.isDarwin ''
@ -75,6 +71,7 @@ in stdenv.mkDerivation (rec {
substituteInPlace unittests/IR/CMakeLists.txt \
--replace "PassBuilderCallbacksTest.cpp" ""
rm unittests/IR/PassBuilderCallbacksTest.cpp
rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
'' + optionalString stdenv.hostPlatform.isMusl ''
patch -p1 -i ${../../TLI-musl.patch}
substituteInPlace unittests/Support/CMakeLists.txt \

View file

@ -1,8 +1,8 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 277d0fe54d7b..af69c8be8745 100644
index e5febba8043c..3cf530c341b0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -256,15 +256,21 @@ if (CMAKE_BUILD_TYPE AND
@@ -270,15 +270,21 @@ if (CMAKE_BUILD_TYPE AND
message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
endif()
@ -25,7 +25,7 @@ index 277d0fe54d7b..af69c8be8745 100644
# They are used as destination of target generators.
set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
@@ -567,9 +573,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
@@ -581,9 +587,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
@ -37,7 +37,7 @@ index 277d0fe54d7b..af69c8be8745 100644
CACHE STRING "OCamldoc-generated HTML documentation install directory")
option (LLVM_BUILD_EXTERNAL_COMPILER_RT
@@ -1027,7 +1033,7 @@ endif()
@@ -1046,7 +1052,7 @@ endif()
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
install(DIRECTORY include/llvm include/llvm-c
@ -46,7 +46,7 @@ index 277d0fe54d7b..af69c8be8745 100644
COMPONENT llvm-headers
FILES_MATCHING
PATTERN "*.def"
@@ -1038,7 +1044,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
@@ -1057,7 +1063,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
)
install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
@ -55,7 +55,7 @@ index 277d0fe54d7b..af69c8be8745 100644
COMPONENT llvm-headers
FILES_MATCHING
PATTERN "*.def"
@@ -1052,13 +1058,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
@@ -1071,13 +1077,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
if (LLVM_INSTALL_MODULEMAPS)
install(DIRECTORY include/llvm include/llvm-c
@ -72,11 +72,11 @@ index 277d0fe54d7b..af69c8be8745 100644
RENAME "module.extern.modulemap"
)
diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
index 97c9980c7de3..409e8b615f75 100644
index 1c419cddbe93..fa0be670986b 100644
--- a/cmake/modules/AddLLVM.cmake
+++ b/cmake/modules/AddLLVM.cmake
@@ -804,9 +804,9 @@ macro(add_llvm_library name)
@@ -801,9 +801,9 @@ macro(add_llvm_library name)
get_target_export_arg(${name} LLVM export_to_llvmexports ${umbrella})
install(TARGETS ${name}
${export_to_llvmexports}
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
@ -88,7 +88,7 @@ index 97c9980c7de3..409e8b615f75 100644
if (NOT LLVM_ENABLE_IDE)
add_llvm_install_targets(install-${name}
@@ -1022,7 +1022,7 @@ function(process_llvm_pass_plugins)
@@ -1019,7 +1019,7 @@ function(process_llvm_pass_plugins)
"set(LLVM_STATIC_EXTENSIONS ${LLVM_STATIC_EXTENSIONS})")
install(FILES
${llvm_cmake_builddir}/LLVMConfigExtensions.cmake
@ -97,7 +97,7 @@ index 97c9980c7de3..409e8b615f75 100644
COMPONENT cmake-exports)
set(ExtensionDef "${LLVM_BINARY_DIR}/include/llvm/Support/Extension.def")
@@ -1242,7 +1242,7 @@ macro(add_llvm_example name)
@@ -1233,7 +1233,7 @@ macro(add_llvm_example name)
endif()
add_llvm_executable(${name} ${ARGN})
if( LLVM_BUILD_EXAMPLES )
@ -106,7 +106,7 @@ index 97c9980c7de3..409e8b615f75 100644
endif()
set_target_properties(${name} PROPERTIES FOLDER "Examples")
endmacro(add_llvm_example name)
@@ -1854,7 +1854,7 @@ function(llvm_install_library_symlink name dest type)
@@ -1851,7 +1851,7 @@ function(llvm_install_library_symlink name dest type)
set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
@ -115,8 +115,8 @@ index 97c9980c7de3..409e8b615f75 100644
if(WIN32 AND "${type}" STREQUAL "SHARED")
set(output_dir bin)
endif()
@@ -1871,7 +1871,7 @@ function(llvm_install_library_symlink name dest type)
endif()
@@ -1862,7 +1862,7 @@ function(llvm_install_library_symlink name dest type)
endfunction()
-function(llvm_install_symlink name dest)
@ -124,7 +124,7 @@ index 97c9980c7de3..409e8b615f75 100644
cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
foreach(path ${CMAKE_MODULE_PATH})
if(EXISTS ${path}/LLVMInstallSymlink.cmake)
@@ -1894,7 +1894,7 @@ function(llvm_install_symlink name dest)
@@ -1885,7 +1885,7 @@ function(llvm_install_symlink name dest)
set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
install(SCRIPT ${INSTALL_SYMLINK}
@ -133,7 +133,7 @@ index 97c9980c7de3..409e8b615f75 100644
COMPONENT ${component})
if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
@@ -1977,7 +1977,8 @@ function(add_llvm_tool_symlink link_name target)
@@ -1968,7 +1968,8 @@ function(add_llvm_tool_symlink link_name target)
endif()
if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
@ -143,12 +143,12 @@ index 97c9980c7de3..409e8b615f75 100644
endif()
endif()
endfunction()
@@ -2100,9 +2101,9 @@ function(llvm_setup_rpath name)
if (APPLE)
set(_install_name_dir INSTALL_NAME_DIR "@rpath")
- set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+ set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
@@ -2097,9 +2098,9 @@ function(llvm_setup_rpath name)
# Since BUILD_SHARED_LIBS is only recommended for use by developers,
# hardcode the rpath to build/install lib dir first in this mode.
# FIXME: update this when there is better solution.
- set(_install_rpath "${LLVM_LIBRARY_OUTPUT_INTDIR}" "${CMAKE_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+ set(_install_rpath "${LLVM_LIBRARY_OUTPUT_INTDIR}" "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
elseif(UNIX)
- set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
+ set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
@ -185,16 +185,18 @@ index e80c3b5c1cac..482f6d715ef5 100644
# '/.' indicates: copy the contents of the directory directly into
diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
index 505dc9a29d70..36e6c63af3f4 100644
index 51b6a4fdc284..4adc2acfc074 100644
--- a/cmake/modules/CMakeLists.txt
+++ b/cmake/modules/CMakeLists.txt
@@ -1,4 +1,4 @@
@@ -1,6 +1,6 @@
include(LLVMDistributionSupport)
-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
+set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
# First for users who use an installed LLVM, create the LLVMExports.cmake file.
@@ -107,13 +107,13 @@ foreach(p ${_count})
@@ -109,13 +109,13 @@ foreach(p ${_count})
set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
endforeach(p)
@ -212,20 +214,20 @@ index 505dc9a29d70..36e6c63af3f4 100644
# Generate a default location for lit
if (LLVM_INSTALL_UTILS AND LLVM_BUILD_UTILS)
diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
index 09fed8085c23..aa79f192abf0 100644
index 3e6a2c9a2648..52e14d955c60 100644
--- a/cmake/modules/LLVMInstallSymlink.cmake
+++ b/cmake/modules/LLVMInstallSymlink.cmake
@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
set(LINK_OR_COPY copy)
endif()
@@ -4,7 +4,7 @@
function(install_symlink name target outdir)
set(DESTDIR $ENV{DESTDIR})
- set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
+ set(bindir "${DESTDIR}${outdir}/")
message(STATUS "Creating ${name}")
diff --git a/docs/CMake.rst b/docs/CMake.rst
index bb821b417ad9..6a528f7c2ad3 100644
index 589b09f28281..af43b082f755 100644
--- a/docs/CMake.rst
+++ b/docs/CMake.rst
@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
@ -237,7 +239,7 @@ index bb821b417ad9..6a528f7c2ad3 100644
**CMAKE_C_FLAGS**:STRING
Extra flags to use when compiling C source files.
@@ -550,8 +550,8 @@ LLVM-specific variables
@@ -555,8 +555,8 @@ LLVM-specific variables
**LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
The path to install Doxygen-generated HTML documentation to. This path can
@ -248,7 +250,7 @@ index bb821b417ad9..6a528f7c2ad3 100644
**LLVM_ENABLE_SPHINX**:BOOL
If specified, CMake will search for the ``sphinx-build`` executable and will make
@@ -582,13 +582,33 @@ LLVM-specific variables
@@ -587,13 +587,33 @@ LLVM-specific variables
**LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
The path to install Sphinx-generated HTML documentation to. This path can
@ -286,7 +288,7 @@ index bb821b417ad9..6a528f7c2ad3 100644
**LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
macOS Only: If enabled CMake will generate a target named
@@ -786,9 +806,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
@@ -791,9 +811,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
This file is available in two different locations.

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