Project import generated by Copybara.

GitOrigin-RevId: 9aeeb7574fb784eaf6395f4400705b5f619e6cc3
This commit is contained in:
Default email 2021-10-17 05:12:59 +03:00
parent 6064764516
commit 77976348d2
460 changed files with 16332 additions and 8054 deletions

View file

@ -97,9 +97,9 @@
/pkgs/top-level/haskell-packages.nix @cdepillabout @sternenseemann @maralorn @expipiplus1
# Perl
/pkgs/development/interpreters/perl @volth @stigtsp
/pkgs/top-level/perl-packages.nix @volth @stigtsp
/pkgs/development/perl-modules @volth @stigtsp
/pkgs/development/interpreters/perl @volth @stigtsp @zakame
/pkgs/top-level/perl-packages.nix @volth @stigtsp @zakame
/pkgs/development/perl-modules @volth @stigtsp @zakame
# R
/pkgs/applications/science/math/R @jbedo @bcdarwin

View file

@ -2096,6 +2096,16 @@
githubId = 25088352;
name = "Christian Kögler";
};
ckie = {
email = "nixpkgs-0efe364@ckie.dev";
github = "ckiee";
githubId = 2526321;
keys = [{
longkeyid = "rsa4096/0x13E79449C0525215";
fingerprint = "539F 0655 4D35 38A5 429A E253 13E7 9449 C052 5215";
}];
name = "ckie";
};
clkamp = {
email = "c@lkamp.de";
github = "clkamp";
@ -8326,6 +8336,17 @@
githubId = 127548;
name = "Judson Lester";
};
nzbr = {
email = "nixos@nzbr.de";
github = "nzbr";
githubId = 7851175;
name = "nzbr";
matrix = "@nzbr:nzbr.de";
keys = [{
longkeyid = "rsa2048/0x6C78B50B97A42F8A";
fingerprint = "BF3A 3EE6 3144 2C5F C9FB 39A7 6C78 B50B 97A4 2F8A";
}];
};
nzhang-zh = {
email = "n.zhang.hp.au@gmail.com";
github = "nzhang-zh";
@ -8688,6 +8709,12 @@
githubId = 13225611;
name = "Nicolas Martin";
};
pennae = {
name = "pennae";
email = "github@quasiparticle.net";
github = "pennae";
githubId = 82953136;
};
p3psi = {
name = "Elliot Boo";
email = "p3psi.boo@gmail.com";
@ -9684,16 +9711,6 @@
githubId = 1312525;
name = "Rongcui Dong";
};
ronthecookie = {
name = "Ron B";
email = "me@ronthecookie.me";
github = "ronthecookie";
githubId = 2526321;
keys = [{
longkeyid = "rsa2048/0x6F5B32DE5E5FA80C";
fingerprint = "4B2C DDA5 FA35 642D 956D 7294 6F5B 32DE 5E5F A80C";
}];
};
roosemberth = {
email = "roosembert.palacios+nixpkgs@posteo.ch";
github = "roosemberth";
@ -10389,6 +10406,12 @@
fingerprint = "B234 EFD4 2B42 FE81 EE4D 7627 F72C 4A88 7F9A 24CA";
}];
};
sirseruju = {
email = "sir.seruju@yandex.ru";
github = "sirseruju";
githubId = 74881555;
name = "Fofanov Sergey";
};
sivteck = {
email = "sivaram1992@gmail.com";
github = "sivteck";

View file

@ -55,6 +55,11 @@
actions.
</para>
</listitem>
<listitem>
<para>
KDE Plasma now finally works on Wayland.
</para>
</listitem>
<listitem>
<para>
bash now defaults to major version 5.
@ -1106,6 +1111,23 @@ Superuser created successfully.
functionality.
</para>
</listitem>
<listitem>
<para>
<literal>services.xserver.displayManager.defaultSession = &quot;plasma5&quot;</literal>
does not work anymore, instead use either
<literal>&quot;plasma&quot;</literal> for the Plasma X11
session or <literal>&quot;plasmawayland&quot;</literal> for
the Plasma Wayland sesison.
</para>
</listitem>
<listitem>
<para>
<literal>boot.kernelParams</literal> now only accepts one
command line parameter per string. This change is aimed to
reduce common mistakes like <quote>param = 12</quote>, which
would be parsed as 3 parameters.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="sec-release-21.11-notable-changes">
@ -1513,6 +1535,25 @@ Superuser created successfully.
release notes</link> for changes and upgrade instructions.
</para>
</listitem>
<listitem>
<para>
The <literal>systemd.network</literal> module has gained
support for the FooOverUDP link type.
</para>
</listitem>
<listitem>
<para>
The <literal>networking</literal> module has a new
<literal>networking.fooOverUDP</literal> option to configure
Foo-over-UDP encapsulations.
</para>
</listitem>
<listitem>
<para>
<literal>networking.sits</literal> now supports Foo-over-UDP
encapsulation.
</para>
</listitem>
</itemizedlist>
</section>
</section>

View file

@ -20,6 +20,8 @@ In addition to numerous new and upgraded packages, this release has the followin
This allows activation scripts to output what they would change if the activation was really run.
The users/modules activation script supports this and outputs some of is actions.
- KDE Plasma now finally works on Wayland.
- bash now defaults to major version 5.
- Systemd was updated to version 249 (from 247).
@ -342,6 +344,9 @@ In addition to numerous new and upgraded packages, this release has the followin
configuration file. For details, see the [upstream changelog](https://github.com/DataDog/datadog-agent/blob/main/CHANGELOG.rst).
- `opencv2` no longer includes the non-free libraries by default, and consequently `pfstools` no longer includes OpenCV support by default. Both packages now support an `enableUnfree` option to re-enable this functionality.
- `services.xserver.displayManager.defaultSession = "plasma5"` does not work anymore, instead use either `"plasma"` for the Plasma X11 session or `"plasmawayland"` for the Plasma Wayland sesison.
- `boot.kernelParams` now only accepts one command line parameter per string. This change is aimed to reduce common mistakes like "param = 12", which would be parsed as 3 parameters.
## Other Notable Changes {#sec-release-21.11-notable-changes}
@ -438,3 +443,9 @@ In addition to numerous new and upgraded packages, this release has the followin
- Three new options, [xdg.mime.addedAssociations](#opt-xdg.mime.addedAssociations), [xdg.mime.defaultApplications](#opt-xdg.mime.defaultApplications), and [xdg.mime.removedAssociations](#opt-xdg.mime.removedAssociations) have been added to the [xdg.mime](#opt-xdg.mime.enable) module to allow the configuration of `/etc/xdg/mimeapps.list`.
- Kopia was upgraded from 0.8.x to 0.9.x. Please read the [upstream release notes](https://github.com/kopia/kopia/releases/tag/v0.9.0) for changes and upgrade instructions.
- The `systemd.network` module has gained support for the FooOverUDP link type.
- The `networking` module has a new `networking.fooOverUDP` option to configure Foo-over-UDP encapsulations.
- `networking.sits` now supports Foo-over-UDP encapsulation.

View file

@ -1126,9 +1126,9 @@ class Driver:
try:
yield
return True
except:
rootlog.error(f'Test "{name}" failed with error:')
raise
except Exception as e:
rootlog.error(f'Test "{name}" failed with error: "{e}"')
raise e
def test_symbols(self) -> Dict[str, Any]:
@contextmanager

View file

@ -96,9 +96,8 @@ let
};
} cfg.extraConfig;
configFile = pkgs.runCommand "config.toml" {
buildInputs = [ pkgs.remarshal ];
preferLocalBuild = true;
configFile = pkgs.runCommandLocal "config.toml" {
nativeBuildInputs = [ pkgs.remarshal ];
} ''
remarshal -if json -of toml \
< ${pkgs.writeText "config.json" (builtins.toJSON configOptions)} \

View file

@ -555,6 +555,22 @@ in
+ "\n"
) cfg.buildMachines;
};
assertions =
let badMachine = m: m.system == null && m.systems == [];
in [
{
assertion = !(builtins.any badMachine cfg.buildMachines);
message = ''
At least one system type (via <varname>system</varname> or
<varname>systems</varname>) must be set for every build machine.
Invalid machine specifications:
'' + " " +
(builtins.concatStringsSep "\n "
(builtins.map (m: m.hostName)
(builtins.filter (badMachine) cfg.buildMachines)));
}
];
systemd.packages = [ nix ];

View file

@ -86,7 +86,7 @@ in
serviceConfig = {
User = cfg.user;
Group = cfg.group;
ExecStart = "${sickbeard}/SickBeard.py --datadir ${cfg.dataDir} --config ${cfg.configFile} --port ${toString cfg.port}";
ExecStart = "${sickbeard}/bin/${sickbeard.pname} --datadir ${cfg.dataDir} --config ${cfg.configFile} --port ${toString cfg.port}";
};
};
};

View file

@ -192,7 +192,7 @@ let
serviceConfig.MemoryDenyWriteExecute = true;
serviceConfig.NoNewPrivileges = true;
serviceConfig.PrivateDevices = true;
serviceConfig.ProtectClock = true;
serviceConfig.ProtectClock = mkDefault true;
serviceConfig.ProtectControlGroups = true;
serviceConfig.ProtectHome = true;
serviceConfig.ProtectHostname = true;

View file

@ -35,6 +35,10 @@ in
${concatMapStringsSep " " (x: "--no-collector." + x) cfg.disabledCollectors} \
--web.listen-address ${cfg.listenAddress}:${toString cfg.port} ${concatStringsSep " " cfg.extraFlags}
'';
# The systemd collector needs AF_UNIX
RestrictAddressFamilies = lib.optional (lib.any (x: x == "systemd") cfg.enabledCollectors) "AF_UNIX";
# The timex collector needs to access clock APIs
ProtectClock = lib.any (x: x == "timex") cfg.disabledCollectors;
};
};
}

View file

@ -61,6 +61,11 @@ in
serviceConfig = {
# rtl-sdr udev rules make supported USB devices +rw by plugdev.
SupplementaryGroups = "plugdev";
# rtl_433 needs rw access to the USB radio.
PrivateDevices = lib.mkForce false;
DeviceAllow = lib.mkForce "char-usb_device rw";
RestrictAddressFamilies = [ "AF_NETLINK" ];
ExecStart = let
matchers = (map (m:
"--channel_matcher '${m.name},${toString m.channel},${m.location}'"

View file

@ -172,9 +172,15 @@ in
ExecStart = "${(removeSuffix "\n" cmd)} start";
ExecStop = "${(removeSuffix "\n" cmd)} stop";
Restart = "on-failure";
TimeoutSec = "5min";
User = "unifi";
UMask = "0077";
WorkingDirectory = "${stateDir}";
# the stop command exits while the main process is still running, and unifi
# wants to manage its own child processes. this means we have to set KillSignal
# to something the main process ignores, otherwise every stop will have unifi.service
# fail with SIGTERM status.
KillSignal = "SIGCONT";
# Hardening
AmbientCapabilities = "";
@ -215,5 +221,5 @@ in
};
meta.maintainers = with lib.maintainers; [ erictapen ];
meta.maintainers = with lib.maintainers; [ erictapen pennae ];
}

View file

@ -13,7 +13,6 @@ let
pulseaudio = config.hardware.pulseaudio;
pactl = "${getBin pulseaudio.package}/bin/pactl";
startplasma-x11 = "${getBin plasma5.plasma-workspace}/bin/startplasma-x11";
sed = "${getBin pkgs.gnused}/bin/sed";
gtkrc2 = writeText "gtkrc-2.0" ''
@ -136,9 +135,6 @@ let
fi
fi
''
+ ''
exec "${startplasma-x11}"
'';
in
@ -172,6 +168,12 @@ in
disabled by default.
'';
};
useQtScaling = mkOption {
type = types.bool;
default = false;
description = "Enable HiDPI scaling in Qt.";
};
};
};
@ -183,6 +185,7 @@ in
config = mkMerge [
(mkIf cfg.enable {
# Seed our configuration into nixos-generate-config
system.nixos-generate-config.desktopConfiguration = [''
# Enable the Plasma 5 Desktop Environment.
@ -190,11 +193,7 @@ in
services.xserver.desktopManager.plasma5.enable = true;
''];
services.xserver.desktopManager.session = singleton {
name = "plasma5";
bgSupport = true;
start = startplasma;
};
services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-workspace ];
security.wrappers = {
kcheckpass =
@ -347,6 +346,8 @@ in
environment.etc."X11/xkb".source = xcfg.xkbDir;
environment.sessionVariables.PLASMA_USE_QT_SCALING = mkIf cfg.useQtScaling "1";
# Enable GTK applications to load SVG icons
services.xserver.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];
@ -389,6 +390,7 @@ in
# Update the start menu for each user that is currently logged in
system.userActivationScripts.plasmaSetup = activationScript;
services.xserver.displayManager.setupCommands = startplasma;
nixpkgs.config.firefox.enablePlasmaBrowserIntegration = true;
})

View file

@ -26,7 +26,6 @@ let
load-module module-udev-detect
load-module module-native-protocol-unix
load-module module-default-device-restore
load-module module-rescue-streams
load-module module-always-sink
load-module module-intended-roles
load-module module-suspend-on-idle

View file

