Merge master into haskell-updates

main
github-actions[bot] 2 years ago committed by GitHub
commit c213f4a29f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      maintainers/maintainer-list.nix
  2. 13
      maintainers/team-list.nix
  3. 2
      nixos/doc/manual/from_md/installation/installing-from-other-distro.section.xml
  4. 15
      nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
  5. 2
      nixos/doc/manual/installation/installing-from-other-distro.section.md
  6. 7
      nixos/doc/manual/release-notes/rl-2205.section.md
  7. 12
      nixos/modules/installer/tools/nixos-generate-config.pl
  8. 9
      nixos/modules/misc/version.nix
  9. 4
      nixos/modules/security/wrappers/default.nix
  10. 8
      nixos/modules/services/continuous-integration/hydra/default.nix
  11. 15
      nixos/modules/services/games/factorio.nix
  12. 1
      nixos/modules/services/matrix/matrix-synapse.nix
  13. 4
      nixos/modules/services/networking/gateone.nix
  14. 2
      nixos/modules/services/networking/ircd-hybrid/ircd.conf
  15. 8
      nixos/modules/services/networking/pleroma.nix
  16. 2
      nixos/modules/services/networking/pptpd.nix
  17. 2
      nixos/modules/services/networking/prayer.nix
  18. 27
      nixos/modules/services/networking/tailscale.nix
  19. 4
      nixos/modules/services/networking/tinc.nix
  20. 6
      nixos/modules/services/networking/xl2tpd.nix
  21. 8
      nixos/modules/services/web-apps/restya-board.nix
  22. 1
      nixos/modules/system/boot/networkd.nix
  23. 42
      nixos/modules/tasks/network-interfaces-systemd.nix
  24. 5
      nixos/modules/tasks/network-interfaces.nix
  25. 3
      nixos/modules/testing/test-instrumentation.nix
  26. 11
      nixos/modules/virtualisation/proxmox-lxc.nix
  27. 1
      nixos/tests/kernel-generic.nix
  28. 20
      nixos/tests/networking.nix
  29. 4
      nixos/tests/pleroma.nix
  30. 2
      nixos/tests/virtualbox.nix
  31. 17
      pkgs/applications/editors/gnome-latex/default.nix
  32. 8
      pkgs/applications/editors/nano/default.nix
  33. 3
      pkgs/applications/editors/oed/default.nix
  34. 41
      pkgs/applications/editors/vis/default.nix
  35. 12
      pkgs/applications/editors/vscode/extensions/default.nix
  36. 12
      pkgs/applications/editors/vscode/vscode.nix
  37. 1
      pkgs/applications/editors/vscode/vscodium.nix
  38. 3
      pkgs/applications/emulators/commanderx16/emulator.nix
  39. 4
      pkgs/applications/graphics/drawio/default.nix
  40. 9
      pkgs/applications/graphics/rnote/default.nix
  41. 5
      pkgs/applications/misc/charm/default.nix
  42. 1
      pkgs/applications/misc/nanoblogger/default.nix
  43. 3
      pkgs/applications/misc/oil-buku/default.nix
  44. 19
      pkgs/applications/misc/remnote/default.nix
  45. 1
      pkgs/applications/misc/taskwarrior/default.nix
  46. 1
      pkgs/applications/misc/translate-shell/default.nix
  47. 1
      pkgs/applications/misc/web-media-controller/default.nix
  48. 14
      pkgs/applications/networking/browsers/chromium/upstream-info.json
  49. 1
      pkgs/applications/networking/cluster/bosh-cli/default.nix
  50. 1
      pkgs/applications/networking/cluster/fluxcd/default.nix
  51. 1
      pkgs/applications/networking/cluster/krelay/default.nix
  52. 3
      pkgs/applications/networking/cluster/openshift/default.nix
  53. 5
      pkgs/applications/networking/cluster/terraform/default.nix
  54. 10
      pkgs/applications/networking/instant-messengers/alfaview/default.nix
  55. 70
      pkgs/applications/networking/instant-messengers/linphone/default.nix
  56. 4
      pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
  57. 4
      pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
  58. 6
      pkgs/applications/networking/mailreaders/tutanota-desktop/default.nix
  59. 7
      pkgs/applications/networking/n8n/default.nix
  60. 9
      pkgs/applications/networking/nextcloud-client/default.nix
  61. 55
      pkgs/applications/networking/p2p/transgui/default.nix
  62. 51
      pkgs/applications/networking/protonvpn-cli/2.nix
  63. 44
      pkgs/applications/networking/protonvpn-cli/default.nix
  64. 1
      pkgs/applications/networking/syncthing/default.nix
  65. 15
      pkgs/applications/office/timeular/default.nix
  66. 1
      pkgs/applications/office/todo.txt-cli/default.nix
  67. 6
      pkgs/applications/office/trilium/default.nix
  68. 3
      pkgs/applications/radio/kalibrate-rtl/default.nix
  69. 1
      pkgs/applications/radio/soapysdr/default.nix
  70. 3
      pkgs/applications/science/logic/abc/default.nix
  71. 1
      pkgs/applications/science/logic/key/default.nix
  72. 4
      pkgs/applications/version-management/git-and-tools/git-machete/default.nix
  73. 6
      pkgs/applications/version-management/git-and-tools/radicle-upstream/default.nix
  74. 10
      pkgs/applications/version-management/gitlab/data.json
  75. 4
      pkgs/applications/version-management/gitlab/gitaly/default.nix
  76. 2
      pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
  77. 4
      pkgs/applications/video/ffmpeg-normalize/default.nix
  78. 6
      pkgs/applications/virtualization/docker/compose.nix
  79. 16
      pkgs/applications/virtualization/docker/default.nix
  80. 27
      pkgs/data/fonts/khmeros/default.nix
  81. 23
      pkgs/data/fonts/lklug-sinhala/default.nix
  82. 27
      pkgs/data/fonts/nanum/default.nix
  83. 27
      pkgs/data/fonts/sil-padauk/default.nix
  84. 27
      pkgs/data/fonts/takao/default.nix
  85. 22
      pkgs/data/fonts/tibetan-machine/default.nix
  86. 12
      pkgs/desktops/gnome/core/gnome-control-center/default.nix
  87. 19
      pkgs/development/compilers/cmdstan/default.nix
  88. 7
      pkgs/development/compilers/dotnet/build-dotnet.nix
  89. 5
      pkgs/development/compilers/fstar/default.nix
  90. 6
      pkgs/development/compilers/gcc/11/Added-mcf-thread-model-support-from-mcfgthread.patch
  91. 25
      pkgs/development/compilers/intel-graphics-compiler/default.nix
  92. 3
      pkgs/development/compilers/jasmin-compiler/default.nix
  93. 8
      pkgs/development/compilers/nim/default.nix
  94. 6
      pkgs/development/compilers/open-watcom/v2.nix
  95. 10
      pkgs/development/compilers/spirv-llvm-translator/default.nix
  96. 4
      pkgs/development/compilers/vala/default.nix
  97. 1
      pkgs/development/compilers/vlang/default.nix
  98. 14
      pkgs/development/interpreters/bqn/cbqn/default.nix
  99. 40
      pkgs/development/interpreters/hy/builder.nix
  100. 15
      pkgs/development/interpreters/hy/default.nix
  101. Some files were not shown because too many files have changed in this diff Show More

@ -5029,6 +5029,12 @@
githubId = 222664; githubId = 222664;
name = "Matthew Leach"; name = "Matthew Leach";
}; };
hexchen = {
email = "nix@lilwit.ch";
github = "hexchen";
githubId = 41522204;
name = "hexchen";
};
hh = { hh = {
email = "hh@m-labs.hk"; email = "hh@m-labs.hk";
github = "HarryMakes"; github = "HarryMakes";

@ -445,6 +445,19 @@ with lib.maintainers; {
enableFeatureFreezePing = true; enableFeatureFreezePing = true;
}; };
numtide = {
members = [
mic92
flokli
jfroche
tazjin
zimbatm
];
enableFeatureFreezePing = true;
scope = "Group registration for Numtide team members who collectively maintain packages.";
shortName = "Numtide team";
};
openstack = { openstack = {
members = [ members = [
emilytrau emilytrau

@ -248,7 +248,7 @@ $ nix-env -p /nix/var/nix/profiles/system -f '<nixpkgs/nixos>' -I nixos-co
(since your Nix install was probably single user): (since your Nix install was probably single user):
</para> </para>
<programlisting> <programlisting>
$ sudo chown -R 0.0 /nix $ sudo chown -R 0:0 /nix
</programlisting> </programlisting>
</listitem> </listitem>
<listitem> <listitem>

@ -2471,6 +2471,21 @@
hosts. hosts.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The option
<link xlink:href="options.html#opt-networking.useDHCP">networking.useDHCP</link>
isn’t deprecated anymore. When using
<link xlink:href="options.html#opt-networking.useNetworkd"><literal>systemd-networkd</literal></link>,
a generic <literal>.network</literal>-unit is added which
enables DHCP for each interface matching
<literal>en*</literal>, <literal>eth*</literal> or
<literal>wl*</literal> with priority 99 (which means that it
doesn’t have any effect if such an interface is matched by a
<literal>.network-</literal>unit with a lower priority). In
case of scripted networking, no behavior was changed.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
</section> </section>

@ -177,7 +177,7 @@ The first steps to all these are the same:
was probably single user): was probably single user):
```ShellSession ```ShellSession
$ sudo chown -R 0.0 /nix $ sudo chown -R 0:0 /nix
``` ```
1. Set up the `/etc/NIXOS` and `/etc/NIXOS_LUSTRATE` files: 1. Set up the `/etc/NIXOS` and `/etc/NIXOS_LUSTRATE` files:

@ -877,4 +877,11 @@ In addition to numerous new and upgraded packages, this release has the followin
`true` starting with NixOS 22.11. Enable it explicitly if you need to control `true` starting with NixOS 22.11. Enable it explicitly if you need to control
Snapserver remotely or connect streamig clients from other hosts. Snapserver remotely or connect streamig clients from other hosts.
- The option [networking.useDHCP](options.html#opt-networking.useDHCP) isn't deprecated anymore.
When using [`systemd-networkd`](options.html#opt-networking.useNetworkd), a generic
`.network`-unit is added which enables DHCP for each interface matching `en*`, `eth*`
or `wl*` with priority 99 (which means that it doesn't have any effect if such an interface is matched
by a `.network-`unit with a lower priority). In case of scripted networking, no behavior
was changed.
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

@ -581,17 +581,19 @@ ${\join "", (map { " $_\n" } (uniq @attrs))}}
EOF EOF
sub generateNetworkingDhcpConfig { sub generateNetworkingDhcpConfig {
# FIXME disable networking.useDHCP by default when switching to networkd.
my $config = <<EOF; my $config = <<EOF;
# The global useDHCP flag is deprecated, therefore explicitly set to false here. # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# Per-interface useDHCP will be mandatory in the future, so this generated config # (the default) this is the recommended approach. When using systemd-networkd it's
# replicates the default behaviour. # still possible to use this option, but it's recommended to use it in conjunction
networking.useDHCP = lib.mkDefault false; # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
EOF EOF
foreach my $path (glob "/sys/class/net/*") { foreach my $path (glob "/sys/class/net/*") {
my $dev = basename($path); my $dev = basename($path);
if ($dev ne "lo") { if ($dev ne "lo") {
$config .= " networking.interfaces.$dev.useDHCP = lib.mkDefault true;\n"; $config .= " # networking.interfaces.$dev.useDHCP = lib.mkDefault true;\n";
} }
} }

@ -146,6 +146,15 @@ in
"/etc/os-release".source = initrdRelease; "/etc/os-release".source = initrdRelease;
"/etc/initrd-release".source = initrdRelease; "/etc/initrd-release".source = initrdRelease;
}; };
# We have to use `warnings` because when warning in the default of the option
# the warning would also be shown when building the manual since the manual
# has to evaluate the default.
#
# TODO Remove this and drop the default of the option so people are forced to set it.
# Doing this also means fixing the comment in nixos/modules/testing/test-instrumentation.nix
warnings = lib.optional (options.system.stateVersion.highestPrio == (lib.mkOptionDefault { }).priority)
"system.stateVersion is not set, defaulting to ${config.system.stateVersion}. Read why this matters on https://nixos.org/manual/nixos/stable/options.html#opt-system.stateVersion.";
}; };
# uses version info nixpkgs, which requires a full nixpkgs path # uses version info nixpkgs, which requires a full nixpkgs path

@ -98,7 +98,7 @@ let
# Prevent races # Prevent races
chmod 0000 "$wrapperDir/${program}" chmod 0000 "$wrapperDir/${program}"
chown ${owner}.${group} "$wrapperDir/${program}" chown ${owner}:${group} "$wrapperDir/${program}"
# Set desired capabilities on the file plus cap_setpcap so # Set desired capabilities on the file plus cap_setpcap so
# the wrapper program can elevate the capabilities set on # the wrapper program can elevate the capabilities set on
@ -126,7 +126,7 @@ let
# Prevent races # Prevent races
chmod 0000 "$wrapperDir/${program}" chmod 0000 "$wrapperDir/${program}"
chown ${owner}.${group} "$wrapperDir/${program}" chown ${owner}:${group} "$wrapperDir/${program}"
chmod "u${if setuid then "+" else "-"}s,g${if setgid then "+" else "-"}s,${permissions}" "$wrapperDir/${program}" chmod "u${if setuid then "+" else "-"}s,g${if setgid then "+" else "-"}s,${permissions}" "$wrapperDir/${program}"
''; '';

@ -300,17 +300,17 @@ in
}; };
preStart = '' preStart = ''
mkdir -p ${baseDir} mkdir -p ${baseDir}
chown hydra.hydra ${baseDir} chown hydra:hydra ${baseDir}
chmod 0750 ${baseDir} chmod 0750 ${baseDir}
ln -sf ${hydraConf} ${baseDir}/hydra.conf ln -sf ${hydraConf} ${baseDir}/hydra.conf
mkdir -m 0700 -p ${baseDir}/www mkdir -m 0700 -p ${baseDir}/www
chown hydra-www.hydra ${baseDir}/www chown hydra-www:hydra ${baseDir}/www
mkdir -m 0700 -p ${baseDir}/queue-runner mkdir -m 0700 -p ${baseDir}/queue-runner
mkdir -m 0750 -p ${baseDir}/build-logs mkdir -m 0750 -p ${baseDir}/build-logs
chown hydra-queue-runner.hydra ${baseDir}/queue-runner ${baseDir}/build-logs chown hydra-queue-runner:hydra ${baseDir}/queue-runner ${baseDir}/build-logs
${optionalString haveLocalDB '' ${optionalString haveLocalDB ''
if ! [ -e ${baseDir}/.db-created ]; then if ! [ -e ${baseDir}/.db-created ]; then
@ -338,7 +338,7 @@ in
rmdir /nix/var/nix/gcroots/per-user/hydra-www/hydra-roots rmdir /nix/var/nix/gcroots/per-user/hydra-www/hydra-roots
fi fi
chown hydra.hydra ${cfg.gcRootsDir} chown hydra:hydra ${cfg.gcRootsDir}
chmod 2775 ${cfg.gcRootsDir} chmod 2775 ${cfg.gcRootsDir}
''; '';
serviceConfig.ExecStart = "${hydra-package}/bin/hydra-init"; serviceConfig.ExecStart = "${hydra-package}/bin/hydra-init";

@ -87,6 +87,18 @@ in
a new map with default settings will be generated before starting the service. a new map with default settings will be generated before starting the service.
''; '';
}; };
loadLatestSave = mkOption {
type = types.bool;
default = false;
description = ''
Load the latest savegame on startup. This overrides saveName, in that the latest
save will always be used even if a saved game of the given name exists. It still
controls the 'canonical' name of the savegame.
Set this to true to have the server automatically reload a recent autosave after
a crash or desync.
'';
};
# TODO Add more individual settings as nixos-options? # TODO Add more individual settings as nixos-options?
# TODO XXX The server tries to copy a newly created config file over the old one # TODO XXX The server tries to copy a newly created config file over the old one
# on shutdown, but fails, because it's in the nix store. When is this needed? # on shutdown, but fails, because it's in the nix store. When is this needed?
@ -250,8 +262,9 @@ in
"--config=${cfg.configFile}" "--config=${cfg.configFile}"
"--port=${toString cfg.port}" "--port=${toString cfg.port}"
"--bind=${cfg.bind}" "--bind=${cfg.bind}"
"--start-server=${mkSavePath cfg.saveName}" (optionalString (!cfg.loadLatestSave) "--start-server=${mkSavePath cfg.saveName}")
"--server-settings=${serverSettingsFile}" "--server-settings=${serverSettingsFile}"
(optionalString cfg.loadLatestSave "--start-server-load-latest")
(optionalString (cfg.mods != []) "--mod-directory=${modDir}") (optionalString (cfg.mods != []) "--mod-directory=${modDir}")
(optionalString (cfg.admins != []) "--server-adminlist=${serverAdminsFile}") (optionalString (cfg.admins != []) "--server-adminlist=${serverAdminsFile}")
]; ];

