Merge remote-tracking branch 'upstream/master' into HEAD

This commit is contained in:
Jörg Thalheim 2021-07-14 15:45:51 +02:00
commit 7afa51c2bd
238 changed files with 5441 additions and 2054 deletions

20
.github/workflows/basic-eval.yml vendored Normal file
View file

@ -0,0 +1,20 @@
name: Basic evaluation checks
on:
pull_request:
branches:
- master
- release-**
push:
branches:
- master
- release-**
jobs:
tests:
runs-on: ubuntu-latest
# we don't limit this action to only NixOS repo since the checks are cheap and useful developer feedback
steps:
- uses: actions/checkout@v2
- uses: cachix/install-nix-action@v13
# explicit list of supportedSystems is needed until aarch64-darwin becomes part of the trunk jobset
- run: nix-build pkgs/top-level/release.nix -A tarball.nixpkgs-basic-release-checks --arg supportedSystems '[ "aarch64-darwin" "aarch64-linux" "x86_64-linux" "x86_64-darwin" ]'

View file

@ -47,8 +47,20 @@
}) })
]; ];
})).config; })).config;
moduleDeclarationFile =
(builtins.unsafeGetAttrPos "modules" args).file;
# Add the invoking file as error message location for modules
# that don't have their own locations; presumably inline modules.
addModuleDeclarationFile =
m: {
_file = moduleDeclarationFile;
imports = [ m ];
};
in in
modules ++ [ map addModuleDeclarationFile modules ++ [
{ {
system.nixos.versionSuffix = system.nixos.versionSuffix =
".${final.substring 0 8 (self.lastModifiedDate or self.lastModified or "19700101")}.${self.shortRev or "dirty"}"; ".${final.substring 0 8 (self.lastModifiedDate or self.lastModified or "19700101")}.${self.shortRev or "dirty"}";

View file

@ -7530,6 +7530,12 @@
githubId = 1665818; githubId = 1665818;
name = "Philipp Eder"; name = "Philipp Eder";
}; };
nickcao = {
name = "Nick Cao";
email = "nickcao@nichi.co";
github = "NickCao";
githubId = 15247171;
};
nickhu = { nickhu = {
email = "me@nickhu.co.uk"; email = "me@nickhu.co.uk";
github = "nickhu"; github = "nickhu";
@ -9152,6 +9158,12 @@
githubId = 1387224; githubId = 1387224;
name = "Richard Szibele"; name = "Richard Szibele";
}; };
rsynnest = {
email = "contact@rsynnest.com";
github = "rsynnest";
githubId = 4392850;
name = "Roland Synnestvedt";
};
rtburns-jpl = { rtburns-jpl = {
email = "rtburns@jpl.nasa.gov"; email = "rtburns@jpl.nasa.gov";
github = "rtburns-jpl"; github = "rtburns-jpl";
@ -10964,12 +10976,6 @@
github = "deviant"; github = "deviant";
githubId = 68829907; githubId = 68829907;
}; };
va1entin = {
email = "github@valentinsblog.com";
github = "va1entin";
githubId = 31535155;
name = "Valentin Heidelberger";
};
vaibhavsagar = { vaibhavsagar = {
email = "vaibhavsagar@gmail.com"; email = "vaibhavsagar@gmail.com";
github = "vaibhavsagar"; github = "vaibhavsagar";

View file

@ -537,6 +537,14 @@
New In Python 3.9 post</link> for more information. New In Python 3.9 post</link> for more information.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The <literal>claws-mail</literal> package now references the
new GTK+ 3 release branch, major version 4. To use the GTK+ 2
releases, one can install the
<literal>claws-mail-gtk2</literal> package.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
</section> </section>

View file

@ -131,3 +131,5 @@ In addition to numerous new and upgraded packages, this release has the followin
- Sway: The terminal emulator `rxvt-unicode` is no longer installed by default via `programs.sway.extraPackages`. The current default configuration uses `alacritty` (and soon `foot`) so this is only an issue when using a customized configuration and not installing `rxvt-unicode` explicitly. - Sway: The terminal emulator `rxvt-unicode` is no longer installed by default via `programs.sway.extraPackages`. The current default configuration uses `alacritty` (and soon `foot`) so this is only an issue when using a customized configuration and not installing `rxvt-unicode` explicitly.
- `python3` now defaults to Python 3.9. Python 3.9 introduces many deprecation warnings, please look at the [What's New In Python 3.9 post](https://docs.python.org/3/whatsnew/3.9.html) for more information. - `python3` now defaults to Python 3.9. Python 3.9 introduces many deprecation warnings, please look at the [What's New In Python 3.9 post](https://docs.python.org/3/whatsnew/3.9.html) for more information.
- The `claws-mail` package now references the new GTK+ 3 release branch, major version 4. To use the GTK+ 2 releases, one can install the `claws-mail-gtk2` package.

View file

@ -292,7 +292,12 @@ class Machine:
net_frontend += "," + args["netFrontendArgs"] net_frontend += "," + args["netFrontendArgs"]
start_command = ( start_command = (
"qemu-kvm -m 384 " + net_backend + " " + net_frontend + " $QEMU_OPTS " args.get("qemuBinary", "qemu-kvm")
+ " -m 384 "
+ net_backend
+ " "
+ net_frontend
+ " $QEMU_OPTS "
) )
if "hda" in args: if "hda" in args:

View file

@ -848,6 +848,7 @@
./services/networking/ucarp.nix ./services/networking/ucarp.nix
./services/networking/unbound.nix ./services/networking/unbound.nix
./services/networking/unifi.nix ./services/networking/unifi.nix
./services/video/unifi-video.nix
./services/networking/v2ray.nix ./services/networking/v2ray.nix
./services/networking/vsftpd.nix ./services/networking/vsftpd.nix
./services/networking/wakeonlan.nix ./services/networking/wakeonlan.nix

View file

@ -911,7 +911,7 @@ in {
} }
{ {
assertion = versionAtLeast postgresqlPackage.version "12.0.0"; assertion = versionAtLeast postgresqlPackage.version "12.0.0";
message = "PostgreSQL >=12 is required to run GitLab 14."; message = "PostgreSQL >=12 is required to run GitLab 14. Follow the instructions in the manual section for upgrading PostgreSQL here: https://nixos.org/manual/nixos/stable/index.html#module-services-postgres-upgrading";
} }
]; ];

View file

@ -18,6 +18,7 @@ let
${lib.optionalString (cfg.zone != "") "zone=${cfg.zone}"} ${lib.optionalString (cfg.zone != "") "zone=${cfg.zone}"}
ssl=${boolToStr cfg.ssl} ssl=${boolToStr cfg.ssl}
wildcard=YES wildcard=YES
ipv6=${boolToStr cfg.ipv6}
quiet=${boolToStr cfg.quiet} quiet=${boolToStr cfg.quiet}
verbose=${boolToStr cfg.verbose} verbose=${boolToStr cfg.verbose}
${cfg.extraConfig} ${cfg.extraConfig}
@ -116,7 +117,15 @@ with lib;
default = true; default = true;
type = bool; type = bool;
description = '' description = ''
Whether to use to use SSL/TLS to connect to dynamic DNS provider. Whether to use SSL/TLS to connect to dynamic DNS provider.
'';
};
ipv6 = mkOption {
default = false;
type = bool;
description = ''
Whether to use IPv6.
''; '';
}; };

View file

@ -0,0 +1,265 @@
{ config, lib, pkgs, utils, ... }:
with lib;
let
cfg = config.services.unifi-video;
mainClass = "com.ubnt.airvision.Main";
cmd = ''
${pkgs.jsvc}/bin/jsvc \
-cwd ${stateDir} \
-debug \
-verbose:class \
-nodetach \
-user unifi-video \
-home ${cfg.jrePackage}/lib/openjdk \
-cp ${pkgs.commonsDaemon}/share/java/commons-daemon-1.2.4.jar:${stateDir}/lib/airvision.jar \
-pidfile ${cfg.pidFile} \
-procname unifi-video \
-Djava.security.egd=file:/dev/./urandom \
-Xmx${cfg.maximumJavaHeapSize}M \
-Xss512K \
-XX:+UseG1GC \
-XX:+UseStringDeduplication \
-XX:MaxMetaspaceSize=768M \
-Djava.library.path=${stateDir}/lib \
-Djava.awt.headless=true \
-Djavax.net.ssl.trustStore=${stateDir}/etc/ufv-truststore \
-Dfile.encoding=UTF-8 \
-Dav.tempdir=/var/cache/unifi-video
'';
mongoConf = pkgs.writeTextFile {
name = "mongo.conf";
executable = false;
text = ''
# for documentation of all options, see http://docs.mongodb.org/manual/reference/configuration-options/
storage:
dbPath: ${cfg.dataDir}/db
journal:
enabled: true
syncPeriodSecs: 60
systemLog:
destination: file
logAppend: true
path: ${stateDir}/logs/mongod.log
net:
port: 7441
bindIp: 127.0.0.1
http:
enabled: false
operationProfiling:
slowOpThresholdMs: 500
mode: off
'';
};
mongoWtConf = pkgs.writeTextFile {
name = "mongowt.conf";
executable = false;
text = ''
# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/
storage:
dbPath: ${cfg.dataDir}/db-wt
journal:
enabled: true
wiredTiger:
engineConfig:
cacheSizeGB: 1
systemLog:
destination: file
logAppend: true
path: logs/mongod.log
net:
port: 7441
bindIp: 127.0.0.1
operationProfiling:
slowOpThresholdMs: 500
mode: off
'';
};
stateDir = "/var/lib/unifi-video";
in
{
options.services.unifi-video = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether or not to enable the unifi-video service.
'';
};
jrePackage = mkOption {
type = types.package;
default = pkgs.jre8;
defaultText = "pkgs.jre8";
description = ''
The JRE package to use. Check the release notes to ensure it is supported.
'';
};
unifiVideoPackage = mkOption {
type = types.package;
default = pkgs.unifi-video;
defaultText = "pkgs.unifi-video";
description = ''
The unifi-video package to use.
'';
};
mongodbPackage = mkOption {
type = types.package;
default = pkgs.mongodb-4_0;
defaultText = "pkgs.mongodb";
description = ''
The mongodb package to use.
'';
};
logDir = mkOption {
type = types.str;
default = "${stateDir}/logs";
description = ''
Where to store the logs.
'';
};
dataDir = mkOption {
type = types.str;
default = "${stateDir}/data";
description = ''
Where to store the database and other data.
'';
};
openPorts = mkOption {
type = types.bool;
default = true;
description = ''
Whether or not to open the required ports on the firewall.
'';
};
maximumJavaHeapSize = mkOption {
type = types.nullOr types.int;
default = 1024;
example = 4096;
description = ''
Set the maximimum heap size for the JVM in MB.
'';
};
pidFile = mkOption {
type = types.path;
default = "${cfg.dataDir}/unifi-video.pid";
description = "Location of unifi-video pid file.";
};
};
config = mkIf cfg.enable {
users = {
users.unifi-video = {
description = "UniFi Video controller daemon user";
home = stateDir;
group = "unifi-video";
isSystemUser = true;
};
groups.unifi-video = {};
};
networking.firewall = mkIf cfg.openPorts {
# https://help.ui.com/hc/en-us/articles/217875218-UniFi-Video-Ports-Used
allowedTCPPorts = [
7080 # HTTP portal
7443 # HTTPS portal
7445 # Video over HTTP (mobile app)
7446 # Video over HTTPS (mobile app)
7447 # RTSP via the controller
7442 # Camera management from cameras to NVR over WAN
];
allowedUDPPorts = [
6666 # Inbound camera streams sent over WAN
];
};
systemd.tmpfiles.rules = [
"d '${stateDir}' 0700 unifi-video unifi-video - -"
"d '/var/cache/unifi-video' 0700 unifi-video unifi-video - -"
"d '${stateDir}/logs' 0700 unifi-video unifi-video - -"
"C '${stateDir}/etc' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/etc"
"C '${stateDir}/webapps' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/webapps"
"C '${stateDir}/email' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/email"
"C '${stateDir}/fw' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/fw"
"C '${stateDir}/lib' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/lib"
"d '${stateDir}/data' 0700 unifi-video unifi-video - -"
"d '${stateDir}/data/db' 0700 unifi-video unifi-video - -"
"C '${stateDir}/data/system.properties' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/etc/system.properties"
"d '${stateDir}/bin' 0700 unifi-video unifi-video - -"
"f '${stateDir}/bin/evostreamms' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/bin/evostreamms"
"f '${stateDir}/bin/libavcodec.so.54' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/bin/libavcodec.so.54"
"f '${stateDir}/bin/libavformat.so.54' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/bin/libavformat.so.54"
"f '${stateDir}/bin/libavutil.so.52' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/bin/libavutil.so.52"
"f '${stateDir}/bin/ubnt.avtool' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/bin/ubnt.avtool"
"f '${stateDir}/bin/ubnt.updater' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/bin/ubnt.updater"
"C '${stateDir}/bin/mongo' 0700 unifi-video unifi-video - ${cfg.mongodbPackage}/bin/mongo"
"C '${stateDir}/bin/mongod' 0700 unifi-video unifi-video - ${cfg.mongodbPackage}/bin/mongod"
"C '${stateDir}/bin/mongoperf' 0700 unifi-video unifi-video - ${cfg.mongodbPackage}/bin/mongoperf"
"C '${stateDir}/bin/mongos' 0700 unifi-video unifi-video - ${cfg.mongodbPackage}/bin/mongos"
"d '${stateDir}/conf' 0700 unifi-video unifi-video - -"
"C '${stateDir}/conf/evostream' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/evostream"
"Z '${stateDir}/conf/evostream' 0700 unifi-video unifi-video - -"
"L+ '${stateDir}/conf/mongodv3.0+.conf' 0700 unifi-video unifi-video - ${mongoConf}"
"L+ '${stateDir}/conf/mongodv3.6+.conf' 0700 unifi-video unifi-video - ${mongoConf}"
"L+ '${stateDir}/conf/mongod-wt.conf' 0700 unifi-video unifi-video - ${mongoWtConf}"
"L+ '${stateDir}/conf/catalina.policy' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/catalina.policy"
"L+ '${stateDir}/conf/catalina.properties' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/catalina.properties"
"L+ '${stateDir}/conf/context.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/context.xml"
"L+ '${stateDir}/conf/logging.properties' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/logging.properties"
"L+ '${stateDir}/conf/server.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/server.xml"
"L+ '${stateDir}/conf/tomcat-users.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/tomcat-users.xml"
"L+ '${stateDir}/conf/web.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/web.xml"
];
systemd.services.unifi-video = {
description = "UniFi Video NVR daemon";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ] ;
unitConfig.RequiresMountsFor = stateDir;
# Make sure package upgrades trigger a service restart
restartTriggers = [ cfg.unifiVideoPackage cfg.mongodbPackage ];
path = with pkgs; [ gawk coreutils busybox which jre8 lsb-release libcap util-linux ];
serviceConfig = {
Type = "simple";
ExecStart = "${(removeSuffix "\n" cmd)} ${mainClass} start";
ExecStop = "${(removeSuffix "\n" cmd)} stop ${mainClass} stop";
Restart = "on-failure";
UMask = "0077";
User = "unifi-video";
WorkingDirectory = "${stateDir}";
};
};
};
meta = {
maintainers = with lib.maintainers; [ rsynnest ];
};
}

View file