@ -83,7 +83,10 @@ in
};
boot.kernelParams = mkOption {
type = types.listOf types.str;
type = types.listOf (types.strMatching ''([^"[:space:]]|"[^"]*")+'' // {
name = "kernelParam";
description = "string, with spaces inside double quotes";
});
default = [ ];
description = "Parameters added to the kernel command line.";
};

View file

@ -250,6 +250,16 @@ let
(assertRange "ERSPANIndex" 1 1048575)
];
sectionFooOverUDP = checkUnitConfig "FooOverUDP" [
(assertOnlyFields [
"Port"
"Encapsulation"
"Protocol"
])
(assertPort "Port")
(assertValueOneOf "Encapsulation" ["FooOverUDP" "GenericUDPEncapsulation"])
];
sectionPeer = checkUnitConfig "Peer" [
(assertOnlyFields [
"Name"
@ -919,6 +929,18 @@ let
'';
};
fooOverUDPConfig = mkOption {
default = { };
example = { Port = 9001; };
type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionFooOverUDP;
description = ''
Each attribute in this set specifies an option in the
<literal>[FooOverUDP]</literal> section of the unit. See
<citerefentry><refentrytitle>systemd.netdev</refentrytitle>
<manvolnum>5</manvolnum></citerefentry> for details.
'';
};
peerConfig = mkOption {
default = {};
example = { Name = "veth2"; };
@ -1449,6 +1471,10 @@ let
[Tunnel]
${attrsToSection def.tunnelConfig}
''
+ optionalString (def.fooOverUDPConfig != { }) ''
[FooOverUDP]
${attrsToSection def.fooOverUDPConfig}
''
+ optionalString (def.peerConfig != { }) ''
[Peer]
${attrsToSection def.peerConfig}

View file

@ -466,6 +466,39 @@ let
'';
});
createFouEncapsulation = n: v: nameValuePair "${n}-fou-encap"
(let
# if we have a device to bind to we can wait for its addresses to be
# configured, otherwise external sequencing is required.
deps = optionals (v.local != null && v.local.dev != null)
(deviceDependency v.local.dev ++ [ "network-addresses-${v.local.dev}.service" ]);
fouSpec = "port ${toString v.port} ${
if v.protocol != null then "ipproto ${toString v.protocol}" else "gue"
} ${
optionalString (v.local != null) "local ${escapeShellArg v.local.address} ${
optionalString (v.local.dev != null) "dev ${escapeShellArg v.local.dev}"
}"
}";
in
{ description = "FOU endpoint ${n}";
wantedBy = [ "network-setup.service" (subsystemDevice n) ];
bindsTo = deps;
partOf = [ "network-setup.service" ];
after = [ "network-pre.target" ] ++ deps;
before = [ "network-setup.service" ];
serviceConfig.Type = "oneshot";
serviceConfig.RemainAfterExit = true;
path = [ pkgs.iproute2 ];
script = ''
# always remove previous incarnation since show can't filter
ip fou del ${fouSpec} >/dev/null 2>&1 || true
ip fou add ${fouSpec}
'';
postStop = ''
ip fou del ${fouSpec} || true
'';
});
createSitDevice = n: v: nameValuePair "${n}-netdev"
(let
deps = deviceDependency v.dev;
@ -486,7 +519,12 @@ let
${optionalString (v.remote != null) "remote \"${v.remote}\""} \
${optionalString (v.local != null) "local \"${v.local}\""} \
${optionalString (v.ttl != null) "ttl ${toString v.ttl}"} \
${optionalString (v.dev != null) "dev \"${v.dev}\""}
${optionalString (v.dev != null) "dev \"${v.dev}\""} \
${optionalString (v.encapsulation != null)
"encap ${v.encapsulation.type} encap-dport ${toString v.encapsulation.port} ${
optionalString (v.encapsulation.sourcePort != null)
"encap-sport ${toString v.encapsulation.sourcePort}"
}"}
ip link set "${n}" up
'';
postStop = ''
@ -530,6 +568,7 @@ let
// mapAttrs' createVswitchDevice cfg.vswitches
// mapAttrs' createBondDevice cfg.bonds
// mapAttrs' createMacvlanDevice cfg.macvlans
// mapAttrs' createFouEncapsulation cfg.fooOverUDP
// mapAttrs' createSitDevice cfg.sits
// mapAttrs' createVlanDevice cfg.vlans
// {

View file

@ -47,6 +47,9 @@ in
} ] ++ flip mapAttrsToList cfg.bridges (n: { rstp, ... }: {
assertion = !rstp;
message = "networking.bridges.${n}.rstp is not supported by networkd.";
}) ++ flip mapAttrsToList cfg.fooOverUDP (n: { local, ... }: {
assertion = local == null;
message = "networking.fooOverUDP.${n}.local is not supported by networkd.";
});
networking.dhcpcd.enable = mkDefault false;
@ -194,6 +197,23 @@ in
macvlan = [ name ];
} ]);
})))
(mkMerge (flip mapAttrsToList cfg.fooOverUDP (name: fou: {
netdevs."40-${name}" = {
netdevConfig = {
Name = name;
Kind = "fou";
};
# unfortunately networkd cannot encode dependencies of netdevs on addresses/routes,
# so we cannot specify Local=, Peer=, PeerPort=. this looks like a missing feature
# in networkd.
fooOverUDPConfig = {
Port = fou.port;
Encapsulation = if fou.protocol != null then "FooOverUDP" else "GenericUDPEncapsulation";
} // (optionalAttrs (fou.protocol != null) {
Protocol = fou.protocol;
});
};
})))
(mkMerge (flip mapAttrsToList cfg.sits (name: sit: {
netdevs."40-${name}" = {
netdevConfig = {
@ -207,7 +227,17 @@ in
Local = sit.local;
}) // (optionalAttrs (sit.ttl != null) {
TTL = sit.ttl;
});
}) // (optionalAttrs (sit.encapsulation != null) (
{
FooOverUDP = true;
Encapsulation =
if sit.encapsulation.type == "fou"
then "FooOverUDP"
else "GenericUDPEncapsulation";
FOUDestinationPort = sit.encapsulation.port;
} // (optionalAttrs (sit.encapsulation.sourcePort != null) {
FOUSourcePort = sit.encapsulation.sourcePort;
})));
};
networks = mkIf (sit.dev != null) {
"40-${sit.dev}" = (mkMerge [ (genericNetwork (mkOverride 999)) {

View file

@ -10,6 +10,8 @@ let
hasVirtuals = any (i: i.virtual) interfaces;
hasSits = cfg.sits != { };
hasBonds = cfg.bonds != { };
hasFous = cfg.fooOverUDP != { }
|| filterAttrs (_: s: s.encapsulation != null) cfg.sits != { };
slaves = concatMap (i: i.interfaces) (attrValues cfg.bonds)
++ concatMap (i: i.interfaces) (attrValues cfg.bridges)
@ -823,6 +825,71 @@ in
});
};
networking.fooOverUDP = mkOption {
default = { };
example =
{
primary = { port = 9001; local = { address = "192.0.2.1"; dev = "eth0"; }; };
backup = { port = 9002; };
};
description = ''
This option allows you to configure Foo Over UDP and Generic UDP Encapsulation
endpoints. See <citerefentry><refentrytitle>ip-fou</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> for details.
'';
type = with types; attrsOf (submodule {
options = {
port = mkOption {
type = port;
description = ''
Local port of the encapsulation UDP socket.
'';
};
protocol = mkOption {
type = nullOr (ints.between 1 255);
default = null;
description = ''
Protocol number of the encapsulated packets. Specifying <literal>null</literal>
(the default) creates a GUE endpoint, specifying a protocol number will create
a FOU endpoint.
'';
};
local = mkOption {
type = nullOr (submodule {
options = {
address = mkOption {
type = types.str;
description = ''
Local address to bind to. The address must be available when the FOU
endpoint is created, using the scripted network setup this can be achieved
either by setting <literal>dev</literal> or adding dependency information to
<literal>systemd.services.&lt;name&gt;-fou-encap</literal>; it isn't supported
when using networkd.
'';
};
dev = mkOption {
type = nullOr str;
default = null;
example = "eth0";
description = ''
Network device to bind to.
'';
};
};
});
default = null;
example = { address = "203.0.113.22"; };
description = ''
Local address (and optionally device) to bind to using the given port.
'';
};
};
});
};
networking.sits = mkOption {
default = { };
example = literalExpression ''
@ -882,6 +949,44 @@ in
'';
};
encapsulation = with types; mkOption {
type = nullOr (submodule {
options = {
type = mkOption {
type = enum [ "fou" "gue" ];
description = ''
Selects encapsulation type. See
<citerefentry><refentrytitle>ip-link</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> for details.
'';
};
port = mkOption {
type = port;
example = 9001;
description = ''
Destination port for encapsulated packets.
'';
};
sourcePort = mkOption {
type = nullOr types.port;
default = null;
example = 9002;
description = ''
Source port for encapsulated packets. Will be chosen automatically by
the kernel if unset.
'';
};
};
});
default = null;
example = { type = "fou"; port = 9001; };
description = ''
Configures encapsulation in UDP packets.
'';
};
};
});
@ -1116,7 +1221,8 @@ in
boot.kernelModules = [ ]
++ optional hasVirtuals "tun"
++ optional hasSits "sit"
++ optional hasBonds "bonding";
++ optional hasBonds "bonding"
++ optional hasFous "fou";
boot.extraModprobeConfig =
# This setting is intentional as it prevents default bond devices

View file