@ -296,6 +296,7 @@ in {
default = if lib.versionAtLeast config.system.stateVersion "22.05" default = if lib.versionAtLeast config.system.stateVersion "22.05"
then "${cfg.dataDir}/media_store" then "${cfg.dataDir}/media_store"
else "${cfg.dataDir}/media"; else "${cfg.dataDir}/media";
defaultText = "${cfg.dataDir}/media_store for when system.stateVersion is at least 22.05, ${cfg.dataDir}/media when lower than 22.05";
description = '' description = ''
Directory where uploaded images and attachments are stored. Directory where uploaded images and attachments are stored.
''; '';

@ -36,11 +36,11 @@ config = mkIf cfg.enable {
preStart = '' preStart = ''
if [ ! -d ${cfg.settingsDir} ] ; then if [ ! -d ${cfg.settingsDir} ] ; then
mkdir -m 0750 -p ${cfg.settingsDir} mkdir -m 0750 -p ${cfg.settingsDir}
chown -R gateone.gateone ${cfg.settingsDir} chown -R gateone:gateone ${cfg.settingsDir}
fi fi
if [ ! -d ${cfg.pidDir} ] ; then if [ ! -d ${cfg.pidDir} ] ; then
mkdir -m 0750 -p ${cfg.pidDir} mkdir -m 0750 -p ${cfg.pidDir}
chown -R gateone.gateone ${cfg.pidDir} chown -R gateone:gateone ${cfg.pidDir}
fi fi
''; '';
#unitConfig.RequiresMountsFor = "${cfg.settingsDir}"; #unitConfig.RequiresMountsFor = "${cfg.settingsDir}";

@ -98,7 +98,7 @@ serverinfo {
* *
* openssl genrsa -out rsa.key 2048 * openssl genrsa -out rsa.key 2048
* openssl rsa -in rsa.key -pubout -out rsa.pub * openssl rsa -in rsa.key -pubout -out rsa.pub
* chown <ircd-user>.<ircd.group> rsa.key rsa.pub * chown <ircd-user>:<ircd.group> rsa.key rsa.pub
* chmod 0600 rsa.key * chmod 0600 rsa.key
* chmod 0644 rsa.pub * chmod 0644 rsa.pub
*/ */

@ -1,7 +1,6 @@
{ config, options, lib, pkgs, stdenv, ... }: { config, options, lib, pkgs, stdenv, ... }:
let let
cfg = config.services.pleroma; cfg = config.services.pleroma;
cookieFile = "/var/lib/pleroma/.cookie";
in { in {
options = { options = {
services.pleroma = with lib; { services.pleroma = with lib; {
@ -9,7 +8,7 @@ in {
package = mkOption { package = mkOption {
type = types.package; type = types.package;
default = pkgs.pleroma.override { inherit cookieFile; }; default = pkgs.pleroma;
defaultText = literalExpression "pkgs.pleroma"; defaultText = literalExpression "pkgs.pleroma";
description = "Pleroma package to use."; description = "Pleroma package to use.";
}; };
@ -101,6 +100,7 @@ in {
after = [ "network-online.target" "postgresql.service" ]; after = [ "network-online.target" "postgresql.service" ];
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
restartTriggers = [ config.environment.etc."/pleroma/config.exs".source ]; restartTriggers = [ config.environment.etc."/pleroma/config.exs".source ];
environment.RELEASE_COOKIE = "/var/lib/pleroma/.cookie";
serviceConfig = { serviceConfig = {
User = cfg.user; User = cfg.user;
Group = cfg.group; Group = cfg.group;
@ -118,10 +118,10 @@ in {
# Better be safe than sorry migration-wise. # Better be safe than sorry migration-wise.
ExecStartPre = ExecStartPre =
let preScript = pkgs.writers.writeBashBin "pleromaStartPre" '' let preScript = pkgs.writers.writeBashBin "pleromaStartPre" ''
if [ ! -f "${cookieFile}" ] || [ ! -s "${cookieFile}" ] if [ ! -f /var/lib/pleroma/.cookie ]
then then
echo "Creating cookie file" echo "Creating cookie file"
dd if=/dev/urandom bs=1 count=16 | ${pkgs.hexdump}/bin/hexdump -e '16/1 "%02x"' > "${cookieFile}" dd if=/dev/urandom bs=1 count=16 | hexdump -e '16/1 "%02x"' > /var/lib/pleroma/.cookie
fi fi
${cfg.package}/bin/pleroma_ctl migrate ${cfg.package}/bin/pleroma_ctl migrate
''; '';

@ -108,7 +108,7 @@ with lib;
#username pptpd password * #username pptpd password *
EOF EOF
chown root.root "$secrets" chown root:root "$secrets"
chmod 600 "$secrets" chmod 600 "$secrets"
''; '';

@ -82,7 +82,7 @@ in
serviceConfig.Type = "forking"; serviceConfig.Type = "forking";
preStart = '' preStart = ''
mkdir -m 0755 -p ${stateDir} mkdir -m 0755 -p ${stateDir}
chown ${prayerUser}.${prayerGroup} ${stateDir} chown ${prayerUser}:${prayerGroup} ${stateDir}
''; '';
script = "${prayer}/sbin/prayer --config-file=${prayerCfg}"; script = "${prayer}/sbin/prayer --config-file=${prayerCfg}";
}; };

@ -2,9 +2,13 @@
with lib; with lib;
let cfg = config.services.tailscale; let
cfg = config.services.tailscale;
firewallOn = config.networking.firewall.enable;
rpfMode = config.networking.firewall.checkReversePath;
rpfIsStrict = rpfMode == true || rpfMode == "strict";
in { in {
meta.maintainers = with maintainers; [ danderson mbaillie ]; meta.maintainers = with maintainers; [ danderson mbaillie twitchyliquid64 ];
options.services.tailscale = { options.services.tailscale = {
enable = mkEnableOption "Tailscale client daemon"; enable = mkEnableOption "Tailscale client daemon";
@ -36,17 +40,34 @@ in {
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
warnings = optional (firewallOn && rpfIsStrict) "Strict reverse path filtering breaks Tailscale exit node use and some subnet routing setups. Consider setting `networking.firewall.checkReversePath` = 'loose'";
environment.systemPackages = [ cfg.package ]; # for the CLI environment.systemPackages = [ cfg.package ]; # for the CLI
systemd.packages = [ cfg.package ]; systemd.packages = [ cfg.package ];
systemd.services.tailscaled = { systemd.services.tailscaled = {
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
path = [ pkgs.openresolv pkgs.procps ]; path = [
pkgs.openresolv # for configuring DNS in some configs
pkgs.procps # for collecting running services (opt-in feature)
pkgs.glibc # for `getent` to look up user shells
];
serviceConfig.Environment = [ serviceConfig.Environment = [
"PORT=${toString cfg.port}" "PORT=${toString cfg.port}"
''"FLAGS=--tun ${lib.escapeShellArg cfg.interfaceName}"'' ''"FLAGS=--tun ${lib.escapeShellArg cfg.interfaceName}"''
] ++ (lib.optionals (cfg.permitCertUid != null) [ ] ++ (lib.optionals (cfg.permitCertUid != null) [
"TS_PERMIT_CERT_UID=${cfg.permitCertUid}" "TS_PERMIT_CERT_UID=${cfg.permitCertUid}"
]); ]);
# Restart tailscaled with a single `systemctl restart` at the
# end of activation, rather than a `stop` followed by a later
# `start`. Activation over Tailscale can hang for tens of
# seconds in the stop+start setup, if the activation script has
# a significant delay between the stop and start phases
# (e.g. script blocked on another unit with a slow shutdown).
#
# Tailscale is aware of the correctness tradeoff involved, and
# already makes its upstream systemd unit robust against unit
# version mismatches on restart for compatibility with other
# linux distros.
stopIfChanged = false;
}; };
}; };
} }

@ -383,9 +383,9 @@ in
}; };
preStart = '' preStart = ''
mkdir -p /etc/tinc/${network}/hosts mkdir -p /etc/tinc/${network}/hosts
chown tinc.${network} /etc/tinc/${network}/hosts chown tinc:${network} /etc/tinc/${network}/hosts
mkdir -p /etc/tinc/${network}/invitations mkdir -p /etc/tinc/${network}/invitations
chown tinc.${network} /etc/tinc/${network}/invitations chown tinc:${network} /etc/tinc/${network}/invitations
# Determine how we should generate our keys # Determine how we should generate our keys
if type tinc >/dev/null 2>&1; then if type tinc >/dev/null 2>&1; then

@ -116,18 +116,18 @@ with lib;
#username xl2tpd password * #username xl2tpd password *
EOF EOF
chown root.root ppp/chap-secrets chown root:root ppp/chap-secrets
chmod 600 ppp/chap-secrets chmod 600 ppp/chap-secrets
# The documentation says this file should be present but doesn't explain why and things work even if not there: # The documentation says this file should be present but doesn't explain why and things work even if not there:
[ -f l2tp-secrets ] || (echo -n "* * "; ${pkgs.apg}/bin/apg -n 1 -m 32 -x 32 -a 1 -M LCN) > l2tp-secrets [ -f l2tp-secrets ] || (echo -n "* * "; ${pkgs.apg}/bin/apg -n 1 -m 32 -x 32 -a 1 -M LCN) > l2tp-secrets
chown root.root l2tp-secrets chown root:root l2tp-secrets
chmod 600 l2tp-secrets chmod 600 l2tp-secrets
popd > /dev/null popd > /dev/null
mkdir -p /run/xl2tpd mkdir -p /run/xl2tpd
chown root.root /run/xl2tpd chown root:root /run/xl2tpd
chmod 700 /run/xl2tpd chmod 700 /run/xl2tpd
''; '';

@ -294,7 +294,7 @@ in
ln -sf "${cfg.dataDir}/client/img" "${runDir}/client/img" ln -sf "${cfg.dataDir}/client/img" "${runDir}/client/img"
chmod g+w "${runDir}/tmp/cache" chmod g+w "${runDir}/tmp/cache"
chown -R "${cfg.user}"."${cfg.group}" "${runDir}" chown -R "${cfg.user}":"${cfg.group}" "${runDir}"
mkdir -m 0750 -p "${cfg.dataDir}" mkdir -m 0750 -p "${cfg.dataDir}"
@ -302,9 +302,9 @@ in
mkdir -m 0750 -p "${cfg.dataDir}/client/img" mkdir -m 0750 -p "${cfg.dataDir}/client/img"
cp -r "${pkgs.restya-board}/media/"* "${cfg.dataDir}/media" cp -r "${pkgs.restya-board}/media/"* "${cfg.dataDir}/media"
cp -r "${pkgs.restya-board}/client/img/"* "${cfg.dataDir}/client/img" cp -r "${pkgs.restya-board}/client/img/"* "${cfg.dataDir}/client/img"
chown "${cfg.user}"."${cfg.group}" "${cfg.dataDir}" chown "${cfg.user}":"${cfg.group}" "${cfg.dataDir}"
chown -R "${cfg.user}"."${cfg.group}" "${cfg.dataDir}/media" chown -R "${cfg.user}":"${cfg.group}" "${cfg.dataDir}/media"
chown -R "${cfg.user}"."${cfg.group}" "${cfg.dataDir}/client/img" chown -R "${cfg.user}":"${cfg.group}" "${cfg.dataDir}/client/img"
${optionalString (cfg.database.host == null) '' ${optionalString (cfg.database.host == null) ''
if ! [ -e "${cfg.dataDir}/.db-initialized" ]; then if ! [ -e "${cfg.dataDir}/.db-initialized" ]; then

@ -779,6 +779,7 @@ let
"RouteDenyList" "RouteDenyList"
"RouteAllowList" "RouteAllowList"
"DHCPv6Client" "DHCPv6Client"
"RouteMetric"
]) ])
(assertValueOneOf "UseDNS" boolValues) (assertValueOneOf "UseDNS" boolValues)
(assertValueOneOf "UseDomains" (boolValues ++ ["route"])) (assertValueOneOf "UseDomains" (boolValues ++ ["route"]))

@ -43,12 +43,6 @@ in
} { } {
assertion = cfg.defaultGateway6 == null || cfg.defaultGateway6.interface == null; assertion = cfg.defaultGateway6 == null || cfg.defaultGateway6.interface == null;
message = "networking.defaultGateway6.interface is not supported by networkd."; message = "networking.defaultGateway6.interface is not supported by networkd.";
} {
assertion = cfg.useDHCP == false;
message = ''
networking.useDHCP is not supported by networkd.
Please use per interface configuration and set the global option to false.
'';
} ] ++ flip mapAttrsToList cfg.bridges (n: { rstp, ... }: { } ] ++ flip mapAttrsToList cfg.bridges (n: { rstp, ... }: {
assertion = !rstp; assertion = !rstp;
message = "networking.bridges.${n}.rstp is not supported by networkd."; message = "networking.bridges.${n}.rstp is not supported by networkd.";
@ -80,6 +74,42 @@ in
in mkMerge [ { in mkMerge [ {
enable = true; enable = true;
} }
(mkIf cfg.useDHCP {
networks."99-ethernet-default-dhcp" = lib.mkIf cfg.useDHCP {
# We want to match physical ethernet interfaces as commonly
# found on laptops, desktops and servers, to provide an
# "out-of-the-box" setup that works for common cases. This
# heuristic isn't perfect (it could match interfaces with
# custom names that _happen_ to start with en or eth), but
# should be good enough to make the common case easy and can
# be overridden on a case-by-case basis using
# higher-priority networks or by disabling useDHCP.
# Type=ether matches veth interfaces as well, and this is
# more likely to result in interfaces being configured to
# use DHCP when they shouldn't.
# We set RequiredForOnline to false, because it's fairly
# common for such devices to have multiple interfaces and
# only one of them to be connected (e.g. a laptop with
# ethernet and WiFi interfaces). Maybe one day networkd will
# support "any"-style RequiredForOnline...
matchConfig.Name = ["en*" "eth*"];
DHCP = "yes";
linkConfig.RequiredForOnline = lib.mkDefault false;
};
networks."99-wireless-client-dhcp" = lib.mkIf cfg.useDHCP {
# Like above, but this is much more likely to be correct.
matchConfig.WLANInterfaceType = "station";
DHCP = "yes";
linkConfig.RequiredForOnline = lib.mkDefault false;
# We also set the route metric to one more than the default
# of 1024, so that Ethernet is preferred if both are
# available.
dhcpV4Config.RouteMetric = 1025;
ipv6AcceptRAConfig.RouteMetric = 1025;
};
})
(mkMerge (forEach interfaces (i: { (mkMerge (forEach interfaces (i: {
netdevs = mkIf i.virtual ({ netdevs = mkIf i.virtual ({
"40-${i.name}" = { "40-${i.name}" = {

@ -1254,11 +1254,6 @@ in
Whether to use DHCP to obtain an IP address and other Whether to use DHCP to obtain an IP address and other
configuration for all network interfaces that are not manually configuration for all network interfaces that are not manually
configured. configured.
Using this option is highly discouraged and also incompatible with
<option>networking.useNetworkd</option>. Please use
<option>networking.interfaces.&lt;name&gt;.useDHCP</option> instead
and set this to false.
''; '';
}; };

@ -129,6 +129,9 @@ in
# Make sure we use the Guest Agent from the QEMU package for testing # Make sure we use the Guest Agent from the QEMU package for testing
# to reduce the closure size required for the tests. # to reduce the closure size required for the tests.
services.qemuGuest.package = pkgs.qemu_test.ga; services.qemuGuest.package = pkgs.qemu_test.ga;
# Squelch warning about unset system.stateVersion
system.stateVersion = lib.mkDefault lib.trivial.release;
}; };
} }

@ -20,6 +20,15 @@ with lib;
configuration from proxmox. configuration from proxmox.
''; '';
}; };
manageHostName = mkOption {
type = types.bool;
default = false;
description = ''
Whether to manage hostname through nix options
When false, the hostname is picked up from /etc/hostname
populated by proxmox.
'';
};
}; };
config = config =
@ -50,6 +59,8 @@ with lib;
useDHCP = false; useDHCP = false;
useHostResolvConf = false; useHostResolvConf = false;
useNetworkd = true; useNetworkd = true;
# pick up hostname from /etc/hostname generated by proxmox
hostName = mkIf (!cfg.manageHostName) (mkForce "");
}; };
services.openssh = { services.openssh = {

@ -30,6 +30,7 @@ let
linux_5_4_hardened linux_5_4_hardened
linux_5_10_hardened linux_5_10_hardened
linux_5_15_hardened linux_5_15_hardened
linux_5_17_hardened
linux_testing; linux_testing;
}; };

@ -139,6 +139,26 @@ let
client.wait_until_succeeds("ping -c 1 192.168.3.1") client.wait_until_succeeds("ping -c 1 192.168.3.1")
''; '';
}; };
dhcpDefault = {
name = "useDHCP-by-default";
nodes.router = router;
nodes.client = { lib, ... }: {
# Disable test driver default config
networking.interfaces = lib.mkForce {};
networking.useNetworkd = networkd;
virtualisation.vlans = [ 1 ];
};
testScript = ''
start_all()
client.wait_for_unit("multi-user.target")
client.wait_until_succeeds("ip addr show dev eth1 | grep '192.168.1'")
client.shell_interact()
client.succeed("ping -c 1 192.168.1.1")
router.succeed("ping -c 1 192.168.1.1")
router.succeed("ping -c 1 192.168.1.2")
client.succeed("ping -c 1 192.168.1.2")
'';
};
dhcpSimple = { dhcpSimple = {
name = "SimpleDHCP"; name = "SimpleDHCP";
nodes.router = router; nodes.router = router;

@ -158,7 +158,9 @@ import ./make-test-python.nix ({ pkgs, ... }:
# Waiting for pleroma to be up. # Waiting for pleroma to be up.
timeout 5m bash -c 'while [[ "$(curl -s -o /dev/null -w '%{http_code}' https://pleroma.nixos.test/api/v1/instance)" != "200" ]]; do sleep 2; done' timeout 5m bash -c 'while [[ "$(curl -s -o /dev/null -w '%{http_code}' https://pleroma.nixos.test/api/v1/instance)" != "200" ]]; do sleep 2; done'
pleroma_ctl user new jamy jamy@nixos.test --password 'jamy-password' --moderator --admin -y # Toremove the RELEASE_COOKIE bit when https://github.com/NixOS/nixpkgs/issues/166229 gets fixed.
RELEASE_COOKIE="/var/lib/pleroma/.cookie" \
pleroma_ctl user new jamy jamy@nixos.test --password 'jamy-password' --moderator --admin -y
''; '';
tls-cert = pkgs.runCommand "selfSignedCerts" { buildInputs = [ pkgs.openssl ]; } '' tls-cert = pkgs.runCommand "selfSignedCerts" { buildInputs = [ pkgs.openssl ]; } ''

@ -222,7 +222,7 @@ let
machine.execute(ru("VBoxManage controlvm ${name} poweroff")) machine.execute(ru("VBoxManage controlvm ${name} poweroff"))
machine.succeed("rm -rf ${sharePath}") machine.succeed("rm -rf ${sharePath}")
machine.succeed("mkdir -p ${sharePath}") machine.succeed("mkdir -p ${sharePath}")
machine.succeed("chown alice.users ${sharePath}") machine.succeed("chown alice:users ${sharePath}")
def create_vm_${name}(): def create_vm_${name}():

@ -1,7 +1,6 @@
{ lib { stdenv
, stdenv , lib
, fetchurl , fetchurl
, fetchpatch
, autoreconfHook , autoreconfHook
, gtk-doc , gtk-doc
, vala , vala
@ -22,22 +21,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "3.38.0"; version = "3.40.0";
pname = "gnome-latex"; pname = "gnome-latex";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0xqd49pgi82dygqnxj08i1v22b0vwwhx3zvdinhrx4jny339yam8"; sha256 = "xad/55vUDjeOooyPRaZjJ/vIzFw7W48PCcAhfufMCpA=";
}; };
patches = [
# Fix build with latest tepl.
(fetchpatch {
url = "https://gitlab.gnome.org/Archive/gnome-latex/commit/e1b01186f8a4e5d3fee4c9ccfbedd6d098517df9.patch";
sha256 = "H8cbp5hDZoXytEdKE2D/oYHNKIbEFwxQoEaC4JMfGHY=";
})
];
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config
autoreconfHook autoreconfHook

@ -16,11 +16,11 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "nano"; pname = "nano";
version = "6.2"; version = "6.3";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/nano/${pname}-${version}.tar.xz"; url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
sha256 = "K8oYBL6taq9K15H3VuR0m7Ve2GDuwQWpf7qGS8anfLM="; sha256 = "61MtpJhWcnMLUA9oXbqriFpGbQj7v3QVgyuVgF5vhoc=";
}; };
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext; nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
@ -41,9 +41,7 @@ in stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
passthru = { passthru = {
tests = { tests = { expect = callPackage ./test-with-expect.nix { }; };
expect = callPackage ./test-with-expect.nix {};
};
updateScript = writeScript "update.sh" '' updateScript = writeScript "update.sh" ''
#!${stdenv.shell} #!${stdenv.shell}

@ -24,9 +24,10 @@ stdenv.mkDerivation rec {
''; '';
meta = with lib; { meta = with lib; {
homepage = "https://github.com/ibara/oed";
description = "Portable ed editor from OpenBSD"; description = "Portable ed editor from OpenBSD";
homepage = "https://github.com/ibara/oed";
license = with licenses; [ bsd2 ]; license = with licenses; [ bsd2 ];
mainProgram = "ed";
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

@ -1,6 +1,7 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, makeWrapper, makeDesktopItem { lib, stdenv, fetchFromGitHub, pkg-config, makeWrapper
, ncurses, libtermkey, lua , copyDesktopItems, makeDesktopItem
, acl ? null, libselinux ? null , ncurses, libtermkey, lua, tre
, acl, libselinux
}: }:
let let
@ -17,12 +18,13 @@ stdenv.mkDerivation rec {
owner = "martanne"; owner = "martanne";
}; };
nativeBuildInputs = [ pkg-config makeWrapper ]; nativeBuildInputs = [ pkg-config makeWrapper copyDesktopItems ];
buildInputs = [ buildInputs = [
ncurses ncurses
libtermkey libtermkey
luaEnv luaEnv
tre
] ++ lib.optionals stdenv.isLinux [ ] ++ lib.optionals stdenv.isLinux [
acl acl
libselinux libselinux
@ -33,28 +35,27 @@ stdenv.mkDerivation rec {
''; '';
postInstall = '' postInstall = ''
mkdir -p "$out/share/applications"
cp $desktopItem/share/applications/* $out/share/applications
echo wrapping $out/bin/vis with runtime environment
wrapProgram $out/bin/vis \ wrapProgram $out/bin/vis \
--prefix LUA_CPATH ';' "${luaEnv}/lib/lua/${lua.luaversion}/?.so" \ --prefix LUA_CPATH ';' "${luaEnv}/lib/lua/${lua.luaversion}/?.so" \
--prefix LUA_PATH ';' "${luaEnv}/share/lua/${lua.luaversion}/?.lua" \ --prefix LUA_PATH ';' "${luaEnv}/share/lua/${lua.luaversion}/?.lua" \
--prefix VIS_PATH : "\$HOME/.config:$out/share/vis" --prefix VIS_PATH : "\$HOME/.config:$out/share/vis"
''; '';
desktopItem = makeDesktopItem { desktopItems = [
name = "vis"; (makeDesktopItem {
exec = "vis %U"; name = "vis";
type = "Application"; exec = "vis %U";
icon = "accessories-text-editor"; type = "Application";
comment = meta.description; icon = "accessories-text-editor";
desktopName = "vis"; comment = meta.description;
genericName = "Text editor"; desktopName = "vis";
categories = [ "Application" "Development" "IDE" ]; genericName = "Text editor";
mimeTypes = [ "text/plain" "application/octet-stream" ]; categories = [ "Application" "Development" "IDE" ];
startupNotify = false; mimeTypes = [ "text/plain" "application/octet-stream" ];
terminal = true; startupNotify = false;
}; terminal = true;
})
];
meta = with lib; { meta = with lib; {
description = "A vim like editor"; description = "A vim like editor";

@ -79,6 +79,18 @@ let
}; };
}; };
alefragnani.bookmarks = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "bookmarks";
publisher = "alefragnani";
version = "13.0.1";
sha256 = "sha256-4IZCPNk7uBqPw/FKT5ypU2QxadQzYfwbGxxT/bUnKdE=";
};
meta = {
license = lib.licenses.gpl3;
};
};
alefragnani.project-manager = buildVscodeMarketplaceExtension { alefragnani.project-manager = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "project-manager"; name = "project-manager";

@ -14,17 +14,17 @@ let
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz"; archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
sha256 = { sha256 = {
x86_64-linux = "1si0r8nww5m3yn3vzw0pk3nykfvxnlwna4pp11bsli4vqj1ym2nz"; x86_64-linux = "0ss7c0dvlgnfqi0snhx73ndzjbw24xz6pcny4v52mrd1kfhcmpvd";
x86_64-darwin = "002rkvc8fa7r9x2dsjhkwzmc1sp5mq998frrw5xd6bym0cp4j76l"; x86_64-darwin = "0ds5jv5q6k1hzrwhcgkyvx0ls9p1q7zh0fqigpxandx6ysrd7cga";
aarch64-linux = "0w9gjk2a5z8cqlg43jn2r588asymiklm1b28l54gvqp7jawlb0fd"; aarch64-linux = "12zz02hdhhw19rx9kbi3yd5x81w1vs8vxjrnqqvva8bj0jnwf4iq";
aarch64-darwin = "18h2kk6fcdz38xzyn37brbbj4nbrjgzv9xsz7c7iai8d01vh7s33"; aarch64-darwin = "07ws2dc2il7ky77j5pxaxqp5cyw0v04jnv98z1494pdmxyn8gf7q";
armv7l-linux = "16cs2ald40nh76m3fxxfd233hr687dhwbqdkvjz4s6xxwi0rhvwc"; armv7l-linux = "0khyzc69rbfz2pnbab9v3as1hdzkzxfg3mxvf6g7ax9npvsrqw92";
}.${system}; }.${system};
in in
callPackage ./generic.nix rec { callPackage ./generic.nix rec {
# 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.66.2"; version = "1.67.0";
pname = "vscode"; pname = "vscode";
executableName = "code" + lib.optionalString isInsiders "-insiders"; executableName = "code" + lib.optionalString isInsiders "-insiders";

@ -60,6 +60,7 @@ in
downloadPage = "https://github.com/VSCodium/vscodium/releases"; downloadPage = "https://github.com/VSCodium/vscodium/releases";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ synthetica turion bobby285271 ]; maintainers = with maintainers; [ synthetica turion bobby285271 ];
mainProgram = "codium";
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" "armv7l-linux" ]; platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" "armv7l-linux" ];
}; };
} }

@ -29,10 +29,11 @@ stdenv.mkDerivation rec {
''; '';
meta = with lib; { meta = with lib; {
homepage = "https://www.commanderx16.com/forum/index.php?/home/";
description = "The official emulator of CommanderX16 8-bit computer"; description = "The official emulator of CommanderX16 8-bit computer";
homepage = "https://www.commanderx16.com/forum/index.php?/home/";
license = licenses.bsd2; license = licenses.bsd2;
maintainers = with maintainers; [ AndersonTorres ]; maintainers = with maintainers; [ AndersonTorres ];
mainProgram = "x16emu";
inherit (SDL2.meta) platforms; inherit (SDL2.meta) platforms;
}; };

@ -11,11 +11,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "drawio"; pname = "drawio";
version = "17.4.2"; version = "18.0.1";
src = fetchurl { src = fetchurl {
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/drawio-x86_64-${version}.rpm"; url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/drawio-x86_64-${version}.rpm";
sha256 = "294f99d9060bc394490b20d2ddab75ed5c0166d7960850f065eb8897ef31a2e3"; sha256 = "4f3893f53e47a3937320676e02337a61c358c684d5cd0b378809b3d7deab0139";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

@ -1,6 +1,7 @@
{ lib { lib
, stdenv , stdenv
, fetchFromGitHub , fetchFromGitHub
, alsa-lib
, appstream-glib , appstream-glib
, desktop-file-utils , desktop-file-utils
, gio-sharp , gio-sharp
@ -21,19 +22,20 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "rnote"; pname = "rnote";
version = "0.4.0"; version = "0.5.0-hotfix-2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "flxzt"; owner = "flxzt";
repo = "rnote"; repo = "rnote";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-J7IW329rWFEoB+44762DAkWA8Hq4IVmXgc+QoDQaxV0="; fetchSubmodules = true;
hash = "sha256-8sv7GQopUbKv8JS1/UXRFeK++UZKk3CJBOzUMx9vZDU=";
}; };
cargoDeps = rustPlatform.fetchCargoTarball { cargoDeps = rustPlatform.fetchCargoTarball {
inherit src; inherit src;
name = "${pname}-${version}"; name = "${pname}-${version}";
hash = "sha256-elXaikB/RemMxA4OXyZNQOgP1alImQMJHng5oX2j480="; hash = "sha256-N0qsph68FAkwOpyr9QUw0bDQKn7t22Hbz9BYYOs4pCM=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -51,6 +53,7 @@ stdenv.mkDerivation rec {
]; ];
buildInputs = [ buildInputs = [
alsa-lib
gio-sharp gio-sharp
glib glib
gstreamer gstreamer

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "charm"; pname = "charm";
version = "0.12.0"; version = "0.12.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "charmbracelet"; owner = "charmbracelet";
repo = "charm"; repo = "charm";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-XXKzK5MXJsB3LE7iE5BqnLm0hPs7WbyHR0x9aTldrj4="; sha256 = "sha256-vNy2ai1s7TKCymYznvT0Wo6lg9qEyDzz8l3SYzScz8g=";
}; };
vendorSha256 = "sha256-6PGdM7aa1BGNZc3M35PJpmrlPUqkykxfTELdgeKcJD4="; vendorSha256 = "sha256-6PGdM7aa1BGNZc3M35PJpmrlPUqkykxfTELdgeKcJD4=";
@ -18,6 +18,7 @@ buildGoModule rec {
meta = with lib; { meta = with lib; {
description = "Manage your charm account on the CLI"; description = "Manage your charm account on the CLI";
homepage = "https://github.com/charmbracelet/charm"; homepage = "https://github.com/charmbracelet/charm";
changelog = "https://github.com/charmbracelet/charm/releases/tag/v${version}";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ penguwin ]; maintainers = with maintainers; [ penguwin ];
}; };

@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
description = "Small weblog engine written in Bash for the command line"; description = "Small weblog engine written in Bash for the command line";
homepage = "http://nanoblogger.sourceforge.net/"; homepage = "http://nanoblogger.sourceforge.net/";
license = lib.licenses.gpl2; license = lib.licenses.gpl2;
mainProgram = "nb";
platforms = lib.platforms.unix; platforms = lib.platforms.unix;
}; };
} }

@ -38,7 +38,8 @@ stdenvNoCC.mkDerivation rec {
description = "Search-as-you-type cli frontend for the buku bookmarks manager using peco"; description = "Search-as-you-type cli frontend for the buku bookmarks manager using peco";
homepage = "https://github.com/AndreiUlmeyda/oil"; homepage = "https://github.com/AndreiUlmeyda/oil";
license = licenses.gpl3Only; license = licenses.gpl3Only;
platforms = platforms.unix;
maintainers = with maintainers; [ atila ]; maintainers = with maintainers; [ atila ];
mainProgram = "oil";
platforms = platforms.unix;
}; };
} }

@ -0,0 +1,19 @@
{ lib, fetchurl, appimageTools }:
appimageTools.wrapType2 rec {
pname = "remnote";
version = "1.7.6";
src = fetchurl {
url = "https://download.remnote.io/RemNote-${version}.AppImage";
sha256 = "sha256-yRUpLev/Fr3mOamkFgevArv2UoXgV4e6zlyv7FaQ4RM=";
};
meta = with lib; {
description = "A note-taking application focused on learning and productivity";
homepage = "https://remnote.com/";
maintainers = with maintainers; [ max-niederman ];
license = licenses.unfree;
platforms = platforms.linux;
};
}

@ -37,6 +37,7 @@ stdenv.mkDerivation rec {
homepage = "https://taskwarrior.org"; homepage = "https://taskwarrior.org";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ marcweber oxalica ]; maintainers = with maintainers; [ marcweber oxalica ];
mainProgram = "task";
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

@ -33,6 +33,7 @@ stdenv.mkDerivation rec {
description = "Command-line translator using Google Translate, Bing Translator, Yandex.Translate, and Apertium"; description = "Command-line translator using Google Translate, Bing Translator, Yandex.Translate, and Apertium";
license = licenses.unlicense; license = licenses.unlicense;
maintainers = with maintainers; [ ebzzry infinisil ]; maintainers = with maintainers; [ ebzzry infinisil ];
mainProgram = "trans";
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

@ -24,6 +24,7 @@ stdenv.mkDerivation rec {
description = "MPRIS proxy for usage with 'Web Media Controller' web extension"; description = "MPRIS proxy for usage with 'Web Media Controller' web extension";
license = licenses.unlicense; license = licenses.unlicense;
maintainers = with maintainers; [ doronbehar ]; maintainers = with maintainers; [ doronbehar ];
mainProgram = "web-media-controller";
platforms = platforms.all; platforms = platforms.all;
}; };
} }

@ -1,8 +1,8 @@
{ {
"stable": { "stable": {
"version": "101.0.4951.41", "version": "101.0.4951.54",
"sha256": "0dzsbr309n70jg7fpq2qfnrgcm4553akvdmnzhss1fc85s467609", "sha256": "1d808a7mvg0nd0mm20c1ny5kdvb2xvrs8vz4nnk456ix8pywcv62",
"sha256bin64": "12nzzsp4040mwc7jah5w0p58ckv8s16wv6ylf6vlmfby06a4xlkq", "sha256bin64": "1m6s6xf2wvz535w6jskk3pnibvsjpzmbxvd9rlxmqr08y219gp5y",
"deps": { "deps": {
"gn": { "gn": {
"version": "2022-03-14", "version": "2022-03-14",
@ -12,10 +12,10 @@
} }
}, },
"chromedriver": { "chromedriver": {
"version": "101.0.4951.15", "version": "101.0.4951.41",
"sha256_linux": "1i8ay83gh1q6nd0v14qv7gjar9h4fccb50a8b6fg671pg0l6vn24", "sha256_linux": "0zsh6cm7h1m0k5mx1cd29knxjxaadjjcbp7m5fr2mx9c21a1nlcr",
"sha256_darwin": "0ldxy1dxb99xps0h1d1264njc55q4bd000bdnaaks9kyx2djn54b", "sha256_darwin": "09py50436y81lw2vk44256dmzsg8dqj14fd0g0gs1cc3ps6q4awl",
"sha256_darwin_aarch64": "14awsldpqz2y187jwbcli8v7f1r6gsybk8yx8jqg26y8iyg3lrx9" "sha256_darwin_aarch64": "0krjijd0zgwg8d44miz43xrjdlvfiymbrrz5r1hzpx64555ch12y"
} }
}, },
"beta": { "beta": {

@ -39,5 +39,6 @@ buildGoModule rec {
changelog = "https://github.com/cloudfoundry/bosh-cli/releases/tag/v${version}"; changelog = "https://github.com/cloudfoundry/bosh-cli/releases/tag/v${version}";
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ ris ]; maintainers = with maintainers; [ ris ];
mainProgram = "bosh";
}; };
} }

@ -66,5 +66,6 @@ in buildGoModule rec {
homepage = "https://fluxcd.io"; homepage = "https://fluxcd.io";
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ bryanasdev000 jlesquembre superherointj ]; maintainers = with maintainers; [ bryanasdev000 jlesquembre superherointj ];
mainProgram = "flux";
}; };
} }

@ -27,5 +27,6 @@ buildGoModule rec {
changelog = "https://github.com/knight42/krelay/releases/tag/v${version}"; changelog = "https://github.com/knight42/krelay/releases/tag/v${version}";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ ivankovnatsky ]; maintainers = with maintainers; [ ivankovnatsky ];
mainProgram = "kubectl-relay";
}; };
} }

@ -60,9 +60,10 @@ buildGoModule rec {
meta = with lib; { meta = with lib; {
description = "Build, deploy, and manage your applications with Docker and Kubernetes"; description = "Build, deploy, and manage your applications with Docker and Kubernetes";
license = licenses.asl20;
homepage = "http://www.openshift.org"; homepage = "http://www.openshift.org";
license = licenses.asl20;
maintainers = with maintainers; [ offline bachp moretea stehessel ]; maintainers = with maintainers; [ offline bachp moretea stehessel ];
mainProgram = "oc";
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

@ -63,11 +63,10 @@ let
kalbasit kalbasit
marsam marsam
maxeaubrey maxeaubrey
techknowlogick
timstott timstott
zimbatm
zowoq zowoq
techknowlogick ] ++ teams.numtide.members;
];
}; };
} // attrs'); } // attrs');

@ -1,21 +1,22 @@
{ stdenv, lib, fetchurl, dpkg, autoPatchelfHook, makeWrapper { stdenv, lib, fetchurl, dpkg, autoPatchelfHook, makeWrapper, wrapGAppsHook
, alsa-lib, dbus, fontconfig, freetype, glib, gst_all_1, libGL , alsa-lib, dbus, fontconfig, freetype, glib, gst_all_1, libGL
, libinput, libpulseaudio, libsecret, libtiff, libxkbcommon , libinput, libpulseaudio, libsecret, libtiff, libxkbcommon
, mesa, openssl, systemd, xorg }: , mesa, openssl, systemd, xorg }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "alfaview"; pname = "alfaview";
version = "8.42.0"; version = "8.43.0";
src = fetchurl { src = fetchurl {
url = "https://production-alfaview-assets.alfaview.com/stable/linux/${pname}_${version}.deb"; url = "https://production-alfaview-assets.alfaview.com/stable/linux/${pname}_${version}.deb";
sha256 = "sha256-O440sk6OJUsO+5TuzLxkUELnCfxKd5byoxSD+Rs4h1c="; sha256 = "sha256-Rm1U3gxrToNCigL5AomftSUED7X3i7a6enmFnEzWV4c=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
dpkg dpkg
makeWrapper makeWrapper
autoPatchelfHook autoPatchelfHook
wrapGAppsHook
]; ];
buildInputs = [ buildInputs = [
@ -25,6 +26,7 @@ stdenv.mkDerivation rec {
freetype freetype
glib glib
gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-base gst_all_1.gst-plugins-base
libGL libGL
libinput libinput
@ -72,7 +74,7 @@ stdenv.mkDerivation rec {
description = "Video-conferencing application, specialized in virtual online meetings, seminars, training sessions and conferences"; description = "Video-conferencing application, specialized in virtual online meetings, seminars, training sessions and conferences";
homepage = "https://alfaview.com"; homepage = "https://alfaview.com";
license = licenses.unfree; license = licenses.unfree;
maintainers = with maintainers; [ wolfangaukang ]; maintainers = with maintainers; [ wolfangaukang hexchen ];
platforms = [ "x86_64-linux" ]; platforms = [ "x86_64-linux" ];
}; };
} }

@ -1,51 +1,18 @@
{ bcg729 { bctoolbox
, bctoolbox
, bcunit
, belcard , belcard
, belle-sip , belle-sip
, belr , belr
, bzrtp
, cairo
, cmake , cmake
, cyrus_sasl
, fetchFromGitLab , fetchFromGitLab
, fetchurl
, ffmpeg
, gdk-pixbuf
, glib
, graphviz
, gtk2
, intltool
, lib , lib
, libexosip
, liblinphone , liblinphone
, libmatroska
, libnotify
, libosip
, libsoup
, libupnp
, libX11
, libxml2
, makeWrapper
, mbedtls
, mediastreamer , mediastreamer
, mediastreamer-openh264 , mediastreamer-openh264
, minizip2 , minizip2
, mkDerivation , mkDerivation
, openldap
, ortp
, pango
, pkg-config
, qtbase
, qtgraphicaleffects , qtgraphicaleffects
, qtquickcontrols2 , qtquickcontrols2
, qttranslations , qttranslations
, readline
, speex
, sqlite
, udev
, zlib
}: }:
# How to update Linphone? (The Qt desktop app) # How to update Linphone? (The Qt desktop app)
@ -95,57 +62,22 @@ mkDerivation rec {
# linphone-desktop. # linphone-desktop.
buildInputs = [ buildInputs = [
# Made by BC # Made by BC
bcg729
bctoolbox bctoolbox
belcard belcard
belle-sip belle-sip
belr belr
bzrtp
liblinphone liblinphone
mediastreamer mediastreamer
mediastreamer-openh264 mediastreamer-openh264
ortp
# Vendored by BC but we use upstream, might cause problems
libmatroska
cairo
cyrus_sasl
ffmpeg
gdk-pixbuf
glib
gtk2
libX11
libexosip
libnotify
libosip
libsoup
libupnp
libxml2
mbedtls
minizip2 minizip2
openldap
pango
qtbase
qtgraphicaleffects qtgraphicaleffects
qtquickcontrols2 qtquickcontrols2
qttranslations qttranslations
readline
speex
sqlite
udev
zlib
]; ];
nativeBuildInputs = [ nativeBuildInputs = [
# Made by BC
bcunit
cmake cmake
graphviz
intltool
makeWrapper
pkg-config
]; ];
cmakeFlags = [ cmakeFlags = [

@ -24,7 +24,7 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "signal-desktop"; pname = "signal-desktop";
version = "5.39.0"; # Please backport all updates to the stable channel. version = "5.42.0"; # Please backport all updates to the stable channel.
# All releases have a limited lifetime and "expire" 90 days after the release. # All releases have a limited lifetime and "expire" 90 days after the release.
# When releases "expire" the application becomes unusable until an update is # When releases "expire" the application becomes unusable until an update is
# applied. The expiration date for the current release can be extracted with: # applied. The expiration date for the current release can be extracted with:
@ -34,7 +34,7 @@ in stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
sha256 = "sha256-Dy5orMKZvvnHZu/2U5YIJdDR4eDM3SBjXVGHuBv0kgc="; sha256 = "sha256-xjSj7eKaDV8WB0SiPb4orxKK8mV2a2EWiMBK7BE8mgU=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "signalbackup-tools"; pname = "signalbackup-tools";
version = "20220425"; version = "20220430";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bepaald"; owner = "bepaald";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-FWW4rVaoShT55ZWN/siFHoTTNcarnfTa2h/J2GWxLW8="; sha256 = "sha256-clG0B7PgtlpsSnZgglkv7y7SOtMTBvwJMnvMrcTWXdI=";
}; };
# Remove when Apple SDK is >= 10.13 # Remove when Apple SDK is >= 10.13

@ -3,12 +3,12 @@ electron, libsecret }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "tutanota-desktop"; pname = "tutanota-desktop";
version = "3.91.10"; version = "3.95.4";
src = fetchurl { src = fetchurl {
url = "https://github.com/tutao/tutanota/releases/download/tutanota-release-${version}/${pname}-${version}-unpacked-linux.tar.gz"; url = "https://github.com/tutao/tutanota/releases/download/tutanota-desktop-release-${version}/${pname}-${version}-unpacked-linux.tar.gz";
name = "tutanota-desktop-${version}.tar.gz"; name = "tutanota-desktop-${version}.tar.gz";
sha256 = "sha256-RlEgpXco0lkkjlJ8FZz4MxYznKLPl1Lxkb5MSmhOTzI="; sha256 = "0kkkp0nw4fby4663w7g0k2y1sg89pm336slzii1s3n70h8cak3dx";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

@ -1,4 +1,4 @@
{ pkgs, nodejs-16_x, stdenv, lib }: { pkgs, nodejs-16_x, stdenv, lib, nixosTests }:
let let
nodePackages = import ./node-composition.nix { nodePackages = import ./node-composition.nix {
@ -18,7 +18,10 @@ nodePackages.n8n.override {
ln -s $out/lib/node_modules/n8n/bin/n8n $out/bin/n8n ln -s $out/lib/node_modules/n8n/bin/n8n $out/bin/n8n
''; '';
passthru.updateScript = ./generate-dependencies.sh; passthru = {
updateScript = ./generate-dependencies.sh;
tests = nixosTests.n8n;
};
meta = with lib; { meta = with lib; {
description = "Free and open fair-code licensed node based Workflow Automation Tool"; description = "Free and open fair-code licensed node based Workflow Automation Tool";

@ -6,6 +6,7 @@
, inotify-tools , inotify-tools
, installShellFiles , installShellFiles
, libcloudproviders , libcloudproviders
, librsvg
, libsecret , libsecret
, openssl , openssl
, pcre , pcre
@ -20,7 +21,6 @@
, plasma5Packages , plasma5Packages
, sphinx , sphinx
, sqlite , sqlite
, inkscape
, xdg-utils , xdg-utils
}: }:
@ -50,18 +50,15 @@ mkDerivation rec {
done done
''; '';
# required to not include inkscape in the wrapper
strictDeps = true;
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config
cmake cmake
inkscape extra-cmake-modules
librsvg
sphinx sphinx
]; ];
buildInputs = [ buildInputs = [
extra-cmake-modules
inotify-tools inotify-tools
libcloudproviders libcloudproviders
libsecret libsecret

@ -1,30 +1,38 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, makeDesktopItem, unzip, fpc, lazarus, { lib, stdenv, fetchFromGitHub, pkg-config, makeDesktopItem, fetchpatch, unzip
libX11, glib, gtk2, gdk-pixbuf, pango, atk, cairo, openssl }: , fpc, lazarus, libX11, glib, gtk2, gdk-pixbuf, pango, atk, cairo, openssl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "transgui"; pname = "transgui";
version = "5.18.0"; version = "unstable-2022-02-02";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "transmission-remote-gui"; owner = "transmission-remote-gui";
repo = "transgui"; repo = "transgui";
rev = "v${version}"; rev = "0e2c2a07c1b21b1704c0a4945a111a8aa1050a1a";
sha256 = "1dyx778756zhvz5sxgdvy49p2c0x44w4nmcfd90wqrmgfknncnf5"; sha256 = "1x9wzii3q9zanpik4xc99jqsfrqch8vjmlx12jrvczxcfy51b1ba";
}; };
patches = [
# TDDO: remove when transgui updates for transmission-daemon v3 rpc protocol
(fetchpatch {
url = "https://github.com/transmission-remote-gui/transgui/commit/9275c3fb877dd753a1940d1b900630cdc09a0cc2.patch";
sha256 = "0w2x7gcxp5kqczdz7ckfqhdz9hhkm62k8gcws54d6km7x9vc1023";
})
];
nativeBuildInputs = [ pkg-config unzip ]; nativeBuildInputs = [ pkg-config unzip ];
buildInputs = [ buildInputs = [
fpc lazarus stdenv.cc fpc lazarus stdenv.cc libX11 glib gtk2 gdk-pixbuf
libX11 glib gtk2 gdk-pixbuf pango atk cairo openssl pango atk cairo openssl
]; ];
NIX_LDFLAGS = " NIX_LDFLAGS = ''
-L${stdenv.cc.cc.lib}/lib -L${stdenv.cc.cc.lib}/lib -lX11 -lglib-2.0 -lgtk-x11-2.0
-lX11 -lglib-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpango-1.0 -latk-1.0 -lcairo
-lgdk_pixbuf-2.0 -lpango-1.0 -latk-1.0 -lcairo -lc -lcrypto -lc -lcrypto
"; '';
prePatch = '' postPatch = ''
substituteInPlace restranslator.pas --replace /usr/ $out/ substituteInPlace restranslator.pas --replace /usr/ $out/
''; '';
@ -33,23 +41,19 @@ stdenv.mkDerivation rec {
lazbuild -B transgui.lpr --lazarusdir=${lazarus}/share/lazarus lazbuild -B transgui.lpr --lazarusdir=${lazarus}/share/lazarus
''; '';
makeFlags = [ makeFlags = [ "FPC=fpc" "PP=fpc" "INSTALL_PREFIX=$(out)" ];
"FPC=fpc"
"PP=fpc"
"INSTALL_PREFIX=$(out)"
];
LCL_PLATFORM = "gtk2"; LCL_PLATFORM = "gtk2";
desktopItem = makeDesktopItem rec { desktopItem = makeDesktopItem {
name = "transgui"; name = pname;
exec = name + " %U"; exec = "${pname} %U";
icon = name; icon = pname;
type = "Application"; type = "Application";
comment = meta.description; comment = meta.description;
desktopName = "Transmission Remote GUI"; desktopName = "Transmission Remote GUI";
genericName = "BitTorrent Client"; genericName = "BitTorrent Client";
categories = [ "Application" "Network" "FileTransfer" "P2P" "GTK" ]; categories = [ "Network" "FileTransfer" "P2P" "GTK" ];
startupNotify = true; startupNotify = true;
mimeTypes = [ "application/x-bittorrent" "x-scheme-handler/magnet" ]; mimeTypes = [ "application/x-bittorrent" "x-scheme-handler/magnet" ];
}; };
@ -64,10 +68,11 @@ stdenv.mkDerivation rec {
''; '';
meta = { meta = {
description = "A cross platform front-end for the Transmission Bit-Torrent client"; description = "A cross platform front-end for the Transmission BitTorrent client";
homepage = "https://sourceforge.net/p/transgui"; homepage = "https://sourceforge.net/p/transgui";
license = lib.licenses.gpl2Plus; license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ ramkromberg ]; maintainers = with lib.maintainers; [ ramkromberg ];
platforms = lib.platforms.linux; mainProgram = "transgui";
platforms = [ "x86_64-linux" "x86_64-darwin" ];
}; };
} }

@ -0,0 +1,51 @@
{ lib
, buildPythonApplication
, fetchFromGitHub
, pythonOlder
, requests
, docopt
, pythondialog
, jinja2
, distro
, dialog
, iptables
, openvpn }:
buildPythonApplication rec {
pname = "protonvpn-cli_2";
version = "2.2.11";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub {
owner = "Rafficer";
repo = "linux-cli-community";
# There is a tag and branch with the same name
rev = "refs/tags/v${version}";
sha256 = "sha256-CWQpisJPBXbf+d5tCGuxfSQQZBeF36WFF4b6OSUn3GY=";
};
propagatedBuildInputs = [
requests
docopt
pythondialog
jinja2
distro
dialog
openvpn
iptables
];
# No tests
doCheck = false;
meta = with lib; {
description = "Linux command-line client for ProtonVPN using Openvpn";
homepage = "https://github.com/Rafficer/linux-cli-community";
maintainers = with maintainers; [ jtcoolen jefflabonte shamilton ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
mainProgram = "protonvpn";
};
}

@ -1,37 +1,41 @@
{ lib, fetchFromGitHub, python3Packages, openvpn, dialog, iptables }: { lib
, buildPythonApplication
, pythonOlder
, fetchFromGitHub
, protonvpn-nm-lib
, pythondialog
, dialog
}:
python3Packages.buildPythonApplication rec { buildPythonApplication rec {
pname = "protonvpn-linux-cli"; pname = "protonvpn-cli";
version = "2.2.6"; version = "3.11.1";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "protonvpn"; owner = "protonvpn";
repo = "linux-cli"; repo = "linux-cli";
rev = "v${version}"; rev = version;
sha256 = "0y7v9ikrmy5dbjlpbpacp08gy838i8z54m8m4ps7ldk1j6kyia3n"; sha256 = "sha256-u+POtUz7NoGS23aOmvDCZPUp2HW1xXGtfbZR88cWCBc=";
}; };
propagatedBuildInputs = (with python3Packages; [ propagatedBuildInputs = [
requests protonvpn-nm-lib
docopt pythondialog
setuptools dialog
jinja2 ];
pythondialog
]) ++ [
dialog
openvpn
iptables
];
# No tests # Project has a dummy test
doCheck = false; doCheck = false;
meta = with lib; { meta = with lib; {
description = "Linux command-line client for ProtonVPN"; description = "Linux command-line client for ProtonVPN";
homepage = "https://github.com/protonvpn/linux-cli"; homepage = "https://github.com/protonvpn/linux-cli";
maintainers = with maintainers; [ jtcoolen jefflabonte shamilton ]; maintainers = with maintainers; [ wolfangaukang ];
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
platforms = platforms.linux; platforms = platforms.linux;
mainProgram = "protonvpn"; mainProgram = "protonvpn-cli";
}; };
} }

@ -45,6 +45,7 @@ let
changelog = "https://github.com/syncthing/syncthing/releases/tag/v${version}"; changelog = "https://github.com/syncthing/syncthing/releases/tag/v${version}";
license = licenses.mpl20; license = licenses.mpl20;
maintainers = with maintainers; [ joko peterhoeg andrew-d ]; maintainers = with maintainers; [ joko peterhoeg andrew-d ];
mainProgram = target;
platforms = platforms.unix; platforms = platforms.unix;
}; };
}; };

@ -7,31 +7,26 @@
}: }:
let let
version = "4.7.1"; version = "4.8.0";
pname = "timeular"; pname = "timeular";
name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "https://s3.amazonaws.com/timeular-desktop-packages/linux/production/Timeular-${version}.AppImage"; url = "https://s3.amazonaws.com/timeular-desktop-packages/linux/production/Timeular-${version}.AppImage";
sha256 = "sha256:0k8ywbdb41imq10ya9y27zks67a6drjb1h0hn8ycd7a6z6703rjz"; sha256 = "sha256:0y2asw3jf2n4c7y0yr669jfqw4frp5nzzv3lffimfdr78gihma66";
}; };
appimageContents = appimageTools.extractType2 { appimageContents = appimageTools.extractType2 {
inherit name src; inherit pname version src;
}; };
in appimageTools.wrapType2 rec { in appimageTools.wrapType2 rec {
inherit name src; inherit pname version src;
profile = ''
export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
'';
extraPkgs = pkgs: with pkgs; [ extraPkgs = pkgs: with pkgs; [
libsecret libsecret
]; ];
extraInstallCommands = '' extraInstallCommands = ''
mv $out/bin/{${name},${pname}} mv $out/bin/{${pname}-${version},${pname}}
install -m 444 -D ${appimageContents}/timeular.desktop $out/share/applications/timeular.desktop install -m 444 -D ${appimageContents}/timeular.desktop $out/share/applications/timeular.desktop
install -m 444 -D ${appimageContents}/timeular.png $out/share/icons/hicolor/512x512/apps/timeular.png install -m 444 -D ${appimageContents}/timeular.png $out/share/icons/hicolor/512x512/apps/timeular.png
substituteInPlace $out/share/applications/timeular.desktop \ substituteInPlace $out/share/applications/timeular.desktop \

@ -23,6 +23,7 @@ in stdenv.mkDerivation {
description = "Simple plaintext todo list manager"; description = "Simple plaintext todo list manager";
homepage = "http://todotxt.com"; homepage = "http://todotxt.com";
license = lib.licenses.gpl3; license = lib.licenses.gpl3;
mainProgram = "todo.sh";
platforms = lib.platforms.all; platforms = lib.platforms.all;
}; };
} }

@ -19,16 +19,16 @@ let
maintainers = with maintainers; [ fliegendewurst ]; maintainers = with maintainers; [ fliegendewurst ];
}; };
version = "0.50.3"; version = "0.51.2";
desktopSource = { desktopSource = {
url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz"; url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
sha256 = "sha256-0N2+NcdZGxaj4LcG5edyd3ry+0dSQSfUQRqZEYFfWqQ="; sha256 = "17bqcnpvflpi5dlz9m294diwd6as5wha5jcv9a3qvhh4pq0nyr4z";
}; };
serverSource = { serverSource = {
url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz"; url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz";
sha256 = "sha256-za32yRhusReoGIRdbfx30CPH63BVXz2Z7jkhxtb7XSo="; sha256 = "0jjvg75a4va5d81x8dvpzmzax7p0bqd7psv0alkkl13m91gai6ig";
}; };
in { in {

@ -26,7 +26,8 @@ stdenv.mkDerivation {
''; '';
homepage = "https://github.com/steve-m/kalibrate-rtl"; homepage = "https://github.com/steve-m/kalibrate-rtl";
license = licenses.bsd2; license = licenses.bsd2;
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ bjornfor viraptor ]; maintainers = with maintainers; [ bjornfor viraptor ];
mainProgram = "kal";
platforms = platforms.linux ++ platforms.darwin;
}; };
} }

@ -51,6 +51,7 @@ in stdenv.mkDerivation {
description = "Vendor and platform neutral SDR support library"; description = "Vendor and platform neutral SDR support library";
license = licenses.boost; license = licenses.boost;
maintainers = with maintainers; [ markuskowa ]; maintainers = with maintainers; [ markuskowa ];
mainProgram = "SoapySDRUtil";
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

@ -25,7 +25,8 @@ stdenv.mkDerivation rec {
description = "A tool for squential logic synthesis and formal verification"; description = "A tool for squential logic synthesis and formal verification";
homepage = "https://people.eecs.berkeley.edu/~alanmi/abc"; homepage = "https://people.eecs.berkeley.edu/~alanmi/abc";
license = licenses.mit; license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ thoughtpolice ]; maintainers = with maintainers; [ thoughtpolice ];
mainProgram = "abc";
platforms = platforms.unix;
}; };
} }

@ -115,6 +115,7 @@ in stdenv.mkDerivation rec {
''; '';
license = licenses.gpl2; license = licenses.gpl2;
maintainers = with maintainers; [ fgaz ]; maintainers = with maintainers; [ fgaz ];
mainProgram = executable-name;
platforms = platforms.all; platforms = platforms.all;
}; };
} }

@ -1,5 +1,7 @@
{ lib { lib
, buildPythonApplication , buildPythonApplication
, pytest-mock
, pytestCheckHook
, fetchFromGitHub , fetchFromGitHub
, installShellFiles , installShellFiles
, git , git
@ -21,7 +23,7 @@ buildPythonApplication rec {
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];
checkInputs = [ git ]; checkInputs = [ git pytest-mock pytestCheckHook ];
postInstall = '' postInstall = ''
installShellCompletion --bash --name git-machete completion/git-machete.completion.bash installShellCompletion --bash --name git-machete completion/git-machete.completion.bash

@ -2,17 +2,17 @@
let let
pname = "radicle-upstream"; pname = "radicle-upstream";
version = "0.2.12"; version = "0.3.0";
name = "${pname}-${version}"; name = "${pname}-${version}";
srcs = { srcs = {
x86_64-linux = fetchurl { x86_64-linux = fetchurl {
url = "https://releases.radicle.xyz/radicle-upstream-${version}.AppImage"; url = "https://releases.radicle.xyz/radicle-upstream-${version}.AppImage";
sha256 = "7520c7feb94234df6f8523689d098e0d19510e2ac0122e482d1e01086c9b02fe"; sha256 = "sha256-Y7V89G+nXRtknOukvBN8Q+sNx91YNPDT0p5hrFYe/Sk=";
}; };
x86_64-darwin = fetchurl { x86_64-darwin = fetchurl {
url = "https://releases.radicle.xyz/radicle-upstream-${version}.dmg"; url = "https://releases.radicle.xyz/radicle-upstream-${version}.dmg";
sha256 = "8bbff051f169f029044e4c4965cad88f48e939b945fd5c253f0c39665a19ce44"; sha256 = "sha256-EuWGbn6qggi8/9Rci8iaXfuVKE+QXb1BHEYDvotR/q4=";
}; };
}; };
src = srcs.${stdenv.hostPlatform.system}; src = srcs.${stdenv.hostPlatform.system};

@ -1,14 +1,14 @@
{ {
"version": "14.10.1", "version": "14.10.2",
"repo_hash": "13868wb0zr862xaxapp8nxh16gjsawklw66rlxx95bhhm3r81nrp", "repo_hash": "0f7cfc1wrzz4m5yhd6jnp3dqpdy7vbj8bf826zjsi2ss48430bk0",
"yarn_hash": "17wxqvig34namf8kvh8bwci3y0f3k2nl4zs99jcvskdad9p45rlc", "yarn_hash": "17wxqvig34namf8kvh8bwci3y0f3k2nl4zs99jcvskdad9p45rlc",
"owner": "gitlab-org", "owner": "gitlab-org",
"repo": "gitlab", "repo": "gitlab",
"rev": "v14.10.1-ee", "rev": "v14.10.2-ee",
"passthru": { "passthru": {
"GITALY_SERVER_VERSION": "14.10.1", "GITALY_SERVER_VERSION": "14.10.2",
"GITLAB_PAGES_VERSION": "1.56.1", "GITLAB_PAGES_VERSION": "1.56.1",
"GITLAB_SHELL_VERSION": "13.25.1", "GITLAB_SHELL_VERSION": "13.25.1",
"GITLAB_WORKHORSE_VERSION": "14.10.1" "GITLAB_WORKHORSE_VERSION": "14.10.2"
} }
} }

@ -11,7 +11,7 @@ let
gemdir = ./.; gemdir = ./.;
}; };
version = "14.10.1"; version = "14.10.2";
gitaly_package = "gitlab.com/gitlab-org/gitaly/v${lib.versions.major version}"; gitaly_package = "gitlab.com/gitlab-org/gitaly/v${lib.versions.major version}";
in in
@ -23,7 +23,7 @@ buildGoModule {
owner = "gitlab-org"; owner = "gitlab-org";
repo = "gitaly"; repo = "gitaly";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-4TbCfe41Nea1p0aDqGbF4SskUl5r9LRHKA16DH97jMI="; sha256 = "sha256-hLTzkW5GDq1AgTwe1pVj6Tiyd0JpJ76ATFu3Q+m9MVg=";
}; };
vendorSha256 = "sha256-ZL61t+Ii2Ns3TmitiF93exinod54+RCqrbdpU67HeY0="; vendorSha256 = "sha256-ZL61t+Ii2Ns3TmitiF93exinod54+RCqrbdpU67HeY0=";

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

@ -7,11 +7,11 @@
buildPythonApplication rec { buildPythonApplication rec {
pname = "ffmpeg-normalize"; pname = "ffmpeg-normalize";
version = "1.22.9"; version = "1.22.10";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-RBrCIDinPXbXKqrrhqVf3rV4rfi+2PttIaYxUKOk7hs="; sha256 = "sha256-F058lCuIxH0lqJlPrWIznu2Ks2w+KXrTnJD7CmYSZFU=";
}; };
propagatedBuildInputs = [ ffmpeg ffmpeg-progress-yield ]; propagatedBuildInputs = [ ffmpeg ffmpeg-progress-yield ];

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "docker-compose"; pname = "docker-compose";
version = "2.4.1"; version = "2.5.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "docker"; owner = "docker";
repo = "compose"; repo = "compose";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-6yc+7Fc22b8xN8thRrxxpjdEz19aBYCWxgkh/nra784="; sha256 = "sha256-gb2XFIzYU1dZh8WPheb4073AOLdfT7CbBD89HxobY9Y=";
}; };
vendorSha256 = "sha256-N+paN3zEXzzUFb2JPVIDZYZ0h0iu7naiw4pSVnGsuKQ="; vendorSha256 = "sha256-2pWBMXVnmKE4D7JXaKOqtuCz7nsX2a/58lyLp58OTYI=";
ldflags = [ "-X github.com/docker/compose/v2/internal.Version=${version}" "-s" "-w" ]; ldflags = [ "-X github.com/docker/compose/v2/internal.Version=${version}" "-s" "-w" ];

@ -186,7 +186,7 @@ rec {
export BUILDTIME="1970-01-01T00:00:00Z" export BUILDTIME="1970-01-01T00:00:00Z"
source ./scripts/build/.variables source ./scripts/build/.variables
export CGO_ENABLED=1 export CGO_ENABLED=1
go build -tags pkcs11 --ldflags "$LDFLAGS" github.com/docker/cli/cmd/docker go build -tags pkcs11 --ldflags "$GO_LDFLAGS" github.com/docker/cli/cmd/docker
cd - cd -
''; '';
@ -243,19 +243,19 @@ rec {
# Get revisions from # Get revisions from
# https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/* # https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/*
docker_20_10 = callPackage dockerGen rec { docker_20_10 = callPackage dockerGen rec {
version = "20.10.14"; version = "20.10.15";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-eDwgqFx4io++SMOjhxMxVzqzcOgOnv6Xe/qmmPCvZts="; sha256 = "sha256-uzwnXDomho5/Px4Ou/zP8Vedo2J9hVfcaFzM9vWh2Mo=";
moby-src = fetchFromGitHub { moby-src = fetchFromGitHub {
owner = "moby"; owner = "moby";
repo = "moby"; repo = "moby";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-I5oxpFLH789I2Sb29OXDaM4fCbQT/KvPq0DYcAVp0aI="; sha256 = "sha256-+Eds5WI+Ujz/VxkWb1ToaGLk7wROTwWwJYpiZRIxAf0";
}; };
runcRev = "v1.0.3"; runcRev = "v1.1.1";
runcSha256 = "sha256-Tl/JKbIpao+FCjngPzaVkxse50zo3XQ9Mg/AdkblMcI="; runcSha256 = "sha256-6g2km+Y45INo2MTWMFFQFhfF8DAR5Su+YrJS8k3LYBY=";
containerdRev = "v1.5.11"; containerdRev = "v1.6.4";
containerdSha256 = "sha256-YzFtv6DIjImSK0SywxhZrEeEmCnHTceAi3pfwnPubKg="; containerdSha256 = "sha256-425BcVHCliAHFQqGn6sWH/ahDX3JR6l/sYZWHpgmZW0=";
tiniRev = "v0.19.0"; tiniRev = "v0.19.0";
tiniSha256 = "sha256-ZDKu/8yE5G0RYFJdhgmCdN3obJNyRWv6K/Gd17zc1sI="; tiniSha256 = "sha256-ZDKu/8yE5G0RYFJdhgmCdN3obJNyRWv6K/Gd17zc1sI=";
}; };

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "5.0";
in
fetchzip {
name = "khmeros-${version}";
url = "mirror://debian/pool/main/f/fonts-khmeros/fonts-khmeros_${version}.orig.tar.xz";
sha256 = "sha256-pS+7RQbGwlBxdCfSVxHmARCAkZrZttwYNlV/CrxqI+w=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "KhmerOS Unicode fonts for the Khmer language";
homepage = "http://www.khmeros.info/";
license = licenses.gpl2Plus;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

@ -0,0 +1,23 @@
{ fetchzip, lib }:
let
version = "0.6";
in
fetchzip {
name = "lklug-sinhala-${version}";
url = "mirror://debian/pool/main/f/fonts-lklug-sinhala/fonts-lklug-sinhala_${version}.orig.tar.xz";
sha256 = "sha256-Fy+QnAajA4yLf/I1vOQll5pRd0ZLfLe8UXq4XMC9qNc=";
postFetch = ''
mkdir -p $out/share/fonts
tar xf $downloadedFile --strip-components=1 -C $out/share/fonts fonts-lklug-sinhala-${version}/lklug.ttf
'';
meta = with lib; {
description = "Unicode Sinhala font by Lanka Linux User Group";
homepage = "http://www.lug.lk/fonts/lklug";
license = licenses.gpl2Plus;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "20170925";
in
fetchzip {
name = "nanum-${version}";
url = "mirror://ubuntu/pool/universe/f/fonts-nanum/fonts-nanum_${version}.orig.tar.xz";
sha256 = "sha256-lSTeQEuMmlQxiQqrx9tNScifE8nMOUDJF3lCfoAFIJk=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "Nanum Korean font set";
homepage = "https://hangeul.naver.com/font";
license = licenses.ofl;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "3.003";
in
fetchzip {
name = "sil-padauk-${version}";
url = "mirror://debian/pool/main/f/fonts-sil-padauk/fonts-sil-padauk_${version}.orig.tar.xz";
sha256 = "sha256-oK+EufbvsqXunTgcWj+DiNdfpRl+VPO60Wc9KYjZv5A=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "Burmese Unicode 6 TrueType font";
homepage = "https://software.sil.org/padauk";
license = licenses.ofl;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

@ -0,0 +1,27 @@
{ fetchzip, lib }:
let
version = "00303.01";
in
fetchzip {
name = "takao-${version}";
url = "mirror://ubuntu/pool/universe/f/fonts-takao/fonts-takao_${version}.orig.tar.gz";
sha256 = "sha256-TlPq3iIv8vHlxYu5dkX/Lf6ediYKQaQ5uMbFvypQM/w=";
postFetch = ''
unpackDir="$TMPDIR/unpack"
mkdir "$unpackDir"
cd "$unpackDir"
tar xf "$downloadedFile" --strip-components=1
mkdir -p $out/share/fonts
cp *.ttf $out/share/fonts
'';
meta = with lib; {
description = "Japanese TrueType Gothic, P Gothic, Mincho, P Mincho fonts";
homepage = "https://launchpad.net/takao-fonts";
license = licenses.ipa;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

@ -0,0 +1,22 @@
{ fetchzip, lib }:
let
version = "1.901b";
in
fetchzip {
name = "tibetan-machine-${version}";
url = "mirror://debian/pool/main/f/fonts-tibetan-machine/fonts-tibetan-machine_${version}.orig.tar.bz2";
sha256 = "sha256-A+RgpFLsP4iTzl0PMRHaNzWGbDR5Qa38lRegNJ96ULo=";
postFetch = ''
mkdir -p $out/share/fonts
tar xf $downloadedFile --strip-components=1 -C $out/share/fonts ttf-tmuni-${version}/TibMachUni-${version}.ttf
'';
meta = with lib; {
description = "Tibetan Machine - an OpenType Tibetan, Dzongkha and Ladakhi font";
license = licenses.gpl2Plus;
maintainers = with lib.maintainers; [ serge ];
platforms = platforms.all;
};
}

@ -2,7 +2,6 @@
, lib , lib
, stdenv , stdenv
, substituteAll , substituteAll
, fetchpatch
, accountsservice , accountsservice
, adwaita-icon-theme , adwaita-icon-theme
, colord , colord
@ -64,11 +63,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnome-control-center"; pname = "gnome-control-center";
version = "42.0"; version = "42.1";
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-BzLvp8QXHOCg7UEGWAtM41pXsQFSwOo20jkTSRN3fto="; sha256 = "sha256-+zCv+Q++HSrVYQfW6fX4pKOq82NbvYiSDXW1aLt3Z4U=";
}; };
patches = [ patches = [
@ -79,13 +78,6 @@ stdenv.mkDerivation rec {
inherit glibc libgnomekbd tzdata; inherit glibc libgnomekbd tzdata;
inherit cups networkmanagerapplet; inherit cups networkmanagerapplet;
}) })
# Fix Online Accounts configuration on X11
# https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1272
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-control-center/-/commit/7fe322b9cedae313cd9af6f403eab9bfc6027674.patch";
sha256 = "cv1abqv0Kbfkfu7mZzEaZKXPE85yVBcQbjNHW+8ODFE=";
})
]; ];
nativeBuildInputs = [ nativeBuildInputs = [

@ -2,11 +2,12 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "cmdstan"; pname = "cmdstan";
version = "2.17.1"; version = "2.29.2";
# includes stanc binaries needed to build cmdstand
src = fetchurl { src = fetchurl {
url = "https://github.com/stan-dev/cmdstan/releases/download/v${version}/cmdstan-${version}.tar.gz"; url = "https://github.com/stan-dev/cmdstan/releases/download/v${version}/cmdstan-${version}.tar.gz";
sha256 = "1vq1cnrkvrvbfl40j6ajc60jdrjcxag1fi6kff5pqmadfdz9564j"; sha256 = "sha256-VntTH6c//fcGyqF+szROHftB6GmTyvi6QIdf+RAzUVM=";
}; };
buildFlags = [ "build" ]; buildFlags = [ "build" ];
@ -14,7 +15,16 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
checkInputs = [ python3 ]; checkInputs = [ python3 ];
checkPhase = "python ./runCmdStanTests.py src/test/interface"; # see #5368
postPatch = ''
substituteInPlace stan/lib/stan_math/make/libraries \
--replace "/usr/bin/env bash" "bash"
patchShebangs .
'';
checkPhase = ''
./runCmdStanTests.py -j$NIX_BUILD_CORES src/test/interface
'';
installPhase = '' installPhase = ''
mkdir -p $out/opt $out/bin mkdir -p $out/opt $out/bin
@ -28,6 +38,9 @@ stdenv.mkDerivation rec {
chmod a+x $out/bin/stan chmod a+x $out/bin/stan
''; '';
# Hack to ensure that patchelf --shrink-rpath get rids of a $TMPDIR reference.
preFixup = "rm -rf $(pwd)";
meta = { meta = {
description = "Command-line interface to Stan"; description = "Command-line interface to Stan";
longDescription = '' longDescription = ''

@ -87,10 +87,11 @@ in stdenv.mkDerivation rec {
''; '';
meta = with lib; { meta = with lib; {
homepage = "https://dotnet.github.io/";
description = builtins.getAttr type descriptions; description = builtins.getAttr type descriptions;
platforms = builtins.attrNames srcs; homepage = "https://dotnet.github.io/";
maintainers = with maintainers; [ kuznero ];
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ kuznero ];
mainProgram = "dotnet";
platforms = builtins.attrNames srcs;
}; };
} }

@ -64,9 +64,10 @@ stdenv.mkDerivation rec {
meta = with lib; { meta = with lib; {
description = "ML-like functional programming language aimed at program verification"; description = "ML-like functional programming language aimed at program verification";
homepage = "https://www.fstar-lang.org"; homepage = "https://www.fstar-lang.org";
license = licenses.asl20;
changelog = "https://github.com/FStarLang/FStar/raw/v${version}/CHANGES.md"; changelog = "https://github.com/FStarLang/FStar/raw/v${version}/CHANGES.md";
platforms = with platforms; darwin ++ linux; license = licenses.asl20;
maintainers = with maintainers; [ gebner pnmadelaine ]; maintainers = with maintainers; [ gebner pnmadelaine ];
mainProgram = "fstar.exe";
platforms = with platforms; darwin ++ linux;
}; };
} }

@ -222,16 +222,16 @@ index de920d714c6..665fb74bd6b 100644
+#ifdef __USING_MCFGTHREAD__ +#ifdef __USING_MCFGTHREAD__
+ +
+#include <mcfgthread/gthread.h> +#include <mcfgthread/gthread.h>
+ +namespace __cxxabiv1 {
+extern "C" int +extern "C" int
+__cxxabiv1::__cxa_thread_atexit (void (*dtor)(void *), +__cxa_thread_atexit (void (_GLIBCXX_CDTOR_CALLABI *dtor)(void *),
+ void *obj, void *dso_handle) + void *obj, void *dso_handle)
+ _GLIBCXX_NOTHROW + _GLIBCXX_NOTHROW
+{ +{
+ return ::_MCFCRT_AtThreadExit((void (*)(_MCFCRT_STD intptr_t))dtor, (_MCFCRT_STD intptr_t)obj) ? 0 : -1; + return ::_MCFCRT_AtThreadExit((void (*)(_MCFCRT_STD intptr_t))dtor, (_MCFCRT_STD intptr_t)obj) ? 0 : -1;
+ (void)dso_handle; + (void)dso_handle;
+} +}
+ +}
+#else // __USING_MCFGTHREAD__ +#else // __USING_MCFGTHREAD__
+ +
#ifdef _GLIBCXX_THREAD_ATEXIT_WIN32 #ifdef _GLIBCXX_THREAD_ATEXIT_WIN32

@ -54,19 +54,19 @@ stdenv.mkDerivation rec {
# https://github.com/intel/intel-graphics-compiler/issues/98 # https://github.com/intel/intel-graphics-compiler/issues/98
doCheck = false; doCheck = false;
patchPhase = '' postPatch = ''
substituteInPlace ./external/SPIRV-Tools/CMakeLists.txt \ substituteInPlace ./external/SPIRV-Tools/CMakeLists.txt \
--replace '$'''{SPIRV-Tools_DIR}../../..' \ --replace '$'''{SPIRV-Tools_DIR}../../..' \
'${spirv-tools}' \ '${spirv-tools}' \
--replace 'SPIRV-Headers_INCLUDE_DIR "/usr/include"' \ --replace 'SPIRV-Headers_INCLUDE_DIR "/usr/include"' \
'SPIRV-Headers_INCLUDE_DIR "${spirv-headers}/include"' \ 'SPIRV-Headers_INCLUDE_DIR "${spirv-headers}/include"' \
--replace 'set_target_properties(SPIRV-Tools' \ --replace 'set_target_properties(SPIRV-Tools' \
'set_target_properties(SPIRV-Tools-shared' \ 'set_target_properties(SPIRV-Tools-shared' \
--replace 'IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools' \ --replace 'IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools' \
'IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools-shared' 'IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools-shared'
substituteInPlace ./IGC/AdaptorOCL/igc-opencl.pc.in \ substituteInPlace ./IGC/AdaptorOCL/igc-opencl.pc.in \
--replace '/@CMAKE_INSTALL_INCLUDEDIR@' "/include" \ --replace '/@CMAKE_INSTALL_INCLUDEDIR@' "/include" \
--replace '/@CMAKE_INSTALL_LIBDIR@' "/lib" --replace '/@CMAKE_INSTALL_LIBDIR@' "/lib"
''; '';
# Handholding the braindead build script # Handholding the braindead build script
@ -84,7 +84,6 @@ stdenv.mkDerivation rec {
"-Wno-dev" "-Wno-dev"
"-DVC_INTRINSICS_SRC=${vc_intrinsics_src}" "-DVC_INTRINSICS_SRC=${vc_intrinsics_src}"
"-DIGC_OPTION__SPIRV_TOOLS_MODE=Prebuilds" "-DIGC_OPTION__SPIRV_TOOLS_MODE=Prebuilds"
"-DINSTALL_SPIRVDLL=0"
"-DCCLANG_BUILD_PREBUILDS=ON" "-DCCLANG_BUILD_PREBUILDS=ON"
"-DCCLANG_BUILD_PREBUILDS_DIR=${prebuilds}" "-DCCLANG_BUILD_PREBUILDS_DIR=${prebuilds}"
"-DIGC_PREFERRED_LLVM_VERSION=${getVersion llvm}" "-DIGC_PREFERRED_LLVM_VERSION=${getVersion llvm}"

@ -34,8 +34,9 @@ stdenv.mkDerivation rec {
meta = { meta = {
description = "A workbench for high-assurance and high-speed cryptography"; description = "A workbench for high-assurance and high-speed cryptography";
homepage = "https://github.com/jasmin-lang/jasmin/"; homepage = "https://github.com/jasmin-lang/jasmin/";
platforms = lib.platforms.all;
license = lib.licenses.mit; license = lib.licenses.mit;
maintainers = [ lib.maintainers.vbgl ]; maintainers = [ lib.maintainers.vbgl ];
mainProgram = "jasminc";
platforms = lib.platforms.all;
}; };
} }

@ -183,6 +183,14 @@ in {
install -Dt $out/bin src/nimble install -Dt $out/bin src/nimble
runHook postBuild runHook postBuild
''; '';
meta = with lib; {
description = "Package manager for the Nim programming language";
homepage = "https://github.com/nim-lang/nimble";
license = licenses.bsd3;
maintainers = with maintainers; [ ehmry ];
mainProgram = "nimble";
};
}; };
nim = let nim = let

@ -12,14 +12,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "open-watcom-v2"; pname = "open-watcom-v2";
version = "unstable-2022-05-03"; version = "unstable-2022-05-04";
name = "${pname}-unwrapped-${version}"; name = "${pname}-unwrapped-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "open-watcom"; owner = "open-watcom";
repo = "open-watcom-v2"; repo = "open-watcom-v2";
rev = "a927247a40e69261e7d8891b6f002c91450e01f2"; rev = "01662ab4eb50c0757969fa53bd4270dbbba45dc5";
sha256 = "/CuPNCEoSjxwYL07b07XqnaAeFZGS8NjXBuj+gFCsOA="; sha256 = "Nl5mcPDCr08XkVMWqkbbgTP/YjpfwMOo2GVu43FQQ3Y=";
}; };
postPatch = '' postPatch = ''

@ -19,9 +19,9 @@ stdenv.mkDerivation rec {
sha256 = "sha256-/vUyL6Wh8hykoGz1QmT1F7lfGDEmG4U3iqmqrJxizOg="; sha256 = "sha256-/vUyL6Wh8hykoGz1QmT1F7lfGDEmG4U3iqmqrJxizOg=";
}; };
nativeBuildInputs = [ pkg-config cmake llvm_11.dev ]; nativeBuildInputs = [ pkg-config cmake llvm_11.dev spirv-tools ];
buildInputs = [ spirv-headers spirv-tools llvm_11 ]; buildInputs = [ spirv-headers llvm_11 ];
checkInputs = [ lit ]; checkInputs = [ lit ];
@ -34,12 +34,6 @@ stdenv.mkDerivation rec {
"-DLLVM_SPIRV_BUILD_EXTERNAL=YES" "-DLLVM_SPIRV_BUILD_EXTERNAL=YES"
]; ];
prePatch = ''
substituteInPlace ./test/CMakeLists.txt \
--replace 'SPIRV-Tools' 'SPIRV-Tools-shared'
'';
# FIXME: CMake tries to run "/llvm-lit" which of course doesn't exist # FIXME: CMake tries to run "/llvm-lit" which of course doesn't exist
doCheck = false; doCheck = false;

@ -100,8 +100,8 @@ in rec {
}; };
vala_0_56 = generic { vala_0_56 = generic {
version = "0.56.0"; version = "0.56.1";
sha256 = "2SvRPFYwkF7rapg9y3AiBNqXMUYMKm5OOfhnmW83EEA="; sha256 = "xRi4Hf3agtHN9Yaz+bIyMWLLlr08taLANlDOoCXZH7k=";
}; };
vala = vala_0_54; vala = vala_0_54;

@ -47,6 +47,7 @@ stdenv.mkDerivation rec {
description = "Simple, fast, safe, compiled language for developing maintainable software"; description = "Simple, fast, safe, compiled language for developing maintainable software";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ Madouura ]; maintainers = with maintainers; [ Madouura ];
mainProgram = "v";
platforms = platforms.all; platforms = platforms.all;
}; };
} }

@ -11,21 +11,21 @@ let
name = "cbqn-bytecode-files"; name = "cbqn-bytecode-files";
owner = "dzaima"; owner = "dzaima";
repo = "CBQN"; repo = "CBQN";
rev = "b000b951aa8f3590b196b4c09056604c0b32a168"; rev = "c39653c898531a2cdbf4cc5c764df6e37b1894a4";
hash = "sha256-znW0xOXogP4TfifUmk3cs4aN/9mMSpSD2WJppmeI1Fg="; hash = "sha256-JCEmkwh5Rv5+NQoxvefSrYnayU892/Wam+gjMgcQmO0=";
}; };
in in
assert genBytecode -> ((bqn-path != null) && (mbqn-source != null)); assert genBytecode -> ((bqn-path != null) && (mbqn-source != null));
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "cbqn" + lib.optionalString (!genBytecode) "-standalone"; pname = "cbqn" + lib.optionalString (!genBytecode) "-standalone";
version = "0.pre+date=2021-12-13"; version = "0.pre+date=2022-05-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dzaima"; owner = "dzaima";
repo = "CBQN"; repo = "CBQN";
rev = "e7662b0f6a44add0749fba2a6d7309a5c1eb2601"; rev = "3496a939b670f8c9ca2a04927378d6b7e9abd68e";
hash = "sha256-2nfkTZBIGHX5cok6Ea3KSewakZy8Ey8nSO2Fe4xGgvg="; hash = "sha256-P+PoY4XF9oEw7VIpmybvPp+jxWHEo2zt1Lamayf1mHg=";
}; };
dontConfigure = true; dontConfigure = true;
@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
'' + (if genBytecode then '' '' + (if genBytecode then ''
${bqn-path} genRuntime ${mbqn-source} ${bqn-path} genRuntime ${mbqn-source}
'' else '' '' else ''
cp ${cbqn-bytecode-files}/src/gen/{compiler,formatter,runtime0,runtime1,src} src/gen/ cp ${cbqn-bytecode-files}/src/gen/{compiles,formatter,runtime0,runtime1,src} src/gen/
''); '');
installPhase = '' installPhase = ''
@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/dzaima/CBQN/"; homepage = "https://github.com/dzaima/CBQN/";
description = "BQN implementation in C"; description = "BQN implementation in C";
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
maintainers = with maintainers; [ AndersonTorres sternenseemann synthetica ]; maintainers = with maintainers; [ AndersonTorres sternenseemann synthetica shnarazk ];
platforms = platforms.all; platforms = platforms.all;
}; };
} }

@ -1,40 +0,0 @@
{ lib
, python3Packages
, hyDefinedPythonPackages /* Packages like with python.withPackages */
, ...
}:
python3Packages.buildPythonApplication rec {
pname = "hy";
version = "1.0a1";
src = python3Packages.fetchPypi {
inherit pname version;
sha256 = "sha256-lCrbvbkeutSNmvvn/eHpTnJwPb5aEH7hWTXYSE+AJmU=";
};
checkInputs = with python3Packages; [ flake8 pytest ];
propagatedBuildInputs = with python3Packages; [
appdirs
astor
clint
colorama
fastentrypoints
funcparserlib
rply
pygments
] ++ (hyDefinedPythonPackages python3Packages);
# Hy does not include tests in the source distribution from PyPI, so only test executable.
checkPhase = ''
$out/bin/hy --help > /dev/null
'';
meta = with lib; {
description = "A LISP dialect embedded in Python";
homepage = "https://hylang.org/";
license = licenses.mit;
maintainers = with maintainers; [ nixy mazurel ];
platforms = platforms.all;
};
}

@ -1,15 +0,0 @@
{ lib
, callPackage
, hyDefinedPythonPackages ? python-packages: [] /* Packages like with python.withPackages */
}:
let
withPackages = (
python-packages: callPackage ./builder.nix {
hyDefinedPythonPackages = python-packages;
}
);
in
(withPackages hyDefinedPythonPackages) // {
# Export withPackages function for hy customization
inherit withPackages;
}

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

Loading…
Cancel
Save