@ -92,7 +92,7 @@ in {
package = mkOption { package = mkOption {
type = types.package; type = types.package;
description = "Which package to use for the Nextcloud instance."; description = "Which package to use for the Nextcloud instance.";
relatedPackages = [ "nextcloud19" "nextcloud20" "nextcloud21" ]; relatedPackages = [ "nextcloud20" "nextcloud21" "nextcloud22" ];
}; };
maxUploadSize = mkOption { maxUploadSize = mkOption {
@ -385,7 +385,7 @@ in {
]; ];
warnings = let warnings = let
latest = 21; latest = 22;
upgradeWarning = major: nixos: upgradeWarning = major: nixos:
'' ''
A legacy Nextcloud install (from before NixOS ${nixos}) may be installed. A legacy Nextcloud install (from before NixOS ${nixos}) may be installed.
@ -403,9 +403,9 @@ in {
Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release. Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release.
Please migrate your configuration to config.services.nextcloud.poolSettings. Please migrate your configuration to config.services.nextcloud.poolSettings.
'') '')
++ (optional (versionOlder cfg.package.version "19") (upgradeWarning 18 "20.09"))
++ (optional (versionOlder cfg.package.version "20") (upgradeWarning 19 "21.05")) ++ (optional (versionOlder cfg.package.version "20") (upgradeWarning 19 "21.05"))
++ (optional (versionOlder cfg.package.version "21") (upgradeWarning 20 "21.05")); ++ (optional (versionOlder cfg.package.version "21") (upgradeWarning 20 "21.05"))
++ (optional (versionOlder cfg.package.version "22") (upgradeWarning 21 "21.11"));
services.nextcloud.package = with pkgs; services.nextcloud.package = with pkgs;
mkDefault ( mkDefault (
@ -415,13 +415,13 @@ in {
nextcloud defined in an overlay, please set `services.nextcloud.package` to nextcloud defined in an overlay, please set `services.nextcloud.package` to
`pkgs.nextcloud`. `pkgs.nextcloud`.
'' ''
else if versionOlder stateVersion "20.09" then nextcloud18
# 21.03 will not be an official release - it was instead 21.05. # 21.03 will not be an official release - it was instead 21.05.
# This versionOlder statement remains set to 21.03 for backwards compatibility. # This versionOlder statement remains set to 21.03 for backwards compatibility.
# See https://github.com/NixOS/nixpkgs/pull/108899 and # See https://github.com/NixOS/nixpkgs/pull/108899 and
# https://github.com/NixOS/rfcs/blob/master/rfcs/0080-nixos-release-schedule.md. # https://github.com/NixOS/rfcs/blob/master/rfcs/0080-nixos-release-schedule.md.
else if versionOlder stateVersion "21.03" then nextcloud19 else if versionOlder stateVersion "21.03" then nextcloud19
else nextcloud21 else if versionOlder stateVersion "21.11" then nextcloud21
else nextcloud22
); );
} }
@ -616,9 +616,7 @@ in {
services.nginx.enable = mkDefault true; services.nginx.enable = mkDefault true;
services.nginx.virtualHosts.${cfg.hostName} = let services.nginx.virtualHosts.${cfg.hostName} = {
major = toInt (versions.major cfg.package.version);
in {
root = cfg.package; root = cfg.package;
locations = { locations = {
"= /robots.txt" = { "= /robots.txt" = {

View file

@ -11,7 +11,7 @@
desktop client is packaged at <literal>pkgs.nextcloud-client</literal>. desktop client is packaged at <literal>pkgs.nextcloud-client</literal>.
</para> </para>
<para> <para>
The current default by NixOS is <package>nextcloud21</package> which is also the latest The current default by NixOS is <package>nextcloud22</package> which is also the latest
major version available. major version available.
</para> </para>
<section xml:id="module-services-nextcloud-basic-usage"> <section xml:id="module-services-nextcloud-basic-usage">

View file

@ -56,5 +56,7 @@ in
${open-vm-tools}/bin/vmware-user-suid-wrapper ${open-vm-tools}/bin/vmware-user-suid-wrapper
''; '';
}; };
services.udev.packages = [ open-vm-tools ];
}; };
} }

View file

@ -43,7 +43,7 @@ in
bitcoind = handleTest ./bitcoind.nix {}; bitcoind = handleTest ./bitcoind.nix {};
bittorrent = handleTest ./bittorrent.nix {}; bittorrent = handleTest ./bittorrent.nix {};
blockbook-frontend = handleTest ./blockbook-frontend.nix {}; blockbook-frontend = handleTest ./blockbook-frontend.nix {};
boot = handleTestOn ["x86_64-linux"] ./boot.nix {}; # syslinux is unsupported on aarch64 boot = handleTestOn ["x86_64-linux" "aarch64-linux"] ./boot.nix {};
boot-stage1 = handleTest ./boot-stage1.nix {}; boot-stage1 = handleTest ./boot-stage1.nix {};
borgbackup = handleTest ./borgbackup.nix {}; borgbackup = handleTest ./borgbackup.nix {};
botamusique = handleTest ./botamusique.nix {}; botamusique = handleTest ./botamusique.nix {};

View file

@ -4,6 +4,7 @@
}: }:
with import ../lib/testing-python.nix { inherit system pkgs; }; with import ../lib/testing-python.nix { inherit system pkgs; };
with import ../lib/qemu-flags.nix { inherit pkgs; };
with pkgs.lib; with pkgs.lib;
let let
@ -21,7 +22,10 @@ let
makeBootTest = name: extraConfig: makeBootTest = name: extraConfig:
let let
machineConfig = pythonDict ({ qemuFlags = "-m 768"; } // extraConfig); machineConfig = pythonDict ({
qemuBinary = qemuBinary pkgs.qemu_test;
qemuFlags = "-m 768";
} // extraConfig);
in in
makeTest { makeTest {
inherit iso; inherit iso;
@ -61,6 +65,7 @@ let
]; ];
}; };
machineConfig = pythonDict ({ machineConfig = pythonDict ({
qemuBinary = qemuBinary pkgs.qemu_test;
qemuFlags = "-boot order=n -m 2000"; qemuFlags = "-boot order=n -m 2000";
netBackendArgs = "tftp=${ipxeBootDir},bootfile=netboot.ipxe"; netBackendArgs = "tftp=${ipxeBootDir},bootfile=netboot.ipxe";
} // extraConfig); } // extraConfig);
@ -75,8 +80,27 @@ let
machine.shutdown() machine.shutdown()
''; '';
}; };
uefiBinary = {
x86_64-linux = "${pkgs.OVMF.fd}/FV/OVMF.fd";
aarch64-linux = "${pkgs.OVMF.fd}/FV/QEMU_EFI.fd";
}.${pkgs.stdenv.hostPlatform.system};
in { in {
uefiCdrom = makeBootTest "uefi-cdrom" {
cdrom = "${iso}/iso/${iso.isoName}";
bios = uefiBinary;
};
uefiUsb = makeBootTest "uefi-usb" {
usb = "${iso}/iso/${iso.isoName}";
bios = uefiBinary;
};
uefiNetboot = makeNetbootTest "uefi" {
bios = uefiBinary;
# Custom ROM is needed for EFI PXE boot. I failed to understand exactly why, because QEMU should still use iPXE for EFI.
netFrontendArgs = "romfile=${pkgs.ipxe}/ipxe.efirom";
};
} // optionalAttrs (pkgs.stdenv.hostPlatform.system == "x86_64-linux") {
biosCdrom = makeBootTest "bios-cdrom" { biosCdrom = makeBootTest "bios-cdrom" {
cdrom = "${iso}/iso/${iso.isoName}"; cdrom = "${iso}/iso/${iso.isoName}";
}; };
@ -85,21 +109,5 @@ in {
usb = "${iso}/iso/${iso.isoName}"; usb = "${iso}/iso/${iso.isoName}";
}; };
uefiCdrom = makeBootTest "uefi-cdrom" {
cdrom = "${iso}/iso/${iso.isoName}";
bios = "${pkgs.OVMF.fd}/FV/OVMF.fd";
};
uefiUsb = makeBootTest "uefi-usb" {
usb = "${iso}/iso/${iso.isoName}";
bios = "${pkgs.OVMF.fd}/FV/OVMF.fd";
};
biosNetboot = makeNetbootTest "bios" {}; biosNetboot = makeNetbootTest "bios" {};
uefiNetboot = makeNetbootTest "uefi" {
bios = "${pkgs.OVMF.fd}/FV/OVMF.fd";
# Custom ROM is needed for EFI PXE boot. I failed to understand exactly why, because QEMU should still use iPXE for EFI.
netFrontendArgs = "romfile=${pkgs.ipxe}/ipxe.efirom";
};
} }

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, pkg-config { lib, stdenv, fetchurl, pkg-config, fetchFromGitLab
, python3 , python3
, perl , perl
, perlPackages , perlPackages
@ -6,6 +6,7 @@
, intltool , intltool
, libpeas , libpeas
, libsoup , libsoup
, libdmapsharing
, gnome , gnome
, totem-pl-parser , totem-pl-parser
, tdb , tdb
@ -18,6 +19,25 @@
let let
pname = "rhythmbox"; pname = "rhythmbox";
version = "3.4.4"; version = "3.4.4";
# The API version of libdmapsharing required by rhythmbox 3.4.4 is 3.0.
# This PR would solve the issue:
# https://gitlab.gnome.org/GNOME/rhythmbox/-/merge_requests/12
# Unfortunately applying this patch produces a rhythmbox which
# cannot fetch data from DAAP shares.
libdmapsharing_3 = libdmapsharing.overrideAttrs (old: rec {
version = "2.9.41";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = old.pname;
rev = "${lib.toUpper old.pname}_${lib.replaceStrings ["."] ["_"] version}";
sha256 = "05kvrzf0cp3mskdy6iv7zqq24qdczl800q2dn1h4bk3d9wchgm4p";
};
});
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "${pname}-${version}"; name = "${pname}-${version}";
@ -46,8 +66,12 @@ in stdenv.mkDerivation rec {
gst_all_1.gstreamer gst_all_1.gstreamer
gst_all_1.gst-plugins-base gst_all_1.gst-plugins-base
libdmapsharing_3 # necessary for daap support
] ++ gst_plugins; ] ++ gst_plugins;
configureFlags = [ "--enable-daap" ];
enableParallelBuilding = true; enableParallelBuilding = true;
passthru = { passthru = {

View file

@ -6,13 +6,13 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "chia"; pname = "chia";
version = "1.2.0"; version = "1.2.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Chia-Network"; owner = "Chia-Network";
repo = "chia-blockchain"; repo = "chia-blockchain";
rev = version; rev = version;
sha256 = "sha256-P5oWOQgyj+/Ia21R4PB6ID/iUPKBnW9/X5EF6RZjzS8="; sha256 = "sha256-ZNSNROWl6RR4GZnoRGAXrdw48wH9OOgrsoKz0RNIIcs=";
}; };
patches = [ patches = [

View file

@ -2,7 +2,7 @@
, wrapGAppsHook, pkg-config, desktop-file-utils , wrapGAppsHook, pkg-config, desktop-file-utils
, appstream-glib, pythonPackages, glib, gobject-introspection , appstream-glib, pythonPackages, glib, gobject-introspection
, gtk3, webkitgtk, glib-networking, gnome, gspell, texlive , gtk3, webkitgtk, glib-networking, gnome, gspell, texlive
, shared-mime-info, libhandy , shared-mime-info, libhandy, fira
}: }:
let let
@ -31,6 +31,12 @@ in stdenv.mkDerivation rec {
glib-networking libhandy ]; glib-networking libhandy ];
postPatch = '' postPatch = ''
substituteInPlace data/media/css/web/base.css \
--replace 'url("/app/share/fonts/FiraSans-Regular.ttf") format("ttf")' \
'url("${fira}/share/fonts/opentype/FiraSans-Regular.otf") format("otf")' \
--replace 'url("/app/share/fonts/FiraMono-Regular.ttf") format("ttf")' \
'url("${fira}/share/fonts/opentype/FiraMono-Regular.otf") format("otf")'
patchShebangs --build build-aux/meson_post_install.py patchShebangs --build build-aux/meson_post_install.py
''; '';

View file

@ -108,7 +108,7 @@ in stdenv.mkDerivation (rec {
inherit pname; inherit pname;
version = buildVersion; version = buildVersion;
phases = [ "installPhase" ]; dontUnpack = true;
${primaryBinary} = binaryPackage; ${primaryBinary} = binaryPackage;

View file

@ -100,7 +100,7 @@ in stdenv.mkDerivation (rec {
inherit pname; inherit pname;
version = buildVersion; version = buildVersion;
phases = [ "installPhase" ]; dontUnpack = true;
${primaryBinary} = binaryPackage; ${primaryBinary} = binaryPackage;

View file

@ -2,7 +2,7 @@
# default vimrc # default vimrc
, vimrc ? fetchurl { , vimrc ? fetchurl {
name = "default-vimrc"; name = "default-vimrc";
url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/archlinux.vim?id=68f6d131750aa778807119e03eed70286a17b1cb"; url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/68f6d131750aa778807119e03eed70286a17b1cb/trunk/archlinux.vim";
sha256 = "18ifhv5q9prd175q3vxbqf6qyvkk6bc7d2lhqdk0q78i68kv9y0c"; sha256 = "18ifhv5q9prd175q3vxbqf6qyvkk6bc7d2lhqdk0q78i68kv9y0c";
} }
# apple frameworks # apple frameworks

View file

@ -13,10 +13,10 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz"; archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = { sha256 = {
x86_64-linux = "16s3hznyrz9w0cns8fk3pzk9ai5dj9y5p4n1rf3hrpg5hi9yxi5j"; x86_64-linux = "16hzhmsh9nv2brpzx8wnz08sanf0v6f3ln5hqgzxck0pafbzqyl5";
x86_64-darwin = "133p032c8gv3hx4x7kxdfhz4xvkpjmjnvy02sf05dxqv5nly4xx4"; x86_64-darwin = "1a44fm5fx0zqlfr344mvc0m9hbd0vxd6s489pmh8x7m7q3sadi7j";
aarch64-linux = "183f674qyrlz0wqx6x48z6jhl8z30zmwsj8021hqi8px5ny99l1f"; aarch64-linux = "082gjmnlvk12vkcxbpsd4xfgs38qbxkfawq9kyl3p7i8y6anrd4i";
armv7l-linux = "0rf3ybha861r5pfp6rvh21abfagaiwqlsbxm7fhphrc5382lmxbs"; armv7l-linux = "0zs66qmlq65166s34qjr6gppxvl5hyz1mjwxc97mki2c6y61fp28";
}.${system}; }.${system};
sourceRoot = { sourceRoot = {
@ -31,7 +31,7 @@ in
# Please backport all compatible updates to the stable release. # Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem. # This is important for the extension ecosystem.
version = "1.57.1"; version = "1.58.1";
pname = "vscodium"; pname = "vscodium";
executableName = "codium"; executableName = "codium";

View file

@ -55,11 +55,11 @@
mkDerivation rec { mkDerivation rec {
pname = "digikam"; pname = "digikam";
version = "7.2.0"; version = "7.3.0";
src = fetchurl { src = fetchurl {
url = "mirror://kde/stable/${pname}/${version}/${pname}-${version}.tar.xz"; url = "mirror://kde/stable/${pname}/${version}/${pname}-${version}.tar.xz";
sha256 = "sha256-zYfs4UOu+gLmkqSvXDw8wQe5pNYYBNefp33S40R5ihc="; sha256 = "sha256-la6pO+HP05u1IzO4Kz5Xv2gIDH0TGddU0WeiD22+RVE=";
}; };
nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ]; nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];

View file

@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
patches = [ patches = [
# Fixes build with exiv2 0.27.1 # Fixes build with exiv2 0.27.1
(fetchpatch { (fetchpatch {
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/hugin-exiv2-0.27.1.patch?h=packages/hugin"; url = "https://raw.githubusercontent.com/archlinux/svntogit-community/0467d8ba362b9c196e4c1dc4be7de0c1b336335b/hugin/trunk/hugin-exiv2-0.27.1.patch";
sha256 = "1yxvlpvrhyrfd2w6kwx1w3mncsvlzdhp0w7xchy8q6kc2kd5nf7r"; sha256 = "1yxvlpvrhyrfd2w6kwx1w3mncsvlzdhp0w7xchy8q6kc2kd5nf7r";
}) })
]; ];

View file

@ -86,8 +86,7 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
inherit pname version src; inherit pname version src;
buildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper jdk11 gradle_5 ];
nativeBuildInputs = [ jdk11 gradle_5 ];
buildPhase = '' buildPhase = ''
mkdir -p -- ./freeplane/build/emoji/{txt,resources/images} mkdir -p -- ./freeplane/build/emoji/{txt,resources/images}

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, ncurses, fetchpatch }: { lib, stdenv, fetchurl, ncurses, gettext, fetchpatch }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gcal"; pname = "gcal";
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
buildInputs = [ ncurses ]; buildInputs = [ ncurses ] ++ lib.optional stdenv.isDarwin gettext;
meta = { meta = {
description = "Program for calculating and printing calendars"; description = "Program for calculating and printing calendars";

View file

@ -0,0 +1,46 @@
{ lib, buildGoModule, fetchFromSourcehut, scdoc, installShellFiles }:
buildGoModule rec {
pname = "gmnitohtml";
version = "0.1.1";
src = fetchFromSourcehut {
owner = "~adnano";
repo = pname;
rev = version;
hash = "sha256-XcHJbqmfSkW6lt2xRlrf9AJfwLOZqdgsL1v0aK2bQwo=";
};
vendorSha256 = "sha256-Cx8x8AISRVTA4Ufd73vOVky97LX23NkizHDingr/zVk=";
ldflags = [ "-s" "-w" ];
# Build and install the man pages
nativeBuildInputs = [ scdoc installShellFiles ];
postBuild = ''
make gmnitohtml.1
'';
postInstall = ''
installManPage gmnitohtml.1
'';
doInstallCheck = true;
installCheckPhase = ''
runHook preInstallCheck
$out/bin/gmnitohtml --help
runHook postInstallCheck
'';
meta = with lib; {
homepage = "https://git.sr.ht/~adnano/gmnitohtml";
changelog = "https://git.sr.ht/~adnano/gmnitohtml/log";
description = "Gemini text to HTML converter";
longDescription = ''
he gmnitohtml utility reads Gemini text from the standard input and writes
HTML to the standard output.
'';
license = licenses.mit;
maintainers = with maintainers; [ jk sikmir ];
};
}

View file

@ -1,6 +1,6 @@
{ lib, fetchFromGitHub, fetchpatch, mkDerivation { lib, fetchFromGitHub, fetchpatch, mkDerivation
, qtbase, qtsvg, qtserialport, qtwebengine, qtmultimedia, qttools , qtbase, qtsvg, qtserialport, qtwebengine, qtmultimedia, qttools
, qtconnectivity, qtcharts, libusb-compat-0_1 , qtconnectivity, qtcharts, libusb-compat-0_1, gsl, blas
, bison, flex, zlib, qmake, makeDesktopItem, makeWrapper , bison, flex, zlib, qmake, makeDesktopItem, makeWrapper
}: }:
@ -16,18 +16,18 @@ let
}; };
in mkDerivation rec { in mkDerivation rec {
pname = "golden-cheetah"; pname = "golden-cheetah";
version = "3.5"; version = "3.6-DEV2107";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "GoldenCheetah"; owner = "GoldenCheetah";
repo = "GoldenCheetah"; repo = "GoldenCheetah";
rev = "V${version}"; rev = "v${version}";
sha256 = "1lyd0b2s3s9c2ppj7l4hf3s4gfzscaaam2pbiaby714bi9nr0ka7"; sha256 = "1d54x3pv27w1ys2f5l7gnfhyijhgcgdjnq1c1mj7hvg35dmh054d";
}; };
buildInputs = [ buildInputs = [
qtbase qtsvg qtserialport qtwebengine qtmultimedia qttools zlib qtbase qtsvg qtserialport qtwebengine qtmultimedia qttools zlib
qtconnectivity qtcharts libusb-compat-0_1 qtconnectivity qtcharts libusb-compat-0_1 gsl blas
]; ];
nativeBuildInputs = [ flex makeWrapper qmake bison ]; nativeBuildInputs = [ flex makeWrapper qmake bison ];
@ -40,9 +40,9 @@ in mkDerivation rec {
}) })
]; ];
NIX_LDFLAGS = "-lz"; NIX_LDFLAGS = "-lz -lgsl -lblas";
qtWrapperArgs = [ "--set LD_LIBRARY_PATH ${zlib.out}/lib" ]; qtWrapperArgs = [ "--prefix" "LD_LIBRARY_PATH" ":" "${zlib.out}/lib" ];
preConfigure = '' preConfigure = ''
cp src/gcconfig.pri.in src/gcconfig.pri cp src/gcconfig.pri.in src/gcconfig.pri
@ -52,10 +52,6 @@ in mkDerivation rec {
echo 'LIBUSB_INCLUDE = ${libusb-compat-0_1.dev}/include' >> src/gcconfig.pri echo 'LIBUSB_INCLUDE = ${libusb-compat-0_1.dev}/include' >> src/gcconfig.pri
echo 'LIBUSB_LIBS = -L${libusb-compat-0_1}/lib -lusb' >> src/gcconfig.pri echo 'LIBUSB_LIBS = -L${libusb-compat-0_1}/lib -lusb' >> src/gcconfig.pri
sed -i -e '21,23d' qwt/qwtconfig.pri # Removed forced installation to /usr/local sed -i -e '21,23d' qwt/qwtconfig.pri # Removed forced installation to /usr/local
# Use qtwebengine instead of qtwebkit
substituteInPlace src/gcconfig.pri \
--replace "#DEFINES += NOWEBKIT" "DEFINES += NOWEBKIT"
''; '';
installPhase = '' installPhase = ''
@ -73,6 +69,6 @@ in mkDerivation rec {
description = "Performance software for cyclists, runners and triathletes"; description = "Performance software for cyclists, runners and triathletes";
platforms = platforms.linux; platforms = platforms.linux;
maintainers = [ ]; maintainers = [ ];
license = licenses.gpl3; license = licenses.gpl2Plus;
}; };
} }