@ -380,12 +380,57 @@ let
router.wait_until_succeeds("ping -c 1 192.168.1.3")
'';
};
fou = {
name = "foo-over-udp";
nodes.machine = { ... }: {
virtualisation.vlans = [ 1 ];
networking = {
useNetworkd = networkd;
useDHCP = false;
interfaces.eth1.ipv4.addresses = mkOverride 0
[ { address = "192.168.1.1"; prefixLength = 24; } ];
fooOverUDP = {
fou1 = { port = 9001; };
fou2 = { port = 9002; protocol = 41; };
fou3 = mkIf (!networkd)
{ port = 9003; local.address = "192.168.1.1"; };
fou4 = mkIf (!networkd)
{ port = 9004; local = { address = "192.168.1.1"; dev = "eth1"; }; };
};
};
systemd.services = {
fou3-fou-encap.after = optional (!networkd) "network-addresses-eth1.service";
};
};
testScript = { ... }:
''
import json
machine.wait_for_unit("network.target")
fous = json.loads(machine.succeed("ip -json fou show"))
assert {"port": 9001, "gue": None, "family": "inet"} in fous, "fou1 exists"
assert {"port": 9002, "ipproto": 41, "family": "inet"} in fous, "fou2 exists"
'' + optionalString (!networkd) ''
assert {
"port": 9003,
"gue": None,
"family": "inet",
"local": "192.168.1.1",
} in fous, "fou3 exists"
assert {
"port": 9004,
"gue": None,
"family": "inet",
"local": "192.168.1.1",
"dev": "eth1",
} in fous, "fou4 exists"
'';
};
sit = let
node = { address4, remote, address6 }: { pkgs, ... }: with pkgs.lib; {
virtualisation.vlans = [ 1 ];
networking = {
useNetworkd = networkd;
firewall.enable = false;
useDHCP = false;
sits.sit = {
inherit remote;
@ -400,8 +445,30 @@ let
};
in {
name = "Sit";
nodes.client1 = node { address4 = "192.168.1.1"; remote = "192.168.1.2"; address6 = "fc00::1"; };
nodes.client2 = node { address4 = "192.168.1.2"; remote = "192.168.1.1"; address6 = "fc00::2"; };
# note on firewalling: the two nodes are explicitly asymmetric.
# client1 sends SIT packets in UDP, but accepts only proto-41 incoming.
# client2 does the reverse, sending in proto-41 and accepting only UDP incoming.
# that way we'll notice when either SIT itself or FOU breaks.
nodes.client1 = args@{ pkgs, ... }:
mkMerge [
(node { address4 = "192.168.1.1"; remote = "192.168.1.2"; address6 = "fc00::1"; } args)
{
networking = {
firewall.extraCommands = "iptables -A INPUT -p 41 -j ACCEPT";
sits.sit.encapsulation = { type = "fou"; port = 9001; };
};
}
];
nodes.client2 = args@{ pkgs, ... }:
mkMerge [
(node { address4 = "192.168.1.2"; remote = "192.168.1.1"; address6 = "fc00::2"; } args)
{
networking = {
firewall.allowedUDPPorts = [ 9001 ];
fooOverUDP.fou1 = { port = 9001; protocol = 41; };
};
}
];
testScript = { ... }:
''
start_all()

View file

@ -12,7 +12,7 @@ import ./make-test-python.nix ({ pkgs, ...} :
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
services.xserver.displayManager.sddm.enable = true;
services.xserver.displayManager.defaultSession = "plasma5";
services.xserver.displayManager.defaultSession = "plasma";
services.xserver.desktopManager.plasma5.enable = true;
services.xserver.displayManager.autoLogin = {
enable = true;

View file

@ -14,9 +14,6 @@
stdenv.mkDerivation rec {
pname = "csound";
# When updating, please check if https://github.com/csound/csound/issues/1078
# has been fixed in the new version so we can use the normal fluidsynth
# version and remove fluidsynth 1.x from nixpkgs again.
version = "6.16.2";
hardeningDisable = [ "format" ];

View file

@ -16,6 +16,7 @@
, lilv
, lsp-plugins
, lv2
, mda_lv2
, meson
, ninja
, nlohmann_json
@ -25,20 +26,20 @@
, rnnoise
, rubberband
, speexdsp
, wrapGAppsHook
, wrapGAppsHook4
, zam-plugins
, zita-convolver
}:
stdenv.mkDerivation rec {
pname = "easyeffects";
version = "6.0.3";
version = "6.1.3";
src = fetchFromGitHub {
owner = "wwmm";
repo = "easyeffects";
rev = "v${version}";
sha256 = "sha256-GzqPC/m/HMthLMamhJ4EXX6fxZYscdX1QmXgqHOPEcg=";
sha256 = "sha256-1UfeqPJxY4YT98UdqTZtG+QUBOZlKfK+7WbszhO22A0=";
};
nativeBuildInputs = [
@ -48,7 +49,7 @@ stdenv.mkDerivation rec {
ninja
pkg-config
python3
wrapGAppsHook
wrapGAppsHook4
];
buildInputs = [
@ -74,17 +75,20 @@ stdenv.mkDerivation rec {
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
# https://github.com/wwmm/easyeffects/pull/1205
substituteInPlace meson_post_install.py --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
'';
preFixup =
let
lv2Plugins = [
calf # limiter, compressor exciter, bass enhancer and others
lsp-plugins # delay
calf # compressor exciter, bass enhancer and others
lsp-plugins # delay, limiter, multiband compressor
mda_lv2 # loudness
zam-plugins # maximizer
];
ladspaPlugins = [
rubberband # pitch shifting
zam-plugins # maximizer
];
in
''

View file

@ -0,0 +1,45 @@
{ stdenv, cmake, lib, fetchFromGitHub, qt5, fftw, libtorch-bin, portaudio, eigen
, xorg, pkg-config, autoPatchelfHook, soxr
}:
stdenv.mkDerivation rec {
pname = "in-formant";
version = "2021-06-30";
# no Qt6 yet, so we're stuck in the last Qt5-supporting commit: https://github.com/NixOS/nixpkgs/issues/108008
src = fetchFromGitHub {
owner = "in-formant";
repo = "in-formant";
rev = "e28e628cf5ff0949a7b046d220cc884f6035f31a";
sha256 = "sha256-YvtV0wGUNmI/+GGxrIfTk/l8tqUsWgc/LAI17X+AWGI=";
fetchSubmodules = true;
};
nativeBuildInputs = [ cmake pkg-config qt5.wrapQtAppsHook autoPatchelfHook ];
buildInputs = [
qt5.qtbase
qt5.qtquickcontrols
qt5.qtquickcontrols2
qt5.qtcharts
fftw
libtorch-bin
portaudio
eigen
xorg.libxcb
soxr
];
installPhase = ''
mkdir -p $out/bin
cp in-formant $out/bin
'';
meta = with lib; {
description = "A real-time pitch and formant tracking software";
homepage = "https://github.com/in-formant/in-formant";
license = licenses.asl20;
platforms = platforms.linux;
maintainers = with maintainers; [ ckie ];
};
}

File diff suppressed because it is too large Load diff

View file

@ -4,17 +4,16 @@
rustPlatform.buildRustPackage rec {
pname = "librespot";
version = "0.1.6";
version = "0.3.0";
src = fetchFromGitHub {
owner = "librespot-org";
repo = "librespot";
rev = "v${version}";
sha256 = "153i9n3qwmmwc29f62cz8nbqrlry16iygvibm1sdnvpf0s6wk5f3";
sha256 = "0n7h690gplpp47gdj038g6ncgwr7wvwfkg00cbrbvxhv7kzqqa1f";
};
cargoPatches = [ ./cargo-lock.patch ];
cargoSha256 = "11d64rpq4b5rdxk5wx0hhzgc6mvs6h2br0w3kfncfklp67vn3v4v";
cargoSha256 = "0qakvpxvn84ppgs3qlsfan4flqkmjcgs698w25jasx9ymiv8wc3s";
cargoBuildFlags = with lib; [
"--no-default-features"

View file

@ -1,5 +1,5 @@
{ lib, fetchFromGitHub, cmake, pkg-config, alsa-lib ? null, fftwFloat, fltk13
, fluidsynth_1 ? null, lame ? null, libgig ? null, libjack2 ? null, libpulseaudio ? null
, fluidsynth ? null, lame ? null, libgig ? null, libjack2 ? null, libpulseaudio ? null
, libsamplerate, libsoundio ? null, libsndfile, libvorbis ? null, portaudio ? null
, qtbase, qtx11extras, qttools, SDL ? null, mkDerivation }:
@ -21,7 +21,7 @@ mkDerivation rec {
alsa-lib
fftwFloat
fltk13
fluidsynth_1
fluidsynth
lame
libgig
libjack2

View file

@ -1,6 +1,7 @@
{ lib
, python3
, fetchFromGitHub
, substituteAll
, appstream-glib
, desktop-file-utils
, gettext
@ -13,12 +14,13 @@
, meson
, ninja
, pkg-config
, pulseaudio
, wrapGAppsHook
}:
python3.pkgs.buildPythonApplication rec {
pname = "mousai";
version = "0.4.2";
version = "0.6.6";
format = "other";
@ -26,9 +28,16 @@ python3.pkgs.buildPythonApplication rec {
owner = "SeaDve";
repo = "Mousai";
rev = "v${version}";
sha256 = "sha256-zH++GGFIz3oxkKOYB4zhY6yL3vENEXxtrv8mZZ+41kU=";
sha256 = "sha256-nCbFVFg+nVF8BOBfdzQVgdTRXR5UF18PJFC266yTFwg=";
};
patches = [
(substituteAll {
src = ./paths.patch;
pactl = "${lib.getBin pulseaudio}/bin/pactl";
})
];
postPatch = ''
patchShebangs build-aux/meson
'';
@ -53,6 +62,7 @@ python3.pkgs.buildPythonApplication rec {
gtk4
libadwaita
librsvg
pulseaudio
];
propagatedBuildInputs = with python3.pkgs; [

View file

@ -0,0 +1,13 @@
diff --git a/src/backend/utils.py b/src/backend/utils.py
index cebc009..0087c09 100644
--- a/src/backend/utils.py
+++ b/src/backend/utils.py
@@ -79,7 +79,7 @@ class Utils:
@staticmethod
def get_default_audio_sources():
pactl_output = subprocess.run(
- ['/usr/bin/pactl', 'info'],
+ ['@pactl@', 'info'],
stdout=subprocess.PIPE,
text=True
).stdout.splitlines()

View file

@ -8,7 +8,7 @@
let
pname = "trezor-suite";
version = "21.9.2";
version = "21.10.2";
name = "${pname}-${version}";
suffix = {
@ -18,9 +18,9 @@ let
src = fetchurl {
url = "https://github.com/trezor/${pname}/releases/download/v${version}/Trezor-Suite-${version}-${suffix}.AppImage";
sha512 = { # curl -Lfs https://github.com/trezor/trezor-suite/releases/latest/download/latest-linux{-arm64,}.yml | rg ^sha512 | sed 's/: /-/'
aarch64-linux = "sha512-mgip818sGkrKwF4v2mj/JeTNxBoj7DgdNPoxZ8sp8OvojHB2sa0hm4YXfrzAdPf8CP6d5ChUmwccQyYilGUiOQ==";
x86_64-linux = "sha512-f02m8Q6ITYhIXH1FS2BA/QYYsdtxklDDNYBXBarj8b1kA+yhDFZ3VL9vy+nZNdPQHQ2yMQreDzpcToXBQ67XyQ==";
sha512 = { # curl -Lfs https://github.com/trezor/trezor-suite/releases/latest/download/latest-linux{-arm64,}.yml | grep ^sha512 | sed 's/: /-/'
aarch64-linux = "sha512-+qXN9cQk1u18ZzeMecPNfhkTTsw61iM/IJYksPJl9+zx2AKldv9tAFUnnmKZ65LabiaIXI+emN185SRRcaOndw==";
x86_64-linux = "sha512-WpiG8VOEODqsQ1/jERiEEGwVqR0zbMqERGjOysEVYorA0p3xZyl7OSpWOSWaUjPBZpQtJIBdqhSXeoSRcvfJgg==";
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};

View file

@ -13,12 +13,12 @@ let
sha256Hash = "0k8jcq8vpjayvwm9wqcrjhnp7dly0h4bb8nxspck5zmi8q2ar67l";
};
betaVersion = {
version = "2020.3.1.21"; # "Android Studio Arctic Fox (2020.3.1) RC 1"
sha256Hash = "04k7c328bl8ixi8bvp2mm33q2hmv40yc9p5dff5cghyycarwpd3f";
version = "2021.1.1.14"; # "Android Studio Bumblebee (2021.1.1) Beta 1"
sha256Hash = "1j1fxl4vzq3bln2z9ycxn9imjgy55yd1nbl7ycmsi90bdp96pzj0";
};
latestVersion = { # canary & dev
version = "2021.1.1.13"; # "Android Studio Bumblebee (2021.1.1) Canary 13"
sha256Hash = "04w5jw79fkxk4gy1n9iy8kjxg6k3zcl59z76f04rh556n12f01gm";
version = "2021.2.1.1"; # "Android Studio Chipmunk (2021.2.1) Canary 1"
sha256Hash = "1fn0jv6ybgdhgpwhamw16fjqbg2961ir9jhbjzanysi7y3935nbv";
};
in {
# Attributes are named by their corresponding release channels

View file

@ -7,13 +7,13 @@
trivialBuild rec {
pname = "apheleia";
version = "0.pre+unstable=2021-08-08";
version = "1.1.2+unstable=2021-10-03";
src = fetchFromGitHub {
owner = "raxod502";
repo = pname;
rev = "8e022c67fea4248f831c678b31c19646cbcbbf6f";
hash = "sha256-Put/BBQ7V423C18UIVfaM17T+TDWtAxRZi7WI8doPJw=";
rev = "8b9d576f2fda10d0c9051fc03c1eb1d9791e32fd";
hash = "sha256-QwGlCdHBll16mbfQxGw1EORZFUxYCZSt8ThYTTGjRpo=";
};
buildInputs = [

View file

@ -369,10 +369,10 @@
elpaBuild {
pname = "boxy";
ename = "boxy";
version = "1.0.2";
version = "1.0.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/boxy-1.0.2.tar";
sha256 = "07m832kn4d6njfz21qfmh12gzd35d17v29pqlxfq9v03cazww4lr";
url = "https://elpa.gnu.org/packages/boxy-1.0.4.tar";
sha256 = "0cwzjyj8yjg13b63va6pnj01m6kc5g3zx69c9w2ysl2wk24zn6dz";
};
packageRequires = [ emacs ];
meta = {
@ -380,18 +380,18 @@
license = lib.licenses.free;
};
}) {};
boxy-headlines = callPackage ({ boxy, elpaBuild, emacs, fetchurl, lib }:
boxy-headings = callPackage ({ boxy, elpaBuild, emacs, fetchurl, lib, org }:
elpaBuild {
pname = "boxy-headlines";
ename = "boxy-headlines";
version = "1.0.2";
pname = "boxy-headings";
ename = "boxy-headings";
version = "2.1.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/boxy-headlines-1.0.2.tar";
sha256 = "1j8j2vc318mb4i116qs9zj6cvkiy1fips09mkzj6lqr25qk5fi31";
url = "https://elpa.gnu.org/packages/boxy-headings-2.1.0.tar";
sha256 = "021w4ic028jsq7vxz1jgnfny9dymcz6v112b3b3nwyw3g3dnc62f";
};
packageRequires = [ boxy emacs ];
packageRequires = [ boxy emacs org ];
meta = {
homepage = "https://elpa.gnu.org/packages/boxy-headlines.html";
homepage = "https://elpa.gnu.org/packages/boxy-headings.html";
license = lib.licenses.free;
};
}) {};
@ -666,10 +666,10 @@
elpaBuild {
pname = "consult";
ename = "consult";
version = "0.11";
version = "0.12";
src = fetchurl {
url = "https://elpa.gnu.org/packages/consult-0.11.tar";
sha256 = "14zjhsfhq5g9257maivyzpj5qxi1kprcsdk1qalwybyylyb4q4kk";
url = "https://elpa.gnu.org/packages/consult-0.12.tar";
sha256 = "0xcr7jki9m30hppy24z74nrw7xv5nahm1yrjilcck32mxfkrc69x";
};
packageRequires = [ emacs ];
meta = {
@ -696,10 +696,10 @@
elpaBuild {
pname = "corfu";
ename = "corfu";
version = "0.11";
version = "0.13";
src = fetchurl {
url = "https://elpa.gnu.org/packages/corfu-0.11.tar";
sha256 = "1sf7ll25ry7vwff4bvqgdh84zviqj6wifmqdb2z8hf12awz63icz";
url = "https://elpa.gnu.org/packages/corfu-0.13.tar";
sha256 = "0psvkxr7fjqq7gkqdzl0ma367zjlxgixk563vpv9hmwfwymddyyb";
};
packageRequires = [ emacs ];
meta = {
@ -1086,10 +1086,10 @@
elpaBuild {
pname = "ebdb";
ename = "ebdb";
version = "0.8.5";
version = "0.8.6";
src = fetchurl {
url = "https://elpa.gnu.org/packages/ebdb-0.8.5.tar";
sha256 = "1p2chzj5hnaiqhammvdp82ck5pi6h1rl9r782zaqxrhrqsp3vg09";
url = "https://elpa.gnu.org/packages/ebdb-0.8.6.tar";
sha256 = "0amr1s1q5w4513qw31qsr8gpsfgj5b2j7qn017rmwbaf1mj0k6z0";
};
packageRequires = [ emacs seq ];
meta = {
@ -1146,10 +1146,10 @@
elpaBuild {
pname = "eev";
ename = "eev";
version = "20211006";
version = "20211011";
src = fetchurl {
url = "https://elpa.gnu.org/packages/eev-20211006.tar";
sha256 = "08z9q5y46fqm7r1gwiv0ir2hcybwfrvh0b7pxsrppjs1gvclyazn";
url = "https://elpa.gnu.org/packages/eev-20211011.tar";
sha256 = "1a71qam6z5s3zl7fvxpsnabbqxh8a7llm1524nxs2353pb6ksfra";
};
packageRequires = [ emacs ];
meta = {
@ -1325,6 +1325,21 @@
license = lib.licenses.free;
};
}) {};
erc = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "erc";
ename = "erc";
version = "5.4.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/erc-5.4.1.tar";
sha256 = "0hghqwqrx11f8qa1zhyhjqp99w01l686azsmd24z9w0l93fz598a";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/erc.html";
license = lib.licenses.free;
};
}) {};
ergoemacs-mode = callPackage ({ cl-lib ? null
, elpaBuild
, emacs
@ -2084,16 +2099,16 @@
license = lib.licenses.free;
};
}) {};
kiwix = callPackage ({ elpaBuild, elquery, emacs, fetchurl, lib, request }:
kiwix = callPackage ({ elpaBuild, emacs, fetchurl, lib, request }:
elpaBuild {
pname = "kiwix";
ename = "kiwix";
version = "1.1.0";
version = "1.1.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/kiwix-1.1.0.tar";
sha256 = "1clp0q34bs395d0hrqdyvm9ds665hgf5qrdiqa14k31h4lbv2wsn";
url = "https://elpa.gnu.org/packages/kiwix-1.1.4.tar";
sha256 = "1ls11a7fc6d4gj85g8m09r95fvc4ppc0k0fs28d1hzybmgl89rgl";
};
packageRequires = [ elquery emacs request ];
packageRequires = [ emacs request ];
meta = {
homepage = "https://elpa.gnu.org/packages/kiwix.html";
license = lib.licenses.free;
@ -2268,10 +2283,10 @@
elpaBuild {
pname = "marginalia";
ename = "marginalia";
version = "0.8";
version = "0.9";
src = fetchurl {
url = "https://elpa.gnu.org/packages/marginalia-0.8.tar";
sha256 = "0afry11i7kgfa0q83p63hmahl7jzsqhn4sl1rnkjy98pnikwv9kd";
url = "https://elpa.gnu.org/packages/marginalia-0.9.tar";
sha256 = "0jnw9ys7p2rhi7sx2wxi3xs95ryg9vr34xb2jdfiz0p1xv04a300";
};
packageRequires = [ emacs ];
meta = {
@ -2577,14 +2592,29 @@
license = lib.licenses.free;
};
}) {};
nano-agenda = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "nano-agenda";
ename = "nano-agenda";
version = "0.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/nano-agenda-0.1.tar";
sha256 = "1bylgd4ly6dybpg66ndgsmgs5w0y5ymfq3s2pbwjnl46fnrmggz0";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/nano-agenda.html";
license = lib.licenses.free;
};
}) {};
nano-modeline = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "nano-modeline";
ename = "nano-modeline";
version = "0.1";
version = "0.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/nano-modeline-0.1.tar";
sha256 = "10hnxgjp56dqydf39mbn9zmwwvnwzi89lwnam5k3x6d6p2cnfgcx";
url = "https://elpa.gnu.org/packages/nano-modeline-0.2.tar";
sha256 = "13m8j8jnd33wwv1siv6frzdbs7bhspg859sflq58vimv444zjzac";
};
packageRequires = [ emacs ];
meta = {
@ -2596,10 +2626,10 @@
elpaBuild {
pname = "nano-theme";
ename = "nano-theme";
version = "0.2";
version = "0.2.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/nano-theme-0.2.tar";
sha256 = "0kcirnl1fg9kvavw8aq9l16jv4rrxv5w62i7wrsjn7np697sm0s6";
url = "https://elpa.gnu.org/packages/nano-theme-0.2.1.tar";
sha256 = "0m98kq40dhbrn55x4bp2x5d5j1gps4y7z4086mgnj8wr1y3w8kdl";
};
packageRequires = [ emacs ];
meta = {
@ -2791,16 +2821,16 @@
license = lib.licenses.free;
};
}) {};
org-real = callPackage ({ boxy, elpaBuild, emacs, fetchurl, lib }:
org-real = callPackage ({ boxy, elpaBuild, emacs, fetchurl, lib, org }:
elpaBuild {
pname = "org-real";
ename = "org-real";
version = "1.0.1";
version = "1.0.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/org-real-1.0.1.tar";
sha256 = "0rklzp32v30ndyqli3fjcsqvvpiz3klsz26b7zn2bai2ldx6016s";
url = "https://elpa.gnu.org/packages/org-real-1.0.4.tar";
sha256 = "0bn9vyx74lki2nggzir02mcrww94dnqpbkryjr7a4i6am0ylf705";
};
packageRequires = [ boxy emacs ];
packageRequires = [ boxy emacs org ];
meta = {
homepage = "https://elpa.gnu.org/packages/org-real.html";
license = lib.licenses.free;
@ -3020,10 +3050,10 @@
elpaBuild {
pname = "project";
ename = "project";
version = "0.8.0";
version = "0.8.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/project-0.8.0.tar";
sha256 = "05q2zr661bn2h6pdvyv3apdajfxnsx0rb0n5np8cg98a7gw4zyxd";
url = "https://elpa.gnu.org/packages/project-0.8.1.tar";
sha256 = "1x3zkbjsi04v5ny3yxqrb75vcacrj9kxmpm9mvkp0n07j5g34f68";
};
packageRequires = [ emacs xref ];
meta = {
@ -3095,10 +3125,10 @@
elpaBuild {
pname = "python";
ename = "python";
version = "0.27.1";
version = "0.28";
src = fetchurl {
url = "https://elpa.gnu.org/packages/python-0.27.1.el";
sha256 = "0jygl2w8x73v22w0rzq75i2hnm3f46dzgg5x1ckz720nznvwwkka";
url = "https://elpa.gnu.org/packages/python-0.28.tar";
sha256 = "1pvhsdjla1rvw223h7irmbzzsrixnpy1rsskiq9xmkpkc688b6pm";
};
packageRequires = [ cl-lib emacs ];
meta = {
@ -3546,10 +3576,10 @@
elpaBuild {
pname = "shelisp";
ename = "shelisp";
version = "0.9.1";
version = "1.0.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/shelisp-0.9.1.el";
sha256 = "15z8rpx8nhx53q77z5fqcpww255di80lb5mm28mnn2myalrr8b59";
url = "https://elpa.gnu.org/packages/shelisp-1.0.0.tar";
sha256 = "05r26gy1ajl47ir0yz5gn62xw2f31vdq04n3r8ywlzxbqyvzlc0d";
};
packageRequires = [];
meta = {
@ -3561,10 +3591,10 @@
elpaBuild {
pname = "shell-command-plus";
ename = "shell-command+";
version = "2.2.1";
version = "2.3.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/shell-command+-2.2.1.tar";
sha256 = "1dmi7fn4g55va5ljpyswr3dpgj471747kkdixfyp8zpsbhvr5yf6";
url = "https://elpa.gnu.org/packages/shell-command+-2.3.1.tar";
sha256 = "0g8pcrkkh3bxcxxbasnz834gi3pvhlkpf011fvmlhwzswypcyqmy";
};
packageRequires = [ emacs ];
meta = {
@ -4574,10 +4604,10 @@
elpaBuild {
pname = "xref";
ename = "xref";
version = "1.2.2";
version = "1.3.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/xref-1.2.2.tar";
sha256 = "14kdy8blhs6lwg349l9lmv0bbpybgi9nsg2iic3v87j4jyi41ljm";
url = "https://elpa.gnu.org/packages/xref-1.3.0.tar";
sha256 = "0bw2cbxmjavzhmpd9gyl41d4c201p535jrfz3b7jb5zw12jdnppl";
};
packageRequires = [ emacs ];
meta = {

View file

@ -198,8 +198,6 @@
railgun = callPackage ./railgun { };
rec-mode = callPackage ./rec-mode { };
structured-haskell-mode = self.shm;
sv-kalender = callPackage ./sv-kalender { };

View file

@ -155,14 +155,29 @@
license = lib.licenses.free;
};
}) {};
flymake-kondor = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "flymake-kondor";
ename = "flymake-kondor";
version = "0.1.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/flymake-kondor-0.1.0.tar";
sha256 = "0fn9vnrqy5nmv07jv2ry0xs90rkb92qhrh7j5pdikw7zykcwlbdd";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/flymake-kondor.html";
license = lib.licenses.free;
};
}) {};
geiser = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "geiser";
ename = "geiser";
version = "0.16";
version = "0.18";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/geiser-0.16.tar";
sha256 = "1mhngb1ik3qsc3w466cs61rbz3nn08ag29m5vfbd6adk60xmhnfk";
url = "https://elpa.nongnu.org/nongnu/geiser-0.18.tar";
sha256 = "131j4f82hl4pqj07qsl1f2dz4105v5fyll3bc97ggayzvrdiy58i";
};
packageRequires = [ emacs ];
meta = {
@ -330,10 +345,10 @@
elpaBuild {
pname = "git-commit";
ename = "git-commit";
version = "3.2.1";
version = "3.3.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/git-commit-3.2.1.tar";
sha256 = "1jndc8ppj4r2s62idabygj4q0qbpk4gwifn8jrd6pa61d7dlvp28";
url = "https://elpa.nongnu.org/nongnu/git-commit-3.3.0.tar";
sha256 = "0lp6r4w1k0idvfc2h0chlplap2i4x2slva9cw3iw1rhhxbcvlmdx";
};
packageRequires = [ dash emacs transient with-editor ];
meta = {
@ -416,6 +431,21 @@
license = lib.licenses.free;
};
}) {};
haskell-tng-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib, popup }:
elpaBuild {
pname = "haskell-tng-mode";
ename = "haskell-tng-mode";
version = "0.0.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/haskell-tng-mode-0.0.1.tar";
sha256 = "1dndnxb9bdjnixyl09025065wdrk0h8q721rbwvransq308fijwy";
};
packageRequires = [ emacs popup ];
meta = {
homepage = "https://elpa.gnu.org/packages/haskell-tng-mode.html";
license = lib.licenses.free;
};
}) {};
highlight-parentheses = callPackage ({ elpaBuild
, emacs
, fetchurl
@ -560,10 +590,10 @@
elpaBuild {
pname = "magit";
ename = "magit";
version = "3.2.1";
version = "3.3.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/magit-3.2.1.tar";
sha256 = "0yyf16605bp5q8jl2vbljxx04ja0ljvs775dnnawlc3mvn13zd9n";
url = "https://elpa.nongnu.org/nongnu/magit-3.3.0.tar";
sha256 = "0ihrds45z12z155c1y7haz1mxc95w6v4rynh0izm159xhz44121z";
};
packageRequires = [
dash
@ -582,10 +612,10 @@
elpaBuild {
pname = "magit-section";
ename = "magit-section";
version = "3.2.1";
version = "3.3.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/magit-section-3.2.1.tar";
sha256 = "1ppinys8rfa38ac8grcx16hlaw33p03pif4ya6bbw280kq8c73rv";
url = "https://elpa.nongnu.org/nongnu/magit-section-3.3.0.tar";
sha256 = "08ac10vips6f2gy4x4w2wkz2ki3q0d6dhynkmlpdinsdmgagziny";
};
packageRequires = [ dash emacs ];
meta = {
@ -657,10 +687,10 @@
elpaBuild {
pname = "org-contrib";
ename = "org-contrib";
version = "0.1";
version = "0.3";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/org-contrib-0.1.tar";
sha256 = "07hzywvgj11wd21dw4lbkvqv32da03407f9qynlzgg1qa7wknm2k";
url = "https://elpa.nongnu.org/nongnu/org-contrib-0.3.tar";
sha256 = "0fqhyby7624drskfsasgvzyxbgjb42rd6vw8l6xgb3h22kaprl0q";
};
packageRequires = [ emacs org ];
meta = {
@ -683,6 +713,21 @@
license = lib.licenses.free;
};
}) {};
popup = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "popup";
ename = "popup";
version = "0.5.8";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/popup-0.5.8.tar";
sha256 = "1amwxsymzvzmj8696fa6i0cqx4ac581rvr4dwkri7akkr7amh3yh";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/popup.html";
license = lib.licenses.free;
};
}) {};
projectile = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "projectile";
@ -841,10 +886,10 @@
elpaBuild {
pname = "swift-mode";
ename = "swift-mode";
version = "8.4.0";
version = "8.4.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/swift-mode-8.4.0.tar";
sha256 = "1pfp1nvq2gny6kbiq3q0dcms0ysw43zq0aayfwqdj0llkf025dfp";
url = "https://elpa.nongnu.org/nongnu/swift-mode-8.4.1.tar";
sha256 = "0f87bjgva0iv818bh2dqvc1svrwh5zm134jpxcmvmzr1yqazx4qp";
};
packageRequires = [ emacs seq ];
meta = {
@ -882,6 +927,21 @@
license = lib.licenses.free;
};
}) {};
vc-fossil = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "vc-fossil";
ename = "vc-fossil";
version = "20210928";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/vc-fossil-20210928.tar";
sha256 = "0n4h1cj1336mv5cswq0139bkry5gnv4hrrwzd4bqhrxp5kbhqa5y";
};
packageRequires = [];
meta = {
homepage = "https://elpa.gnu.org/packages/vc-fossil.html";
license = lib.licenses.free;
};
}) {};
web-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "web-mode";
@ -916,10 +976,10 @@
elpaBuild {
pname = "with-editor";
ename = "with-editor";
version = "3.0.4";
version = "3.0.5";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/with-editor-3.0.4.tar";
sha256 = "032i954rzn8sg1qp6vjhz6j8j1fl6mpvhfnmd3va8k9q9m27k4an";
url = "https://elpa.nongnu.org/nongnu/with-editor-3.0.5.tar";
sha256 = "0bri6jr99133k9w0d754rw2f6hgjzndczngfw2lf2rvxks448krm";
};
packageRequires = [ emacs ];
meta = {

View file

@ -1,18 +0,0 @@
{ lib
, trivialBuild
, recutils
}:
trivialBuild {
pname = "rec-mode";
inherit (recutils) version src;
postUnpack = ''
sourceRoot="$sourceRoot/etc"
'';
meta = recutils.meta // {
description = "A major mode for editing rec files";
};
}

View file

@ -2,14 +2,11 @@
trivialBuild {
pname = "sv-kalender";
version = "1.9";
version = "1.11";
src = fetchurl {
url = "http://bigwalter.net/daniel/elisp/sv-kalender.el";
sha256 = "0kilp0nyhj67qscy13s0g07kygz2qwmddklhan020sk7z7jv3lpi";
postFetch = ''
echo "(provide 'sv-kalender)" >> $out
'';
sha256 = "0mcx7g1pg6kfp0i4b9rh3q9csgdf3054ijswy368bxwdxsjgfz2m";
};
meta = with lib; {

View file

@ -198,7 +198,7 @@ let emacs = stdenv.mkDerivation (lib.optionalAttrs nativeComp {
description = "The extensible, customizable GNU text editor";
homepage = "https://www.gnu.org/software/emacs/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ lovek323 peti jwiegley adisbladis ];
maintainers = with maintainers; [ lovek323 jwiegley adisbladis ];
platforms = platforms.all;
longDescription = ''

View file

@ -1,17 +1,17 @@
{ lib, stdenv
{ stdenv
, lib
, ctags
, cmark
, appstream-glib
, desktop-file-utils
, docbook_xsl
, docbook_xml_dtd_43
, fetchurl
, flatpak
, gnome
, libgit2-glib
, gi-docgen
, gobject-introspection
, glade
, gspell
, gtk-doc
, gtk3
, gtksourceview4
, json-glib
@ -39,20 +39,20 @@
stdenv.mkDerivation rec {
pname = "gnome-builder";
version = "3.40.2";
version = "41.1";
outputs = [ "out" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "16kikslvcfjqj4q3j857mq9i8cyd965b3lvfzcwijc91x3ylr15j";
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "XVXkqqKkdYpGJj0cf9AJyz20RV4O1/nkTDoWNIYfo4o=";
};
nativeBuildInputs = [
appstream-glib
desktop-file-utils
docbook_xsl
docbook_xml_dtd_43
gi-docgen
gobject-introspection
gtk-doc
meson
ninja
pkg-config
@ -63,6 +63,7 @@ stdenv.mkDerivation rec {
buildInputs = [
ctags
cmark
flatpak
gnome.devhelp
glade
@ -92,8 +93,6 @@ stdenv.mkDerivation rec {
xvfb-run
];
outputs = [ "out" "devdoc" ];
prePatch = ''
patchShebangs build-aux/meson/post_install.py
'';
@ -134,9 +133,13 @@ stdenv.mkDerivation rec {
done
'';
postFixup = ''
# Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
moveToOutput share/doc/libide "$devdoc"
'';
passthru.updateScript = gnome.updateScript {
packageName = pname;
versionPolicy = "odd-unstable";
};
meta = with lib; {

View file

@ -1,25 +1,61 @@
diff --git i/src/cpp/core/libclang/LibClang.cpp w/src/cpp/core/libclang/LibClang.cpp
index ec12a3a1ff..8c81b633ae 100644
--- i/src/cpp/core/libclang/LibClang.cpp
+++ w/src/cpp/core/libclang/LibClang.cpp
@@ -54,7 +54,7 @@ std::vector<std::string> defaultCompileArgs(LibraryVersion version)
diff --git a/src/cpp/core/libclang/LibClang.cpp b/src/cpp/core/libclang/LibClang.cpp
index 1186f3a..58e8cc7 100644
--- a/src/cpp/core/libclang/LibClang.cpp
+++ b/src/cpp/core/libclang/LibClang.cpp
@@ -58,7 +58,7 @@ std::vector<std::string> defaultCompileArgs(LibraryVersion version)
// we need to add in the associated libclang headers as
// they are not discovered / used by default during compilation
- FilePath llvmPath = s_libraryPath.parent().parent();
- FilePath llvmPath = s_libraryPath.getParent().getParent();
+ FilePath llvmPath("@libclang@");
boost::format fmt("%1%/lib/clang/%2%/include");
fmt % llvmPath.absolutePath() % version.asString();
fmt % llvmPath.getAbsolutePath() % version.asString();
std::string includePath = fmt.str();
@@ -77,10 +77,7 @@ std::vector<std::string> systemClangVersions()
#elif defined(__unix__)
// default set of versions
clangVersions = {
@@ -70,46 +70,7 @@ std::vector<std::string> defaultCompileArgs(LibraryVersion version)
std::vector<std::string> systemClangVersions()
{
- std::vector<std::string> clangVersions;
-
-#if defined(__APPLE__)
- // NOTE: the version of libclang.dylib bundled with Xcode
- // doesn't seem to work well when loaded as a library
- // (there seems to be extra orchestration required to get
- // include paths set up; easier to just depend on command
- // line tools since we request their installation in other
- // contexts as well)
- clangVersions = {
- "/Library/Developer/CommandLineTools/usr/lib/libclang.dylib"
- };
-#elif defined(__unix__)
- // default set of versions
- clangVersions = {
- "/usr/lib/libclang.so",
- "/usr/lib/llvm/libclang.so",
- "/usr/lib64/libclang.so",
- "/usr/lib64/llvm/libclang.so",
+ "@libclang.so@"
};
- };
-
- // iterate through the set of available 'llvm' directories
- for (const char* prefix : {"/usr/lib", "/usr/lib64"})
- {
- FilePath prefixPath(prefix);
- if (!prefixPath.exists())
- continue;
-
- std::vector<FilePath> directories;
- Error error = prefixPath.getChildren(directories);
- if (error)
- LOG_ERROR(error);
-
- // generate a path for each 'llvm' directory
- for (const FilePath& path : directories)
- if (path.getFilename().find("llvm") == 0)
- clangVersions.push_back(path.completePath("lib/libclang.so.1").getAbsolutePath());
- }
-#endif
-
+ std::vector<std::string> clangVersions = { "@libclang.so@" };
return clangVersions;
}
// iterate through the set of available 'llvm' directories

View file

@ -1,141 +1,209 @@
{ lib, mkDerivation, fetchurl, fetchpatch, fetchFromGitHub, makeDesktopItem, cmake, boost, zlib
, openssl, R, qtbase, qtxmlpatterns, qtsensors, qtwebengine, qtwebchannel
, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
{ lib
, mkDerivation
, fetchurl
, fetchpatch
, fetchFromGitHub
, makeDesktopItem
, copyDesktopItems
, cmake
, boost
, zlib
, openssl
, R
, qtbase
, qtxmlpatterns
, qtsensors
, qtwebengine
, qtwebchannel
, libuuid
, hunspellDicts
, unzip
, ant
, jdk
, gnumake
, makeWrapper
, pandoc
, llvmPackages
, libyamlcpp
, soci
, postgresql
, nodejs
, mkYarnModules
, qmake
}:
with lib;
let
verMajor = "1";
verMinor = "2";
verPatch = "5042";
version = "${verMajor}.${verMinor}.${verPatch}";
ginVer = "2.1.2";
gwtVer = "2.8.1";
in
mkDerivation rec {
pname = "RStudio";
inherit version;
nativeBuildInputs = [ cmake unzip ant jdk makeWrapper pandoc ];
buildInputs = [ boost zlib openssl R qtbase qtxmlpatterns qtsensors
qtwebengine qtwebchannel libuuid ];
version = "1.4.1717";
RSTUDIO_VERSION_MAJOR = lib.versions.major version;
RSTUDIO_VERSION_MINOR = lib.versions.minor version;
RSTUDIO_VERSION_PATCH = lib.versions.patch version;
src = fetchFromGitHub {
owner = "rstudio";
repo = "rstudio";
rev = "v${version}";
sha256 = "1n67fa357v51j3z1ma8v2ydfsx3y8n10k2svmfcf4mdzsi8w0kc5";
rev = version;
sha256 = "sha256-9c1bNsf8kJjpcZ2cMV/pPNtXQkFOntX29a1cdnXpllE=";
};
# Hack RStudio to only use the input R and provided libclang.
patches = [ ./r-location.patch ./clang-location.patch
(fetchpatch {
# Fetch a patch to ensure Rstudio compiles against R
# 4.0.0, should be removed next 1.2.X Rstudio update
# or possibly 1.3.X
url = "https://github.com/rstudio/rstudio/commit/3fb2397c2f208bb8ace0bbaf269481ccb96b5b20.patch";
sha256 = "0qpgjy6aash0fc0xbns42cwpj3nsw49nkbzwyq8az01xwg81g0f3";
})
];
postPatch = ''
substituteInPlace src/cpp/core/r_util/REnvironmentPosix.cpp --replace '@R@' ${R}
substituteInPlace src/cpp/core/libclang/LibClang.cpp \
--replace '@libclang@' ${llvmPackages.libclang.lib} \
--replace '@libclang.so@' ${llvmPackages.libclang.lib}/lib/libclang.so
'';
ginSrc = fetchurl {
url = "https://s3.amazonaws.com/rstudio-buildtools/gin-${ginVer}.zip";
sha256 = "16jzmljravpz6p2rxa87k5f7ir8vs7ya75lnfybfajzmci0p13mr";
};
gwtSrc = fetchurl {
url = "https://s3.amazonaws.com/rstudio-buildtools/gwt-${gwtVer}.zip";
sha256 = "19x000m3jwnkqgi6ic81lkzyjvvxcfacw2j0vcfcaknvvagzhyhb";
};
hunspellDictionaries = filter isDerivation (unique (attrValues hunspellDicts));
# These dicts contain identically-named dict files, so we only keep the
# -large versions in case of clashes
largeDicts = filter (d: hasInfix "-large-wordlist" d) hunspellDictionaries;
otherDicts = filter (d: !(hasAttr "dictFileName" d &&
elem d.dictFileName (map (d: d.dictFileName) largeDicts))) hunspellDictionaries;
dictionaries = largeDicts ++ otherDicts;
mathJaxSrc = fetchurl {
url = "https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip";
sha256 = "0wbcqb9rbfqqvvhqr1pbqax75wp8ydqdyhp91fbqfqp26xzjv6lk";
url = "https://s3.amazonaws.com/rstudio-buildtools/mathjax-27.zip";
sha256 = "sha256-xWy6psTOA8H8uusrXqPDEtL7diajYCVHcMvLiPsgQXY=";
};
rsconnectSrc = fetchFromGitHub {
owner = "rstudio";
repo = "rsconnect";
rev = "984745d8";
sha256 = "037z0y32k1gdda192y5qn5hi7wp8wyap44mkjlklrgcqkmlcylb9";
rev = "f5854bb71464f6e3017da9855f058fe3d5b32efd";
sha256 = "sha256-ULyWdSgGPSAwMt0t4QPuzeUE6Bo6IJh+5BMgW1bFN+Y=";
};
preConfigure =
''
export RSTUDIO_VERSION_MAJOR=${verMajor}
export RSTUDIO_VERSION_MINOR=${verMinor}
export RSTUDIO_VERSION_PATCH=${verPatch}
GWT_LIB_DIR=src/gwt/lib
mkdir -p $GWT_LIB_DIR/gin/${ginVer}
unzip ${ginSrc} -d $GWT_LIB_DIR/gin/${ginVer}
unzip ${gwtSrc}
mkdir -p $GWT_LIB_DIR/gwt
mv gwt-${gwtVer} $GWT_LIB_DIR/gwt/${gwtVer}
mkdir dependencies/common/dictionaries
for dict in ${builtins.concatStringsSep " " dictionaries}; do
for i in "$dict/share/hunspell/"*; do
ln -sv $i dependencies/common/dictionaries/
done
done
unzip ${mathJaxSrc} -d dependencies/common/mathjax-26
mkdir -p dependencies/common/pandoc
cp ${pandoc}/bin/pandoc dependencies/common/pandoc/
cp -r ${rsconnectSrc} dependencies/common/rsconnect
pushd dependencies/common
${R}/bin/R CMD build -d --no-build-vignettes rsconnect
popd
'';
cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" "-DQT_QMAKE_EXECUTABLE=$NIX_QT5_TMP/bin/qmake" ];
desktopItem = makeDesktopItem {
name = "${pname}-${version}";
exec = "rstudio %F";
icon = "rstudio";
desktopName = "RStudio";
genericName = "IDE";
comment = meta.description;
categories = "Development;";
mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;";
panmirrorModules = mkYarnModules {
inherit pname version;
packageJSON = ./package.json;
yarnLock = ./yarn.lock;
yarnNix = ./yarndeps.nix;
};
qtWrapperArgs = [ "--suffix PATH : ${gnumake}/bin" ];
in
mkDerivation rec {
inherit pname version src RSTUDIO_VERSION_MAJOR RSTUDIO_VERSION_MINOR RSTUDIO_VERSION_PATCH;
postInstall = ''
mkdir $out/share
cp -r ${desktopItem}/share/applications $out/share
mkdir $out/share/icons
ln $out/rstudio.png $out/share/icons
nativeBuildInputs = [
cmake
unzip
ant
jdk
makeWrapper
pandoc
nodejs
copyDesktopItems
];
buildInputs = [
boost
zlib
openssl
R
qtbase
qtxmlpatterns
qtsensors
qtwebengine
qtwebchannel
libuuid
libyamlcpp
soci
postgresql
];
cmakeFlags = [
"-DRSTUDIO_TARGET=Desktop"
"-DCMAKE_BUILD_TYPE=Release"
"-DQT_QMAKE_EXECUTABLE=${qmake}/bin/qmake"
"-DRSTUDIO_USE_SYSTEM_SOCI=ON"
"-DRSTUDIO_USE_SYSTEM_BOOST=ON"
"-DRSTUDIO_USE_SYSTEM_YAML_CPP=ON"
"-DPANDOC_VERSION=${pandoc.version}"
"-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/lib/rstudio"
];
# Hack RStudio to only use the input R and provided libclang.
patches = [
./r-location.patch
./clang-location.patch
# postFetch doesn't work with this | error: unexpected end-of-file
# replacing /usr/bin/node is done in postPatch
# https://src.fedoraproject.org/rpms/rstudio/tree/rawhide
(fetchpatch {
name = "system-node.patch";
url = "https://src.fedoraproject.org/rpms/rstudio/raw/5bda2e290c9e72305582f2011040938d3e356906/f/0004-use-system-node.patch";
sha256 = "sha256-P1Y07RB/ceFNa749nyBUWSE41eiiZgt43zVcmahvfZM=";
})
];
postPatch = ''
substituteInPlace src/cpp/core/r_util/REnvironmentPosix.cpp --replace '@R@' ${R}
substituteInPlace src/cpp/CMakeLists.txt \
--replace 'SOCI_LIBRARY_DIR "/usr/lib"' 'SOCI_LIBRARY_DIR "${soci}/lib"'
substituteInPlace src/gwt/build.xml \
--replace '/usr/bin/node' '${nodejs}/bin/node'
substituteInPlace src/cpp/core/libclang/LibClang.cpp \
--replace '@libclang@' ${llvmPackages.libclang.lib} \
--replace '@libclang.so@' ${llvmPackages.libclang.lib}/lib/libclang.so
substituteInPlace src/cpp/session/include/session/SessionConstants.hpp \
--replace "bin/pandoc" "${pandoc}/bin/pandoc"
'';
meta = with lib;
{ description = "Set of integrated tools for the R language";
homepage = "https://www.rstudio.com/";
license = licenses.agpl3;
maintainers = with maintainers; [ ciil ];
platforms = platforms.linux;
};
hunspellDictionaries = with lib; filter isDerivation (unique (attrValues hunspellDicts));
# These dicts contain identically-named dict files, so we only keep the
# -large versions in case of clashes
largeDicts = with lib; filter (d: hasInfix "-large-wordlist" d) hunspellDictionaries;
otherDicts = with lib; filter
(d: !(hasAttr "dictFileName" d &&
elem d.dictFileName (map (d: d.dictFileName) largeDicts)))
hunspellDictionaries;
dictionaries = largeDicts ++ otherDicts;
preConfigure = ''
mkdir dependencies/dictionaries
for dict in ${builtins.concatStringsSep " " dictionaries}; do
for i in "$dict/share/hunspell/"*; do
ln -s $i dependencies/dictionaries/
done
done
unzip -q ${mathJaxSrc} -d dependencies/mathjax-27
mkdir -p dependencies/pandoc/${pandoc.version}
cp ${pandoc}/bin/pandoc dependencies/pandoc/${pandoc.version}/pandoc
cp -r ${rsconnectSrc} dependencies/rsconnect
( cd dependencies && ${R}/bin/R CMD build -d --no-build-vignettes rsconnect )
cp -r "${panmirrorModules}" src/gwt/panmirror/src/editor/node_modules
'';
postInstall = ''
mkdir -p $out/share/icons $out/bin
ln $out/lib/rstudio/rstudio.png $out/share/icons
for f in {diagnostics,rpostback,rstudio}; do
ln -s $out/lib/rstudio/bin/$f $out/bin
done
for f in .gitignore .Rbuildignore LICENSE README; do
find . -name $f -delete
done
rm -r $out/lib/rstudio/{INSTALL,COPYING,NOTICE,README.md,SOURCE,VERSION}
rm -r $out/lib/rstudio/bin/{pandoc/pandoc,pandoc}
'';
qtWrapperArgs = [
"--suffix PATH : ${lib.makeBinPath [ gnumake ]}"
];
desktopItems = [
(makeDesktopItem {
name = "${pname}";
exec = "rstudio %F";
icon = "rstudio";
desktopName = "RStudio";
genericName = "IDE";
comment = meta.description;
categories = "Development;";
mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;";
})
];
meta = with lib; {
description = "Set of integrated tools for the R language";
homepage = "https://www.rstudio.com/";
license = licenses.agpl3Only;
maintainers = with maintainers; [ ciil ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,83 @@
{
"name": "panmirror",
"version": "0.1.0",
"private": true,
"license": "agpl-3.0",
"dependencies": {
"@types/ace": "^0.0.43",
"@types/clipboard": "^2.0.1",
"@types/diff-match-patch": "^1.0.32",
"@types/js-yaml": "^3.12.3",
"@types/lodash.debounce": "^4.0.6",
"@types/lodash.uniqby": "^4.7.6",
"@types/orderedmap": "^1.0.0",
"@types/prosemirror-commands": "^1.0.3",
"@types/prosemirror-dev-tools": "^2.1.0",
"@types/prosemirror-dropcursor": "^1.0.0",
"@types/prosemirror-gapcursor": "^1.0.1",
"@types/prosemirror-history": "^1.0.1",
"@types/prosemirror-inputrules": "^1.0.3",
"@types/prosemirror-keymap": "^1.0.3",
"@types/prosemirror-model": "^1.7.2",
"@types/prosemirror-schema-list": "^1.0.1",
"@types/prosemirror-state": "^1.2.5",
"@types/prosemirror-tables": "^0.9.1",
"@types/prosemirror-transform": "^1.1.1",
"@types/react": "^16.9.32",
"@types/react-dom": "^16.9.6",
"@types/react-window": "^1.8.2",
"@types/zenscroll": "^4.0.0",
"biblatex-csl-converter": "^1.9.1",
"clipboard": "^2.0.6",
"diff-match-patch": "^1.0.4",
"fuse.js": "^6.0.4",
"js-yaml": "^3.13.1",
"lodash.debounce": "^4.0.8",
"lodash.uniqby": "^4.7.0",
"orderedmap": "^1.0.0",
"prosemirror-changeset": "^2.1.2",
"prosemirror-commands": "^1.1.4",
"prosemirror-dev-tools": "^2.1.1",
"prosemirror-dropcursor": "^1.3.2",
"prosemirror-gapcursor": "^1.1.5",
"prosemirror-history": "^1.1.3",
"prosemirror-inputrules": "^1.1.2",
"prosemirror-keymap": "^1.1.4",
"prosemirror-model": "^1.11.0",
"prosemirror-schema-list": "^1.1.4",
"prosemirror-state": "^1.3.3",
"prosemirror-tables": "^1.1.1",
"prosemirror-transform": "^1.2.8",
"prosemirror-utils": "^0.9.6",
"prosemirror-view": "^1.15.6",
"react": "^16.13.1",
"react-dom": "^16.13.1",
"react-window": "^1.8.5",
"sentence-splitter": "^3.2.0",
"thenby": "^1.3.3",
"tlite": "^0.1.9",
"typescript": "3.8.3",
"zenscroll": "^4.0.2"
},
"scripts": {
"format": "prettier --write \"src/**/*.ts\" \"src/**/*.tsx\"",
"lint": "tslint -c tslint.json 'src/**/*.{ts,tsx}'",
"watch": "tsc --watch --noEmit --project './tsconfig.json'",
"generate-symbols": "ts-node tools/generate-symbols.ts"
},
"devDependencies": {
"@types/node": "^14.0.4",
"@types/unzip": "^0.1.1",
"fast-xml-parser": "^3.17.1",
"fuse-box": "^3.7.1",
"prettier": "^1.18.2",
"terser": "^4.6.2",
"ts-node": "^8.10.2",
"tslint": "^5.20.0",
"tslint-config-prettier": "^1.18.0",
"tslint-react": "^5.0.0",
"typescript-tslint-plugin": "^0.5.5",
"uglify-js": "^3.7.4",
"unzip": "^0.1.11"
}
}

View file

@ -1,19 +1,23 @@
diff -ur rstudio-1.1.216-old/src/cpp/core/CMakeLists.txt rstudio-1.1.216-new/src/cpp/core/CMakeLists.txt
--- rstudio-1.1.216-old/src/cpp/core/r_util/REnvironmentPosix.cpp 2017-04-30 03:37:26.669418665 -0400
+++ rstudio-1.1.216-new/src/cpp/core/r_util/REnvironmentPosix.cpp 2017-04-30 03:36:33.590726185 -0400
@@ -87,10 +87,7 @@
diff --git a/src/cpp/core/r_util/REnvironmentPosix.cpp b/src/cpp/core/r_util/REnvironmentPosix.cpp
index dbc9a9a1..9a526a86 100644
--- a/src/cpp/core/r_util/REnvironmentPosix.cpp
+++ b/src/cpp/core/r_util/REnvironmentPosix.cpp
@@ -107,12 +107,9 @@ FilePath systemDefaultRScript(std::string* pErrMsg)
{
// define potential paths
std::vector<std::string> rScriptPaths;
- rScriptPaths.push_back("/usr/bin/R");
- rScriptPaths.push_back("/usr/local/bin/R");
- rScriptPaths.push_back("/opt/local/bin/R");
- rScriptPaths.push_back("/Library/Frameworks/R.framework/Resources/bin/R");
+ rScriptPaths.push_back("@R@/bin/R");
return scanForRScript(rScriptPaths, pErrMsg);
}
// check fallback paths
std::vector<std::string> rScriptPaths = {
- "/usr/bin/R",
- "/usr/local/bin/R",
- "/opt/local/bin/R",
+ "@R@/bin/R"
#ifdef __APPLE__
- "/opt/homebrew/bin/R",
- "/Library/Frameworks/R.framework/Resources/bin/R",
+ "@R@/bin/R",
#endif
};
@@ -226,8 +223,7 @@
@@ -225,8 +222,7 @@ FilePath systemDefaultRScript(std::string* pErrMsg)
// scan in standard locations as a fallback
std::string scanErrMsg;
std::vector<std::string> rScriptPaths;
@ -21,5 +25,6 @@ diff -ur rstudio-1.1.216-old/src/cpp/core/CMakeLists.txt rstudio-1.1.216-new/src
- rScriptPaths.push_back("/usr/bin/R");
+ rScriptPaths.push_back("@R@/bin/R");
FilePath scriptPath = scanForRScript(rScriptPaths, &scanErrMsg);
if (scriptPath.empty())
if (scriptPath.isEmpty())
{

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -14,17 +14,17 @@ let
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
sha256 = {
x86_64-linux = "1mpvikps5l2vynw7afrpkp4ah0q6q2q4q8d074b4vfwhaj1v6v75";
x86_64-darwin = "0r65wfyzc90lhd0i61xkb8kq9339b3ddyqp5dx7wf0aydgi203br";
aarch64-linux = "0d4kqjhyq8s7ini25m2igf37bzb2dw01jv62nps3yx3cr52vzyn2";
aarch64-darwin = "0h5g3h8z1wl7pz6ddlchnwqns956pyi1c3fjivsff0f0yhmdlva7";
armv7l-linux = "0fyxmq3i4kc1x013xs9flcbkmzzy9sqhjhcj5n38w6mswsb97qrv";
x86_64-linux = "069jdwqs9z2z95mjs9nx58rp1516dyyqn5bc0vgr7xvlbis97lq0";
x86_64-darwin = "1bd32dkpyfgknxqn76jcwpa47rac9q14glbf5sb1rh9rfav0m1m8";
aarch64-linux = "1axxnys3pd2qrvj6mqpa5cih44b4dbpgi8mvn616d8d45jgdnc1r";
aarch64-darwin = "0bdp0k20lfwpsl1a3dz6c97s0b5bp3rhb66jwgbyyc16zrz79r1z";
armv7l-linux = "077w5hvc4brb56zs0w37nr4a8vlcij5z3yrv3rz16p58nnkj56hs";
}.${system};
in
callPackage ./generic.nix rec {
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.61.0";
version = "1.61.1";
pname = "vscode";
executableName = "code" + lib.optionalString isInsiders "-insiders";

View file

@ -13,10 +13,10 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = {
x86_64-linux = "072wdzl8gp4ygprgza4cfg46fvrd13zx9za5fa8s6vsd9w1l95l7";
x86_64-darwin = "083sipxp9r7g6p6la15jjlib52l8xjbfxn2cb05scigq3zsyffy7";
aarch64-linux = "1s82f6ba57r7bnjhbanmih5g7wa001sf6php1402w06cxxy7dz00";
armv7l-linux = "113nk1rqw07giqq8pnc11dymzxdhj3nn3q2p0fppnm3lpccaq9hs";
x86_64-linux = "0ic7h5aq1lyplk01bydqwrvz40h59sf0n0q4gxj844k4qidy14md";
x86_64-darwin = "15s3vj7740ksb82gdjqpxw6cyd45ymdpacamkqk800929cv715qs";
aarch64-linux = "0n3bxggfzlr1cqarq861yfqka3qfgpwvk8j22l7dv4vki06f8jzy";
armv7l-linux = "0jksfdals8xf3vh5hqrd40pj5qn8byjrakjnrv926qznxjj152bn";
}.${system};
sourceRoot = {
@ -31,7 +31,7 @@ in
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.61.0";
version = "1.61.1";
pname = "vscodium";
executableName = "codium";

View file

@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
description = "A boxy 3D model editor powered by Electron";
homepage = "https://blockbench.net/";
license = licenses.gpl3Only;
maintainers = [ maintainers.ronthecookie ];
maintainers = [ maintainers.ckie ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -33,11 +33,11 @@
stdenv.mkDerivation rec {
pname = "gthumb";
version = "3.11.4";
version = "3.12.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "sha256-3ZsPiUXX34Ev/a3OyMO94dyXZyMy4AVt5Cp/ELZLIGw=";
sha256 = "sha256-Pe/8AwOE5ktXNhxDfHm0ga4Uie9EyHroVugbsQ2OOD8=";
};
nativeBuildInputs = [

View file

@ -10,14 +10,14 @@
python3Packages.buildPythonPackage rec {
pname = "hydrus";
version = "457";
version = "458";
format = "other";
src = fetchFromGitHub {
owner = "hydrusnetwork";
repo = "hydrus";
rev = "v${version}";
sha256 = "sha256-ZXBVJc+9dFzi75JYl3U3ic0MKolWMsdR3UkLe5EOzsw=";
sha256 = "sha256-oVNgXelFMVT5V41SRlnN+pnYzOWbdDKQQcvRWFZqEro=";
};
nativeBuildInputs = [

View file

@ -113,7 +113,6 @@ stdenv.mkDerivation {
'';
homepage = "http://www.sane-project.org/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ peti ];
platforms = platforms.linux;
};
}

View file

@ -23,7 +23,6 @@ stdenv.mkDerivation rec {
description = "Scanner Access Now Easy";
homepage = "http://www.sane-project.org/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ peti ];
platforms = platforms.linux;
};
}

View file

@ -27,7 +27,6 @@ stdenv.mkDerivation rec {
homepage = "http://www.sane-project.org/";
description = "Graphical scanning frontend for sane";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [peti];
platforms = with lib.platforms; linux;
};
}

View file

@ -41,11 +41,11 @@
stdenv.mkDerivation rec {
pname = "shotwell";
version = "0.31.3";
version = "0.30.14";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1wkahbnnfxmi1jc5zmm3h761nrnkdks8lk0rj38bfkwg90h6zqwd";
sha256 = "sha256-McLkgzkI02GcssNnWgXw2lnCuqduKLkFOF/VbADBKJU=";
};
nativeBuildInputs = [

View file

@ -33,11 +33,11 @@
}:
stdenv.mkDerivation rec {
pname = "1password";
version = "8.2.0";
version = "8.3.0";
src = fetchurl {
url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
sha256 = "1hnpvvval8a9ny5x5zffn5lf5qrwc4hcs3jvhqmd7m4adh2i6y2i";
sha256 = "1cakv316ipwyw6s3x4a6qhl0nmg17bxhh08c969gma3svamh1grw";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -3,13 +3,13 @@
python3Packages.buildPythonApplication rec {
pname = "electron-cash";
version = "4.2.4";
version = "4.2.5";
src = fetchFromGitHub {
owner = "Electron-Cash";
repo = "Electron-Cash";
rev = version;
sha256 = "sha256-hiOS0cTaPqllb31p+6nU4GYvw/E1Hdn8yd3sppzGkqg=";
sha256 = "sha256-ALIrNnhpX46xdQdfJdx/9e/QtdyBEgi5xLrbuOBJR7o=";
};
propagatedBuildInputs = with python3Packages; [

View file

@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
IPSEC.
'';
platforms = platforms.unix;
maintainers = [ maintainers.peti ];
license = licenses.gpl2Plus;
};
}

View file

@ -19,14 +19,14 @@
stdenv.mkDerivation rec {
pname = "fnott";
version = "1.1.0";
version = "1.1.2";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "dnkl";
repo = "fnott";
rev = version;
sha256 = "sha256-gzU5AqjCIZlhLbnj/xuSGJ69ZhLv9zQxlM0Nn+MIX/U=";
sha256 = "sha256-+x3uN7Uj0fqO0kpHlOVnsshgEJA1z/6ZElKSTyLzfG4=";
};
nativeBuildInputs = [

View file

@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
homepage = "http://nostatic.org/grip";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ marcweber peti ];
maintainers = with lib.maintainers; [ marcweber ];
platforms = lib.platforms.linux;
};
}

View file

@ -4,9 +4,9 @@
, curl, writeShellScript, common-updater-scripts }:
let
url = "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.6.2-b5029032/Hubstaff-1.6.2-b5029032.sh";
version = "1.6.2-b5029032";
sha256 = "1q3gimg6bcpdnm1fkn1vq3b6shwgi6y84bixisyfcva5px7dmi4s";
url = "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.6.2-328c666b/Hubstaff-1.6.2-328c666b.sh";
version = "1.6.2-328c666b";
sha256 = "0fmlblw19qk9s9xsl0dl705cnns825wrlc7navii4bvbsn6ycl5v";
rpath = lib.makeLibraryPath
[ libX11 zlib libSM libICE libXext freetype libXrender fontconfig libXft

View file

@ -74,6 +74,5 @@ stdenv.mkDerivation rec {
homepage = "http://ikiwiki.info/";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.peti ];
};
}

View file

@ -121,4 +121,16 @@ in buildFHSUserEnv {
ln -sf ${lutris-unwrapped}/share/applications $out/share
ln -sf ${lutris-unwrapped}/share/icons $out/share
'';
meta = {
inherit (lutris-unwrapped.meta)
homepage
description
platforms
license
maintainers
broken;
mainProgram = "lutris";
};
}

View file

@ -2,47 +2,51 @@
, stdenv
, fetchFromGitHub
, gtk4
, gtksourceview
, hicolor-icon-theme
, json-glib
, libadwaita
, libgee
, meson
, ninja
, nix-update-script
, pantheon
, pkg-config
, python3
, vala
, wrapGAppsHook
, wrapGAppsHook4
}:
stdenv.mkDerivation rec {
pname = "notejot";
version = "3.1.5";
version = "3.2.0";
src = fetchFromGitHub {
owner = "lainsce";
repo = pname;
rev = version;
hash = "sha256-wsHQvN+sqAMs1QldiRoc9JlF4d54JFqNkqC+lyuHC7M=";
hash = "sha256-WyW1tGhO3+OykNa8BRavi93cBMOSBJw0M+0bwQHJOjU=";
};
patches = [
# build: use gtk4-update-icon-cache
# https://github.com/lainsce/notejot/pull/307
./use-gtk4-update-icon-cache.patch
];
nativeBuildInputs = [
meson
ninja
vala
pkg-config
python3
wrapGAppsHook
vala
wrapGAppsHook4
];
buildInputs = [
gtk4
gtksourceview
hicolor-icon-theme
json-glib
libadwaita
libgee
pantheon.elementary-icon-theme
pantheon.granite
];
postPatch = ''
@ -50,6 +54,10 @@ stdenv.mkDerivation rec {
patchShebangs build-aux/post_install.py
'';
passthru.updateScript = nix-update-script {
attrPath = pname;
};
meta = with lib; {
homepage = "https://github.com/lainsce/notejot";
description = "Stupidly-simple sticky notes applet";
@ -57,8 +65,4 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ AndersonTorres ] ++ teams.pantheon.members;
platforms = platforms.linux;
};
passthru.updateScript = nix-update-script {
attrPath = pname;
};
}

View file

@ -0,0 +1,20 @@
diff --git a/build-aux/post_install.py b/build-aux/post_install.py
index 1278304..fface6d 100644
--- a/build-aux/post_install.py
+++ b/build-aux/post_install.py
@@ -2,11 +2,13 @@
import os
import subprocess
-schemadir = os.path.join(os.environ['MESON_INSTALL_PREFIX'], 'share', 'glib-2.0', 'schemas')
+install_prefix = os.environ['MESON_INSTALL_PREFIX']
+icondir = os.path.join(install_prefix, 'share', 'icons', 'hicolor')
+schemadir = os.path.join(install_prefix, 'share', 'glib-2.0', 'schemas')
if not os.environ.get('DESTDIR'):
print('Compiling gsettings schemas…')
subprocess.call(['glib-compile-schemas', schemadir], shell=False)
print('Rebuilding desktop icons cache...')
- subprocess.call(['gtk-update-icon-cache', '/usr/share/icons/hicolor/'], shell=False)
+ subprocess.call(['gtk4-update-icon-cache', '-qtf', icondir], shell=False)

View file

@ -8,7 +8,6 @@
, gettext
, yelp-tools
, itstool
, libxmlxx3
, python
, pygobject3
, gtk3
@ -35,13 +34,13 @@
buildPythonApplication rec {
pname = "orca";
version = "40.0";
version = "41.0";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "0hq0zdcn80ficpcffbk667907v6m7dih3dhyc7ss01mrj3iyw000";
sha256 = "dpflFEXhn9d05osWCtr2aHuAgXLeBBdgLhaXZra21L0=";
};
patches = [
@ -58,7 +57,6 @@ buildPythonApplication rec {
autoreconfHook
wrapGAppsHook
pkg-config
libxmlxx3
gettext
yelp-tools
itstool

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "ttyper";
version = "0.2.5";
version = "0.3.0";
src = fetchFromGitHub {
owner = "max-niederman";
repo = pname;
rev = "v${version}";
sha256 = "1fsb77ky92fyv3ll6zrbxbd69gm85xnc6bivj7sc3sv5cxhgr7a5";
sha256 = "sha256-9vcoK2mFEivTSZE3KoQRHUr3AfQ/aN5eWP//Jagw3gU=";
};
cargoSha256 = "1sqdql0kfr1vsww6hkrp7yjlzx0mnhfma51z699hkx9c492sf1wk";
cargoSha256 = "sha256-VzO32b5oAoXR/Ei9up00XRM63I5kuG68TeX4KBCXIdo=";
meta = with lib; {
description = "Terminal-based typing test";

View file

@ -10,11 +10,11 @@
let isFullPackage = mediaSupport;
in stdenv.mkDerivation rec {
pname = if isFullPackage then "vifm-full" else "vifm";
version = "0.11";
version = "0.12";
src = fetchurl {
url = "https://github.com/vifm/vifm/releases/download/v${version}/vifm-${version}.tar.bz2";
sha256 = "0rqyd424y0g5b5basw2ybb60r9gar4f40d1xgzr3c2dsy4jpwvyh";
sha256 = "1h5j4y704nciyzg3aaav8sl3r5h9mpwq8f28cj65nnxk6a7n3a9k";
};
nativeBuildInputs = [ pkg-config makeWrapper ];

View file

@ -10,11 +10,11 @@
# Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs.
let
pname = "zettlr";
version = "1.8.9";
version = "2.0.0";
name = "${pname}-${version}";
src = fetchurl {
url = "https://github.com/Zettlr/Zettlr/releases/download/v${version}/Zettlr-${version}-x86_64.appimage";
sha256 = "sha256-1cU9HdPXrJ4ibSjOitO8iJfMIaGub/jjlb2lssYFfcU=";
sha256 = "sha256-MIFgNUuuneIIkPRVRarbx6UMoB/3sdJtKvbacUnwHX8=";
};
appimageContents = appimageTools.extractType2 {
inherit name src;

View file

@ -6,7 +6,7 @@
# Native build inputs:
, ninja, pkg-config
, python2, python3, perl
, python3, perl
, gnutar, which
, llvmPackages
# postPatch:
@ -34,6 +34,7 @@
, libva
, libdrm, wayland, libxkbcommon # Ozone
, curl
, epoxy
# postPatch:
, glibc # gconv + locale
@ -56,6 +57,10 @@ let
python3WithPackages = python3.withPackages(ps: with ps; [
ply jinja2 setuptools
]);
clangFormatPython3 = fetchurl {
url = "https://chromium.googlesource.com/chromium/tools/build/+/e77882e0dde52c2ccf33c5570929b75b4a2a2522/recipes/recipe_modules/chromium/resources/clang-format?format=TEXT";
sha256 = "0ic3hn65dimgfhakli1cyf9j3cxcqsf1qib706ihfhmlzxf7256l";
};
# The additional attributes for creating derivations based on the chromium
# source tree.
@ -122,7 +127,7 @@ let
nativeBuildInputs = [
ninja pkg-config
python2 python3WithPackages perl
python3WithPackages perl
gnutar which
llvmPackages.bintools
];
@ -147,6 +152,8 @@ let
libva
libdrm wayland mesa.drivers libxkbcommon
curl
] ++ optionals (chromiumVersionAtLeast "96") [
epoxy
] ++ optionals gnomeSupport [ gnome2.GConf libgcrypt ]
++ optional gnomeKeyringSupport libgnome-keyring3
++ optionals cupsSupport [ libgcrypt cups ]
@ -209,6 +216,9 @@ let
# Allow to put extensions into the system-path.
sed -i -e 's,/usr,/run/current-system/sw,' chrome/common/chrome_paths.cc
# We need the fix for https://bugs.chromium.org/p/chromium/issues/detail?id=1254408:
base64 --decode ${clangFormatPython3} > buildtools/linux64/clang-format
patchShebangs .
# Link to our own Node.js and Java (required during the build):
mkdir -p third_party/node/linux/node-linux-x64/bin

View file

@ -18,9 +18,9 @@
}
},
"beta": {
"version": "95.0.4638.40",
"sha256": "1v1n113rh5nzfbk5xaq4kp7fdg5n9rca978a9700nmrd0gqpd2hn",
"sha256bin64": "0xadlal8fb7hqjcq6d931if555spw72wa4d23m0fqcan31sky3i0",
"version": "95.0.4638.49",
"sha256": "11fiq6p2d99hl166pf39g83pk7m7ibi1zz19wj7qmcc7ql7006jz",
"sha256bin64": "04s81fnr01jq74fpl5n6jg8iw5iw6sdwyz40zja68h1crxh5d6d6",
"deps": {
"gn": {
"version": "2021-08-11",
@ -31,9 +31,9 @@
}
},
"dev": {
"version": "96.0.4662.6",
"sha256": "14vr0nlp195h0hwfsd43fifl9r3qr875fw2da3gi9l5yi0pxns2q",
"sha256bin64": "1lq114rsgxqrdh18f2x3i0iwdn5ijxw3jb6nrxjxx0c3bvlzhsw8",
"version": "96.0.4664.9",
"sha256": "0hlniaglnd19cb3k2wi9mmf56ws8i89lm5y2dbjpr7vqnmj6qc39",
"sha256bin64": "1crl8gbhjyaa0yhkvm4va0g9dyljra8n5zg9bd1znmjlk0c124x3",
"deps": {
"gn": {
"version": "2021-09-24",

View file

@ -1,7 +1,7 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl gnugrep gnused jq
set -eu -o pipefail
set -x -eu -o pipefail
cd $(dirname "${BASH_SOURCE[0]}")
@ -14,7 +14,7 @@ SHA256=$(nix-prefetch-url --quiet --unpack https://github.com/fluxcd/flux2/archi
SPEC_SHA256=$(nix-prefetch-url --quiet --unpack https://github.com/fluxcd/flux2/releases/download/${TAG}/manifests.tar.gz)
setKV () {
sed -i "s|$1 = \".*\"|$1 = \"$2\"|" ./default.nix
sed -i "s|$1 = \".*\"|$1 = \"${2:-}\"|" ./default.nix
}
setKV version ${VERSION}
@ -24,8 +24,15 @@ setKV vendorSha256 ""
cd ../../../../../
set +e
VENDOR_SHA256=$(nix-build --no-out-link -A fluxcd 2>&1 | grep "got:" | cut -d':' -f2 | sed 's/ //g')
VENDOR_SHA256=$(nix-build --no-out-link -A fluxcd 2>&1 | grep "got:" | cut -d':' -f2 | sed 's| ||g')
set -e
cd - > /dev/null
setKV vendorSha256 ${VENDOR_SHA256}
if [ -n "${VENDOR_SHA256:-}" ]; then
setKV vendorSha256 ${VENDOR_SHA256}
else
echo "Update failed. VENDOR_SHA256 is empty."
exit 1
fi

View file

@ -2,10 +2,12 @@
{
helm-diff = callPackage ./helm-diff.nix {};
helm-diff = callPackage ./helm-diff.nix { };
helm-s3 = callPackage ./helm-s3.nix {};
helm-git = callPackage ./helm-git.nix { };
helm-secrets = callPackage ./helm-secrets.nix {};
helm-s3 = callPackage ./helm-s3.nix { };
helm-secrets = callPackage ./helm-secrets.nix { };
}

View file

@ -0,0 +1,46 @@
{ lib
, stdenv
, fetchFromGitHub
, coreutils
, findutils
, git
, gnugrep
, gnused
, makeWrapper
}:
stdenv.mkDerivation rec {
pname = "helm-git";
version = "0.10.0";
src = fetchFromGitHub {
owner = "aslafy-z";
repo = pname;
rev = "v${version}";
sha256 = "0hvycqibmlw2zw3nm8rn73v5x1zcgm2jrfdlljbvc1n4n5vnzdrg";
};
nativeBuildInputs = [ makeWrapper ];
# NOTE: helm-git is comprised of shell scripts.
dontBuild = true;
installPhase = ''
install -dm755 $out/helm-git
install -m644 -Dt $out/helm-git plugin.yaml
cp helm-git helm-git-plugin.sh $out/helm-git/
patchShebangs $out/helm-git/helm-git{,-plugin.sh}
wrapProgram $out/helm-git/helm-git \
--prefix PATH : ${lib.makeBinPath [ coreutils findutils git gnugrep gnused ]}
runHook postInstall
'';
meta = with lib; {
description = "The Helm downloader plugin that provides GIT protocol support";
inherit (src.meta) homepage;
license = licenses.mit;
maintainers = with maintainers; [ flokli ];
};
}

View file

@ -1,7 +1,7 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl gnugrep gnused jq
set -eu -o pipefail
set -x -eu -o pipefail
WORKDIR=$(mktemp -d)
trap "rm -rf ${WORKDIR}" EXIT
@ -45,7 +45,7 @@ CNIPLUGINS_SHA256=$(nix-prefetch-url --quiet --unpack \
"https://github.com/rancher/plugins/archive/refs/tags/v${CNIPLUGINS_VERSION}.tar.gz")
setKV () {
sed -i "s|$1 = \".*\"|$1 = \"$2\"|" ./default.nix
sed -i "s|$1 = \".*\"|$1 = \"${2:-}\"|" ./default.nix
}
setKV k3sVersion ${K3S_VERSION}

View file

@ -0,0 +1,44 @@
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
buildGoModule rec {
pname = "kn";
version = "0.26.0";
src = fetchFromGitHub {
owner = "knative";
repo = "client";
rev = "v${version}";
sha256 = "sha256-hquxv1BluR535WvMtJlVyP7JuARDNGDjPAbdSSj2juo=";
};
vendorSha256 = null;
subPackages = [ "cmd/kn" ];
nativeBuildInputs = [ installShellFiles ];
ldflags = [
"-X knative.dev/client/pkg/kn/commands/version.Version=v${version}"
"-X knative.dev/client/pkg/kn/commands/version.VersionEventing=v${version}"
"-X knative.dev/client/pkg/kn/commands/version.VersionServing=v${version}"
];
postInstall = ''
installShellCompletion --cmd kn \
--bash <($out/bin/kn completion bash) \
--zsh <($out/bin/kn completion zsh)
'';
doInstallCheck = true;
installCheckPhase = ''
$out/bin/kn version | grep ${version} > /dev/null
'';
meta = with lib; {
description = "The Knative client kn is your door to the Knative world. It allows you to create Knative resources interactively from the command line or from within scripts";
homepage = "https://github.com/knative/client";
changelog = "https://github.com/knative/client/releases/tag/v${version}";
license = licenses.asl20;
maintainers = with maintainers; [ bryanasdev000 ];
};
}

View file

@ -111,7 +111,7 @@ GEM
zeitwerk (2.4.2)
PLATFORMS
x86_64-linux
ruby
DEPENDENCIES
krane

View file

@ -1,7 +1,7 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl gnugrep gnused jq
set -eu -o pipefail
set -x -eu -o pipefail
cd $(dirname "$0")
@ -14,7 +14,7 @@ VERSION=$(echo ${TAG} | sed 's/^edge-//')
SHA256=$(nix-prefetch-url --quiet --unpack https://github.com/linkerd/linkerd2/archive/refs/tags/${TAG}.tar.gz)
setKV () {
sed -i "s|$1 = \".*\"|$1 = \"$2\"|" ./edge.nix
sed -i "s|$1 = \".*\"|$1 = \"${2:-}\"|" ./edge.nix
}
setKV version ${VERSION}
@ -25,9 +25,9 @@ cd ../../../../../
set +e
VENDOR_SHA256=$(nix-build --no-out-link -A linkerd_edge 2>&1 | grep "got:" | cut -d':' -f2 | sed 's| ||g')
set -e
cd - > /dev/null
if [ -n "${VENDOR_SHA256:-}" ]; then
cd - > /dev/null
setKV vendorSha256 ${VENDOR_SHA256}
else
echo "Update failed. VENDOR_SHA256 is empty."

View file

@ -1,7 +1,7 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl gnugrep gnused jq
set -eu -o pipefail
set -x -eu -o pipefail
cd $(dirname "$0")
@ -14,7 +14,7 @@ VERSION=$(echo ${TAG} | sed 's/^stable-//')
SHA256=$(nix-prefetch-url --quiet --unpack https://github.com/linkerd/linkerd2/archive/refs/tags/${TAG}.tar.gz)
setKV () {
sed -i "s|$1 = \".*\"|$1 = \"$2\"|" ./default.nix
sed -i "s|$1 = \".*\"|$1 = \"${2:-}\"|" ./default.nix
}
setKV version ${VERSION}
@ -25,11 +25,11 @@ cd ../../../../../
set +e
VENDOR_SHA256=$(nix-build --no-out-link -A linkerd 2>&1 | grep "got:" | cut -d':' -f2 | sed 's| ||g')
set -e
cd - > /dev/null
if [ -n "${VENDOR_SHA256:-}" ]; then
cd - > /dev/null
setKV vendorSha256 ${VENDOR_SHA256}
setKV vendorSha256 ${VENDOR_SHA256}
else
echo "Update failed. VENDOR_SHA256 is empty."
exit 1
echo "Update failed. VENDOR_SHA256 is empty."
exit 1
fi

View file

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "nerdctl";
version = "0.11.2";
version = "0.12.1";
src = fetchFromGitHub {
owner = "containerd";
repo = pname;
rev = "v${version}";
sha256 = "sha256-QkUE4oImP0eg5tofGEUonKzffICG4b3SuPJz9S2ZNfE=";
sha256 = "sha256-FRu1h6DT43rPaa9dcgz83w9K+xtzJgB4l/eTu+Fbb+c=";
};
vendorSha256 = "sha256-mPOyF1S/g1FpUHHNc+cy0nxk6rK9txnZPYHOSvvfu70=";
vendorSha256 = "sha256-QFACe1/5MVbXKTknEyqjWclEQgJSZAJ/QljhLq/tWe4=";
nativeBuildInputs = [ makeWrapper installShellFiles ];

View file

@ -38,14 +38,14 @@ python-versions = "*"
[[package]]
name = "boto3"
version = "1.18.36"
version = "1.18.60"
description = "The AWS SDK for Python"
category = "main"
optional = false
python-versions = ">= 3.6"
[package.dependencies]
botocore = ">=1.21.36,<1.22.0"
botocore = ">=1.21.60,<1.22.0"
jmespath = ">=0.7.1,<1.0.0"
s3transfer = ">=0.5.0,<0.6.0"
@ -54,7 +54,7 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"]
[[package]]
name = "botocore"
version = "1.21.36"
version = "1.21.60"
description = "Low-level, data-driven core of boto 3."
category = "main"
optional = false
@ -70,7 +70,7 @@ crt = ["awscrt (==0.11.24)"]
[[package]]
name = "certifi"
version = "2021.5.30"
version = "2021.10.8"
description = "Python package for providing Mozilla's CA Bundle."
category = "main"
optional = false
@ -89,7 +89,7 @@ pycparser = "*"
[[package]]
name = "charset-normalizer"
version = "2.0.4"
version = "2.0.7"
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
category = "main"
optional = false
@ -151,7 +151,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
[[package]]
name = "jinja2"
version = "3.0.1"
version = "3.0.2"
description = "A very fast and expressive template engine."
category = "dev"
optional = false
@ -173,7 +173,7 @@ python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
[[package]]
name = "libvirt-python"
version = "7.7.0"
version = "7.8.0"
description = "The libvirt virtualization API python binding"
category = "main"
optional = false
@ -391,7 +391,7 @@ six = ">=1.5"
[[package]]
name = "pytz"
version = "2021.1"
version = "2021.3"
description = "World timezone definitions, modern and historical"
category = "dev"
optional = false
@ -549,7 +549,7 @@ test = ["pytest"]
[[package]]
name = "typeguard"
version = "2.12.1"
version = "2.13.0"
description = "Run-time type checker for Python"
category = "main"
optional = false
@ -569,7 +569,7 @@ python-versions = "*"
[[package]]
name = "urllib3"
version = "1.26.6"
version = "1.26.7"
description = "HTTP library with thread-safe connection pooling, file post, and more."
category = "main"
optional = false
@ -603,16 +603,16 @@ boto = [
{file = "boto-2.49.0.tar.gz", hash = "sha256:ea0d3b40a2d852767be77ca343b58a9e3a4b00d9db440efb8da74b4e58025e5a"},
]
boto3 = [
{file = "boto3-1.18.36-py3-none-any.whl", hash = "sha256:a7fccb61d95230322dd812629455df14167307c569077fa89d297eae73605ffb"},
{file = "boto3-1.18.36.tar.gz", hash = "sha256:4df1085f5c24504a1b1a6584947f27b67c26eda123f29d3cecce9b2fd683e09b"},
{file = "boto3-1.18.60-py3-none-any.whl", hash = "sha256:8f3face72d2ac6ad36bd7724410548891ce338b350e6f98574890a7b1d425d78"},
{file = "boto3-1.18.60.tar.gz", hash = "sha256:45709a04ec5fb67ce5a8eaade3eb0ab24d6eb08d9a9ca6bdb2153047896197fc"},
]
botocore = [
{file = "botocore-1.21.36-py3-none-any.whl", hash = "sha256:e3e522fbe0bad1197aa7182451dc05f650310e77cf0a77749f6a5e82794c53de"},
{file = "botocore-1.21.36.tar.gz", hash = "sha256:5b9a7d30e44b8a0a2bbbde62ae01bf6c349017e836985a0248552b00bbce7fae"},
{file = "botocore-1.21.60-py3-none-any.whl", hash = "sha256:890a5835ac00415ff78f1c7118a774aae83c0c70742284b68abd1176f9d05761"},
{file = "botocore-1.21.60.tar.gz", hash = "sha256:3e746ca75fb7539ba3f001169264fa54dfaded2477ffc8bd979ce1e1df200620"},
]
certifi = [
{file = "certifi-2021.5.30-py2.py3-none-any.whl", hash = "sha256:50b1e4f8446b06f41be7dd6338db18e0990601dce795c2b1686458aa7e8fa7d8"},
{file = "certifi-2021.5.30.tar.gz", hash = "sha256:2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee"},
{file = "certifi-2021.10.8-py2.py3-none-any.whl", hash = "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569"},
{file = "certifi-2021.10.8.tar.gz", hash = "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872"},
]
cffi = [
{file = "cffi-1.14.6-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:22b9c3c320171c108e903d61a3723b51e37aaa8c81255b5e7ce102775bd01e2c"},
@ -662,8 +662,8 @@ cffi = [
{file = "cffi-1.14.6.tar.gz", hash = "sha256:c9a875ce9d7fe32887784274dd533c57909b7b1dcadcc128a2ac21331a9765dd"},
]
charset-normalizer = [
{file = "charset-normalizer-2.0.4.tar.gz", hash = "sha256:f23667ebe1084be45f6ae0538e4a5a865206544097e4e8bbcacf42cd02a348f3"},
{file = "charset_normalizer-2.0.4-py3-none-any.whl", hash = "sha256:0c8911edd15d19223366a194a513099a302055a962bca2cec0f54b8b63175d8b"},
{file = "charset-normalizer-2.0.7.tar.gz", hash = "sha256:e019de665e2bcf9c2b64e2e5aa025fa991da8720daa3c1138cadd2fd1856aed0"},
{file = "charset_normalizer-2.0.7-py3-none-any.whl", hash = "sha256:f7af805c321bfa1ce6714c51f254e0d5bb5e5834039bc17db7ebe3a4cec9492b"},
]
colorama = [
{file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"},
@ -676,6 +676,8 @@ cryptography = [
{file = "cryptography-3.4.8-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34dae04a0dce5730d8eb7894eab617d8a70d0c97da76b905de9efb7128ad7085"},
{file = "cryptography-3.4.8-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1eb7bb0df6f6f583dd8e054689def236255161ebbcf62b226454ab9ec663746b"},
{file = "cryptography-3.4.8-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:9965c46c674ba8cc572bc09a03f4c649292ee73e1b683adb1ce81e82e9a6a0fb"},
{file = "cryptography-3.4.8-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:3c4129fc3fdc0fa8e40861b5ac0c673315b3c902bbdc05fc176764815b43dd1d"},
{file = "cryptography-3.4.8-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:695104a9223a7239d155d7627ad912953b540929ef97ae0c34c7b8bf30857e89"},
{file = "cryptography-3.4.8-cp36-abi3-win32.whl", hash = "sha256:21ca464b3a4b8d8e86ba0ee5045e103a1fcfac3b39319727bc0fc58c09c6aff7"},
{file = "cryptography-3.4.8-cp36-abi3-win_amd64.whl", hash = "sha256:3520667fda779eb788ea00080124875be18f2d8f0848ec00733c0ec3bb8219fc"},
{file = "cryptography-3.4.8-pp36-pypy36_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:d2a6e5ef66503da51d2110edf6c403dc6b494cc0082f85db12f54e9c5d4c3ec5"},
@ -701,15 +703,15 @@ imagesize = [
{file = "imagesize-1.2.0.tar.gz", hash = "sha256:b1f6b5a4eab1f73479a50fb79fcf729514a900c341d8503d62a62dbc4127a2b1"},
]
jinja2 = [
{file = "Jinja2-3.0.1-py3-none-any.whl", hash = "sha256:1f06f2da51e7b56b8f238affdd6b4e2c61e39598a378cc49345bc1bd42a978a4"},
{file = "Jinja2-3.0.1.tar.gz", hash = "sha256:703f484b47a6af502e743c9122595cc812b0271f661722403114f71a79d0f5a4"},
{file = "Jinja2-3.0.2-py3-none-any.whl", hash = "sha256:8569982d3f0889eed11dd620c706d39b60c36d6d25843961f33f77fb6bc6b20c"},
{file = "Jinja2-3.0.2.tar.gz", hash = "sha256:827a0e32839ab1600d4eb1c4c33ec5a8edfbc5cb42dafa13b81f182f97784b45"},
]
jmespath = [
{file = "jmespath-0.10.0-py2.py3-none-any.whl", hash = "sha256:cdf6525904cc597730141d61b36f2e4b8ecc257c420fa2f4549bac2c2d0cb72f"},
{file = "jmespath-0.10.0.tar.gz", hash = "sha256:b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9"},
]
libvirt-python = [
{file = "libvirt-python-7.7.0.tar.gz", hash = "sha256:cc8d6528cef7cf395c5d97566328f16faef6b5653a500b0e88c9c0fc36b72cdb"},
{file = "libvirt-python-7.8.0.tar.gz", hash = "sha256:9d07416d66805bf1a17f34491b3ced2ac6c42b6a012ddf9177e0e3ae1b103fd5"},
]
markupsafe = [
{file = "MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d8446c54dc28c01e5a2dbac5a25f071f6653e6e40f3a8818e8b45d790fe6ef53"},
@ -804,8 +806,8 @@ python-dateutil = [
{file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"},
]
pytz = [
{file = "pytz-2021.1-py2.py3-none-any.whl", hash = "sha256:eb10ce3e7736052ed3623d49975ce333bcd712c7bb19a58b9e2089d4057d0798"},
{file = "pytz-2021.1.tar.gz", hash = "sha256:83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da"},
{file = "pytz-2021.3-py2.py3-none-any.whl", hash = "sha256:3672058bc3453457b622aab7a1c3bfd5ab0bdae451512f6cf25f64ed37f5b87c"},
{file = "pytz-2021.3.tar.gz", hash = "sha256:acad2d8b20a1af07d4e4c9d2e9285c5ed9104354062f275f3fcd88dcef4f1326"},
]
requests = [
{file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"},
@ -852,8 +854,8 @@ sphinxcontrib-serializinghtml = [
{file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"},
]
typeguard = [
{file = "typeguard-2.12.1-py3-none-any.whl", hash = "sha256:cc15ef2704c9909ef9c80e19c62fb8468c01f75aad12f651922acf4dbe822e02"},
{file = "typeguard-2.12.1.tar.gz", hash = "sha256:c2af8b9bdd7657f4bd27b45336e7930171aead796711bc4cfc99b4731bb9d051"},
{file = "typeguard-2.13.0-py3-none-any.whl", hash = "sha256:0bc44d1ff865b522eda969627868b0e001c8329296ce50aededbea03febc79ee"},
{file = "typeguard-2.13.0.tar.gz", hash = "sha256:04e38f92eb59410c9375d3be23df65e0a7643f2e8bcbd421423d808d2f9e99df"},
]
typing-extensions = [
{file = "typing_extensions-3.10.0.2-py2-none-any.whl", hash = "sha256:d8226d10bc02a29bcc81df19a26e56a9647f8b0a6d4a83924139f4a8b01f17b7"},
@ -861,6 +863,6 @@ typing-extensions = [
{file = "typing_extensions-3.10.0.2.tar.gz", hash = "sha256:49f75d16ff11f1cd258e1b988ccff82a3ca5570217d7ad8c5f48205dd99a677e"},
]
urllib3 = [
{file = "urllib3-1.26.6-py2.py3-none-any.whl", hash = "sha256:39fb8672126159acb139a7718dd10806104dec1e2f0f6c88aab05d17df10c8d4"},
{file = "urllib3-1.26.6.tar.gz", hash = "sha256:f57b4c16c62fa2760b7e3d97c35b255512fb6b59a259730f36ba32ce9f8e342f"},
{file = "urllib3-1.26.7-py2.py3-none-any.whl", hash = "sha256:c4fdf4019605b6e5423637e01bc9fe4daef873709a7973e195ceba0a62bbc844"},
{file = "urllib3-1.26.7.tar.gz", hash = "sha256:4987c65554f7a2dbf30c18fd48778ef124af6fab771a377103da0585e2336ece"},
]

View file

@ -6,6 +6,6 @@
callPackage ./generic.nix {
inherit buildGoPackage nvidia_x11 nvidiaGpuSupport;
version = "1.0.11";
sha256 = "15h7w020p576zl91s5mr4npcmngrqqfj9xzlx6bk9i1cp6h4w0jy";
version = "1.0.12";
sha256 = "04fqliz7y4zzs4xraid54mqxwgrzh138nmfcs876vp534slvikpi";
}

View file

@ -6,7 +6,7 @@
callPackage ./genericModule.nix {
inherit buildGoModule nvidia_x11 nvidiaGpuSupport;
version = "1.1.5";
sha256 = "03gxh12bd5mj1l4q3xilil806dsqaqmz93ff7ysf441frgkx3iy3";
version = "1.1.6";
sha256 = "1q6fqay1s9qwimjwlldc8hr6009cgx3ghz142mdx36jjv9isj9ln";
vendorSha256 = "0rfd22rf76mwj489zhswah4g3dhhz6davm336xgm9dbnyaz9d8r0";
}

View file

@ -1095,12 +1095,13 @@
"version": "0.1.0"
},
"vault": {
"owner": "terraform-providers",
"owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/vault",
"repo": "terraform-provider-vault",
"rev": "v2.11.0",
"sha256": "1yzakc7jp0rs9axnfdqw409asrbjhq0qa7xn4xzpi7m94g1ii12d",
"version": "2.11.0"
"rev": "v2.24.1",
"sha256": "1xk14q06js774lqyylkbp53dnlsbgh3vi38mqqmndh80xigs6d99",
"version": "2.24.1",
"vendorSha256": "1ksla455qfgxpk2dmq3pg52nyyw3v0bg6fm5s60j6cb0lzvjbq48"
},
"vcd": {
"owner": "terraform-providers",

View file

@ -195,8 +195,8 @@ rec {
};
terraform_1_0 = mkTerraform {
version = "1.0.8";
sha256 = "1755m3h9iz086znjpkhxjbyl3jaxpsqmk73infn9wbhql8pq2wil";
version = "1.0.9";
sha256 = "0g97l53xrcafjrzz5inij4q4aaadibn5ilr5j39a6569pkvcvsh3";
vendorSha256 = "00cl42w1mzsi9qd09wydfvp5f2h7lxaay6s2dv0mf47k6h7prf42";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };

View file

@ -2,14 +2,14 @@
python3Packages.buildPythonApplication rec {
pname = "flexget";
version = "3.1.137";
version = "3.1.139";
# Fetch from GitHub in order to use `requirements.in`
src = fetchFromGitHub {
owner = "flexget";
repo = "flexget";
rev = "v${version}";
sha256 = "15zl97laijn42rhh524rfb3h1rky461hwfnlny2maa3h61889xrv";
sha256 = "0gnj89q5mv5qiy6zsp85sswmwzm0y73nffjj3vrccx5lmxd955nv";
};
postPatch = ''

View file

@ -2,7 +2,7 @@
freetype, fontconfig, dbus, libX11, xorg, libXi, libXcursor, libXdamage,
libXrandr, libXcomposite, libXext, libXfixes, libXrender, libXtst,
libXScrnSaver, nss, nspr, alsa-lib, cups, expat, udev, wrapGAppsHook,
hicolor-icon-theme, libuuid, at-spi2-core, at-spi2-atk }:
hicolor-icon-theme, libuuid, at-spi2-core, at-spi2-atk, libappindicator-gtk3 }:
let
rpath = lib.makeLibraryPath [
@ -21,6 +21,7 @@ let
gnome2.GConf
gtk3
pango
libappindicator-gtk3
libuuid
libX11
libXScrnSaver

View file

@ -1,33 +1,47 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, glib, openssl
, glibcLocales, expect, ncurses, libotr, curl, readline, libuuid
, cmocka, libmicrohttpd, expat, sqlite, libmesode, autoconf-archive
, autoAwaySupport ? true, libXScrnSaver ? null, libX11 ? null
, notifySupport ? true, libnotify ? null, gdk-pixbuf ? null
, traySupport ? true, gtk2 ? null
, pgpSupport ? true, gpgme ? null
, pythonPluginSupport ? true, python ? null
, omemoSupport ? true, libsignal-protocol-c ? null, libgcrypt ? null
{ lib
, stdenv
, fetchFromGitHub
, autoconf-archive
, autoreconfHook
, cmocka
, curl
, expat
, expect
, glib
, glibcLocales
, libmesode
, libmicrohttpd
, libotr
, libuuid
, ncurses
, openssl
, pkg-config
, readline
, sqlite
, autoAwaySupport ? true, libXScrnSaver ? null, libX11
, notifySupport ? true, libnotify, gdk-pixbuf
, omemoSupport ? true, libsignal-protocol-c, libgcrypt
, pgpSupport ? true, gpgme
, pythonPluginSupport ? true, python
, traySupport ? true, gtk
}:
assert autoAwaySupport -> libXScrnSaver != null && libX11 != null;
assert notifySupport -> libnotify != null && gdk-pixbuf != null;
assert traySupport -> gtk2 != null;
assert traySupport -> gtk != null;
assert pgpSupport -> gpgme != null;
assert pythonPluginSupport -> python != null;
assert omemoSupport -> libsignal-protocol-c != null && libgcrypt != null;
with lib;
stdenv.mkDerivation rec {
pname = "profanity";
version = "0.11.0";
version = "0.11.1";
src = fetchFromGitHub {
owner = "profanity-im";
repo = "profanity";
rev = version;
sha256 = "0xmzsh0szm8x3hgw65j0cd2bp8cmrnq5pjz49lqajircyzflsngm";
hash = "sha256-8WGHOy0fSW8o7vMCYZqqpvDsn81JZefM6wGfjQ5iKbU=";
};
patches = [
@ -37,26 +51,42 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
nativeBuildInputs = [
autoreconfHook autoconf-archive glibcLocales pkg-config
autoconf-archive
autoreconfHook
glibcLocales
pkg-config
];
buildInputs = [
expect readline libuuid glib openssl expat ncurses libotr
curl libmesode cmocka libmicrohttpd sqlite
] ++ optionals autoAwaySupport [ libXScrnSaver libX11 ]
++ optionals notifySupport [ libnotify gdk-pixbuf ]
++ optionals traySupport [ gtk2 ]
++ optionals pgpSupport [ gpgme ]
++ optionals pythonPluginSupport [ python ]
++ optionals omemoSupport [ libsignal-protocol-c libgcrypt ];
cmocka
curl
expat
expect
glib
libmesode
libmicrohttpd
libotr
libuuid
ncurses
openssl
readline
sqlite
] ++ lib.optionals autoAwaySupport [ libXScrnSaver libX11 ]
++ lib.optionals notifySupport [ libnotify gdk-pixbuf ]
++ lib.optionals omemoSupport [ libsignal-protocol-c libgcrypt ]
++ lib.optionals pgpSupport [ gpgme ]
++ lib.optionals pythonPluginSupport [ python ]
++ lib.optionals traySupport [ gtk ];
# Enable feature flags, so that build fail if libs are missing
configureFlags = [ "--enable-c-plugins" "--enable-otr" ]
++ optionals notifySupport [ "--enable-notifications" ]
++ optionals traySupport [ "--enable-icons-and-clipboard" ]
++ optionals pgpSupport [ "--enable-pgp" ]
++ optionals pythonPluginSupport [ "--enable-python-plugins" ]
++ optionals omemoSupport [ "--enable-omemo" ];
configureFlags = [
"--enable-c-plugins"
"--enable-otr"
] ++ lib.optionals notifySupport [ "--enable-notifications" ]
++ lib.optionals traySupport [ "--enable-icons-and-clipboard" ]
++ lib.optionals pgpSupport [ "--enable-pgp" ]
++ lib.optionals pythonPluginSupport [ "--enable-python-plugins" ]
++ lib.optionals omemoSupport [ "--enable-omemo" ];
preAutoreconf = ''
mkdir m4
@ -66,18 +96,15 @@ stdenv.mkDerivation rec {
LC_ALL = "en_US.utf8";
meta = {
meta = with lib; {
homepage = "http://www.profanity.im/";
description = "A console based XMPP client";
longDescription = ''
Profanity is a console based XMPP client written in C using ncurses and
libstrophe, inspired by Irssi.
'';
homepage = "http://www.profanity.im/";
license = licenses.gpl3Plus;
platforms = platforms.unix;
changelog = "https://github.com/profanity-im/profanity/releases/tag/${version}";
downloadPage = "https://github.com/profanity-im/profanity/releases/";
maintainers = [ maintainers.devhell ];
updateWalker = true;
platforms = platforms.unix;
};
}

View file

@ -40,15 +40,43 @@ assert builtins.elem (lib.toLower chatType) [
assert enablePsiMedia -> enablePlugins;
mkDerivation rec {
mkDerivation {
pname = "psi-plus";
version = "1.5.1549";
# Version mask is “X.X.XXXX-R” where “X.X.XXXX” is a mandatory version of Psi
# and “-R” ending is optional revision number.
#
# The “psi-plus-snapshots” generally provides snapshots of these separate
# repositories glued together (there are also dependencies/libraries):
#
# 1. Psi
# 2. Plugins pack for Psi
# 3. “psimedia” plugin
# 4. Resources for Psi (icons, skins, sounds)
#
# “X.X.XXXX” is literally a version of Psi.
# So often when for instance plugins are updated separately a new snapshot is
# created. And that snapshot would also be linked to “X.X.XXXX” version.
# So many commits may have the same associated version of the snapshot.
# But mind that only one Git tag is created for “X.X.XXXX” version.
#
# Its not yet defined in the Psi+ project what value to use as a version for
# any further releases that dont change Psi version.
#
# Lets do what Debian does for instance (appends “-R” where “R” is a revision
# number).
# E.g. https://tracker.debian.org/news/1226321/psi-plus-14554-5-migrated-to-testing/
#
# This has been communicated with the Psi+ main devs in this XMPP MUC chat:
# psi-dev@conference.jabber.ru
#
version = "1.5.1556-2";
src = fetchFromGitHub {
owner = "psi-plus";
repo = "psi-plus-snapshots";
rev = version;
sha256 = "0jpv6qzfg6xjwkrnci7fav27nxm174i9l5g4vmsbchqpwfk90z2m";
rev = "635879010b6697f7041a7bbea1853a1f4673c7f7";
sha256 = "18xvljcm0a9swkyz4diwxi4xaj0w27jnhfgpi8fv5fj11j0g1b3a";
};
cmakeFlags = [
@ -96,7 +124,7 @@ mkDerivation rec {
meta = with lib; {
homepage = "https://psi-plus.com";
description = "XMPP (Jabber) client";
description = "XMPP (Jabber) client based on Qt5";
maintainers = with maintainers; [ orivej misuzu unclechu ];
license = licenses.gpl2Only;
platforms = platforms.linux;

View file

@ -4,13 +4,13 @@
}:
let
version = "1.7.1";
version = "1.7.3";
in
appimageTools.wrapType2 {
name = "session-desktop-appimage-${version}";
src = fetchurl {
url = "https://github.com/oxen-io/session-desktop/releases/download/v${version}/session-desktop-linux-x86_64-${version}.AppImage";
sha256 = "126dx37099pjaqgfv5gbmvn5iiwv2a8lvfbqy5i9h1w1gqnihwq6";
sha256 = "0s0zvj9ddrngdzsx8hd07pq3150sq8ab1hbpsi9i2ir99sv1p7gn";
};
meta = with lib; {

View file

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "alpine";
version = "2.24";
version = "2.25";
src = fetchurl {
url = "http://alpine.x10host.com/alpine/release/src/${pname}-${version}.tar.xz";
sha256 = "1vxw19nx10y7nx01d9i6gah2f3y5r2idbq56l13bdqi91bx9y6k5";
sha256 = "0xppxhcbafq9qa1rns5zl0n238gai08xhvcf2as0nx7nh84ib2k5";
};
buildInputs = [

View file

@ -1,27 +1,19 @@
{ lib, stdenv, fetchFromGitHub, gettext, makeWrapper, tcl, which, fetchpatch
{ lib, stdenv, fetchFromGitHub, gettext, makeWrapper, tcl, which
, ncurses, perl , cyrus_sasl, gss, gpgme, libkrb5, libidn, libxml2, notmuch, openssl
, lmdb, libxslt, docbook_xsl, docbook_xml_dtd_42, w3m, mailcap, sqlite, zlib
}:
stdenv.mkDerivation rec {
version = "20210205";
version = "20211015";
pname = "neomutt";
src = fetchFromGitHub {
owner = "neomutt";
repo = "neomutt";
rev = version;
sha256 = "sha256-ADg/+gmndOiuQHsncOzS5K4chthXeUFz6RRJsrZNeZY=";
sha256 = "sha256-ObYeh9Q/WZ1N60pxR2LoDNCU8rP4tQt/oIxnqALqMhs=";
};
patches = [
(fetchpatch {
name = "CVE-2021-32055.patch";
url = "https://github.com/neomutt/neomutt/commit/fa1db5785e5cfd9d3cd27b7571b9fe268d2ec2dc.patch";
sha256 = "0bb7gisjynq3w7hhl6vxa469h609bcz6fkdi8vf740pqrwhk68yn";
})
];
buildInputs = [
cyrus_sasl gss gpgme libkrb5 libidn ncurses
notmuch openssl perl lmdb

View file

@ -1,28 +1,54 @@
{ lib, fetchurl, appimageTools }:
{ stdenv, lib, fetchurl, makeDesktopItem, copyDesktopItems, makeWrapper,
electron, libsecret }:
let
stdenv.mkDerivation rec {
pname = "tutanota-desktop";
version = "3.88.4";
name = "tutanota-desktop-${version}";
src = fetchurl {
url = "https://mail.tutanota.com/desktop/tutanota-desktop-linux.AppImage";
name = "tutanota-desktop-${version}.AppImage";
sha256 = "sha256-MwvH6SGZwcvxAr5olklqKTF2p2pv8+F5qwpmwN3uZkc=";
url = "https://github.com/tutao/tutanota/releases/download/tutanota-release-${version}/${pname}-${version}-unpacked-linux.tar.gz";
name = "tutanota-desktop-${version}.tar.gz";
sha256 = "sha256-UOb63+NfW6mHKaj3PDEzvz5hcmJBIISq02rtwgSZMjo=";
};
appimageContents = appimageTools.extractType2 { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
nativeBuildInputs = [
copyDesktopItems
makeWrapper
];
extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libsecret ];
dontConfigure = true;
dontBuild = true;
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
desktopItems = makeDesktopItem {
name = pname;
exec = "tutanota-desktop";
icon = "tutanota-desktop";
comment = meta.description;
desktopName = "Tutanota Desktop";
genericName = "Email Reader";
};
install -m 444 -D ${appimageContents}/tutanota-desktop.desktop -t $out/share/applications
substituteInPlace $out/share/applications/tutanota-desktop.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/opt/tutanota-desktop $out/share/tutanota-desktop
cp -r ./ $out/opt/tutanota-desktop
mv $out/opt/tutanota-desktop/{locales,resources} $out/share/tutanota-desktop
for icon_size in 64 512; do
icon=resources/icons/icon/$icon_size.png
path=$out/share/icons/hicolor/$icon_size'x'$icon_size/apps/tutanota-desktop.png
install -Dm644 $icon $path
done
makeWrapper ${electron}/bin/electron \
$out/bin/tutanota-desktop \
--add-flags $out/share/tutanota-desktop/resources/app.asar \
--run "mkdir /tmp/tutanota" \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libsecret ]}
runHook postInstall
'';
meta = with lib; {

View file

@ -2,13 +2,13 @@
python3Packages.buildPythonPackage rec {
pname = "opsdroid";
version = "0.23.0";
version = "0.24.1";
src = fetchFromGitHub {
owner = "opsdroid";
repo = "opsdroid";
rev = "v${version}";
sha256 = "1p1x7jbp0jx8anfwvavyn3x8i1vfhmbzyzrm014n26v5y39gabj1";
sha256 = "15l2jvcpb9l8sgdd9zsvxqglf1r3vap0pp9cklpfa9jj0aik6nx9";
};
disabled = !python3Packages.isPy3k;

View file

@ -2,11 +2,11 @@
mkDerivation rec {
pname = "owncloud-client";
version = "2.9.0.5150";
version = "2.9.1.5500";
src = fetchurl {
url = "https://download.owncloud.com/desktop/ownCloud/stable/${version}/source/ownCloud-${version}.tar.xz";
sha256 = "0nf68x840p30yng4fh1nlyiqg40z0rkcv0lskpz8dd4pj1iw5jjs";
sha256 = "0h4dclxr6kmhmx318wvxz36lhyqw84q0mg4c6di6p230mp8b1l4v";
};
nativeBuildInputs = [ pkg-config cmake extra-cmake-modules ];

View file

@ -63,6 +63,6 @@ stdenv.mkDerivation rec {
meta = base.meta // {
description = "A fast incremental file transfer utility";
maintainers = with lib.maintainers; [ peti ehmry kampfschlaefer ];
maintainers = with lib.maintainers; [ ehmry kampfschlaefer ];
};
}

View file

@ -25,7 +25,6 @@ stdenv.mkDerivation {
description = "Convert MS Word documents to plain text or PostScript";
license = lib.licenses.gpl2;
maintainers = [ lib.maintainers.peti ];
platforms = with lib.platforms; linux ++ darwin;
};
}

View file

@ -110,7 +110,7 @@ stdenv.mkDerivation rec {
homepage = "http://www.gnucash.org/";
maintainers = [ lib.maintainers.peti lib.maintainers.domenkozar ];
maintainers = [ lib.maintainers.domenkozar ];
platforms = lib.platforms.gnu ++ lib.platforms.linux;
};
}

View file

@ -1,4 +1,5 @@
{ lib, stdenv
{ lib
, stdenv
, fetchFromGitHub
, nix-update-script
, meson
@ -6,25 +7,24 @@
, vala
, pkg-config
, desktop-file-utils
, pantheon
, python3
, glib
, gtk4
, json-glib
, libadwaita
, libgee
, wrapGAppsHook
, wrapGAppsHook4
}:
stdenv.mkDerivation rec {
pname = "khronos";
version = "3.5.9";
version = "3.6.0";
src = fetchFromGitHub {
owner = "lainsce";
repo = pname;
rev = version;
sha256 = "sha256-3FatmyANB/tNYSN2hu5IVkyCy0YrC3uA2d/3+5u48w8=";
sha256 = "sha256-AETyVCBUuBzHwDgTkGRIokFYwcmXrb/F85J5GEIu4dE=";
};
nativeBuildInputs = [
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
vala
pkg-config
python3
wrapGAppsHook
wrapGAppsHook4
];
buildInputs = [
@ -43,12 +43,14 @@ stdenv.mkDerivation rec {
json-glib
libadwaita
libgee
pantheon.granite
];
postPatch = ''
chmod +x build-aux/post_install.py
patchShebangs build-aux/post_install.py
# https://github.com/lainsce/khronos/pull/75
substituteInPlace build-aux/post_install.py \
--replace 'gtk-update-icon-cache' 'gtk4-update-icon-cache'
'';
passthru = {

View file

@ -1,50 +0,0 @@
{ appimageTools, fetchurl, lib, runCommand, stdenv, gsettings-desktop-schemas, gtk3, zlib }:
let
name = "${pname}-${version}";
pname = "minetime";
version = "1.8.10";
appimage = fetchurl {
url = "https://github.com/marcoancona/MineTime/releases/download/v${version}/${name}.AppImage";
sha256 = "1a80lgk6v9kv9xb2y3i08gk25jm0pqyl57kfr5p1rbc33prhmcgw";
};
extracted = appimageTools.extractType2 {
inherit name;
src = appimage;
};
patched = runCommand "minetime-patchelf" {} ''
cp -av ${extracted} $out
x=$out/resources/app.asar.unpacked/services/scheduling/dist/MinetimeSchedulingService
chmod +w $x
patchelf \
--set-interpreter ${stdenv.cc.bintools.dynamicLinker} \
--replace-needed libz.so.1 ${zlib}/lib/libz.so.1 \
$x
'';
in
appimageTools.wrapAppImage rec {
inherit name;
src = patched;
profile = ''
export LC_ALL=C.UTF-8
export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
'';
multiPkgs = null; # no 32bit needed
extraPkgs = ps:
appimageTools.defaultFhsEnvArgs.multiPkgs ps
++ (with ps; [ at-spi2-core at-spi2-atk libsecret libnotify ]);
extraInstallCommands = "mv $out/bin/{${name},${pname}}";
meta = with lib; {
description = "Modern, intuitive and smart calendar application";
homepage = "https://minetime.ai";
license = licenses.unfree;
# Should be cross-platform, but for now we just grab the appimage
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ dtzWill ];
};
}

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