View file

@ -1,4 +1,5 @@
{ cairo { config
, cairo
, cmake , cmake
, fetchFromGitHub , fetchFromGitHub
, libXdmcp , libXdmcp
@ -29,87 +30,87 @@
, i3-gaps , i3-gaps
, jsoncpp , jsoncpp
# override the variables ending in 'Support' to enable or disable modules # override the variables ending in 'Support' to enable or disable modules
, alsaSupport ? true , alsaSupport ? true
, githubSupport ? false , githubSupport ? false
, mpdSupport ? false , mpdSupport ? false
, pulseSupport ? false , pulseSupport ? config.pulseaudio or false
, iwSupport ? false , iwSupport ? false
, nlSupport ? true , nlSupport ? true
, i3Support ? false , i3Support ? false
, i3GapsSupport ? false , i3GapsSupport ? false
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "polybar"; pname = "polybar";
version = "3.5.6"; version = "3.5.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-Uvj9V2M/uQxyziTx1hecrcaQZECijlpVmWcUeT+PqrI="; sha256 = "sha256-Uvj9V2M/uQxyziTx1hecrcaQZECijlpVmWcUeT+PqrI=";
fetchSubmodules = true; fetchSubmodules = true;
}; };
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
pkg-config pkg-config
python3Packages.sphinx python3Packages.sphinx
removeReferencesTo removeReferencesTo
] ] ++ lib.optional (i3Support || i3GapsSupport) makeWrapper;
++ lib.optional (i3Support || i3GapsSupport) makeWrapper;
buildInputs = [ buildInputs = [
cairo cairo
libXdmcp libXdmcp
libpthreadstubs libpthreadstubs
libxcb libxcb
pcre pcre
python3 python3
xcbproto xcbproto
xcbutil xcbutil
xcbutilcursor xcbutilcursor
xcbutilimage xcbutilimage
xcbutilrenderutil xcbutilrenderutil
xcbutilwm xcbutilwm
xcbutilxrm xcbutilxrm
] ] ++ lib.optional alsaSupport alsa-lib
++ lib.optional alsaSupport alsa-lib ++ lib.optional githubSupport curl
++ lib.optional githubSupport curl ++ lib.optional mpdSupport libmpdclient
++ lib.optional mpdSupport libmpdclient ++ lib.optional pulseSupport libpulseaudio
++ lib.optional pulseSupport libpulseaudio ++ lib.optional iwSupport wirelesstools
++ lib.optional iwSupport wirelesstools ++ lib.optional nlSupport libnl
++ lib.optional nlSupport libnl ++ lib.optional (i3Support || i3GapsSupport) jsoncpp
++ lib.optional (i3Support || i3GapsSupport) jsoncpp ++ lib.optional i3Support i3
++ lib.optional i3Support i3 ++ lib.optional i3GapsSupport i3-gaps;
++ lib.optional i3GapsSupport i3-gaps;
postInstall = if i3Support postInstall =
then ''wrapProgram $out/bin/polybar \ if i3Support then ''
--prefix PATH : "${i3}/bin" wrapProgram $out/bin/polybar \
'' --prefix PATH : "${i3}/bin"
else if i3GapsSupport ''
then ''wrapProgram $out/bin/polybar \ else if i3GapsSupport
--prefix PATH : "${i3-gaps}/bin" then ''
'' wrapProgram $out/bin/polybar \
else ''''; --prefix PATH : "${i3-gaps}/bin"
''
else "";
postFixup = '' postFixup = ''
remove-references-to -t ${stdenv.cc} $out/bin/polybar remove-references-to -t ${stdenv.cc} $out/bin/polybar
'';
meta = with lib; {
homepage = "https://polybar.github.io/";
changelog = "https://github.com/polybar/polybar/releases/tag/${version}";
description = "A fast and easy-to-use tool for creating status bars";
longDescription = ''
Polybar aims to help users build beautiful and highly customizable
status bars for their desktop environment, without the need of
having a black belt in shell scripting.
''; '';
license = licenses.mit;
meta = with lib; { maintainers = with maintainers; [ afldcr Br1ght0ne fortuneteller2k ];
homepage = "https://polybar.github.io/"; platforms = platforms.linux;
changelog = "https://github.com/polybar/polybar/releases/tag/${version}"; };
description = "A fast and easy-to-use tool for creating status bars";
longDescription = ''
Polybar aims to help users build beautiful and highly customizable
status bars for their desktop environment, without the need of
having a black belt in shell scripting.
'';
license = licenses.mit;
maintainers = with maintainers; [ afldcr Br1ght0ne fortuneteller2k ];
platforms = platforms.linux;
};
} }

View file

@ -26,9 +26,9 @@ buildPythonApplication rec {
sha256 = "sha256-6dLz4KXavXwnk5GizBH46d2EHMHPjRo0WnnUuVMtI1M="; sha256 = "sha256-6dLz4KXavXwnk5GizBH46d2EHMHPjRo0WnnUuVMtI1M=";
}; };
nativeBuildInputs = [ intltool wrapGAppsHook ]; nativeBuildInputs = [ makeWrapper intltool wrapGAppsHook ];
buildInputs = [ makeWrapper distutils_extra ]; buildInputs = [ distutils_extra ];
doCheck = false; doCheck = false;

View file

@ -1,31 +1,30 @@
{ lib, stdenv, fetchFromGitHub, rustPlatform, cmake, pkg-config, openssl, oniguruma, CoreServices }: { lib, stdenv, fetchFromGitHub, rustPlatform, cmake, pkg-config, openssl, oniguruma, CoreServices, installShellFiles }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "zola"; pname = "zola";
version = "0.13.0"; version = "unstable-2021-07-10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "getzola"; owner = "getzola";
repo = pname; repo = pname;
rev = "v${version}"; # unstable because the latest release fails to build
sha256 = "sha256-yTvFQWmNxoB+CNZLHGmzJq7mKuOUxUqV4g8PWlOlRbM="; rev = "8c3ce7d7fbc0d585d4cbf27598ac7dfe5acd96f1";
sha256 = "sha256-Tw3u96ZPb0yUXvtJ+rna6nnb0a+KfTEiR/PPEadFxDA=";
}; };
cargoSha256 = "sha256:19vijhcs1i02jhz68acil7psv3pcn0jzi1i4y2l05i4m3ayxivjf"; cargoSha256 = "sha256-mOO39LK7lQ5IxwMgfJpNwX/H5MZ3qKqfeDmnY8zXOx4=";
nativeBuildInputs = [ cmake pkg-config ]; nativeBuildInputs = [ cmake pkg-config installShellFiles];
buildInputs = [ openssl oniguruma ] buildInputs = [ openssl oniguruma ]
++ lib.optional stdenv.isDarwin CoreServices; ++ lib.optional stdenv.isDarwin CoreServices;
RUSTONIG_SYSTEM_LIBONIG = true; RUSTONIG_SYSTEM_LIBONIG = true;
postInstall = '' postInstall = ''
install -D -m 444 completions/zola.bash \ installShellCompletion --cmd zola \
-t $out/share/bash-completion/completions --fish completions/zola.fish \
install -D -m 444 completions/_zola \ --zsh completions/_zola \
-t $out/share/zsh/site-functions --bash completions/zola.bash
install -D -m 444 completions/zola.fish \
-t $out/share/fish/vendor_completions.d
''; '';
meta = with lib; { meta = with lib; {
@ -33,5 +32,7 @@ rustPlatform.buildRustPackage rec {
homepage = "https://www.getzola.org/"; homepage = "https://www.getzola.org/";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ dywedir _0x4A6F ]; maintainers = with maintainers; [ dywedir _0x4A6F ];
# set because of unstable-* version
mainProgram = "zola";
}; };
} }

View file

@ -31,15 +31,15 @@
} }
}, },
"dev": { "dev": {
"version": "93.0.4557.4", "version": "93.0.4573.0",
"sha256": "06397k5mkrrdrmd7icyvd1ifnmhincgw5nskgc3m436qzzifsab9", "sha256": "0knks0padlcqhwnjpg32d875nycznlbd228sx8qwnylg1ilrzqck",
"sha256bin64": "1q2c2dhx1yya6vhr82asf7h2zrv6kjzjv1a0zlfxkp3i6lnivgrd", "sha256bin64": "1kxbsdcc0gh2pllz3szmnjswxqbw9sr457pq8aafpgk9rdchikg1",
"deps": { "deps": {
"gn": { "gn": {
"version": "2021-06-25", "version": "2021-07-08",
"url": "https://gn.googlesource.com/gn", "url": "https://gn.googlesource.com/gn",
"rev": "4d207c94eab41f09c9a8505eb47f3d2919e47943", "rev": "24e2f7df92641de0351a96096fb2c490b2436bb8",
"sha256": "1jfgksa7rifh3ynnmd7m8xxggwxckz0jnwjaq9m5xapksb89hbn1" "sha256": "1lwkyhfhw0zd7daqz466n7x5cddf0danr799h4jg3s0yvd4galjl"
} }
} }
}, },

View file

@ -12,6 +12,7 @@
, autoconf213, which, gnused, rustPackages, rustPackages_1_45 , autoconf213, which, gnused, rustPackages, rustPackages_1_45
, rust-cbindgen, nodejs, nasm, fetchpatch , rust-cbindgen, nodejs, nasm, fetchpatch
, gnum4 , gnum4
, gtk2, gtk3, wrapGAppsHook
, debugBuild ? false , debugBuild ? false
### optionals ### optionals
@ -21,7 +22,6 @@
, alsaSupport ? stdenv.isLinux, alsa-lib , alsaSupport ? stdenv.isLinux, alsa-lib
, pulseaudioSupport ? stdenv.isLinux, libpulseaudio , pulseaudioSupport ? stdenv.isLinux, libpulseaudio
, ffmpegSupport ? true , ffmpegSupport ? true
, gtk3Support ? true, gtk2, gtk3, wrapGAppsHook
, waylandSupport ? true, libxkbcommon, libdrm , waylandSupport ? true, libxkbcommon, libdrm
, ltoSupport ? (stdenv.isLinux && stdenv.is64bit), overrideCC, buildPackages , ltoSupport ? (stdenv.isLinux && stdenv.is64bit), overrideCC, buildPackages
, gssSupport ? true, libkrb5 , gssSupport ? true, libkrb5
@ -79,7 +79,7 @@ let
flag = tf: x: [(if tf then "--enable-${x}" else "--disable-${x}")]; flag = tf: x: [(if tf then "--enable-${x}" else "--disable-${x}")];
default-toolkit = if stdenv.isDarwin then "cairo-cocoa" default-toolkit = if stdenv.isDarwin then "cairo-cocoa"
else "cairo-gtk${if gtk3Support then "3${lib.optionalString waylandSupport "-wayland"}" else "2"}"; else "cairo-gtk3${lib.optionalString waylandSupport "-wayland"}";
binaryName = "firefox"; binaryName = "firefox";
binaryNameCapitalized = lib.toUpper (lib.substring 0 1 binaryName) + lib.substring 1 (-1) binaryName; binaryNameCapitalized = lib.toUpper (lib.substring 0 1 binaryName) + lib.substring 1 (-1) binaryName;
@ -139,7 +139,7 @@ buildStdenv.mkDerivation ({
lib.optional (lib.versionOlder ffversion "86") ./env_var_for_system_dir-ff85.patch ++ lib.optional (lib.versionOlder ffversion "86") ./env_var_for_system_dir-ff85.patch ++
lib.optional (lib.versionAtLeast ffversion "86") ./env_var_for_system_dir-ff86.patch ++ lib.optional (lib.versionAtLeast ffversion "86") ./env_var_for_system_dir-ff86.patch ++
lib.optional (lib.versionOlder ffversion "83") ./no-buildconfig-ffx76.patch ++ lib.optional (lib.versionOlder ffversion "83") ./no-buildconfig-ffx76.patch ++
lib.optional (lib.versionAtLeast ffversion "84") ./no-buildconfig-ffx84.patch ++ lib.optional (lib.versionAtLeast ffversion "90") ./no-buildconfig-ffx90.patch ++
lib.optional (ltoSupport && lib.versionOlder ffversion "84") ./lto-dependentlibs-generation-ffx83.patch ++ lib.optional (ltoSupport && lib.versionOlder ffversion "84") ./lto-dependentlibs-generation-ffx83.patch ++
lib.optional (ltoSupport && lib.versionAtLeast ffversion "84" && lib.versionOlder ffversion "86") lib.optional (ltoSupport && lib.versionAtLeast ffversion "84" && lib.versionOlder ffversion "86")
(fetchpatch { (fetchpatch {
@ -164,13 +164,13 @@ buildStdenv.mkDerivation ({
patchFlags = [ "-p1" "-l" ]; patchFlags = [ "-p1" "-l" ];
buildInputs = [ buildInputs = [
gtk2 perl zip libjpeg zlib bzip2 gtk3 perl zip libjpeg zlib bzip2
dbus dbus-glib pango freetype fontconfig xorg.libXi xorg.libXcursor dbus dbus-glib pango freetype fontconfig xorg.libXi xorg.libXcursor
xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
xorg.pixman yasm libGLU libGL xorg.pixman yasm libGLU libGL
xorg.xorgproto xorg.xorgproto
xorg.libXdamage xorg.libXdamage
xorg.libXext makeWrapper xorg.libXext
libevent libstartup_notification /* cairo */ libevent libstartup_notification /* cairo */
libpng jemalloc glib libpng jemalloc glib
nasm icu67 libvpx_1_8 nasm icu67 libvpx_1_8
@ -182,14 +182,14 @@ buildStdenv.mkDerivation ({
] ]
++ lib.optional alsaSupport alsa-lib ++ lib.optional alsaSupport alsa-lib
++ lib.optional pulseaudioSupport libpulseaudio # only headers are needed ++ lib.optional pulseaudioSupport libpulseaudio # only headers are needed
++ lib.optional gtk3Support gtk3
++ lib.optional gssSupport libkrb5 ++ lib.optional gssSupport libkrb5
++ lib.optionals waylandSupport [ libxkbcommon libdrm ] ++ lib.optionals waylandSupport [ libxkbcommon libdrm ]
++ lib.optional pipewireSupport pipewire ++ lib.optional pipewireSupport pipewire
++ lib.optional (lib.versionAtLeast ffversion "82") gnum4 ++ lib.optional (lib.versionAtLeast ffversion "82") gnum4
++ lib.optionals buildStdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos ++ lib.optionals buildStdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos
AVFoundation MediaToolbox CoreLocation AVFoundation MediaToolbox CoreLocation
Foundation libobjc AddressBook cups ]; Foundation libobjc AddressBook cups ]
++ lib.optional (lib.versionOlder ffversion "90") gtk2;
NIX_LDFLAGS = lib.optionalString ltoSupport '' NIX_LDFLAGS = lib.optionalString ltoSupport ''
-rpath ${llvmPackages.libunwind.out}/lib -rpath ${llvmPackages.libunwind.out}/lib
@ -224,6 +224,7 @@ buildStdenv.mkDerivation ({
cargo cargo
gnused gnused
llvmPackages.llvm # llvm-objdump llvmPackages.llvm # llvm-objdump
makeWrapper
nodejs nodejs
perl perl
pkg-config pkg-config
@ -232,8 +233,8 @@ buildStdenv.mkDerivation ({
rustc rustc
which which
unzip unzip
wrapGAppsHook
] ]
++ lib.optional gtk3Support wrapGAppsHook
++ lib.optionals buildStdenv.isDarwin [ xcbuild rsync ] ++ lib.optionals buildStdenv.isDarwin [ xcbuild rsync ]
++ extraNativeBuildInputs; ++ extraNativeBuildInputs;
@ -362,8 +363,6 @@ buildStdenv.mkDerivation ({
passthru = { passthru = {
inherit updateScript; inherit updateScript;
version = ffversion; version = ffversion;
isFirefox3Like = true;
gtk = gtk2;
inherit alsaSupport; inherit alsaSupport;
inherit pipewireSupport; inherit pipewireSupport;
inherit nspr; inherit nspr;
@ -372,7 +371,8 @@ buildStdenv.mkDerivation ({
inherit execdir; inherit execdir;
inherit browserName; inherit browserName;
inherit tests; inherit tests;
} // lib.optionalAttrs gtk3Support { inherit gtk3; }; inherit gtk3;
};
hardeningDisable = [ "format" ]; # -Werror=format-security hardeningDisable = [ "format" ]; # -Werror=format-security

View file

@ -1,25 +1,22 @@
diff --git a/docshell/base/nsAboutRedirector.cpp b/docshell/base/nsAboutRedirector.cpp
index 10ac77b..0125d9b 100644
--- a/docshell/base/nsAboutRedirector.cpp --- a/docshell/base/nsAboutRedirector.cpp
+++ b/docshell/base/nsAboutRedirector.cpp +++ b/docshell/base/nsAboutRedirector.cpp
@@ -63,8 +63,6 @@ static const RedirEntry kRedirMap[] = { @@ -66,8 +66,6 @@ static const RedirEntry kRedirMap[] = {
{"about", "chrome://global/content/aboutAbout.html", 0}, {"about", "chrome://global/content/aboutAbout.html", 0},
{"addons", "chrome://mozapps/content/extensions/extensions.xhtml", {"addons", "chrome://mozapps/content/extensions/aboutaddons.html",
nsIAboutModule::ALLOW_SCRIPT}, nsIAboutModule::ALLOW_SCRIPT},
- {"buildconfig", "chrome://global/content/buildconfig.html", - {"buildconfig", "chrome://global/content/buildconfig.html",
- nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT}, - nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
{"checkerboard", "chrome://global/content/aboutCheckerboard.html", {"checkerboard", "chrome://global/content/aboutCheckerboard.html",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT | nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::ALLOW_SCRIPT}, nsIAboutModule::ALLOW_SCRIPT},
diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
index c83b3e2..d543140 100644
--- a/toolkit/content/jar.mn --- a/toolkit/content/jar.mn
+++ b/toolkit/content/jar.mn +++ b/toolkit/content/jar.mn
@@ -40,7 +40,6 @@ toolkit.jar: @@ -39,8 +39,6 @@ toolkit.jar:
content/global/plugins.html
content/global/plugins.css content/global/plugins.css
content/global/plugins.js content/global/plugins.js
content/global/browser-child.js
-* content/global/buildconfig.html -* content/global/buildconfig.html
content/global/buildconfig.css - content/global/buildconfig.css
content/global/contentAreaUtils.js content/global/contentAreaUtils.js
content/global/datepicker.xhtml content/global/datepicker.xhtml
#ifndef MOZ_FENNEC

View file

@ -7,10 +7,10 @@ in
rec { rec {
firefox = common rec { firefox = common rec {
pname = "firefox"; pname = "firefox";
ffversion = "89.0.2"; ffversion = "90.0";
src = fetchurl { src = fetchurl {
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
sha512 = "ffd98ab0887611c5b4aba68346c49a7a31a58150fd8bbae610a4d941c4cff0acef0daaebfbb577787a759b4c1ef3c1199f02681148612f4f5b709983e07e0ccb"; sha512 = "233ad59e4ab2f08d2253b49235b51b26fa32fb7c285928110573ccbe67c79965d9401a6c58a3af2ad22b8a58ca5d9b3154e3e8c9d29b153acd16152d9b75442c";
}; };
meta = { meta = {

View file

@ -2,7 +2,7 @@
, replace, fetchurl, zip, unzip, jq, xdg-utils, writeText , replace, fetchurl, zip, unzip, jq, xdg-utils, writeText
## various stuff that can be plugged in ## various stuff that can be plugged in
, ffmpeg, xorg, alsa-lib, libpulseaudio, libcanberra-gtk2, libglvnd, libnotify , ffmpeg, xorg, alsa-lib, libpulseaudio, libcanberra-gtk3, libglvnd, libnotify
, gnome/*.gnome-shell*/ , gnome/*.gnome-shell*/
, browserpass, chrome-gnome-shell, uget-integrator, plasma5Packages, bukubrow, pipewire , browserpass, chrome-gnome-shell, uget-integrator, plasma5Packages, bukubrow, pipewire
, tridactyl-native , tridactyl-native
@ -44,8 +44,6 @@ let
, nixExtensions ? null , nixExtensions ? null
}: }:
assert forceWayland -> (browser ? gtk3); # Can only use the wayland backend if gtk3 is being used
let let
ffmpegSupport = browser.ffmpegSupport or false; ffmpegSupport = browser.ffmpegSupport or false;
gssSupport = browser.gssSupport or false; gssSupport = browser.gssSupport or false;
@ -73,7 +71,7 @@ let
++ lib.optional (config.pulseaudio or true) libpulseaudio ++ lib.optional (config.pulseaudio or true) libpulseaudio
++ lib.optional alsaSupport alsa-lib ++ lib.optional alsaSupport alsa-lib
++ pkcs11Modules; ++ pkcs11Modules;
gtk_modules = [ libcanberra-gtk2 ]; gtk_modules = [ libcanberra-gtk3 ];
######################### #########################
# # # #
@ -183,7 +181,7 @@ let
}; };
nativeBuildInputs = [ makeWrapper lndir ]; nativeBuildInputs = [ makeWrapper lndir ];
buildInputs = lib.optional (browser ? gtk3) browser.gtk3; buildInputs = [ browser.gtk3 ];
buildCommand = lib.optionalString stdenv.isDarwin '' buildCommand = lib.optionalString stdenv.isDarwin ''
@ -266,13 +264,11 @@ let
--set MOZ_SYSTEM_DIR "$out/lib/mozilla" \ --set MOZ_SYSTEM_DIR "$out/lib/mozilla" \
--set MOZ_LEGACY_PROFILES 1 \ --set MOZ_LEGACY_PROFILES 1 \
--set MOZ_ALLOW_DOWNGRADE 1 \ --set MOZ_ALLOW_DOWNGRADE 1 \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
--suffix XDG_DATA_DIRS : '${gnome.adwaita-icon-theme}/share' \
${lib.optionalString forceWayland '' ${lib.optionalString forceWayland ''
--set MOZ_ENABLE_WAYLAND "1" \ --set MOZ_ENABLE_WAYLAND "1" \
''}${lib.optionalString (browser ? gtk3) ''}
''--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
--suffix XDG_DATA_DIRS : '${gnome.adwaita-icon-theme}/share'
''
}
############################# #############################
# # # #
# END EXTRA PREF CHANGES # # END EXTRA PREF CHANGES #

View file

@ -0,0 +1,129 @@
{ stdenv
, lib
, fetchzip
, autoPatchelfHook
, wrapGAppsHook
, gnome2
, nss
, xdg-utils
, xorg
, alsa-lib
, atk
, cairo
, cups
, curl
, dbus
, expat
, fontconfig
, freetype
, gdk-pixbuf
, glib
, gtk3
, libX11
, libxcb
, libXScrnSaver
, libXcomposite
, libXcursor
, libXdamage
, libXext
, libXfixes
, libXi
, libXrandr
, libXrender
, libXtst
, libdrm
, libnotify
, libopus
, libpulseaudio
, libuuid
, libxshmfence
, mesa
, nspr
, pango
, systemd
, at-spi2-atk
, at-spi2-core
}:
stdenv.mkDerivation rec {
pname = "icecat-bin";
version = "60.7.0";
src = fetchzip {
url = "https://mirror.tochlab.net/pub/gnu/gnuzilla/${version}/icecat-${version}.en-US.gnulinux-x86_64.tar.bz2";
sha256 = "sha256-bEapbQIcZXQ0Tip/X1Q0guowpr3wNDYsFbHGmTbc5mE=";
};
nativeBuildInputs = [
autoPatchelfHook
wrapGAppsHook
];
buildInputs = [
nss
xdg-utils
xorg.libxkbfile
alsa-lib
at-spi2-atk
at-spi2-core
atk
cairo
cups
curl
dbus
expat
fontconfig.lib
freetype
gdk-pixbuf
glib
gnome2.GConf
gnome2.gtk
gtk3
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
libdrm
libnotify
libopus
libuuid
libxcb
libxshmfence
mesa
nspr
nss
pango
xorg.libXt
stdenv.cc.cc.lib
];
unpackPhase = ''
mkdir -p $TMP/ $out/{opt,bin}
cp $src/* $TMP/ -r
'';
installPhase = ''
cp -r $TMP/* $out/opt/
ln -sf $out/opt/icecat-bin $out/bin/icecat
'';
runtimeDependencies = [
libpulseaudio.out
(lib.getLib systemd)
];
meta = with lib; {
description = "Binary build of the GNU version of the Mozilla Firefox browser";
homepage = "https://www.gnu.org/software/gnuzilla/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ dan4ik605743 ];
platforms = platforms.linux;
};
}

View file

@ -49,6 +49,10 @@ stdenv.mkDerivation rec {
libarchive libarchive
]; ];
passthru = {
inherit gtk3;
};
meta = with lib; { meta = with lib; {
description = "Lightweight WebKitGTK web browser"; description = "Lightweight WebKitGTK web browser";
homepage = "https://www.midori-browser.org/"; homepage = "https://www.midori-browser.org/";

View file

@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ wrapGAppsHook pkg-config ]; nativeBuildInputs = [ wrapGAppsHook pkg-config ];
buildInputs = [ gtk3 libsoup webkitgtk glib-networking gsettings-desktop-schemas ]; buildInputs = [ gtk3 libsoup webkitgtk glib-networking gsettings-desktop-schemas ];
passthru = {
inherit gtk3;
};
makeFlags = [ "PREFIX=${placeholder "out"}" ]; makeFlags = [ "PREFIX=${placeholder "out"}" ];
meta = { meta = {

View file

@ -0,0 +1,135 @@
{ stdenv
, lib
, fetchurl
, autoPatchelfHook
, wrapGAppsHook
, flac
, gnome2
, harfbuzzFull
, nss
, snappy
, xdg-utils
, xorg
, alsa-lib
, atk
, cairo
, cups
, curl
, dbus
, expat
, fontconfig
, freetype
, gdk-pixbuf
, glib
, gtk3
, libX11
, libxcb
, libXScrnSaver
, libXcomposite
, libXcursor
, libXdamage
, libXext
, libXfixes
, libXi
, libXrandr
, libXrender
, libXtst
, libdrm
, libnotify
, libopus
, libpulseaudio
, libuuid
, libxshmfence
, mesa
, nspr
, pango
, systemd
, at-spi2-atk
, at-spi2-core
}:
stdenv.mkDerivation rec {
pname = "yandex-browser";
version = "21.5.3.753-1";
src = fetchurl {
url = "http://repo.yandex.ru/yandex-browser/deb/pool/main/y/${pname}-beta/${pname}-beta_${version}_amd64.deb";
sha256 = "sha256-sI2p/fCaruUJ3qPMyy+12Bh5I1SH8m7sYX5yDex2rwg=";
};
nativeBuildInputs = [
autoPatchelfHook
wrapGAppsHook
];
buildInputs = [
flac
harfbuzzFull
nss
snappy
xdg-utils
xorg.libxkbfile
alsa-lib
at-spi2-atk
at-spi2-core
atk
cairo
cups
curl
dbus
expat
fontconfig.lib
freetype
gdk-pixbuf
glib
gnome2.GConf
gtk3
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
libdrm
libnotify
libopus
libuuid
libxcb
libxshmfence
mesa
nspr
nss
pango
stdenv.cc.cc.lib
];
unpackPhase = ''
mkdir -p $TMP/ya $out/bin
cp $src $TMP/ya.deb
ar vx ya.deb
tar --no-overwrite-dir -xvf data.tar.xz -C $TMP/ya/
'';
installPhase = ''
cp -R $TMP/ya/opt $out/
ln -sf $out/opt/yandex/browser-beta/yandex_browser $out/bin/yandex-browser
'';
runtimeDependencies = [
libpulseaudio.out
(lib.getLib systemd)
];
meta = with lib; {
description = "Yandex Web Browser";
homepage = "https://browser.yandex.ru/";
license = licenses.unfree;
maintainers = with maintainers; [ dan4ik605743 ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -1,26 +1,20 @@
{ lib, buildGoModule, fetchFromGitHub, go-bindata, installShellFiles }: { lib, buildGoModule, fetchFromGitHub, installShellFiles }:
buildGoModule rec { buildGoModule rec {
pname = "istioctl"; pname = "istioctl";
version = "1.9.4"; version = "1.10.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "istio"; owner = "istio";
repo = "istio"; repo = "istio";
rev = version; rev = version;
sha256 = "sha256-QyiGDk9lA9Y49VpRNRGNbir/ql/Vzp6wsZ1LGodGTks="; sha256 = "sha256-jzLffTAGlNeglzoJ3AG4d0pwrkXmT5ttJxr2z4MwP90=";
}; };
vendorSha256 = "sha256-N+7xajNkxuaC1yDTkPCg80bl2gRy2+Sa4Qq1A8zSGD8="; vendorSha256 = "sha256-q/m1H6gcnn35ULi+e8fVuJg8eIXhzizGwXJmyf1Hfy4=";
doCheck = false; doCheck = false;
nativeBuildInputs = [ go-bindata installShellFiles ]; nativeBuildInputs = [ installShellFiles ];
# Bundle charts
preBuild = ''
patchShebangs operator/scripts
operator/scripts/create_assets_gen.sh
'';
# Bundle release metadata # Bundle release metadata
buildFlagsArray = let buildFlagsArray = let

View file

@ -0,0 +1,25 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "k0sctl";
version = "0.9.0";
src = fetchFromGitHub {
owner = "k0sproject";
repo = pname;
rev = "v${version}";
sha256 = "sha256-aW7x2XfeFU0z3lwPTsDHudHjdwTtfASgrbKGddVb6Rs=";
};
vendorSha256 = "sha256-bsXXWyeZXZLV6igEvyvPpS92FruGiLDx/5CCTKPe0EU=";
meta = with lib; {
description = "A bootstrapping and management tool for k0s clusters.";
homepage = "https://k0sproject.io/";
license = licenses.asl20;
maintainers = with maintainers; [ nickcao ];
};
}

View file

@ -44,8 +44,8 @@ with lib;
# Those pieces of software we entirely ignore upstream's handling of, and just # Those pieces of software we entirely ignore upstream's handling of, and just
# make sure they're in the path if desired. # make sure they're in the path if desired.
let let
k3sVersion = "1.21.0+k3s1"; # k3s git tag k3sVersion = "1.21.2+k3s1"; # k3s git tag
k3sCommit = "2705431d9645d128441c578309574cd262285ae6"; # k3s git commit at the above version k3sCommit = "5a67e8dc473f8945e8e181f6f0b0dbbc387f6fca"; # k3s git commit at the above version
traefikChartVersion = "9.18.2"; # taken from ./scripts/download at TRAEFIK_VERSION traefikChartVersion = "9.18.2"; # taken from ./scripts/download at TRAEFIK_VERSION
k3sRootVersion = "0.8.1"; # taken from ./scripts/download at ROOT_VERSION k3sRootVersion = "0.8.1"; # taken from ./scripts/download at ROOT_VERSION
@ -97,7 +97,7 @@ let
k3sRepo = fetchgit { k3sRepo = fetchgit {
url = "https://github.com/k3s-io/k3s"; url = "https://github.com/k3s-io/k3s";
rev = "v${k3sVersion}"; rev = "v${k3sVersion}";
sha256 = "sha256-xsXxf2ZYrkpOHlSFqTsHwWF3kChUjxWRjyDR3Dhg2ho="; sha256 = "sha256-ZRkdHQ4RJ6XqE+DKE6wwpxetuKDG3k/4HaHyFxHev1U=";
}; };
# Stage 1 of the k3s build: # Stage 1 of the k3s build:
# Let's talk about how k3s is structured. # Let's talk about how k3s is structured.

View file

@ -1,21 +1,19 @@
From 1891be119e298ef7c86347a6b74d40ff539cf06e Mon Sep 17 00:00:00 2001 -Subject: [PATCH 2/2] Add nixpkgs patches
From: Euan Kemp <euank@euank.com> -Original patch by: Euan Kemp <euank@euank.com>
Date: Sun, 31 May 2020 19:02:37 -0700 -Adapted by: superherointj
Subject: [PATCH 2/2] Add nixpkgs patches -
-This patch allows us to re-use upstream build scripts when building for nix.
These patches let us re-use the upstream build scripts when building for ----
nix. - 2 files changed:
--- - scripts/build
scripts/build | 20 ++++---------------- - scripts/package-cli
scripts/package-cli | 10 ++++++---- -
2 files changed, 10 insertions(+), 20 deletions(-)
diff --git a/scripts/build b/scripts/build diff --git a/scripts/build b/scripts/build
index 4ca6333c4a..df15f7db1d 100755 index 2f3d1dc496..4f4e5aa897 100755
--- a/scripts/build --- a/scripts/build
+++ b/scripts/build +++ b/scripts/build
@@ -12,7 +12,8 @@ PKG_CONTAINERD="github.com/containerd/containerd" @@ -12,7 +12,8 @@ PKG_CONTAINERD="github.com/containerd/containerd"
PKG_RANCHER_CONTAINERD="github.com/rancher/containerd" PKG_K3S_CONTAINERD="github.com/k3s-io/containerd"
PKG_CRICTL="github.com/kubernetes-sigs/cri-tools" PKG_CRICTL="github.com/kubernetes-sigs/cri-tools"
-buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ') -buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ')
@ -24,7 +22,7 @@ index 4ca6333c4a..df15f7db1d 100755
VENDOR_PREFIX="${PKG}/vendor/" VENDOR_PREFIX="${PKG}/vendor/"
VERSIONFLAGS=" VERSIONFLAGS="
@@ -92,17 +93,7 @@ cleanup() { @@ -89,17 +90,7 @@ cleanup() {
} }
INSTALLBIN=$(pwd)/bin INSTALLBIN=$(pwd)/bin
@ -43,23 +41,23 @@ index 4ca6333c4a..df15f7db1d 100755
# echo Building agent # echo Building agent
# CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s-agent ./cmd/agent/main.go # CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s-agent ./cmd/agent/main.go
echo Building server echo Building server
@@ -118,10 +109,7 @@ ln -s containerd ./bin/ctr @@ -116,10 +107,7 @@ ln -s containerd ./bin/ctr
#CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC_SQLITE" -o bin/ctr ./cmd/ctr/main.go #CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC_SQLITE" -o bin/ctr ./cmd/ctr/main.go
# echo Building containerd # echo Building containerd
# CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd/ # CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd/
-echo Building runc -echo Building runc
-rm -f ./vendor/github.com/opencontainers/runc/runc -rm -f ./build/src/github.com/opencontainers/runc/runc
-make EXTRA_LDFLAGS="-w -s" BUILDTAGS="$RUNC_TAGS" -C ./vendor/github.com/opencontainers/runc $RUNC_STATIC -make GOPATH=$(pwd)/build EXTRA_LDFLAGS="-w -s" BUILDTAGS="$RUNC_TAGS" -C ./build/src/github.com/opencontainers/runc $RUNC_STATIC
-cp -f ./vendor/github.com/opencontainers/runc/runc ./bin/runc -cp -f ./build/src/github.com/opencontainers/runc/runc ./bin/runc
+# nixpkgs: we build runc separately +# nixpkgs: we build runc separately
echo Building containerd-shim echo Building containerd-shim
rm -f ./vendor/github.com/containerd/containerd/bin/containerd-shim rm -f ./vendor/github.com/containerd/containerd/bin/containerd-shim
diff --git a/scripts/package-cli b/scripts/package-cli diff --git a/scripts/package-cli b/scripts/package-cli
index d1aad638d9..90479b6fa1 100755 index ab4a6dac63..044b5587d0 100755
--- a/scripts/package-cli --- a/scripts/package-cli
+++ b/scripts/package-cli +++ b/scripts/package-cli
@@ -49,15 +49,18 @@ fi @@ -50,15 +50,17 @@ fi
CMD_NAME=dist/artifacts/k3s${BIN_SUFFIX} CMD_NAME=dist/artifacts/k3s${BIN_SUFFIX}
@ -81,4 +79,3 @@ index d1aad638d9..90479b6fa1 100755
-./scripts/build-upload ${CMD_NAME} ${COMMIT} -./scripts/build-upload ${CMD_NAME} ${COMMIT}
+# nixpkgs: skip uploading +# nixpkgs: skip uploading
+# ./scripts/build-upload ${CMD_NAME} ${COMMIT} +# ./scripts/build-upload ${CMD_NAME} ${COMMIT}
+

View file

@ -0,0 +1,32 @@
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
buildGoModule rec {
pname = "kfctl";
version = "1.2.0";
src = fetchFromGitHub {
owner = "kubeflow";
repo = pname;
rev = "v${version}";
sha256 = "sha256-FY7o4QULobLY1djfcc2l6awE/v2stN7cc2lffMkjoPc=";
};
vendorSha256 = "sha256-+6sxXp0LKegZjEFv1CIQ6xYh+hXLn+o9LggRYamCzpI=";
subPackages = [ "cmd/kfctl" ];
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
installShellCompletion --cmd eksctl \
--bash <($out/bin/kfctl completion bash) \
--zsh <($out/bin/kfctl completion zsh)
'';
meta = with lib; {
description = "A CLI for deploying and managing Kubeflow";
homepage = "https://github.com/kubeflow/kfctl";
license = licenses.asl20;
maintainers = with maintainers; [ mvnetbiz ];
};
}

View file

@ -64,8 +64,8 @@ in
}; };
edge = generic { edge = generic {
channel = "edge"; channel = "edge";
version = "21.7.1"; version = "21.7.2";
sha256 = "sha256-VLq776A0H2IZLBeYjXpYzFixcydw/OcYsvKFxeLuewo="; sha256 = "sha256-rEO84t6znNb59a9i+SHgT4r0xzja6eMYi9lWmdU24Cc=";
vendorSha256 = "sha256-xSOPMFHfyCmG+yTzBfKR7F5KYV0gcKRNM0UrxpGBpE4="; vendorSha256 = "sha256-esVy+oIZa/ucvucdNV7MfUGFkIql9T2zl0+eu3hZAt8=";
}; };
} }

View file

@ -0,0 +1,43 @@
{ lib, fetchFromGitHub, buildGoModule }:
buildGoModule rec {
pname = "temporal";
version = "1.10.5";
src = fetchFromGitHub {
owner = "temporalio";
repo = "temporal";
rev = "v${version}";
sha256 = "sha256-+rU/Tn3k/VmAgZl169tVZsRf5SL4bI9r3p1svVfKN2E=";
};
vendorSha256 = "sha256-jbQPhGfZPPxjYTSJ9wMLzQIOhAwxJZypRzqwL421RfM=";
# Errors:
# > === RUN TestNamespaceHandlerGlobalNamespaceDisabledSuite
# gocql: unable to dial control conn 127.0.0.1:9042: dial tcp 127.0.0.1:9042: connect: connection refused
doCheck = false;
installPhase = ''
runHook preInstall
mkdir -p $out/bin
install -Dm755 "$GOPATH/bin/cli" -T $out/bin/tctl
install -Dm755 "$GOPATH/bin/cassandra" -T $out/bin/temporal-cassandra
install -Dm755 "$GOPATH/bin/server" -T $out/bin/temporal-server
install -Dm755 "$GOPATH/bin/sql" -T $out/bin/temporal-sql
runHook postInstall
'';
doInstallCheck = true;
installCheckPhase = ''
$out/bin/tctl --version | grep ${version} > /dev/null
'';
meta = with lib; {
description = "A microservice orchestration platform which enables developers to build scalable applications without sacrificing productivity or reliability";
downloadPage = "https://github.com/temporalio/temporal";
homepage = "https://temporal.io";
license = licenses.mit;
maintainers = with maintainers; [ superherointj ];
};
}

View file

@ -0,0 +1,55 @@
{ stdenv
, lib
, fetchurl
, curl
, zulip
, p7zip
, glibc
, ncurses
, openssl
}:
stdenv.mkDerivation rec {
pname = "vk-cli";
version = "0.7.6";
src = fetchurl {
url = "https://github.com/vk-cli/vk/releases/download/${version}/vk-${version}-64-bin.7z";
sha256 = "sha256-Y40oLjddunrd7ZF1JbCcgjSCn8jFTubq69jhAVxInXw=";
};
nativeBuildInputs = [
p7zip
];
buildInputs = [
curl
ncurses
openssl
];
unpackPhase = ''
mkdir -p $TMP/
7z x $src -o$TMP/
'';
installPhase = ''
mkdir -p $out/bin/
mv $TMP/vk-${version}-64-bin vk-cli
install -D vk-cli --target-directory=$out/bin/
'';
postFixup = ''
patchelf $out/bin/vk-cli \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${lib.makeLibraryPath [ curl zulip glibc ]}"
'';
meta = with lib; {
description = "A console (ncurses) client for vk.com written in D";
homepage = "https://github.com/vk-cli/vk";
license = licenses.asl20;
maintainers = with maintainers; [ dan4ik605743 ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -1,9 +1,9 @@
{ stdenv, lib, fetchgit, wrapGAppsHook, autoreconfHook, bison, flex { stdenv, lib, fetchgit, fetchpatch, wrapGAppsHook, autoreconfHook, bison, flex
, curl, gtk2, gtk3, pkg-config, python2, python3, shared-mime-info , curl, gtk2, gtk3, pkg-config, python2, python3, shared-mime-info
, glib-networking, gsettings-desktop-schemas , glib-networking, gsettings-desktop-schemas
# Use the experimental gtk3 branch. # Selector between the GTK+ 3 and GTK+ 2 releases.
, useGtk3 ? false , useGtk3
# Package compatibility: old parameters whose name were not directly derived # Package compatibility: old parameters whose name were not directly derived
, enablePgp ? true , enablePgp ? true
@ -57,16 +57,15 @@
with lib; with lib;
let let
version = if useGtk3 then "3.99.0" else "3.17.8"; # Last release and hash for both the GTK+ 3 and GTK+ 2 version.
version = if useGtk3 then "4.0.0" else "3.18.0";
# The official release uses gtk2 and contains the version tag.
gtk2src = { gtk2src = {
sha256 = "0l4f8q11iyj8pi120lrapgq51k5j64xf0jlczkzbm99rym752ch5"; sha256 = "1vsiy3xsppw4d8ylsz70wsyrvmgy88lp2hj7vrc353ckny80r9lh";
}; };
# The corresponding commit in the gtk3 branch.
gtk3src = { gtk3src = {
sha256 = "176h1swh1zx6dqyzfz470x4a1xicnv0zhy8ir47k7p23g6y17i2k"; sha256 = "0mwnjiqg2sj61va0y9yi3v52iyr5kzmbnvsqxav3a48m2f8p27qn";
}; };
python = if useGtk3 then python3 else python2; python = if useGtk3 then python3 else python2;
@ -125,7 +124,19 @@ in stdenv.mkDerivation rec {
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
patches = [ ./mime.patch ]; patches = [
./mime.patch
# Fixes a bug with the automatic authentication method, resulting in errors
# with certain mail providers.
# <https://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=4497>
# This MUST be removed for the next release.
(fetchpatch {
name = "fix-automatic-auth.patch";
url = "https://git.claws-mail.org/?p=claws.git;a=patch;h=9c2585c58b49815a0eab8d683f0a94f75cbbe64e";
sha256 = "0v8v5q2p4h93lp7yq3gnlvarsrcssv96aks1wqy3187vsr4kdw7a";
})
];
preConfigure = '' preConfigure = ''
# autotools check tries to dlopen libpython as a requirement for the python plugin # autotools check tries to dlopen libpython as a requirement for the python plugin

View file

@ -27,11 +27,11 @@ with lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "mutt"; pname = "mutt";
version = "2.1.0"; version = "2.1.1";
src = fetchurl { src = fetchurl {
url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz"; url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
sha256 = "0dqd6gg1wwhxjgdfl8j0kf93mw43kvd6wrwrzkscq2wjrsy5p0w0"; sha256 = "0jjjvqkqmpj55v111p1a1i2ry7mpd1bpphn1bhvlr18rgw7xdrja";
}; };
patches = optional smimeSupport (fetchpatch { patches = optional smimeSupport (fetchpatch {

View file

@ -42,11 +42,11 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "mullvad-vpn"; pname = "mullvad-vpn";
version = "2021.3"; version = "2021.4";
src = fetchurl { src = fetchurl {
url = "https://github.com/mullvad/mullvadvpn-app/releases/download/${version}/MullvadVPN-${version}_amd64.deb"; url = "https://github.com/mullvad/mullvadvpn-app/releases/download/${version}/MullvadVPN-${version}_amd64.deb";
sha256 = "sha256-f7ZCDZ/RN+Z0Szmnx8mbzhKZiRPjqXTsgClfWViFYzo="; sha256 = "sha256-JnHG4qD6nH2l7RCYHmb7Uszn0mrMsFtMHQ3cKpXcq00=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -13,13 +13,13 @@ with lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "remmina"; pname = "remmina";
version = "1.4.13"; version = "1.4.20";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "Remmina"; owner = "Remmina";
repo = "Remmina"; repo = "Remmina";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-R+RfczAnt5R0YmXt5SmH8gOuWOH0LZ/70pOMDAXJgsE="; sha256 = "sha256-m3DUaoOD8COxMwCVBTipzCAz3mqIdunEbVPjyjAl9So=";
}; };
nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ]; nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ];

View file

@ -0,0 +1,40 @@
{ stdenv
, lib
, fetchFromGitLab
, makeWrapper
, networkmanager
, rofi-unwrapped
}:
stdenv.mkDerivation rec {
pname = "rofi-vpn";
version = "0.2.0";
src = fetchFromGitLab {
owner = "DamienCassou";
repo = pname;
rev = "v${version}";
sha256 = "04jcfb2jy8yyrk4mg68krwh3zb5qcyj1aq1bwk96fhybrq9k2hhp";
};
installPhase = ''
runHook preInstall
install -D --target-directory=$out/bin/ ./rofi-vpn
wrapProgram $out/bin/rofi-vpn \
--prefix PATH ":" ${lib.makeBinPath [ rofi-unwrapped networkmanager ]}
runHook postInstall
'';
nativeBuildInputs = [ makeWrapper ];
meta = with lib; {
description = "Rofi-based interface to enable VPN connections with NetworkManager";
homepage = "https://gitlab.com/DamienCassou/rofi-vpn";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ DamienCassou ];
platforms = platforms.linux;
};
}

View file

@ -12,12 +12,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "termius"; pname = "termius";
version = "7.15.1"; version = "7.16.0";
src = fetchurl { src = fetchurl {
# Termius switched to using non-versioned downloads https://s3.amazonaws.com/termius.desktop.autoupdate/linux/Termius.deb # find the latest version by
url = "https://web.archive.org/web/20210710174019/https://s3.amazonaws.com/termius.desktop.autoupdate/linux/Termius.deb"; # curl https://deb.termius.com/dists/squeeze/main/binary-amd64/Packages
sha256 = "16zc7ywz3hl1awkc4wk0rd94nsy55l98j2yzfdxcjiixky4gk8wn"; url = "https://deb.termius.com/pool/main/t/termius-app/termius-app_${version}_amd64.deb";
sha256 = "013nli61bk4x4hkhr6gcpzm1y8ycmqk3vr7q0w2dn2bfdwjg559v";
}; };
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {

View file

@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
# default and this patch can be removed. # default and this patch can be removed.
# https://github.com/NixOS/nixpkgs/issues/38506 # https://github.com/NixOS/nixpkgs/issues/38506
(fetchurl { (fetchurl {
url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/enchant-2.1.patch?h=packages/abiword"; url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/d3ff951d3c7249927e7113b3de1653031db24596/abiword/trunk/enchant-2.1.patch";
sha256 = "444dc2aadea3c80310a509b690097541573f6d2652c573d04da66a0f385fcfb2"; sha256 = "444dc2aadea3c80310a509b690097541573f6d2652c573d04da66a0f385fcfb2";
}) })
]; ];

View file

@ -3,13 +3,13 @@
mkDerivation rec { mkDerivation rec {
pname = "qownnotes"; pname = "qownnotes";
version = "21.5.2"; version = "21.7.4";
src = fetchurl { src = fetchurl {
url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz"; url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
# Fetch the checksum of current version with curl: # Fetch the checksum of current version with curl:
# curl https://download.tuxfamily.org/qownnotes/src/qownnotes-<version>.tar.xz.sha256 # curl https://download.tuxfamily.org/qownnotes/src/qownnotes-<version>.tar.xz.sha256
sha256 = "cf68dc78e641ca66403621cef4002ddd09463ead2eb060812d8124d6749ba03b"; sha256 = "3957dc623b419582ef7ccc5cb04b8f97bed4e96e8ecc2e99bef9dca7ce255b8e";
}; };
nativeBuildInputs = [ qmake qttools ]; nativeBuildInputs = [ qmake qttools ];

View file

@ -16,12 +16,12 @@ stdenv.mkDerivation rec {
patches = [ patches = [
(fetchpatch { (fetchpatch {
name = "giflib6.patch"; name = "giflib6.patch";
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/giflib6.patch?h=packages/xplanet&id=ce6f25eb369dc011161613894f01fd0a6ae85a09"; url = "https://raw.githubusercontent.com/archlinux/svntogit-community/ce6f25eb369dc011161613894f01fd0a6ae85a09/trunk/giflib6.patch";
sha256 = "173l0xkqq0v2bpaff7hhwc7y2aw5cclqw8988k1nalhyfbrjb8bl"; sha256 = "173l0xkqq0v2bpaff7hhwc7y2aw5cclqw8988k1nalhyfbrjb8bl";
}) })
(fetchpatch { (fetchpatch {
name = "xplanet-c++11.patch"; name = "xplanet-c++11.patch";
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/xplanet-c++11.patch?h=packages/xplanet&id=ce6f25eb369dc011161613894f01fd0a6ae85a09"; url = "https://raw.githubusercontent.com/archlinux/svntogit-community/ce6f25eb369dc011161613894f01fd0a6ae85a09/trunk/xplanet-c++11.patch";
sha256 = "0vldai78ixw49bxch774pps6pq4sp0p33qvkvxywcz7p8kzpg8q2"; sha256 = "0vldai78ixw49bxch774pps6pq4sp0p33qvkvxywcz7p8kzpg8q2";
}) })
]; ];

View file

@ -62,6 +62,7 @@ assert lib.assertMsg (!(stable && (sanitizeAddress || sanitizeThreads)))
"Only kicad-unstable(-small) supports address/thread sanitation"; "Only kicad-unstable(-small) supports address/thread sanitation";
assert lib.assertMsg (!(sanitizeAddress && sanitizeThreads)) assert lib.assertMsg (!(sanitizeAddress && sanitizeThreads))
"'sanitizeAddress' and 'sanitizeThreads' are mutually exclusive, use one."; "'sanitizeAddress' and 'sanitizeThreads' are mutually exclusive, use one.";
let let
inherit (lib) optional optionals; inherit (lib) optional optionals;
in in
@ -81,14 +82,16 @@ stdenv.mkDerivation rec {
makeFlags = optionals (debug) [ "CFLAGS+=-Og" "CFLAGS+=-ggdb" ]; makeFlags = optionals (debug) [ "CFLAGS+=-Og" "CFLAGS+=-ggdb" ];
cmakeFlags = optionals (withScripting) [ cmakeFlags = optionals (stable && withScripting) [
"-DKICAD_SCRIPTING=ON" "-DKICAD_SCRIPTING=ON"
"-DKICAD_SCRIPTING_MODULES=ON" "-DKICAD_SCRIPTING_MODULES=ON"
"-DKICAD_SCRIPTING_PYTHON3=ON" "-DKICAD_SCRIPTING_PYTHON3=ON"
"-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON" "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
] ]
++ optional (!withScripting) ++ optionals (!withScripting) [
"-DKICAD_SCRIPTING=OFF" "-DKICAD_SCRIPTING=OFF"
"-DKICAD_SCRIPTING_WXPYTHON=OFF"
]
++ optional (withNgspice) "-DKICAD_SPICE=ON" ++ optional (withNgspice) "-DKICAD_SPICE=ON"
++ optional (!withOCE) "-DKICAD_USE_OCE=OFF" ++ optional (!withOCE) "-DKICAD_USE_OCE=OFF"
++ optional (!withOCC) "-DKICAD_USE_OCC=OFF" ++ optional (!withOCC) "-DKICAD_USE_OCC=OFF"
@ -152,7 +155,10 @@ stdenv.mkDerivation rec {
openssl openssl
boost boost
] ]
++ optionals (withScripting) [ swig python wxPython ] # unstable requires swig and python
# wxPython still optional
++ optionals (withScripting || (!stable)) [ swig python ]
++ optional (withScripting) wxPython
++ optional (withNgspice) libngspice ++ optional (withNgspice) libngspice
++ optional (withOCE) opencascade ++ optional (withOCE) opencascade
++ optional (withOCC) opencascade-occt ++ optional (withOCC) opencascade-occt

View file

@ -27,23 +27,23 @@
}; };
"kicad-unstable" = { "kicad-unstable" = {
kicadVersion = { kicadVersion = {
version = "2021-05-16"; version = "2021-07-12";
src = { src = {
rev = "c33b2cfa8d16072b9d1bce558e443c4afa889d06"; rev = "76a6177eb7fc2efe8b5fd522355e70c44a33b150";
sha256 = "1fvbxjpf880ikjqjhzj8wlxj0845gzrj1yv35rk7akbg4vl9ph72"; sha256 = "1a94z29if73cnxjx75vkgasm339dasbrjwbg2zk1c35pfygnwrj5";
}; };
}; };
libVersion = { libVersion = {
version = "2021-05-16"; version = "2021-07-12";
libSources = { libSources = {
i18n.rev = "e89d9a89bec59199c1ade56ee2556591412ab7b0"; i18n.rev = "e89d9a89bec59199c1ade56ee2556591412ab7b0";
i18n.sha256 = "04zaqyhj3qr4ymyd3k5vjpcna64j8klpsygcgjcv29s3rdi8glfl"; i18n.sha256 = "04zaqyhj3qr4ymyd3k5vjpcna64j8klpsygcgjcv29s3rdi8glfl";
symbols.rev = "32de73ea01347a005790119eb4102c550815685c"; symbols.rev = "a6f64c12c9cdea4cda25cdd2c92708e7eb461d46";
symbols.sha256 = "0gj10v06rkxlxngc40d1sfmlcagy5p7jfxid0lch4w0wxfjmks7z"; symbols.sha256 = "0j6ng3ysqlxcggjyq3bsgqzg6j50if74q2dpyrdh5pckfqvvmv20";
templates.rev = "073d1941c428242a563dcb5301ff5c7479fe9c71"; templates.rev = "073d1941c428242a563dcb5301ff5c7479fe9c71";
templates.sha256 = "14p06m2zvlzzz2w74y83f2zml7mgv5dhy2nyfkpblanxawrzxv1x"; templates.sha256 = "14p06m2zvlzzz2w74y83f2zml7mgv5dhy2nyfkpblanxawrzxv1x";
footprints.rev = "8fa36dfa3423d8777472e3475c1c2b0b2069624f"; footprints.rev = "1bacc7562198e2a2985df7f2fbcd7620b4fd0d46";
footprints.sha256 = "138xfkr0prxw2djkwc1m4mlp9km99v12sivbqhm1jkq5yxngdbin"; footprints.sha256 = "1h17q0xpl4k4klg3mafzsbl88wzrg73xjsh8llyni2jzs531545a";
packages3d.rev = "d8b7e8c56d535f4d7e46373bf24c754a8403da1f"; packages3d.rev = "d8b7e8c56d535f4d7e46373bf24c754a8403da1f";
packages3d.sha256 = "0dh8ixg0w43wzj5h3164dz6l1vl4llwxhi3qcdgj1lgvrs28aywd"; packages3d.sha256 = "0dh8ixg0w43wzj5h3164dz6l1vl4llwxhi3qcdgj1lgvrs28aywd";
}; };

View file

@ -9,16 +9,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "delta"; pname = "delta";
version = "0.8.2"; version = "0.8.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dandavison"; owner = "dandavison";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-ztRwUf73ioygkgmE9t/EKJPerJJscJYG4YNeNdzXH1g="; sha256 = "sha256-lwdsl3dzqrIL1JoBFmldwsCvNCWUcTlgeoEoCvmlTCQ=";
}; };
cargoSha256 = "sha256-cCMHMGHfI0JyIL8+q2fyzamBGGHZx3mc2FpwTUa4S9Y="; cargoSha256 = "sha256-7TvxkSJ3iWJnjD3Xe7WDXBNWIyl8U9XTCn9muUG1AmI=";
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];

View file

@ -5,13 +5,13 @@ let
in buildPythonApplication rec { in buildPythonApplication rec {
pname = "git-cola"; pname = "git-cola";
version = "3.9"; version = "3.10.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "git-cola"; owner = "git-cola";
repo = "git-cola"; repo = "git-cola";
rev = "v${version}"; rev = "v${version}";
sha256 = "11186pdgaw5p4iv10dqcnynf5pws2v9nhqqqca7z5b7m20fpfjl7"; sha256 = "120hds7v29v70qxz20ppxf2glmgbah16v7jyy9i6hb6cfqp68vr8";
}; };
buildInputs = [ git gettext ]; buildInputs = [ git gettext ];
@ -20,10 +20,8 @@ in buildPythonApplication rec {
doCheck = false; doCheck = false;
postFixup = '' preFixup = ''
wrapQtApp $out/bin/git-cola makeWrapperArgs+=("''${qtWrapperArgs[@]}")
wrapQtApp $out/bin/git-dag
''; '';
meta = with lib; { meta = with lib; {

View file

@ -2,8 +2,8 @@
}: }:
let let
version = "1.2.1"; version = "1.2.2";
sha256 = "sha256-sm5SmckaXVjF3odqzYrbC46E1nPzQ9cuNJnNSAa7RWY="; sha256 = "sha256-PhxYiTMXg8qRqwbrZaw9UH7pdvXTEnrd09TiYPepzmk=";
in stdenv.mkDerivation { in stdenv.mkDerivation {
pname = "git-vendor"; pname = "git-vendor";

View file

@ -337,8 +337,11 @@ stdenv.mkDerivation {
stripDebugList = [ "lib" "libexec" "bin" "share/git/contrib/credential/libsecret" ]; stripDebugList = [ "lib" "libexec" "bin" "share/git/contrib/credential/libsecret" ];
passthru.tests = { passthru = {
buildbot-integration = nixosTests.buildbot; shellPath = "/bin/git-shell";
tests = {
buildbot-integration = nixosTests.buildbot;
};
}; };
meta = { meta = {

View file

@ -1,13 +1,13 @@
{ {
"version": "14.0.2", "version": "14.0.5",
"repo_hash": "1wnlkbjy7hm5lq6qc12dncmz321nhcnm8wvaz0ni1v5xpp3hv286", "repo_hash": "1rykrgzapqa3j2yqpd99fpyyrdp25h2xnx21gnjnkn58qljs4cgs",
"owner": "gitlab-org", "owner": "gitlab-org",
"repo": "gitlab", "repo": "gitlab",
"rev": "v14.0.2-ee", "rev": "v14.0.5-ee",
"passthru": { "passthru": {
"GITALY_SERVER_VERSION": "14.0.2", "GITALY_SERVER_VERSION": "14.0.5",
"GITLAB_PAGES_VERSION": "1.40.0", "GITLAB_PAGES_VERSION": "1.40.0",
"GITLAB_SHELL_VERSION": "13.19.0", "GITLAB_SHELL_VERSION": "13.19.0",
"GITLAB_WORKHORSE_VERSION": "14.0.2" "GITLAB_WORKHORSE_VERSION": "14.0.5"
} }
} }

View file

@ -21,14 +21,14 @@ let
}; };
}; };
in buildGoModule rec { in buildGoModule rec {
version = "14.0.2"; version = "14.0.5";
pname = "gitaly"; pname = "gitaly";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "gitlab-org"; owner = "gitlab-org";
repo = "gitaly"; repo = "gitaly";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-0mLGtvRHgMN3TtH/g4XLDubwZvtB0xr2U30fufj//KY="; sha256 = "sha256-aZ+EDF9BOdsbE+Xsde259eRmQhnb6H5piLQsvzgVpGM=";
}; };
vendorSha256 = "sha256-U962bMmXNnenCYkSdk0Uy7Bz+b9JGU5rJHfblZoyC/I="; vendorSha256 = "sha256-U962bMmXNnenCYkSdk0Uy7Bz+b9JGU5rJHfblZoyC/I=";

View file

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

View file

@ -1667,4 +1667,4 @@ DEPENDENCIES
yajl-ruby (~> 1.4.1) yajl-ruby (~> 1.4.1)
BUNDLED WITH BUNDLED WITH
2.1.4 2.2.20

View file

@ -13,14 +13,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "pijul"; pname = "pijul";
version = "1.0.0-alpha.50"; version = "1.0.0-alpha.52";
src = fetchCrate { src = fetchCrate {
inherit version pname; inherit version pname;
sha256 = "1hinnpbk83470sdif11v1wy1269jm7cpl0ycj2m89cxwk5g54cxg"; sha256 = "0m759zfh40kxswsv40z1l332lc8lfqppyv8188y4i6biqmgbx8f1";
}; };
cargoSha256 = "0bc116nyykq8ddy7lnhxibx6hphn344d0fs7fbl2paax9ahbh2g0"; cargoSha256 = "0f31hw2zjvhkhsb0ykvw4c3d0qy8zirgsaz7yr89hy01rs23bh8z";
cargoBuildFlags = lib.optional gitImportSupport "--features=git"; cargoBuildFlags = lib.optional gitImportSupport "--features=git";
@ -36,6 +36,6 @@ rustPlatform.buildRustPackage rec {
description = "A distributed version control system"; description = "A distributed version control system";
homepage = "https://pijul.org"; homepage = "https://pijul.org";
license = with licenses; [ gpl2Plus ]; license = with licenses; [ gpl2Plus ];
maintainers = with maintainers; [ gal_bolle dywedir ]; maintainers = with maintainers; [ gal_bolle dywedir fabianhjr ];
}; };
} }

View file

@ -1,18 +1,20 @@
{ stdenv, lib, fetchFromGitHub, makeWrapper, autoreconfHook, fetchpatch, { stdenv, lib, fetchFromGitHub, makeWrapper, autoreconfHook
fuse, libmspack, openssl, pam, xercesc, icu, libdnet, procps, libtirpc, rpcsvc-proto, , bash, fuse, libmspack, openssl, pam, xercesc, icu, libdnet, procps, libtirpc, rpcsvc-proto
libX11, libXext, libXinerama, libXi, libXrender, libXrandr, libXtst, , libX11, libXext, libXinerama, libXi, libXrender, libXrandr, libXtst
pkg-config, glib, gdk-pixbuf-xlib, gtk3, gtkmm3, iproute2, dbus, systemd, which, , pkg-config, glib, gdk-pixbuf-xlib, gtk3, gtkmm3, iproute2, dbus, systemd, which
withX ? true }: , libdrm, udev
, withX ? true
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "open-vm-tools"; pname = "open-vm-tools";
version = "11.2.5"; version = "11.3.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "vmware"; owner = "vmware";
repo = "open-vm-tools"; repo = "open-vm-tools";
rev = "stable-${version}"; rev = "stable-${version}";
sha256 = "sha256-Jv+NSKw/+l+b4lfVGgCZFlcTScO/WAO/d7DtI0FAEV4="; sha256 = "1yfffxc7drr1hyg28jcvly7jn1bm4ca76lmma5ykbmba2qqszx49";
}; };
sourceRoot = "${src.name}/open-vm-tools"; sourceRoot = "${src.name}/open-vm-tools";
@ -20,32 +22,15 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
nativeBuildInputs = [ autoreconfHook makeWrapper pkg-config ]; nativeBuildInputs = [ autoreconfHook makeWrapper pkg-config ];
buildInputs = [ fuse glib icu libdnet libmspack libtirpc openssl pam procps rpcsvc-proto xercesc ] buildInputs = [ fuse glib icu libdnet libdrm libmspack libtirpc openssl pam procps rpcsvc-proto udev xercesc ]
++ lib.optionals withX [ gdk-pixbuf-xlib gtk3 gtkmm3 libX11 libXext libXinerama libXi libXrender libXrandr libXtst ]; ++ lib.optionals withX [ gdk-pixbuf-xlib gtk3 gtkmm3 libX11 libXext libXinerama libXi libXrender libXrandr libXtst ];
patches = [
# Fix building with glib 2.68. Remove after next release.
# We drop AUTHORS due to conflicts when applying.
# https://github.com/vmware/open-vm-tools/pull/505
(fetchpatch {
url = "https://github.com/vmware/open-vm-tools/commit/82931a1bcb39d5132910c7fb2ddc086c51d06662.patch";
stripLen = 1;
excludes = [ "AUTHORS" ];
sha256 = "0yz5hnngr5vd4416hvmh8734a9vxa18d2xd37kl7if0p9vik6zlg";
})
];
postPatch = '' postPatch = ''
# Build bugfix for 10.1.0, stolen from Arch PKGBUILD
mkdir -p common-agent/etc/config
sed -i 's|.*common-agent/etc/config/Makefile.*|\\|' configure.ac
sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' Makefile.am sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' Makefile.am
sed -i 's,^confdir = ,confdir = ''${prefix},' scripts/Makefile.am sed -i 's,^confdir = ,confdir = ''${prefix},' scripts/Makefile.am
sed -i 's,usr/bin,''${prefix}/usr/bin,' scripts/Makefile.am sed -i 's,usr/bin,''${prefix}/usr/bin,' scripts/Makefile.am
sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' services/vmtoolsd/Makefile.am sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' services/vmtoolsd/Makefile.am
sed -i 's,$(PAM_PREFIX),''${prefix}/$(PAM_PREFIX),' services/vmtoolsd/Makefile.am sed -i 's,$(PAM_PREFIX),''${prefix}/$(PAM_PREFIX),' services/vmtoolsd/Makefile.am
sed -i 's,$(UDEVRULESDIR),''${prefix}/$(UDEVRULESDIR),' udev/Makefile.am
# Avoid a glibc >= 2.25 deprecation warning that gets fatal via -Werror. # Avoid a glibc >= 2.25 deprecation warning that gets fatal via -Werror.
sed 1i'#include <sys/sysmacros.h>' -i lib/wiper/wiperPosix.c sed 1i'#include <sys/sysmacros.h>' -i lib/wiper/wiperPosix.c
@ -54,24 +39,28 @@ stdenv.mkDerivation rec {
sed -i 's,/sbin/shutdown,shutdown,' lib/system/systemLinux.c sed -i 's,/sbin/shutdown,shutdown,' lib/system/systemLinux.c
''; '';
configureFlags = [ "--without-kernel-modules" "--without-xmlsecurity" ] configureFlags = [
++ lib.optional (!withX) "--without-x"; "--without-kernel-modules"
"--without-xmlsecurity"
"--with-udev-rules-dir=${placeholder "out"}/lib/udev/rules.d"
] ++ lib.optional (!withX) "--without-x";
enableParallelBuilding = true; enableParallelBuilding = true;
NIX_CFLAGS_COMPILE = builtins.toString [ NIX_CFLAGS_COMPILE = builtins.toString [
# igrone glib-2.62 deprecations
# Drop in next stable release.
"-DGLIB_DISABLE_DEPRECATION_WARNINGS"
# fix build with gcc9 # fix build with gcc9
"-Wno-error=address-of-packed-member" "-Wno-error=address-of-packed-member"
"-Wno-error=format-overflow" "-Wno-error=format-overflow"
]; ];
preConfigure = ''
mkdir -p ${placeholder "out"}/lib/udev/rules.d
'';
postInstall = '' postInstall = ''
wrapProgram "$out/etc/vmware-tools/scripts/vmware/network" \ wrapProgram "$out/etc/vmware-tools/scripts/vmware/network" \
--prefix PATH ':' "${lib.makeBinPath [ iproute2 dbus systemd which ]}" --prefix PATH ':' "${lib.makeBinPath [ iproute2 dbus systemd which ]}"
substituteInPlace "$out/lib/udev/rules.d/99-vmware-scsi-udev.rules" --replace "/bin/sh" "${bash}/bin/sh"
''; '';
meta = with lib; { meta = with lib; {

View file

@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
# Use fetchurl to avoid "fetchpatch: ignores file renames" #32084 # Use fetchurl to avoid "fetchpatch: ignores file renames" #32084
# This patch adds python3 support # This patch adds python3 support
(fetchurl { (fetchurl {
url = "https://git.archlinux.org/svntogit/community.git/plain/openbox/trunk/py3.patch?id=90cb57ef53d952bb6ab4c33a184f815bbe1791c0"; url = "https://raw.githubusercontent.com/archlinux/svntogit-community/90cb57ef53d952bb6ab4c33a184f815bbe1791c0/openbox/trunk/py3.patch";
sha256 = "1ks99awlkhd5ph9kz94s1r6m1bfvh42g4rmxd14dyg5b421p1ljc"; sha256 = "1ks99awlkhd5ph9kz94s1r6m1bfvh42g4rmxd14dyg5b421p1ljc";
}) })
]; ];

View file

@ -12,7 +12,6 @@
[ [
(if release then "-C opt-level=3" else "-C debuginfo=2") (if release then "-C opt-level=3" else "-C debuginfo=2")
"-C codegen-units=$NIX_BUILD_CORES" "-C codegen-units=$NIX_BUILD_CORES"
"-C incremental=no"
"--remap-path-prefix=$NIX_BUILD_TOP=/" "--remap-path-prefix=$NIX_BUILD_TOP=/"
(mkRustcDepArgs dependencies crateRenames) (mkRustcDepArgs dependencies crateRenames)
(mkRustcFeatureArgs crateFeatures) (mkRustcFeatureArgs crateFeatures)

View file

@ -24,7 +24,7 @@ let version_ = lib.splitString "-" crateVersion;
version = lib.splitVersion (lib.head version_); version = lib.splitVersion (lib.head version_);
rustcOpts = lib.foldl' (opts: opt: opts + " " + opt) rustcOpts = lib.foldl' (opts: opt: opts + " " + opt)
(if release then "-C opt-level=3" else "-C debuginfo=2") (if release then "-C opt-level=3" else "-C debuginfo=2")
(["-C codegen-units=$NIX_BUILD_CORES -C incremental=no"] ++ extraRustcOpts); (["-C codegen-units=$NIX_BUILD_CORES"] ++ extraRustcOpts);
buildDeps = mkRustcDepArgs buildDependencies crateRenames; buildDeps = mkRustcDepArgs buildDependencies crateRenames;
authors = lib.concatStringsSep ":" crateAuthors; authors = lib.concatStringsSep ":" crateAuthors;
optLevel = if release then 3 else 0; optLevel = if release then 3 else 0;

View file

@ -9,11 +9,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-user-docs"; pname = "gnome-user-docs";
version = "40.1"; version = "40.3";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "09ld9r29nz64s04fmp3b2wwldmfnwxp4w36dkh7mbz5pdd3z7fwk"; sha256 = "PeBXr6KsDebKcH9KdsKTLcvFVsHQ0cwCBWXcGHYpLM0=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -0,0 +1,38 @@
{ stdenv
, fetchFromGitHub
, lib
, gtk-engine-murrine
}:
stdenv.mkDerivation rec {
pname = "layan-gtk-theme";
version = "2021-06-30";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "sha256-FI8+AJlcPHGOzxN6HUKLtPGLe8JTfTQ9Az9NsvVUK7g=";
};
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
postPatch = ''
patchShebangs install.sh
'';
installPhase = ''
runHook preInstall
mkdir -p $out/share/themes
unset name && ./install.sh -d $out/share/themes
runHook postInstall
'';
meta = with lib; {
description = "A flat Material Design theme for GTK 3, GTK 2 and Gnome-Shell.";
homepage = "https://github.com/vinceliuice/Layan-gtk-theme";
license = licenses.gpl3Only;
platforms = platforms.linux;
maintainers = [ maintainers.vanilla ];
};
}

View file

@ -54,11 +54,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-boxes"; pname = "gnome-boxes";
version = "40.2"; version = "40.3";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "hzN1mi2GpWNnWWpTSQRjO4HKqlxFpWNtsulZDHFK6Nk="; sha256 = "//COj0Wkvm0zsKGpY6yzc5ujld6yFZDUOLsepvv3QFg=";
}; };
doCheck = true; doCheck = true;

View file

@ -29,11 +29,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-maps"; pname = "gnome-maps";
version = "40.2"; version = "40.3";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "sha256-g+gVAFTQxLWmPJoJvyx9+YmuaQ7Kwb5r97ExKqpjm9Q="; sha256 = "sha256-p58Fz+u1UMUanGKwgDk2PXDdo90RP+cTR6lCW9cYaIk=";
}; };
doCheck = true; doCheck = true;

View file

@ -27,11 +27,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-disk-utility"; pname = "gnome-disk-utility";
version = "40.1"; version = "40.2";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "sha256-KkuZrBHKIzlLKMVYS56WKE6MWk2mXPBiB95U9Csf8UE="; sha256 = "sha256-ztES6qh9j/ohOv1NC62TnPp662cbeySIWaHchNb1Iec=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -43,11 +43,11 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-software"; pname = "gnome-software";
version = "40.2"; version = "40.3";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "y9HdKguvw/U93kIAPEpKA3RsuNZNxdJ+uNvmc27nJ5Y="; sha256 = "y39TbLCfWCyQdVyQl08+g9/5U56it8CWibtOCsP/yF8=";
}; };
patches = [ patches = [

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-devel-docs"; pname = "gnome-devel-docs";
version = "40.0"; version = "40.3";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/gnome-devel-docs/${lib.versions.major version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/gnome-devel-docs/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "0zqp01ks8m3s6jn5xqd05rw4fwbvxy5qvcfg9g50b2ar2j7v1ar8"; sha256 = "v+jyHcqx70sRVlThchK8sDtqEAgzQIA/SW8ia0oILPY=";
}; };
passthru = { passthru = {

View file

@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ]; makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];
uuid = "EasyScreenCast@iacopodeenosee.gmail.com"; passthru.extensionUuid = "EasyScreenCast@iacopodeenosee.gmail.com";
meta = with lib; { meta = with lib; {
description = "Simplifies the use of the video recording function integrated in gnome shell"; description = "Simplifies the use of the video recording function integrated in gnome shell";

View file

@ -1,36 +0,0 @@
{ lib, stdenv, fetchFromGitHub, gnome }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-appindicator";
version = "37";
src = fetchFromGitHub {
owner = "Ubuntu";
repo = "gnome-shell-extension-appindicator";
rev = "v${version}";
sha256 = "1yss91n94laakzhym409iyjs5gwhln2pkq0zrdrsxc3z70zlslxl";
};
# This package has a Makefile, but it's used for building a zip for
# publication to extensions.gnome.org. Disable the build phase so
# installing doesn't build an unnecessary release.
dontBuild = true;
uuid = "appindicatorsupport@rgcjonas.gmail.com";
installPhase = ''
runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp *.js $out/share/gnome-shell/extensions/${uuid}
cp -r interfaces-xml $out/share/gnome-shell/extensions/${uuid}
cp metadata.json $out/share/gnome-shell/extensions/${uuid}
runHook postInstall
'';
meta = with lib; {
description = "AppIndicator/KStatusNotifierItem support for GNOME Shell";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ jonafato ];
platforms = gnome.gnome-shell.meta.platforms;
homepage = "https://github.com/Ubuntu/gnome-shell-extension-appindicator";
};
}

View file

@ -24,7 +24,10 @@ stdenv.mkDerivation rec {
makeFlags = [ "INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions" ]; makeFlags = [ "INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions" ];
uuid = "arcmenu@arcmenu.com"; passthru = {
extensionUuid = "arcmenu@arcmenu.com";
extensionPortalSlug = "arcmenu";
};
meta = with lib; { meta = with lib; {
description = "Application menu for GNOME Shell, designed to provide a more traditional user experience and workflow"; description = "Application menu for GNOME Shell, designed to provide a more traditional user experience and workflow";

View file

@ -11,7 +11,10 @@ stdenv.mkDerivation rec {
sha256 = "0dyagnjmk91h96xr98mc177c473bqpxcv86qf6g3kyh3arwa9shs"; sha256 = "0dyagnjmk91h96xr98mc177c473bqpxcv86qf6g3kyh3arwa9shs";
}; };
uuid = "caffeine@patapon.info"; passthru = {
extensionPortalSlug = "caffeine";
extensionUuid = "caffeine@patapon.info";
};
nativeBuildInputs = [ nativeBuildInputs = [
glib gettext glib gettext
@ -27,7 +30,7 @@ stdenv.mkDerivation rec {
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/share/gnome-shell/extensions mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions cp -r "caffeine@patapon.info" $out/share/gnome-shell/extensions
runHook postInstall runHook postInstall
''; '';

View file

@ -1,32 +0,0 @@
{ lib, stdenv, fetchFromGitHub, gettext, glib }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-clipboard-indicator";
version = "38";
src = fetchFromGitHub {
owner = "Tudmotu";
repo = "gnome-shell-extension-clipboard-indicator";
rev = "v${version}";
sha256 = "FNrh3b6la2BuWCsriYP5gG0/KNbkFPuq/YTXTj0aJAI=";
};
uuid = "clipboard-indicator@tudmotu.com";
nativeBuildInputs = [
gettext
glib
];
makeFlags = [
"INSTALLPATH=${placeholder "out"}/share/gnome-shell/extensions/${uuid}/"
];
meta = with lib; {
description = "Adds a clipboard indicator to the top panel and saves clipboard history";
license = licenses.mit;
maintainers = with maintainers; [ jonafato ];
platforms = platforms.linux;
homepage = "https://github.com/Tudmotu/gnome-shell-extension-clipboard-indicator";
};
}

View file

@ -10,7 +10,10 @@ stdenv.mkDerivation rec {
stripRoot = false; stripRoot = false;
}; };
uuid = "clock-override@gnomeshell.kryogenix.org"; passthru = {
extensionUuid = "clock-override@gnomeshell.kryogenix.org";
extensionPortalSlug = "clock-override";
};
nativeBuildInputs = [ gettext glib ]; nativeBuildInputs = [ gettext glib ];
@ -22,8 +25,8 @@ stdenv.mkDerivation rec {
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid} mkdir -p "$out/share/gnome-shell/extensions/clock-override@gnomeshell.kryogenix.org"
cp -r {convenience.js,extension.js,format.js,locale,metadata.json,prefs.js,schemas} $out/share/gnome-shell/extensions/${uuid} cp -r {convenience.js,extension.js,format.js,locale,metadata.json,prefs.js,schemas} "$out/share/gnome-shell/extensions/clock-override@gnomeshell.kryogenix.org"
runHook postInstall runHook postInstall
''; '';

View file

@ -24,7 +24,10 @@ stdenv.mkDerivation rec {
"INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions" "INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions"
]; ];
uuid = "dash-to-dock@micxgx.gmail.com"; passthru = {
extensionUuid = "dash-to-dock@micxgx.gmail.com";
extensionPortalSlug = "dash-to-dock";
};
meta = with lib; { meta = with lib; {
description = "A dock for the Gnome Shell"; description = "A dock for the Gnome Shell";

View file

@ -17,7 +17,10 @@ stdenv.mkDerivation rec {
makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ]; makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];
uuid = "dash-to-panel@jderose9.github.com"; passthru = {
extensionUuid = "dash-to-panel@jderose9.github.com";
extensionPortalSlug = "dash-to-panel";
};
meta = with lib; { meta = with lib; {
description = "An icon taskbar for Gnome Shell"; description = "An icon taskbar for Gnome Shell";

View file

@ -1,5 +1,6 @@
{ lib { lib
, callPackage , callPackage
, callPackages
, config , config
}: }:
let let
@ -60,14 +61,16 @@ in rec {
gnome40Extensions = mapUuidNames (produceExtensionsList "40"); gnome40Extensions = mapUuidNames (produceExtensionsList "40");
gnomeExtensions = lib.recurseIntoAttrs ( gnomeExtensions = lib.recurseIntoAttrs (
(mapReadableNames (produceExtensionsList "40")) (mapReadableNames
// (callPackage ./manuallyPackaged.nix {}) (lib.attrValues (gnome40Extensions // (callPackages ./manuallyPackaged.nix {})))
)
// lib.optionalAttrs (config.allowAliases or true) { // lib.optionalAttrs (config.allowAliases or true) {
unite-shell = gnomeExtensions.unite; # added 2021-01-19 unite-shell = gnomeExtensions.unite; # added 2021-01-19
arc-menu = gnomeExtensions.arcmenu; # added 2021-02-14 arc-menu = gnomeExtensions.arcmenu; # added 2021-02-14
nohotcorner = throw "gnomeExtensions.nohotcorner removed since 2019-10-09: Since 3.34, it is a part of GNOME Shell configurable through GNOME Tweaks."; nohotcorner = throw "gnomeExtensions.nohotcorner removed since 2019-10-09: Since 3.34, it is a part of GNOME Shell configurable through GNOME Tweaks.";
mediaplayer = throw "gnomeExtensions.mediaplayer deprecated since 2019-09-23: retired upstream https://github.com/JasonLG1979/gnome-shell-extensions-mediaplayer/blob/master/README.md"; mediaplayer = throw "gnomeExtensions.mediaplayer deprecated since 2019-09-23: retired upstream https://github.com/JasonLG1979/gnome-shell-extensions-mediaplayer/blob/master/README.md";
remove-dropdown-arrows = throw "gnomeExtensions.remove-dropdown-arrows removed since 2021-05-25: The extensions has not seen an update sine GNOME 3.34. Furthermore, the functionality it provides is obsolete as of GNOME 40.";
} }
); );
} }

View file

@ -1,31 +0,0 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-disable-unredirect";
version = "unstable-2021-04-13";
src = fetchFromGitHub {
owner = "kazysmaster";
repo = "gnome-shell-extension-disable-unredirect";
rev = "2a4c0e6a7a7a5f1aad9907ee2cf43d0725e10c19";
sha256 = "06hbyy20xz0bvzg0vs5w4092nyfpg372c86cdm1akcjm72m5sim9";
};
uuid = "unredirect@vaina.lt";
installPhase = ''
runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -R ${uuid} $out/share/gnome-shell/extensions/${uuid}
runHook postInstall
'';
meta = with lib; {
description = "Disables unredirect fullscreen windows in gnome-shell to avoid tearing";
license = licenses.gpl3Only;
homepage = "https://github.com/kazysmaster/gnome-shell-extension-disable-unredirect";
maintainers = with maintainers; [ eduardosm ];
};
}

View file

@ -1,29 +0,0 @@
{ lib, stdenv, fetchgit, gettext, gnome }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-draw-on-your-screen";
version = "10";
src = fetchgit {
url = "https://framagit.org/abakkk/DrawOnYourScreen/";
rev = "v${version}";
sha256 = "07adzg3mf6k0pmd9lc358w0w3l4pr3p6374day1qhmci2p4zxq6p";
};
uuid = "drawOnYourScreen@abakkk.framagit.org";
installPhase = ''
runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp -r . $out/share/gnome-shell/extensions/${uuid}
runHook postInstall
'';
meta = with lib; {
description = "A drawing extension for GNOME Shell";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ ericdallo ahuzik ];
platforms = gnome.gnome-shell.meta.platforms;
homepage = "https://framagit.org/abakkk/DrawOnYourScreen";
};
}

View file

@ -11,7 +11,10 @@ stdenv.mkDerivation rec {
sha256 = "0igfxgrjdqq6z6xg4rsawxn261pk25g5dw2pm3bhwz5sqsy4bq3i"; sha256 = "0igfxgrjdqq6z6xg4rsawxn261pk25g5dw2pm3bhwz5sqsy4bq3i";
}; };
uuid = "drop-down-terminal@gs-extensions.zzrough.org"; passthru = {
extensionUuid = "drop-down-terminal@gs-extensions.zzrough.org";
extensionPortalSlug = "drop-down-terminal";
};
patches = [ patches = [
(substituteAll { (substituteAll {
@ -23,7 +26,7 @@ stdenv.mkDerivation rec {
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/share/gnome-shell/extensions mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions/ cp -r "drop-down-terminal@gs-extensions.zzrough.org" $out/share/gnome-shell/extensions/
runHook postInstall runHook postInstall
''; '';

View file

@ -1,38 +0,0 @@
{ lib, stdenv, fetchFromGitHub, gnome, glib }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-dynamic-panel-transparency";
version = "unstable-2021-03-04";
src = fetchFromGitHub {
owner = "ewlsh";
repo = "dynamic-panel-transparency";
rev = "f9e720e98e40c7a2d87928d09a7313c9ef2e832c";
sha256 = "0njykxjiwlcmk0q8bsgqaznsryaw43fspfs6rzsjjz5p0xaq04nw";
};
uuid = "dynamic-panel-transparency@rockon999.github.io";
nativeBuildInputs = [ glib ];
buildPhase = ''
runHook preBuild
glib-compile-schemas --strict --targetdir=${uuid}/schemas/ ${uuid}/schemas
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp -r ${uuid} $out/share/gnome-shell/extensions
runHook postInstall
'';
meta = with lib; {
description = "This extension fades your top panel to nothingness when there are no maximized windows present";
license = licenses.gpl3Only;
maintainers = with maintainers; [ rhoriguchi ];
homepage = "https://github.com/ewlsh/dynamic-panel-transparency";
broken = versionOlder gnome.gnome-shell.version "3.36";
};
}

View file

@ -11,20 +11,23 @@ stdenv.mkDerivation rec {
sha256 = "0x60pg5nl5d73av494dg29hyfml7fbf2d03wm053vx1q8a3pxbyb"; sha256 = "0x60pg5nl5d73av494dg29hyfml7fbf2d03wm053vx1q8a3pxbyb";
}; };
uuid = "emoji-selector@maestroschan.fr"; passthru = {
extensionUuid = "emoji-selector@maestroschan.fr";
extensionPortalSlug = "emoji-selector";
};
nativeBuildInputs = [ glib ]; nativeBuildInputs = [ glib ];
buildPhase = '' buildPhase = ''
runHook preBuild runHook preBuild
glib-compile-schemas ./${uuid}/schemas glib-compile-schemas "./emoji-selector@maestroschan.fr/schemas"
runHook postBuild runHook postBuild
''; '';
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/share/gnome-shell/extensions mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions cp -r "emoji-selector@maestroschan.fr" $out/share/gnome-shell/extensions
runHook postInstall runHook postInstall
''; '';

View file

@ -14,6 +14,8 @@
"lockkeys@fawtytoo" = "lock-keys-2"; "lockkeys@fawtytoo" = "lock-keys-2";
# ############################################################################
# These are conflicts for 3.38 extensions. They will very probably come back # These are conflicts for 3.38 extensions. They will very probably come back
# once more of them support 40. # once more of them support 40.
@ -26,4 +28,24 @@
# That extension is broken because of https://github.com/NixOS/nixpkgs/issues/118612 # That extension is broken because of https://github.com/NixOS/nixpkgs/issues/118612
#"flypie@schneegans.github.com" = null; #"flypie@schneegans.github.com" = null;
# ############################################################################
# Overrides for extensions that were manually packaged in the past but are gradually
# being replaced by automatic packaging where possible.
#
# The manually packaged ones:
"EasyScreenCast@iacopodeenosee.gmail.com" = "easyScreenCast"; # extensionPortalSlug is "easyscreencast"
"gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com" = "fuzzy-app-search"; # extensionPortalSlug is "gnome-fuzzy-app-search"
"TopIcons@phocean.net" = "topicons-plus"; # extensionPortalSlug is "topicons"
"paperwm@hedning:matrix.org" = "paperwm"; # is not on extensions.gnome.org
"no-title-bar@jonaspoehler.de" = "no-title-bar"; # extensionPortalSlug is "no-title-bar-forked"
# These extensions are automatically packaged at the moment. We preserve the old attribute name
# for backwards compatibility.
"appindicatorsupport@rgcjonas.gmail.com" = "appindicator"; # extensionPortalSlug is "appindicator-support"
"unredirect@vaina.lt" = "disable-unredirect"; # extensionPortalSlug is "disable-unredirect-fullscreen-windows"
"drawOnYourScreen@abakkk.framagit.org" = "draw-on-your-screen"; # extensionPortalSlug is "draw-on-you-screen"
"timepp@zagortenay333" = "timepp"; # extensionPortalSlug is "time"
"windowIsReady_Remover@nunofarruca@gmail.com" = "window-is-ready-remover"; # extensionPortalSlug is "window-is-ready-notification-remover"
} }

View file

@ -4,7 +4,10 @@ stdenv.mkDerivation rec {
pname = "gnome-shell-extension-freon"; pname = "gnome-shell-extension-freon";
version = "44"; version = "44";
uuid = "freon@UshakovVasilii_Github.yahoo.com"; passthru = {
extensionUuid = "freon@UshakovVasilii_Github.yahoo.com";
extensionPortalSlug = "freon";
};
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "UshakovVasilii"; owner = "UshakovVasilii";
@ -17,14 +20,14 @@ stdenv.mkDerivation rec {
buildPhase = '' buildPhase = ''
runHook preBuild runHook preBuild
glib-compile-schemas --strict --targetdir=${uuid}/schemas ${uuid}/schemas glib-compile-schemas --strict --targetdir="freon@UshakovVasilii_Github.yahoo.com/schemas" "freon@UshakovVasilii_Github.yahoo.com/schemas"
runHook postBuild runHook postBuild
''; '';
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/share/gnome-shell/extensions mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions cp -r "freon@UshakovVasilii_Github.yahoo.com" $out/share/gnome-shell/extensions
runHook postInstall runHook postInstall
''; '';

View file

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "127n3jc5d6cl0yrpjf8acdj76br97knks1wx4f6jcswkx9x47w0a"; sha256 = "127n3jc5d6cl0yrpjf8acdj76br97knks1wx4f6jcswkx9x47w0a";
}; };
uuid = "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com"; passthru.extensionUuid = "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com";
nativeBuildInputs = [ glib ]; nativeBuildInputs = [ glib ];

View file

@ -98,7 +98,10 @@ stdenv.mkDerivation rec {
done done
''; '';
uuid = "gsconnect@andyholmes.github.io"; passthru = {
extensionUuid = "gsconnect@andyholmes.github.io";
extensionPortalSlug = "gsconnect";
};
passthru = { passthru = {
tests = { tests = {

View file

@ -1,32 +0,0 @@
{ stdenv, lib, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-gtile";
version = "44";
src = fetchFromGitHub {
owner = "gTile";
repo = "gTile";
rev = "V${version}";
sha256 = "0i00psc1ky70zljd14jzr627y7nd8xwnwrh4xpajl1f6djabh12s";
};
uuid = "gTile@vibou";
installPhase = ''
runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp -r * $out/share/gnome-shell/extensions/${uuid}
runHook postInstall
'';
meta = with lib; {
description = "A window tiling extension for Gnome. This is the new official home of the vibou.gTile extension.";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ mdsp ];
platforms = platforms.linux;
homepage = "https://github.com/gTile/gTile";
};
}

View file

@ -1,33 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
}:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-hot-edge";
version = "jdoda";
src = fetchFromGitHub {
owner = "jdoda";
repo = "hotedge";
rev = "bb7f651becea5287241caf7cda246a68ab07dac8";
sha256 = "oeTs0kRan6b5relxzhK1IKbV0Yv2d5YdvvUPJ3fM9ik=";
};
dontBuild = true;
uuid = "hotedge@jonathan.jdoda.ca";
installPhase = ''
runHook preInstall
install -Dt $out/share/gnome-shell/extensions/${uuid} extension.js metadata.json stylesheet.css
runHook postInstall
'';
meta = with lib; {
description = "Replace the top-left hot corner with a bottom hot edge";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ jtojnar ];
homepage = "https://github.com/jdoda/hotedge";
};
}

View file

@ -11,12 +11,15 @@ stdenv.mkDerivation rec {
sha256 = "18c8zkdrmdbghqqz7b450vhgpykgz25mgigwn2nggcb2lxmvm9ks"; sha256 = "18c8zkdrmdbghqqz7b450vhgpykgz25mgigwn2nggcb2lxmvm9ks";
}; };
uuid = "icon-hider@kalnitsky.org"; passthru = {
extensionUuid = "icon-hider@kalnitsky.org";
extensionPortalSlug = "icon-hider";
};
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/share/gnome-shell/extensions mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions cp -r "icon-hider@kalnitsky.org" $out/share/gnome-shell/extensions
runHook postInstall runHook postInstall
''; '';

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