Merge branch 'master' into r-updates

This commit is contained in:
Vladimír Čunát
2022-02-03 08:26:10 +01:00
357 changed files with 4473 additions and 4426 deletions
+10 -3
View File
@@ -2303,6 +2303,13 @@
githubId = 5561189;
name = "Cody Opel";
};
Cogitri = {
email = "oss@cogitri.dev";
github = "Cogitri";
githubId = 8766773;
matrix = "@cogitri:cogitri.dev";
name = "Rasmus Thomsen";
};
cohei = {
email = "a.d.xvii.kal.mai@gmail.com";
github = "cohei";
@@ -13613,10 +13620,10 @@
github = "nagisa";
githubId = 679122;
};
yevhenshymotiuk = {
yshym = {
name = "Yevhen Shymotiuk";
email = "yevhenshymotiuk@gmail.com";
github = "yevhenshymotiuk";
email = "yshym@pm.me";
github = "yshym";
githubId = 44244245;
};
hmenke = {
@@ -79,6 +79,12 @@
<link linkend="opt-services.filebeat.enable">services.filebeat</link>.
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://github.com/linux-apfs/linux-apfs-rw">apfs</link>,
a kernel module for mounting the Apple File System (APFS).
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://frrouting.org/">FRRouting</link>, a
@@ -415,6 +421,11 @@
unmaintained
</para>
</listitem>
<listitem>
<para>
<literal>tilp2</literal> was removed together with its module
</para>
</listitem>
<listitem>
<para>
The options
@@ -787,6 +798,14 @@
0042</link> configuration.
</para>
</listitem>
<listitem>
<para>
The default value for
<literal>programs.spacefm.settings.graphical_su</literal> got
unset. It previously pointed to <literal>gksu</literal> which
has been removed.
</para>
</listitem>
<listitem>
<para>
A new module was added for the
@@ -27,6 +27,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- [filebeat](https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-overview.html), a lightweight shipper for forwarding and centralizing log data. Available as [services.filebeat](#opt-services.filebeat.enable).
- [apfs](https://github.com/linux-apfs/linux-apfs-rw), a kernel module for mounting the Apple File System (APFS).
- [FRRouting](https://frrouting.org/), a popular suite of Internet routing protocol daemons (BGP, BFD, OSPF, IS-IS, VVRP and others). Available as [services.frr](#opt-services.ffr.babel.enable)
- [heisenbridge](https://github.com/hifi/heisenbridge), a bouncer-style Matrix IRC bridge. Available as [services.heisenbridge](options.html#opt-services.heisenbridge.enable).
@@ -136,6 +138,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- `pkgs.docbookrx` was removed since it's unmaintained
- `tilp2` was removed together with its module
- The options `networking.interfaces.<name>.ipv4.routes` and `networking.interfaces.<name>.ipv6.routes` are no longer ignored when using networkd instead of the default scripted network backend by setting `networking.useNetworkd` to `true`.
- MultiMC has been replaced with the fork PolyMC due to upstream developers being hostile to 3rd party package maintainers. PolyMC removes all MultiMC branding and is aimed at providing proper 3rd party packages like the one contained in Nixpkgs. This change affects the data folder where game instances and other save and configuration files are stored. Users with existing installations should rename `~/.local/share/multimc` to `~/.local/share/polymc`. The main config file's path has also moved from `~/.local/share/multimc/multimc.cfg` to `~/.local/share/polymc/polymc.cfg`.
@@ -267,6 +271,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- The `services.mbpfan` module was converted to a [RFC 0042](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md) configuration.
- The default value for `programs.spacefm.settings.graphical_su` got unset. It previously pointed to `gksu` which has been removed.
- A new module was added for the [Starship](https://starship.rs/) shell prompt,
providing the options `programs.starship.enable` and `programs.starship.settings`.
+2 -2
View File
@@ -543,11 +543,11 @@ class Machine:
Should only be used during test development, not in the production test."""
self.connect()
self.log("Terminal is ready (there is no prompt):")
self.log("Terminal is ready (there is no initial prompt):")
assert self.shell
subprocess.run(
["socat", "READLINE", f"FD:{self.shell.fileno()}"],
["socat", "READLINE,prompt=$ ", f"FD:{self.shell.fileno()}"],
pass_fds=[self.shell.fileno()],
)
-5
View File
@@ -178,11 +178,6 @@ in
igpuBusId = if pCfg.intelBusId != "" then pCfg.intelBusId else pCfg.amdgpuBusId;
in mkIf enabled {
assertions = [
{
assertion = with config.services.xserver.displayManager; (gdm.enable && gdm.nvidiaWayland) -> cfg.modesetting.enable;
message = "You cannot use wayland with GDM without modesetting enabled for NVIDIA drivers, set `hardware.nvidia.modesetting.enable = true`";
}
{
assertion = primeEnabled -> pCfg.intelBusId == "" || pCfg.amdgpuBusId == "";
message = ''
@@ -1,7 +1,7 @@
{
x86_64-linux = "/nix/store/hapw7q1fkjxvprnkcgw9ppczavg4daj2-nix-2.4";
i686-linux = "/nix/store/8qlvh8pp5j8wgrzj3is2jlbhgrwgsiy9-nix-2.4";
aarch64-linux = "/nix/store/h48lkygcqj4hdibbdnpl67q7ks6vkrd6-nix-2.4";
x86_64-darwin = "/nix/store/c3mvzszvyzakvcp9spnjvsb8m2bpjk7m-nix-2.4";
aarch64-darwin = "/nix/store/hbfqs62r0hga2yr4zi5kc7fzhf71bq9n-nix-2.4";
x86_64-linux = "/nix/store/67amfijcvhqfgz4bwf2izsvbnklwjbvk-nix-2.6.0";
i686-linux = "/nix/store/kinl99f619b2xsma4qnzhidbp65axyzm-nix-2.6.0";
aarch64-linux = "/nix/store/8zpm63nn7k4n1alp9a0fcilpgc8j014z-nix-2.6.0";
x86_64-darwin = "/nix/store/hw5v03wnc0k1pwgiyhblwlxb1fx5zyx8-nix-2.6.0";
aarch64-darwin = "/nix/store/669p1vjnzi56fib98qczwlaglcwcnip4-nix-2.6.0";
}
+1 -1
View File
@@ -203,7 +203,6 @@
./programs/sway.nix
./programs/system-config-printer.nix
./programs/thefuck.nix
./programs/tilp2.nix
./programs/tmux.nix
./programs/traceroute.nix
./programs/tsm-client.nix
@@ -1164,6 +1163,7 @@
./tasks/cpu-freq.nix
./tasks/encrypted-devices.nix
./tasks/filesystems.nix
./tasks/filesystems/apfs.nix
./tasks/filesystems/bcachefs.nix
./tasks/filesystems/btrfs.nix
./tasks/filesystems/cifs.nix
+1 -1
View File
@@ -60,7 +60,7 @@ in
environment.systemPackages = [ pkgs.dconf ];
# Needed for unwrapped applications
environment.variables.GIO_EXTRA_MODULES = mkIf cfg.enable [ "${pkgs.dconf.lib}/lib/gio/modules" ];
environment.sessionVariables.GIO_EXTRA_MODULES = mkIf cfg.enable [ "${pkgs.dconf.lib}/lib/gio/modules" ];
};
}
-2
View File
@@ -27,13 +27,11 @@ in
default = {
tmp_dir = "/tmp";
terminal_su = "${pkgs.sudo}/bin/sudo";
graphical_su = "${pkgs.gksu}/bin/gksu";
};
defaultText = literalExpression ''
{
tmp_dir = "/tmp";
terminal_su = "''${pkgs.sudo}/bin/sudo";
graphical_su = "''${pkgs.gksu}/bin/gksu";
}
'';
description = ''
-28
View File
@@ -1,28 +0,0 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.programs.tilp2;
in {
options.programs.tilp2 = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Enable tilp2 and udev rules for supported calculators.
'';
};
};
config = mkIf cfg.enable {
services.udev.packages = [
pkgs.libticables2
];
environment.systemPackages = [
pkgs.tilp2
];
};
}
+1
View File
@@ -32,6 +32,7 @@ with lib;
'')
(mkRemovedOptionModule [ "networking" "vpnc" ] "Use environment.etc.\"vpnc/service.conf\" instead.")
(mkRemovedOptionModule [ "networking" "wicd" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "programs" "tilp2" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "programs" "way-cooler" ] ("way-cooler is abandoned by its author: " +
"https://way-cooler.org/blog/2020/01/09/way-cooler-post-mortem.html"))
(mkRemovedOptionModule [ "security" "hideProcessInformation" ] ''
@@ -362,6 +362,7 @@ in
wantedBy = [ "multi-user.target" ];
after = [ "systemd-tmpfiles-clean.service" ];
requires = [ "network.target" ];
serviceConfig = {
Type = "forking";
@@ -371,12 +372,12 @@ in
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
LimitMEMLOCK = "infinity";
};
preStart = ''
mkdir -p /var/spool
'';
};
systemd.tmpfiles.rules = mkIf cfg.client.enable [
"d /var/spool/slurmd 755 root root -"
];
services.openssh.forwardX11 = mkIf cfg.client.enable (mkDefault true);
systemd.services.slurmctld = mkIf (cfg.server.enable) {
@@ -38,7 +38,7 @@ with lib;
systemd.packages = [ pkgs.glib-networking ];
environment.variables.GIO_EXTRA_MODULES = [ "${pkgs.glib-networking.out}/lib/gio/modules" ];
environment.sessionVariables.GIO_EXTRA_MODULES = [ "${pkgs.glib-networking.out}/lib/gio/modules" ];
};
+1 -1
View File
@@ -57,7 +57,7 @@ in
services.udev.packages = [ pkgs.libmtp.out ];
# Needed for unwrapped applications
environment.variables.GIO_EXTRA_MODULES = [ "${cfg.package}/lib/gio/modules" ];
environment.sessionVariables.GIO_EXTRA_MODULES = [ "${cfg.package}/lib/gio/modules" ];
};
@@ -217,7 +217,6 @@ in {
package = mkOption {
type = types.package;
example = literalExpression "pkgs.mediatomb";
default = pkgs.gerbera;
defaultText = literalExpression "pkgs.gerbera";
description = ''
+7 -9
View File
@@ -222,14 +222,12 @@ let
in concatStringsSep "\n" inTunOpts))];
in pkgs.writeText "i2pd-tunnels.conf" opts;
i2pdSh = pkgs.writeScriptBin "i2pd" ''
#!/bin/sh
exec ${cfg.package}/bin/i2pd \
${if cfg.address == null then "" else "--host="+cfg.address} \
--service \
--conf=${i2pdConf} \
--tunconf=${tunnelConf}
'';
i2pdFlags = concatStringsSep " " (
optional (cfg.address != null) ("--host=" + cfg.address) ++ [
"--service"
("--conf=" + i2pdConf)
("--tunconf=" + tunnelConf)
]);
in
@@ -686,7 +684,7 @@ in
User = "i2pd";
WorkingDirectory = homeDir;
Restart = "on-abort";
ExecStart = "${i2pdSh}/bin/i2pd";
ExecStart = "${cfg.package}/bin/i2pd ${i2pdFlags}";
};
};
};
@@ -385,13 +385,13 @@ in {
else if isString v then v
else if true == v then "true"
else if false == v then "false"
else if isSecret v then v._secret
else if isSecret v then hashString "sha256" v._secret
else throw "unsupported type ${typeOf v}: ${(lib.generators.toPretty {}) v}";
};
};
secretPaths = lib.mapAttrsToList (_: v: v._secret) (lib.filterAttrs (_: isSecret) cfg.config);
mkSecretReplacement = file: ''
replace-secret ${escapeShellArgs [ file file "${cfg.dataDir}/.env" ]}
replace-secret ${escapeShellArgs [ (builtins.hashString "sha256" file) file "${cfg.dataDir}/.env" ]}
'';
secretReplacements = lib.concatMapStrings mkSecretReplacement secretPaths;
filteredConfig = lib.converge (lib.filterAttrsRecursive (_: v: ! elem v [ {} null ])) cfg.config;
@@ -53,6 +53,8 @@ in
"autoLogin"
"user"
])
(mkRemovedOptionModule [ "services" "xserver" "displayManager" "gdm" "nvidiaWayland" ] "We defer to GDM whether Wayland should be enabled.")
];
meta = {
@@ -83,17 +85,6 @@ in
default = true;
description = ''
Allow GDM to run on Wayland instead of Xserver.
Note to enable Wayland with Nvidia the <option>nvidiaWayland</option>
must not be disabled.
'';
};
nvidiaWayland = mkOption {
type = types.bool;
default = true;
description = ''
Whether to allow wayland to be used with the proprietary
NVidia graphics driver.
'';
};
@@ -149,7 +140,8 @@ in
environment = {
GDM_X_SERVER_EXTRA_ARGS = toString
(filter (arg: arg != "-terminate") cfg.xserverArgs);
XDG_DATA_DIRS = "${cfg.sessionData.desktops}/share/";
# GDM is needed for gnome-login.session
XDG_DATA_DIRS = "${gdm}/share:${cfg.sessionData.desktops}/share";
} // optionalAttrs (xSessionWrapper != null) {
# Make GDM use this wrapper before running the session, which runs the
# configured setupCommands. This relies on a patched GDM which supports
@@ -230,19 +222,6 @@ in
services.dbus.packages = [ gdm ];
# We duplicate upstream's udev rules manually to make wayland with nvidia configurable
services.udev.extraRules = ''
# disable Wayland on Cirrus chipsets
ATTR{vendor}=="0x1013", ATTR{device}=="0x00b8", ATTR{subsystem_vendor}=="0x1af4", ATTR{subsystem_device}=="0x1100", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
# disable Wayland on Hi1710 chipsets
ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
${optionalString (!cfg.gdm.nvidiaWayland) ''
DRIVER=="nvidia", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
''}
# disable Wayland when modesetting is disabled
IMPORT{cmdline}="nomodeset", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
'';
systemd.user.services.dbus.wantedBy = [ "default.target" ];
programs.dconf.profiles.gdm =
@@ -282,6 +282,9 @@ checkFS() {
# Don't check resilient COWs as they validate the fs structures at mount time
if [ "$fsType" = btrfs -o "$fsType" = zfs -o "$fsType" = bcachefs ]; then return 0; fi
# Skip fsck for apfs as the fsck utility does not support repairing the filesystem (no -a option)
if [ "$fsType" = apfs ]; then return 0; fi
# Skip fsck for nilfs2 - not needed by design and no fsck tool for this filesystem.
if [ "$fsType" = nilfs2 ]; then return 0; fi
+1 -1
View File
@@ -250,7 +250,7 @@ in
environment.etc.fstab.text =
let
fsToSkipCheck = [ "none" "bindfs" "btrfs" "zfs" "tmpfs" "nfs" "vboxsf" "glusterfs" ];
fsToSkipCheck = [ "none" "bindfs" "btrfs" "zfs" "tmpfs" "nfs" "vboxsf" "glusterfs" "apfs" ];
skipCheck = fs: fs.noCheck || fs.device == "none" || builtins.elem fs.fsType fsToSkipCheck;
# https://wiki.archlinux.org/index.php/fstab#Filepath_spaces
escape = string: builtins.replaceStrings [ " " "\t" ] [ "\\040" "\\011" ] string;
+22
View File
@@ -0,0 +1,22 @@
{ config, lib, pkgs, ... }:
with lib;
let
inInitrd = any (fs: fs == "apfs") config.boot.initrd.supportedFilesystems;
in
{
config = mkIf (any (fs: fs == "apfs") config.boot.supportedFilesystems) {
system.fsPackages = [ pkgs.apfsprogs ];
boot.extraModulePackages = [ config.boot.kernelPackages.apfs ];
boot.initrd.kernelModules = mkIf inInitrd [ "apfs" ];
# Don't copy apfsck into the initramfs since it does not support repairing the filesystem
};
}
@@ -109,6 +109,10 @@ in
# Allow very slow start
DefaultTimeoutStartSec=300
'';
systemd.user.extraConfig = ''
# Allow very slow start
DefaultTimeoutStartSec=300
'';
boot.consoleLogLevel = 7;
+1 -1
View File
@@ -82,5 +82,5 @@ in {
};
};
meta.maintainers = with maintainers; [ ];
meta.maintainers = with maintainers; [ patryk27 ];
}
+2 -1
View File
@@ -35,6 +35,7 @@ in
agda = handleTest ./agda.nix {};
airsonic = handleTest ./airsonic.nix {};
amazon-init-shell = handleTest ./amazon-init-shell.nix {};
apfs = handleTest ./apfs.nix {};
apparmor = handleTest ./apparmor.nix {};
atd = handleTest ./atd.nix {};
atop = handleTest ./atop.nix {};
@@ -236,7 +237,6 @@ in
jibri = handleTest ./jibri.nix {};
jirafeau = handleTest ./jirafeau.nix {};
jitsi-meet = handleTest ./jitsi-meet.nix {};
k3s = handleTest ./k3s.nix {};
k3s-single-node = handleTest ./k3s-single-node.nix {};
k3s-single-node-docker = handleTest ./k3s-single-node-docker.nix {};
kafka = handleTest ./kafka.nix {};
@@ -355,6 +355,7 @@ in
nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; };
node-red = handleTest ./node-red.nix {};
nomad = handleTest ./nomad.nix {};
noto-fonts = handleTest ./noto-fonts.nix {};
novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {};
nsd = handleTest ./nsd.nix {};
nzbget = handleTest ./nzbget.nix {};
+54
View File
@@ -0,0 +1,54 @@
import ./make-test-python.nix ({ pkgs, ... }: {
name = "apfs";
meta.maintainers = with pkgs.lib.maintainers; [ Luflosi ];
machine = { pkgs, ... }: {
virtualisation.emptyDiskImages = [ 1024 ];
boot.supportedFilesystems = [ "apfs" ];
};
testScript = ''
machine.wait_for_unit("basic.target")
machine.succeed("mkdir /tmp/mnt")
with subtest("mkapfs refuses to work with a label that is too long"):
machine.fail( "mkapfs -L '000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F' /dev/vdb")
with subtest("mkapfs works with the maximum label length"):
machine.succeed("mkapfs -L '000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7' /dev/vdb")
with subtest("Enable case sensitivity and normalization sensitivity"):
machine.succeed(
"mkapfs -s -z /dev/vdb",
# Triggers a bug, see https://github.com/linux-apfs/linux-apfs-rw/issues/15
# "mount -o cknodes,readwrite /dev/vdb /tmp/mnt",
"mount -o readwrite /dev/vdb /tmp/mnt",
"echo 'Hello World 1' > /tmp/mnt/test.txt",
"[ ! -f /tmp/mnt/TeSt.TxT ] || false", # Test case sensitivity
"echo 'Hello World 1' | diff - /tmp/mnt/test.txt",
"echo 'Hello World 2' > /tmp/mnt/\u0061\u0301.txt",
"echo 'Hello World 2' | diff - /tmp/mnt/\u0061\u0301.txt",
"[ ! -f /tmp/mnt/\u00e1.txt ] || false", # Test Unicode normalization sensitivity
"umount /tmp/mnt",
"apfsck /dev/vdb",
)
with subtest("Disable case sensitivity and normalization sensitivity"):
machine.succeed(
"mkapfs /dev/vdb",
"mount -o readwrite /dev/vdb /tmp/mnt",
"echo 'bla bla bla' > /tmp/mnt/Test.txt",
"echo -n 'Hello World' > /tmp/mnt/test.txt",
"echo ' 1' >> /tmp/mnt/TEST.TXT",
"umount /tmp/mnt",
"apfsck /dev/vdb",
"mount -o readwrite /dev/vdb /tmp/mnt",
"echo 'Hello World 1' | diff - /tmp/mnt/TeSt.TxT", # Test case insensitivity
"echo 'Hello World 2' > /tmp/mnt/\u0061\u0301.txt",
"echo 'Hello World 2' | diff - /tmp/mnt/\u0061\u0301.txt",
"echo 'Hello World 2' | diff - /tmp/mnt/\u00e1.txt", # Test Unicode normalization
"umount /tmp/mnt",
"apfsck /dev/vdb",
)
'';
})
+44
View File
@@ -0,0 +1,44 @@
import ./make-test-python.nix ({ pkgs, lib, ... }: {
name = "noto-fonts";
meta = {
maintainers = with lib.maintainers; [ nickcao midchildan ];
};
machine = {
imports = [ ./common/x11.nix ];
environment.systemPackages = [ pkgs.gnome.gedit ];
fonts = {
enableDefaultFonts = false;
fonts = with pkgs;[
noto-fonts
noto-fonts-cjk-sans
noto-fonts-cjk-serif
noto-fonts-emoji
];
fontconfig.defaultFonts = {
serif = [ "Noto Serif" "Noto Serif CJK SC" ];
sansSerif = [ "Noto Sans" "Noto Sans CJK SC" ];
monospace = [ "Noto Sans Mono" "Noto Sans Mono CJK SC" ];
emoji = [ "Noto Color Emoji" ];
};
};
};
testScript =
# extracted from http://www.clagnut.com/blog/2380/
let testText = builtins.toFile "test.txt" ''
the quick brown fox jumps over the lazy dog
Eĥoŝanĝo ĉiuĵaŭde.
''; in
''
machine.wait_for_x()
machine.succeed("gedit ${testText} >&2 &")
machine.wait_for_window(".* - gedit")
machine.sleep(10)
machine.screenshot("screen")
'';
})
+2 -1
View File
@@ -12,7 +12,7 @@ let
makeAppTest = unifi: makeTest {
name = "unifi-controller-${unifi.version}";
meta = with pkgs.lib.maintainers; {
maintainers = [ zhaofengli ];
maintainers = [ patryk27 zhaofengli ];
};
nodes.server = {
@@ -32,4 +32,5 @@ in with pkgs; {
unifiLTS = makeAppTest unifiLTS;
unifi5 = makeAppTest unifi5;
unifi6 = makeAppTest unifi6;
unifi7 = makeAppTest unifi7;
}
-50
View File
@@ -1,50 +0,0 @@
{ lib
, mkDerivation
, stdenv
, fetchFromGitHub
, makeDesktopItem
, cmake
, pkg-config
, qtbase
, glib
, alsa-lib
, withJack ? stdenv.hostPlatform.isUnix, jack
}:
let
mainProgram = "mt32emu-qt";
in
mkDerivation rec {
pname = "munt";
version = "2.5.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "munt_${lib.replaceChars [ "." ] [ "_" ] version}";
sha256 = "1lknq2a72gv1ddhzr7f967wpa12lh805jj4gjacdnamgrc1h22yn";
};
dontFixCmake = true;
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ qtbase glib ]
++ lib.optional stdenv.hostPlatform.isLinux alsa-lib
++ lib.optional withJack jack;
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir $out/Applications
mv $out/bin/${mainProgram}.app $out/Applications/
ln -s $out/{Applications/${mainProgram}.app/Contents/MacOS,bin}/${mainProgram}
'';
meta = with lib; {
inherit mainProgram;
description = "Multi-platform software synthesiser emulating Roland MT-32, CM-32L, CM-64 and LAPC-I devices";
homepage = "http://munt.sourceforge.net/";
license = with licenses; [ lgpl21 gpl3 ];
platforms = platforms.all;
maintainers = with maintainers; [ OPNA2608 ];
};
}
@@ -0,0 +1,38 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
}:
stdenv.mkDerivation rec {
pname = "libmt32emu";
version = "2.5.3";
src = fetchFromGitHub {
owner = "munt";
repo = "munt";
rev = "${pname}_${lib.replaceChars [ "." ] [ "_" ] version}";
hash = "sha256-n5VV5Swh1tOVQGT3urEKl64A/w7cY95/0y5wC5ZuLm4=";
};
outputs = [ "out" "dev" ];
nativeBuildInputs = [
cmake
];
dontFixCmake = true;
cmakeFlags = [
"-Dmunt_WITH_MT32EMU_SMF2WAV=OFF"
"-Dmunt_WITH_MT32EMU_QT=OFF"
];
meta = with lib; {
homepage = "http://munt.sourceforge.net/";
description = "A library to emulate Roland MT-32, CM-32L, CM-64 and LAPC-I devices";
license = with licenses; [ lgpl21Plus ];
maintainers = with maintainers; [ OPNA2608 ];
platforms = platforms.unix; # Not tested on ReactOS yet :)
};
}
@@ -0,0 +1,75 @@
{ lib
, stdenv
, mkDerivation
, fetchFromGitHub
, alsa-lib
, cmake
, libpulseaudio
, libmt32emu
, pkg-config
, portaudio
, qtbase
, qtmultimedia
, withJack ? stdenv.hostPlatform.isUnix, libjack2
}:
mkDerivation rec {
pname = "mt32emu-qt";
version = "1.9.0";
src = fetchFromGitHub {
owner = "munt";
repo = "munt";
rev = "mt32emu_qt_${lib.replaceChars [ "." ] [ "_" ] version}";
hash = "sha256-9vapBKpl1NC3mIDetuCb452IHV6c7c7NCzSyiBry5oo=";
};
postPatch = ''
sed -i -e '/add_subdirectory(mt32emu)/d' CMakeLists.txt
'';
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
libmt32emu
portaudio
qtbase
qtmultimedia
]
++ lib.optionals stdenv.hostPlatform.isLinux [
alsa-lib
libpulseaudio
]
++ lib.optional withJack libjack2;
dontFixCmake = true;
cmakeFlags = [
"-Dmt32emu-qt_USE_PULSEAUDIO_DYNAMIC_LOADING=OFF"
"-Dmunt_WITH_MT32EMU_QT=ON"
"-Dmunt_WITH_MT32EMU_SMF2WAV=OFF"
];
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir $out/Applications
mv $out/bin/${meta.mainProgram}.app $out/Applications/
ln -s $out/{Applications/${meta.mainProgram}.app/Contents/MacOS,bin}/${meta.mainProgram}
'';
meta = with lib; {
homepage = "http://munt.sourceforge.net/";
description = "A synthesizer application built on Qt and libmt32emu";
longDescription = ''
mt32emu-qt is a synthesiser application that facilitates both realtime
synthesis and conversion of pre-recorded SMF files to WAVE making use of
the mt32emu library and the Qt framework.
'';
license = with licenses; [ gpl3Plus ];
maintainers = with maintainers; [ OPNA2608 ];
platforms = platforms.all;
mainProgram = "mt32emu-qt";
};
}
@@ -0,0 +1,50 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, glib
, libmt32emu
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "mt32emu-smf2wav";
version = "1.7.0";
src = fetchFromGitHub {
owner = "munt";
repo = "munt";
rev = "mt32emu_smf2wav_${lib.replaceChars [ "." ] [ "_" ] version}";
hash = "sha256-FnKlKJxe7P4Yqpv0oVGgV4253dMgSmgtb7EAa2FI+aI=";
};
postPatch = ''
sed -i -e '/add_subdirectory(mt32emu)/d' CMakeLists.txt
'';
dontFixCmake = true;
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
libmt32emu
glib
];
cmakeFlags = [
"-Dmunt_WITH_MT32EMU_QT=OFF"
"-Dmunt_WITH_MT32EMU_SMF2WAV=ON"
];
meta = with lib; {
homepage = "http://munt.sourceforge.net/";
description = "Produces a WAVE file from a Standard MIDI file (SMF)";
license = with licenses; [ gpl3Plus ];
maintainers = with maintainers; [ OPNA2608 ];
platforms = platforms.all;
mainProgram = "mt32emu-smf2wav";
};
}
@@ -9,8 +9,8 @@ let
inherit buildFHSUserEnv;
};
stableVersion = {
version = "2020.3.1.26"; # "Android Studio Arctic Fox (2020.3.1)"
sha256Hash = "NE2FgjXtXTCVrCWRakqPhzAGn3blpf0OugJSKviPVBs=";
version = "2021.1.1.20"; # "Android Studio Bumblebee (2021.1.1)"
sha256Hash = "LwG5IDJBFpdlspDoTNpbi1togri2fvEOEDbkkiYvrJE=";
};
betaVersion = {
version = "2021.1.1.18"; # "Android Studio Bumblebee (2021.1.1) Beta 5"
@@ -1,81 +0,0 @@
{ lib, stdenv, fetchurl
, autoconf, automake, pkg-config, shared-mime-info, intltool
, glib, mono, gtk-sharp-2_0, gnome2, gnome-sharp, unzip
, dotnetPackages
}:
stdenv.mkDerivation rec {
version = "5.9.4.5";
revision = "8010a90f6e246b32364e3fb46ef2c9d1be9c9a2b";
pname = "monodevelop";
src = fetchurl {
url = "https://download.mono-project.com/sources/monodevelop/${pname}-${version}.tar.bz2";
sha256 = "0bim4bfv3zwijafl9g0cx3159zq43dlcv74mnyrda41j4p52w5ji";
};
nunit2510 = fetchurl {
url = "https://launchpad.net/nunitv2/2.5/2.5.10/+download/NUnit-2.5.10.11092.zip";
sha256 = "0k5h5bz1p2v3d0w0hpkpbpvdkcszgp8sr9ik498r1bs72w5qlwnc";
};
postPatch = ''
# From https://bugzilla.xamarin.com/show_bug.cgi?id=23696#c19
# cecil needs NUnit 2.5.10 - this is also missing from the tar
unzip -j ${nunit2510} -d external/cecil/Test/libs/nunit-2.5.10 NUnit-2.5.10.11092/bin/net-2.0/framework/\*
# the tar doesn't include the nuget binary, so grab it from github and copy it
# into the right place
cp -vfR "$(dirname $(pkg-config NuGet.Core --variable=Libraries))"/* external/nuget-binary/
'';
# Revert this commit which broke the ability to use pkg-config to locate dlls
patchFlags = [ "-p2" ];
patches = [ ./git-revert-12d610fb3f6dce121df538e36f21d8c2eeb0a6e3.patch ];
nativeBuildInputs = [ pkg-config unzip ];
buildInputs = [
autoconf automake shared-mime-info intltool
mono gtk-sharp-2_0 gnome-sharp
dotnetPackages.NUnit
dotnetPackages.NUnitRunners
dotnetPackages.Nuget
];
preConfigure = "patchShebangs ./configure";
preBuild = ''
cat > ./buildinfo <<EOF
Release ID: ${version}
Git revision: ${revision}
Build date: 1970-01-01 00:00:01
EOF
'';
postInstall = ''
for prog in monodevelop mdtool; do
patch -p 0 $out/bin/$prog <<EOF
2a3,5
> export MONO_GAC_PREFIX=${gnome-sharp}:${gtk-sharp-2_0}:\$MONO_GAC_PREFIX
> export PATH=${mono}/bin:\$PATH
> export LD_LIBRARY_PATH=${lib.makeLibraryPath [ glib gnome2.libgnomeui gnome2.gnome_vfs gnome-sharp gtk-sharp-2_0 gtk-sharp-2_0.gtk ]}:\$LD_LIBRARY_PATH
>
EOF
done
# Without this, you get a missing DLL error any time you install an addin..
ln -sv `pkg-config nunit.core --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
ln -sv `pkg-config nunit.core.interfaces --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
ln -sv `pkg-config nunit.framework --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
ln -sv `pkg-config nunit.util --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
'';
dontStrip = true;
meta = with lib; {
platforms = platforms.linux;
maintainers = with maintainers; [ obadz ];
broken = true; # 2018-09-21, build has failed since 2018-03-08
};
}
@@ -1,57 +0,0 @@
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.csproj b/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
index 02d3a01..c6daaad 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
@@ -452,34 +452,6 @@
<None Include="Templates\Projects\WebApplication.xpt.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
- <None Include="..\..\..\packages\Microsoft.AspNet.Mvc.5.2.2\lib\net45\System.Web.Mvc.dll">
- <Link>System.Web.Mvc.dll</Link>
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="..\..\..\packages\Microsoft.AspNet.Razor.3.2.2\lib\net45\System.Web.Razor.dll">
- <Link>System.Web.Razor.dll</Link>
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.Helpers.dll">
- <Link>System.Web.Helpers.dll</Link>
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.WebPages.Deployment.dll">
- <Link>System.Web.WebPages.Deployment.dll</Link>
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.WebPages.dll">
- <Link>System.Web.WebPages.dll</Link>
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.WebPages.Razor.dll">
- <Link>System.Web.WebPages.Razor.dll</Link>
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="..\..\..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll">
- <Link>Microsoft.Web.Infrastructure.dll</Link>
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
diff --git a/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml b/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
index eab7c32..4a75311 100644
--- a/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
+++ b/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
@@ -1,13 +1,6 @@
<ExtensionModel>
<Runtime>
- <Import assembly = "System.Web.Helpers.dll" />
- <Import assembly = "System.Web.Mvc.dll" />
- <Import assembly = "System.Web.Razor.dll" />
- <Import assembly = "System.Web.WebPages.Deployment.dll" />
- <Import assembly = "System.Web.WebPages.dll" />
- <Import assembly = "System.Web.WebPages.Razor.dll" />
-
<Import file = "Html/Schemas/xhtml1-strict.xsd" />
<Import file = "Html/Schemas/xhtml1-transitional.xsd" />
<Import file = "Html/Schemas/xhtml1-frameset.xsd" />
+2 -5
View File
@@ -161,12 +161,9 @@ let
krb5
]) ++ additionalPkgs pkgs;
# restore desktop item icons
# symlink shared assets, including icons and desktop entries
extraInstallCommands = ''
mkdir -p "$out/share/applications"
for item in ${unwrapped}/share/applications/*.desktop; do
ln -s "$item" "$out/share/applications/"
done
ln -s "${unwrapped}/share" "$out/"
'';
runScript = "${unwrapped}/bin/${executableName}";
@@ -0,0 +1,132 @@
{ stdenv, lib, requireFile, wrapQtAppsHook, autoPatchelfHook, makeWrapper, unixtools, fakeroot
, mime-types, libGL, libpulseaudio, alsa-lib, nss, gd, gst_all_1, nspr, expat, fontconfig
, dbus, glib, zlib, openssl, libdrm, cups, avahi-compat, xorg, wayland, libudev0-shim
# Qt 5 subpackages
, qtbase, qtgamepad, qtserialport, qtserialbus, qtvirtualkeyboard, qtmultimedia, qtwebkit, qt3d, mlt
}:
stdenv.mkDerivation rec {
pname = "pixinsight";
version = "1.8.8-12";
src = requireFile rec {
name = "PI-linux-x64-${version}-20211229-c.tar.xz";
url = "https://pixinsight.com/";
sha256 = "7095b83a276f8000c9fe50caadab4bf22a248a880e77b63e0463ad8d5469f617";
message = ''
PixInsight is available from ${url} and requires a commercial (or trial) license.
After a license has been obtained, PixInsight can be downloaded from the software distribution
(choose Linux 64bit).
The PixInsight tarball must be added to the nix-store, i.e. via
nix-prefetch-url --type sha256 file:///path/to/${name}
'';
};
sourceRoot = ".";
nativeBuildInputs = [
unixtools.script
fakeroot
wrapQtAppsHook
autoPatchelfHook
mime-types
libudev0-shim
];
buildInputs = [
stdenv.cc.cc.lib
stdenv.cc
libGL
libpulseaudio
alsa-lib
nss
gd
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
nspr
expat
fontconfig
dbus
glib
zlib
openssl
libdrm
wayland
cups
avahi-compat
# Qt stuff
qt3d
mlt
qtbase
qtgamepad
qtserialport
qtserialbus
qtvirtualkeyboard
qtmultimedia
qtwebkit
] ++ (with xorg; [
libX11
libXdamage
xrandr
libXtst
libXcomposite
libXext
libXfixes
libXrandr
]);
postPatch = ''
patchelf ./installer \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath ${stdenv.cc.cc.lib}/lib
'';
dontConfigure = true;
dontBuild = true;
installPhase = ''
mkdir -p $out/bin $out/opt/PixInsight $out/share/{applications,mime/packages,icons/hicolor}
fakeroot script -ec "./installer \
--yes \
--install-dir=$out/opt/PixInsight \
--install-desktop-dir=$out/share/applications \
--install-mime-dir=$out/share/mime \
--install-icons-dir=$out/share/icons/hicolor \
--no-bin-launcher \
--no-remove"
rm -rf $out/opt/PixInsight-old-0
ln -s $out/opt/PixInsight/bin/PixInsight $out/bin/.
'';
# Some very exotic Qt libraries are not available in nixpkgs
autoPatchelfIgnoreMissingDeps = true;
# This mimics what is happening in PixInsight.sh and adds on top the libudev0-shim, which
# without PixInsight crashes at startup.
qtWrapperArgs = [
"--prefix LD_LIBRARY_PATH : ${libudev0-shim}/lib"
"--set LC_ALL en_US.utf8"
"--set AVAHI_COMPAT_NOWARN 1"
"--set QT_PLUGIN_PATH $out/opt/PixInsight/bin/lib/qt-plugins"
"--set QT_QPA_PLATFORM_PLUGIN_PATH $out/opt/PixInsight/bin/lib/qt-plugins/platforms"
"--set QT_AUTO_SCREEN_SCALE_FACTOR 0"
"--set QT_ENABLE_HIGHDPI_SCALING 0"
"--set QT_SCALE_FACTOR 1"
"--set QT_LOGGING_RULES '*=false'"
"--set QTWEBENGINEPROCESS_PATH $out/opt/PixInsight/bin/libexec/QtWebEngineProcess"
];
dontWrapQtApps = true;
postFixup = ''
wrapProgram $out/opt/PixInsight/bin/PixInsight ${builtins.toString qtWrapperArgs}
'';
meta = with lib; {
description = "Scientific image processing program for astrophotography";
homepage = "https://pixinsight.com/";
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = [ maintainers.sheepforce ];
mainProgram = "PixInsight";
};
}
+1 -1
View File
@@ -74,7 +74,7 @@ python3.pkgs.buildPythonApplication {
cp -ar ${tests} $sourceRoot/electrum/tests
'';
prePatch = ''
postPatch = ''
substituteInPlace contrib/requirements/requirements.txt \
--replace "dnspython>=2.0,<2.1" "dnspython>=2.0"
'';
-41
View File
@@ -1,41 +0,0 @@
{ lib, stdenv, fetchFromGitHub, python2, makeWrapper }:
let pythonEnv = python2.withPackages(ps: [ ps.pyGtkGlade]);
in stdenv.mkDerivation rec {
pname = "fslint";
version = "2.46";
src = fetchFromGitHub {
owner = "pixelb";
repo = "fslint";
rev = version;
sha256 = "048pc1rsslbsrfchl2wmdd4hpa2gycglib7kdx8vqs947zcm0sfv";
};
buildInputs = [
pythonEnv makeWrapper
];
prePatch = ''
substituteInPlace fslint-gui --replace "liblocation=os.path.dirname(os.path.abspath(sys.argv[0]))" "liblocation='$out'"
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp * -R $out/
cp fslint-gui $out/bin/fslint
wrapProgram "$out/bin/fslint" \
--prefix PYTHONPATH : "${pythonEnv.interpreter}"
runHook postInstall
'';
meta = with lib; {
description = "A utility to find and clean various forms of lint on a filesystem";
homepage = "https://www.pixelbeat.org/fslint/";
license = licenses.gpl2Plus;
maintainers = [ maintainers.dasj19 ];
platforms = platforms.unix;
};
}
-53
View File
@@ -1,53 +0,0 @@
{ lib, stdenv, fetchurl, pkg-config, gtk2, gnome2, gnome, libgksu,
intltool, libstartup_notification, gtk-doc, wrapGAppsHook
}:
stdenv.mkDerivation rec {
version = "2.0.2";
pname = "gksu";
src = fetchurl {
url = "http://people.debian.org/~kov/gksu/${pname}-${version}.tar.gz";
sha256 = "0npfanlh28daapkg25q4fncxd89rjhvid5fwzjaw324x0g53vpm1";
};
nativeBuildInputs = [
pkg-config intltool gtk-doc wrapGAppsHook
];
buildInputs = [
gtk2 gnome2.GConf libstartup_notification gnome.libgnome-keyring
];
propagatedBuildInputs = [
libgksu
];
hardeningDisable = [ "format" ];
patches = [
# https://savannah.nongnu.org/bugs/index.php?36127
./gksu-2.0.2-glib-2.31.patch
];
postPatch = ''
sed -i -e 's|/usr/bin/x-terminal-emulator|-l gnome-terminal|g' gksu.desktop
'';
configureFlags = [ "--disable-nautilus-extension" ];
meta = {
description = "A graphical frontend for libgksu";
longDescription = ''
GKSu is a library that provides a GTK frontend to su and sudo.
It supports login shells and preserving environment when acting as
a su frontend. It is useful to menu items or other graphical
programs that need to ask a user's password to run another program
as another user.
'';
homepage = "https://www.nongnu.org/gksu/";
license = lib.licenses.gpl2;
maintainers = [ lib.maintainers.romildo ];
platforms = lib.platforms.linux;
};
}
@@ -1,29 +0,0 @@
From 10c7e67e11a56e2fe1acf9b085772bc995d35bc0 Mon Sep 17 00:00:00 2001
From: Alexandre Rostovtsev <tetromino@gentoo.org>
Date: Sat, 7 Apr 2012 17:57:36 -0400
Subject: [PATCH] Fix glib includes for building with >=glib-2.31
glib-2.31 and newer no longer allow most glib subheaders to be included
directly.
https://savannah.nongnu.org/bugs/index.php?36127
---
nautilus-gksu/libnautilus-gksu.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/nautilus-gksu/libnautilus-gksu.c b/nautilus-gksu/libnautilus-gksu.c
index 8e44d29..4acf3f8 100644
--- a/nautilus-gksu/libnautilus-gksu.c
+++ b/nautilus-gksu/libnautilus-gksu.c
@@ -5,7 +5,7 @@
#include <string.h>
#include <pthread.h>
-#include <glib/gkeyfile.h>
+#include <glib.h>
#include <gtk/gtk.h>
#include <gio/gio.h>
#include <libnautilus-extension/nautilus-extension-types.h>
--
1.7.8.5
+2 -2
View File
@@ -9,11 +9,11 @@
stdenv.mkDerivation rec {
pname = "hello";
version = "2.10";
version = "2.12";
src = fetchurl {
url = "mirror://gnu/hello/${pname}-${version}.tar.gz";
sha256 = "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i";
sha256 = "1ayhp9v4m4rdhjmnl2bq3cibrbqqkgjbl3s7yk2nhlh8vj3ay16g";
};
doCheck = true;
@@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "inherd-quake";
version = "0.4.0";
version = "0.5.0";
src = fetchFromGitHub {
owner = "phodal";
repo = "quake";
rev = "v${version}";
sha256 = "UujcsvjbXda1DdV4hevUP4PbdbOKHQ3O/FBDlhAjfq0=";
sha256 = "sha256-OkgrkjO6IS6P2ZyFFbOprROPzDfQcHYCwaTKFsjjVo8=";
};
cargoSha256 = "HkdF7hLgThOWExociNgxvTxF4qL3F5CPK/j/ZKLg/m4=";
cargoSha256 = "sha256-EMRaChFwjMYZKSX5OvXYLSiwWo1m1H/tHVqc8RXX52A=";
nativeBuildInputs = [ pkg-config ];
@@ -1,6 +1,7 @@
{ lib
, boost
, fetchFromGitHub
, fetchpatch
, installShellFiles
, mkDerivation
, muparser
@@ -23,6 +24,14 @@ mkDerivation rec {
sha256 = "sha256-RNg7ioMriH4A7V65+4mh8NhsUHs/8IbTt38nVkYilCE=";
};
patches = [
(fetchpatch {
url = "https://github.com/LibreCAD/LibreCAD/pull/1465/commits/4edcbe72679f95cb60979c77a348c1522a20b0f4.patch";
sha256 = "sha256-P0G2O5sL7Ip860ByxFQ87TfV/lq06wCQnzPxADGqFPs=";
name = "CVE-2021-45342.patch";
})
];
postPatch = ''
substituteInPlace scripts/postprocess-unix.sh \
--replace /bin/sh ${runtimeShell}
-49
View File
@@ -1,49 +0,0 @@
{ stdenv, fetchurl, fetchpatch, pkg-config, gnome-doc-utils, intltool, lib
, mono, gtk-sharp-2_0, gnome-sharp, hyena
, which, makeWrapper, glib, gnome2, poppler, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "pdfmod";
version = "0.9.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "eb7c987514a053106ddf03f26544766c751c801d87762909b36415d46bc425c9";
};
patches = [ (fetchpatch {
url = "https://raw.githubusercontent.com/City-busz/Arch-Linux-Repository"
+ "/master/gnome/pdfmod/pdfmod/pdfmod-mono-2.10.patch";
sha256 = "0fpz9ifr6476lqhd5rkb94dm68vlrwdq5w1aaxzgyjgdax9hxx81";
}) ];
nativeBuildInputs = [ pkg-config ];
buildInputs = [
gnome-doc-utils intltool mono gtk-sharp-2_0 gnome-sharp
hyena which makeWrapper wrapGAppsHook
];
preConfigure = ''
substituteInPlace lib/poppler-sharp/poppler-sharp/poppler-sharp.dll.config \
--replace libpoppler-glib.so.4 libpoppler-glib.so
'';
postInstall = ''
makeWrapper "${mono}/bin/mono" "$out/bin/pdfmod" \
--add-flags "$out/lib/pdfmod/PdfMod.exe" \
--prefix MONO_GAC_PREFIX : ${gtk-sharp-2_0} \
--prefix MONO_GAC_PREFIX : ${gnome-sharp} \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ glib gnome-sharp gnome2.GConf gtk-sharp-2_0 gtk-sharp-2_0.gtk poppler ]}
'';
dontStrip = true;
meta = with lib; {
homepage = "https://wiki.gnome.org/Attic/PdfMod";
description = "A simple application for modifying PDF documents";
platforms = platforms.all;
maintainers = with maintainers; [ obadz ];
license = licenses.gpl2Plus;
};
}
+5 -10
View File
@@ -1,23 +1,23 @@
{ lib, mkDerivation, fetchFromGitHub
, qmake, qttools, kirigami2, qtquickcontrols2, qtlocation, qtsensors
, cmake, qttools, kirigami2, qtquickcontrols2, qtlocation, qtsensors
, nemo-qml-plugin-dbus, mapbox-gl-qml, s2geometry
, python3, pyotherside
}:
mkDerivation rec {
pname = "pure-maps";
version = "2.6.5";
version = "2.9.2";
src = fetchFromGitHub {
owner = "rinigus";
repo = "pure-maps";
rev = version;
sha256 = "17gfb7rdaadmcdba4mhish0jrz9lmiban6fpzwhyvn8z1rc43zx9";
hash = "sha256-pMPjY6OXR6THiSQZ4mw9Kz+tAXJaOwzJEcpPOyZ+YKI=";
fetchSubmodules = true;
};
nativeBuildInputs = [
qmake python3 qttools python3.pkgs.wrapPython
cmake python3 qttools python3.pkgs.wrapPython
];
buildInputs = [
@@ -25,12 +25,7 @@ mkDerivation rec {
nemo-qml-plugin-dbus pyotherside mapbox-gl-qml s2geometry
];
postPatch = ''
substituteInPlace pure-maps.pro \
--replace '$$[QT_HOST_BINS]/lconvert' 'lconvert'
'';
qmakeFlags = [ "FLAVOR=kirigami" ];
cmakeFlags = [ "-DFLAVOR=kirigami" ];
pythonPath = with python3.pkgs; [ gpxpy ];
+2 -2
View File
@@ -18,13 +18,13 @@
mkDerivation rec {
pname = "qcad";
version = "3.27.1.3";
version = "3.27.1.6";
src = fetchFromGitHub {
owner = "qcad";
repo = "qcad";
rev = "v${version}";
sha256 = "sha256-DHDfDwGrYMRd5gxFaPL06B/wssQho9420MxUg8fI2r0=";
sha256 = "sha256-ouvWE1fa4DfPLqFYuMsUPWDx/NUaoCc7TfR6Ed0uuF4=";
};
patches = [
+2 -2
View File
@@ -23,14 +23,14 @@
stdenv.mkDerivation rec {
pname = "rofi-unwrapped";
version = "1.7.2";
version = "1.7.3";
src = fetchFromGitHub {
owner = "davatorium";
repo = "rofi";
rev = version;
fetchSubmodules = true;
sha256 = "vre8kFou01P7S6KBBtfzvfFP554mhV+d6rjvY+GfWXk=";
sha256 = "sha256-bUedRRmrfdmzNW+2PzJvLbCTIWta2rbQ3CTLRSdJqbs=";
};
preConfigure = ''
+2 -2
View File
@@ -8,14 +8,14 @@
rofi-unwrapped.overrideAttrs (oldAttrs: rec {
pname = "rofi-wayland-unwrapped";
version = "1.7.2+wayland1";
version = "1.7.3+wayland1";
src = fetchFromGitHub {
owner = "lbonn";
repo = "rofi";
rev = version;
fetchSubmodules = true;
sha256 = "sha256-INFYHOVjBNj8ks4UjKnxLW8mL7h1c8ySFPS/rUxOWwo=";
sha256 = "sha256-qvIxWxiQj42VgScSsrF1Yf6ifgEbZes0flNbbwc3O8I=";
};
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ wayland-protocols ];
@@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, gtk3 }:
{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, pkg-config, gtk3 }:
stdenv.mkDerivation rec {
pname = "spotify-tray";
@@ -11,6 +11,14 @@ stdenv.mkDerivation rec {
sha256 = "sha256-E86rA8cBjy/bI7sZHlT40o7i23PcONXT5GTHEfcaDf0=";
};
patches = [
(fetchpatch {
name = "fix-building-with-automake-1.16.5.patch";
url = "https://github.com/tsmetana/spotify-tray/commit/1305f473ba4a406e907b98c8255f23154f349613.patch";
sha256 = "sha256-u2IopfMzNCu2F06RZoJw3OAsRxxZYdIMnKnyb7/KBgk=";
})
];
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ gtk3 ];
@@ -0,0 +1,43 @@
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, vala
, gtk3
, glib
, gtk-layer-shell
, dbus
, dbus-glib
, json-glib
, librsvg
, libhandy
, gobject-introspection
, gdk-pixbuf
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "SwayNotificationCenter";
version = "0.3";
src = fetchFromGitHub {
owner = "ErikReider";
repo = "SwayNotificationCenter";
rev = "v${version}";
hash = "sha256-gXo/V2FHkHZBRmaimqJCzi0BqS4tP9IniIlubBmK5u0=";
};
nativeBuildInputs = [ gobject-introspection meson ninja pkg-config vala wrapGAppsHook ];
buildInputs = [ dbus dbus-glib gdk-pixbuf glib gtk-layer-shell gtk3 json-glib libhandy librsvg ];
meta = with lib; {
description = "Simple notification daemon with a GUI built for Sway";
homepage = "https://github.com/ErikReider/SwayNotificationCenter";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = [ maintainers.berbiche ];
};
}
+3 -3
View File
@@ -8,16 +8,16 @@
buildGoModule rec {
pname = "wtf";
version = "0.40.0";
version = "0.41.0";
src = fetchFromGitHub {
owner = "wtfutil";
repo = pname;
rev = "v${version}";
sha256 = "0hd5gnydxfncsmm7c58lvhkpnyxknvicc8f58xfh74azf363wcvm";
sha256 = "sha256-Y8Vdh6sMMX8pS4zIuOfcejfsOB5z5mXEpRskJXQgU1Y=";
};
vendorSha256 = "166dpxli2qyls4b9s0nv9vbwiwkp7jh32lkm35qz6s5w9zp6yjfb";
vendorSha256 = "sha256-UE7BYal8ycU7mM1TLJMhoNxQKZjtsO9rJ+YXmLiOSk0=";
doCheck = false;
@@ -12,7 +12,7 @@
}:
stdenv.mkDerivation rec {
pname = "xdg-launch";
version = "1.11";
version = "1.12";
postPatch = ''
# fix gettext configuration
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
owner = "bbidulock";
repo = pname;
rev = version;
sha256 = "sha256-qrBxyJ3dUNdnE1nANLKKL0cXw/Hc4qxDoY1anIRN+VA=";
sha256 = "sha256-S/0Wn1T5MSOPN6QXkzfmygHL6XTAnnMJr5Z3fBzsHEw=";
};
preConfigure = "./autogen.sh";
-81
View File
@@ -1,81 +0,0 @@
{ fetchFromGitHub, stdenv, lib, gettext, gtk2, makeWrapper, perlPackages, gnome2 }:
let
perlDeps = with perlPackages; [
Glib
Gtk2
Gnome2
Pango
Cairo
Gnome2Canvas
Gnome2VFS
Gtk2GladeXML
Gtk2TrayIcon
XMLLibXML
XMLSAXBase
XMLParser
XMLRSS
HTMLParser
DateTime
DateTimeFormatMail
DateTimeFormatW3CDTF
DateTimeLocale
DateTimeTimeZone
ParamsValidate
ModuleImplementation
ModuleRuntime
TryTiny
ClassSingleton
URI
AnyEvent
AnyEventHTTP
commonsense
FileSlurp
JSON
Guard
LocaleGettext
];
libs = [
stdenv.cc.cc.lib
gtk2
];
in
stdenv.mkDerivation {
version = "unstable-2017-12-01";
pname = "yarssr";
src = fetchFromGitHub {
owner = "JGRennison";
repo = "yarssr";
rev = "e70eb9fc6563599bfb91c6de6a79654de531c18d";
sha256 = "0x7hz8x8qyp3i1vb22zhcnvwxm3jhmmmlr22jqc5b09vpmbw1l45";
};
nativeBuildInputs = [ perlPackages.perl gettext makeWrapper ];
buildInputs = perlDeps ++ [ gnome2.libglade ];
propagatedBuildInputs = libs ++ perlDeps;
installPhase = ''
DESTDIR=$out make install
mv $out/usr/* $out/
rm -R $out/usr
sed -i -r "s!use lib [^;]+;!use lib '$out/share/yarssr';!" $out/bin/yarssr
sed -i -r "s!$Yarssr::PREFIX = [^;]+;!$Yarssr::PREFIX = '$out';!" $out/bin/yarssr
sed -i -r "s!use Yarssr::Browser;!!" $out/share/yarssr/Yarssr/GUI.pm
chmod a+x $out/bin/yarssr
'';
postFixup = ''
wrapProgram $out/bin/yarssr \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath libs} \
--set PERL5LIB "${perlPackages.makePerlPath perlDeps}"
'';
meta = with lib; {
homepage = "https://github.com/tsyrogit/zxcvbn-c";
description = "A fork of Yarssr (a RSS reader for the GNOME Tray) from http://yarssr.sf.net with various fixes";
license = licenses.gpl1;
platforms = platforms.linux;
maintainers = with maintainers; [ xurei ];
};
}
+2 -2
View File
@@ -10,11 +10,11 @@
# Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs.
let
pname = "zettlr";
version = "2.1.2";
version = "2.1.3";
name = "${pname}-${version}";
src = fetchurl {
url = "https://github.com/Zettlr/Zettlr/releases/download/v${version}/Zettlr-${version}-x86_64.appimage";
sha256 = "sha256-gfq5eXSoEfOb3FVAv/iDDSGeEeZxFRp4BFtwf87WQGE=";
sha256 = "sha256-prUKMtM9qf34OXaMjuWa1jTZ+2tn99rVJBdqk1El3zs=";
};
appimageContents = appimageTools.extractType2 {
inherit name src;
@@ -1,27 +1,27 @@
{
"stable": {
"version": "97.0.4692.99",
"sha256": "1fpc07zvashaqqalwn7wxnswxclrxvhjrxy1rzr6gcq5awhaw6y9",
"sha256bin64": "18afashha667rzcscq3frkp5ixa7nrirs7i3061njqi4z9ql0cs8",
"version": "98.0.4758.80",
"sha256": "0wa1jhsw7qrym4x8wxmdvdvbilb8jdv0mizzib2342l61zi6cwn8",
"sha256bin64": "0p2bh45ffgfhyh18bxw8fz4691g25s44lxxj4igk8b0bn71v1pgi",
"deps": {
"gn": {
"version": "2021-11-03",
"version": "2021-12-07",
"url": "https://gn.googlesource.com/gn",
"rev": "90294ccdcf9334ed25a76ac9b67689468e506342",
"sha256": "0n0jml8s00ayy186jzrf207hbz70pxiq426znxwxd4gjcp60scsa"
"rev": "fc295f3ac7ca4fe7acc6cb5fb052d22909ef3a8f",
"sha256": "02bx3bp85kkis704gndb6jvjph7gv3ij746bq4anl30kfrkpcifh"
}
},
"chromedriver": {
"version": "97.0.4692.71",
"sha256_linux": "0lw74ycw8vh3qz4nxynnvrw8sngy3g0vcaana15y4b2ks73gcvci",
"sha256_darwin": "1zv1ndv1d7a29yvg0b242g8dw5f8s9vxhr454zd9vahn0ar4ksbs",
"sha256_darwin_aarch64": "0jzn75rrjw3y1bqg0ywfjcm2zn9dd2h3lswih51glvdrlcz3vw2a"
"version": "98.0.4758.48",
"sha256_linux": "1nk3vki803b30mc7ww911l68jfxmpp6mddyq02a3f68893qa2mcf",
"sha256_darwin": "09m5vsqfn6qyn3faf2p0dldll6fracjg6z81xzpyp2bh9zp8vk82",
"sha256_darwin_aarch64": "04lnbm9wiaz8dlc4qigxakcwghhjc3wvahvl5j80k8agkbv7fdvi"
}
},
"beta": {
"version": "98.0.4758.74",
"sha256": "01v9bfq3905zqhyp78zq69ipz2b5ldsrm8yjr9qb6434zrhlcvyb",
"sha256bin64": "0p85zanpmlkxc34zhx2rybbwriwqbjmg27rrjcf76gvfljlj3g51",
"version": "98.0.4758.80",
"sha256": "0wa1jhsw7qrym4x8wxmdvdvbilb8jdv0mizzib2342l61zi6cwn8",
"sha256bin64": "12a69cbv2sbrly6g477ln4pssh8n1rdg6mr6cc17iy2jhfihry0q",
"deps": {
"gn": {
"version": "2021-12-07",
@@ -32,9 +32,9 @@
}
},
"dev": {
"version": "99.0.4844.11",
"sha256": "1jkcif839yrhsckx5j1jqsmkhlvhm1gqk3mhvji1mfi4rg1dfd0l",
"sha256bin64": "01vl7ah3jkryrfnjidv8yq490hyqll6gd0vddy0b98wgyn3h593h",
"version": "99.0.4844.16",
"sha256": "0xig6l1yx9glgb1a53idncnqc1imjvbszi5mrp39yvijarmx8s1f",
"sha256bin64": "18p2hqykizijb9w96dm8yxwgvpjx37vabyw6n9wc59l6wyhbjkkw",
"deps": {
"gn": {
"version": "2022-01-10",
@@ -142,7 +142,7 @@ in stdenv.mkDerivation {
makeWrapper "$out/share/google/$appname/google-$appname" "$exe" \
--prefix LD_LIBRARY_PATH : "$rpath" \
--prefix PATH : "$binpath" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:${addOpenGLRunpath.driverLink}/share" \
--add-flags ${escapeShellArg commandLineArgs} \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "clusterctl";
version = "1.0.2";
version = "1.1.0";
src = fetchFromGitHub {
owner = "kubernetes-sigs";
repo = "cluster-api";
rev = "v${version}";
sha256 = "sha256-esSpCNvgYhuz9i22AU4ZowU5A5ZOPZ15+XHB4OOfTa4=";
sha256 = "sha256-mebxbS0PVP2EdYt31G0HQ0Z+wxpXOe9/xaKdH0wwB60=";
};
vendorSha256 = "sha256-VO1Z4NUWrd4JuFYFg0a01psqoIM8ps3vKd0djR5OELU=";
vendorSha256 = "sha256-T2a5FBjISXprgMA6ye2xwAFLE62Qb3AUQVjpGtnduU0=";
subPackages = [ "cmd/clusterctl" ];
@@ -168,9 +168,9 @@ rec {
};
terraform_1 = mkTerraform {
version = "1.1.4";
sha256 = "sha256-PzBdo4zqWB9ma+uYFGmZtJNCXlRnAHxQmzWxZFPzHH0=";
vendorSha256 = "sha256-Rk2hHtJfaS553MJIea6n51irMas3qcBrWAD+adzTi1Y=";
version = "1.1.5";
sha256 = "sha256-zIerP8v6ovIx+xwLsSmMFH41l140W9IwQMvomb/pk8E=";
vendorSha256 = "sha256-4ctuErxZIaESfIkS7BXI+eQcdatXE/1p20P9f890twM=";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };
};
@@ -5,13 +5,13 @@ buildGoModule rec {
/* Do not use "dev" as a version. If you do, Tilt will consider itself
running in development environment and try to serve assets from the
source tree, which is not there once build completes. */
version = "0.23.5";
version = "0.23.9";
src = fetchFromGitHub {
owner = "tilt-dev";
repo = pname;
rev = "v${version}";
sha256 = "sha256-qVybS+gRuTezX89NMWYQVWtUH6wnjB11HImejrzVHAc=";
sha256 = "sha256-sxOUO5dLWBgNvbi42/aoN4YQStuNuXxWuM3WJxh1ucg=";
};
vendorSha256 = null;
@@ -11,15 +11,15 @@
buildGoModule rec {
pname = "werf";
version = "1.2.56";
version = "1.2.60";
src = fetchFromGitHub {
owner = "werf";
repo = "werf";
rev = "v${version}";
sha256 = "sha256-6gDSH/YWkXeYyEwJDYNNCAWTBjwGx7kNcsCqmmwqJy0=";
sha256 = "sha256-EEceAIlbwfKD2K0pJxmCRn6+yc5RVBassENuMS48794=";
};
vendorSha256 = "sha256-Cod7nFLu6au0uxrJLBf7SG1YBasRzmDjt+FmtZqMw3U=";
vendorSha256 = "sha256-3hNqCIx6S1pEzLMRVmr04pmQrrc3T/Q/FsB/DCAVRCY=";
proxyVendor = true;
nativeBuildInputs = [ pkg-config ];
@@ -2,14 +2,14 @@
python3Packages.buildPythonApplication rec {
pname = "flexget";
version = "3.2.15";
version = "3.2.16";
# Fetch from GitHub in order to use `requirements.in`
src = fetchFromGitHub {
owner = "flexget";
repo = "flexget";
rev = "v${version}";
sha256 = "0ygkygd0gcldwdx6wl1kbvzi93k75m0v05m614cahh0jc7j27xy7";
sha256 = "sha256-4CMAkLMVvahKwwBo9epHiVnOtTK3T6Q8pHXAHSEbxvk=";
};
postPatch = ''
@@ -11,6 +11,7 @@
, evolution-data-server
, feedbackd
, glibmm
, gnome
, gspell
, gtk3
, json-glib
@@ -27,14 +28,15 @@
stdenv.mkDerivation rec {
pname = "chatty";
version = "0.4.0";
version = "0.6.0";
src = fetchFromGitLab {
domain = "source.puri.sm";
owner = "Librem5";
repo = "chatty";
rev = "v${version}";
sha256 = "12k1a5xrwd6zk4x0m53hbzggk695z3bpbzy1wcikzy0jvch7h13d";
fetchSubmodules = true;
hash = "sha256-8haVzRfAZwdTlYu7oKeu8E3uEH87yrHS4j+BWFQ/Nj0=";
};
postPatch = ''
@@ -55,6 +57,7 @@ stdenv.mkDerivation rec {
evolution-data-server
feedbackd
glibmm
gnome.gnome-desktop
gspell
gtk3
json-glib
@@ -2,7 +2,7 @@
"name": "element-desktop",
"productName": "Element",
"main": "lib/electron-main.js",
"version": "1.9.9",
"version": "1.10.1",
"description": "A feature-rich client for Matrix.org",
"author": "Element",
"repository": {
@@ -61,18 +61,19 @@
"app-builder-lib": "^22.14.10",
"asar": "^2.0.1",
"chokidar": "^3.5.2",
"electron": "13.5",
"electron": "^15.3.5",
"electron-builder": "22.11.4",
"electron-builder-squirrel-windows": "22.11.4",
"electron-devtools-installer": "^3.1.1",
"electron-notarize": "^1.0.0",
"eslint": "7.18.0",
"eslint-config-google": "^0.14.0",
"eslint-plugin-matrix-org": "github:matrix-org/eslint-plugin-matrix-org#2306b3d4da4eba908b256014b979f1d3d43d2945",
"eslint-plugin-import": "^2.25.4",
"eslint-plugin-matrix-org": "^0.4.0",
"find-npm-prefix": "^1.0.2",
"fs-extra": "^8.1.0",
"glob": "^7.1.6",
"matrix-web-i18n": "github:matrix-org/matrix-web-i18n",
"matrix-web-i18n": "^1.2.0",
"mkdirp": "^1.0.3",
"needle": "^2.5.0",
"node-pre-gyp": "^0.15.0",
@@ -1,6 +1,6 @@
{
"version": "1.9.9",
"desktopSrcHash": "IMqco5HeAgsh1LMBXFH1/HnlIEFEQU0xqnHbTKwHGL4=",
"desktopYarnHash": "0zzr14fcyc5q2562x50nvxxda10yr5ihbr12nykzg4j534rgb55y",
"webHash": "1i3zka9cfn14rv5wzz969w6dz5dbkw87clrgajs8p1s2l62ac1jf"
"version": "1.10.1",
"desktopSrcHash": "cA+yXVkfizVRbbykFRhNIbdaGLuEk2IuKFO8YJt78Q4=",
"desktopYarnHash": "0kz6vkfxxk4sbr9zpaig1lhsbwj4f57v4f4pr373xxsnk1wagkfn",
"webHash": "1g5hw39fr7adazmafpxivfxv28nzcv99r8sihga1j91avf6lxkim"
}
@@ -22,7 +22,7 @@ if [[ "$nixpkgs_linux_version" == "$latest_linux_version" && "$nixpkgs_mac_versi
exit 0
fi
linux_url="https://downloads.slack-edge.com/linux_releases/slack-desktop-${latest_linux_version}-amd64.deb"
linux_url="https://downloads.slack-edge.com/releases/linux/${latest_linux_version}/prod/x64/slack-desktop-${latest_linux_version}-amd64.deb"
mac_url="https://downloads.slack-edge.com/releases/macos/${latest_mac_version}/prod/x64/Slack-${latest_mac_version}-macOS.dmg"
linux_sha256=$(nix-prefetch-url ${linux_url})
mac_sha256=$(nix-prefetch-url ${mac_url})
@@ -14,109 +14,150 @@
, xdg-utils
, systemd
, nodePackages
, enableRectOverlay ? false }:
, xar
, cpio
, makeWrapper
, enableRectOverlay ? false
}:
stdenv.mkDerivation rec {
let
pname = "teams";
version = "1.4.00.26453";
src = fetchurl {
url = "https://packages.microsoft.com/repos/ms-teams/pool/main/t/teams/teams_${version}_amd64.deb";
sha256 = "0ndqk893l17m42hf5fiiv6mka0v7v8r54kblvb67jsxajdvva5gf";
};
nativeBuildInputs = [ dpkg autoPatchelfHook wrapGAppsHook nodePackages.asar ];
unpackCmd = "dpkg -x $curSrc .";
buildInputs = atomEnv.packages ++ [
libuuid
at-spi2-atk
];
runtimeDependencies = [
(lib.getLib systemd)
pulseaudio
libappindicator-gtk3
];
preFixup = ''
gappsWrapperArgs+=(--prefix PATH : "${coreutils}/bin:${gawk}/bin")
gappsWrapperArgs+=(--add-flags --disable-namespace-sandbox)
gappsWrapperArgs+=(--add-flags --disable-setuid-sandbox)
'';
buildPhase = ''
runHook preBuild
asar extract share/teams/resources/app.asar "$TMP/work"
substituteInPlace $TMP/work/main.bundle.js \
--replace "/usr/share/pixmaps/" "$out/share/pixmaps" \
--replace "/usr/bin/xdg-mime" "${xdg-utils}/bin/xdg-mime" \
--replace "Exec=/usr/bin/" "Exec=" # Remove usage of absolute path in autostart.
asar pack --unpack='{*.node,*.ftz,rect-overlay}' "$TMP/work" share/teams/resources/app.asar
runHook postBuild
'';
preferLocalBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/{opt,bin}
mv share/teams $out/opt/
mv share $out/share
substituteInPlace $out/share/applications/teams.desktop \
--replace /usr/bin/ ""
ln -s $out/opt/teams/teams $out/bin/
${lib.optionalString (!enableRectOverlay) ''
# Work-around screen sharing bug
# https://docs.microsoft.com/en-us/answers/questions/42095/sharing-screen-not-working-anymore-bug.html
rm $out/opt/teams/resources/app.asar.unpacked/node_modules/slimcore/bin/rect-overlay
''}
runHook postInstall
'';
dontAutoPatchelf = true;
# Includes runtimeDependencies in the RPATH of the included Node modules
# so that dynamic loading works. We cannot use directly runtimeDependencies
# here, since the libraries from runtimeDependencies are not propagated
# to the dynamically loadable node modules because of a condition in
# autoPatchElfHook since *.node modules have Type: DYN (Shared object file)
# instead of EXEC or INTERP it expects.
# Fixes: https://github.com/NixOS/nixpkgs/issues/85449
postFixup = ''
autoPatchelf "$out"
runtime_rpath="${lib.makeLibraryPath runtimeDependencies}"
for mod in $(find "$out/opt/teams" -name '*.node'); do
mod_rpath="$(patchelf --print-rpath "$mod")"
echo "Adding runtime dependencies to RPATH of Node module $mod"
patchelf --set-rpath "$runtime_rpath:$mod_rpath" "$mod"
done;
# fix for https://docs.microsoft.com/en-us/answers/questions/298724/open-teams-meeting-link-on-linux-doens39t-work.html?childToView=309406#comment-309406
# while we create the wrapper ourselves, gappsWrapperArgs leads to the same issue
# another option would be to introduce gappsWrapperAppendedArgs, to allow control of positioning
substituteInPlace "$out/bin/teams" --replace '.teams-wrapped" --disable-namespace-sandbox --disable-setuid-sandbox "$@"' '.teams-wrapped" "$@" --disable-namespace-sandbox --disable-setuid-sandbox'
'';
meta = with lib; {
description = "Microsoft Teams";
homepage = "https://teams.microsoft.com";
downloadPage = "https://teams.microsoft.com/downloads";
license = licenses.unfree;
maintainers = [ maintainers.liff ];
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ liff tricktron ];
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" ];
};
}
linux = stdenv.mkDerivation rec {
inherit pname version meta;
src = fetchurl {
url = "https://packages.microsoft.com/repos/ms-teams/pool/main/t/teams/teams_${version}_amd64.deb";
sha256 = "0ndqk893l17m42hf5fiiv6mka0v7v8r54kblvb67jsxajdvva5gf";
};
nativeBuildInputs = [ dpkg autoPatchelfHook wrapGAppsHook nodePackages.asar ];
unpackCmd = "dpkg -x $curSrc .";
buildInputs = atomEnv.packages ++ [
libuuid
at-spi2-atk
];
runtimeDependencies = [
(lib.getLib systemd)
pulseaudio
libappindicator-gtk3
];
preFixup = ''
gappsWrapperArgs+=(--prefix PATH : "${coreutils}/bin:${gawk}/bin")
gappsWrapperArgs+=(--add-flags --disable-namespace-sandbox)
gappsWrapperArgs+=(--add-flags --disable-setuid-sandbox)
'';
buildPhase = ''
runHook preBuild
asar extract share/teams/resources/app.asar "$TMP/work"
substituteInPlace $TMP/work/main.bundle.js \
--replace "/usr/share/pixmaps/" "$out/share/pixmaps" \
--replace "/usr/bin/xdg-mime" "${xdg-utils}/bin/xdg-mime" \
--replace "Exec=/usr/bin/" "Exec=" # Remove usage of absolute path in autostart.
asar pack --unpack='{*.node,*.ftz,rect-overlay}' "$TMP/work" share/teams/resources/app.asar
runHook postBuild
'';
preferLocalBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/{opt,bin}
mv share/teams $out/opt/
mv share $out/share
substituteInPlace $out/share/applications/teams.desktop \
--replace /usr/bin/ ""
ln -s $out/opt/teams/teams $out/bin/
${lib.optionalString (!enableRectOverlay) ''
# Work-around screen sharing bug
# https://docs.microsoft.com/en-us/answers/questions/42095/sharing-screen-not-working-anymore-bug.html
rm $out/opt/teams/resources/app.asar.unpacked/node_modules/slimcore/bin/rect-overlay
''}
runHook postInstall
'';
dontAutoPatchelf = true;
# Includes runtimeDependencies in the RPATH of the included Node modules
# so that dynamic loading works. We cannot use directly runtimeDependencies
# here, since the libraries from runtimeDependencies are not propagated
# to the dynamically loadable node modules because of a condition in
# autoPatchElfHook since *.node modules have Type: DYN (Shared object file)
# instead of EXEC or INTERP it expects.
# Fixes: https://github.com/NixOS/nixpkgs/issues/85449
postFixup = ''
autoPatchelf "$out"
runtime_rpath="${lib.makeLibraryPath runtimeDependencies}"
for mod in $(find "$out/opt/teams" -name '*.node'); do
mod_rpath="$(patchelf --print-rpath "$mod")"
echo "Adding runtime dependencies to RPATH of Node module $mod"
patchelf --set-rpath "$runtime_rpath:$mod_rpath" "$mod"
done;
# fix for https://docs.microsoft.com/en-us/answers/questions/298724/open-teams-meeting-link-on-linux-doens39t-work.html?childToView=309406#comment-309406
# while we create the wrapper ourselves, gappsWrapperArgs leads to the same issue
# another option would be to introduce gappsWrapperAppendedArgs, to allow control of positioning
substituteInPlace "$out/bin/teams" --replace '.teams-wrapped" --disable-namespace-sandbox --disable-setuid-sandbox "$@"' '.teams-wrapped" "$@" --disable-namespace-sandbox --disable-setuid-sandbox'
'';
};
appName = "Teams.app";
darwin = stdenv.mkDerivation {
inherit pname version meta;
src = fetchurl {
url = "https://statics.teams.cdn.office.net/production-osx/${version}/Teams_osx.pkg";
sha256 = "1mg6a3b3954w4xy5rlcrwxczymygl61dv2rxqp45sjcsh3hp39q0";
};
buildInputs = [ xar cpio makeWrapper ];
unpackPhase = ''
xar -xf $src
zcat < Teams_osx_app.pkg/Payload | cpio -i
'';
sourceRoot = "Microsoft\ Teams.app";
dontPatch = true;
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/{Applications/${appName},bin}
cp -R . $out/Applications/${appName}
makeWrapper $out/Applications/${appName}/Contents/MacOS/Teams $out/bin/teams
runHook postInstall
'';
};
in
if stdenv.isDarwin
then darwin
else linux
@@ -7,16 +7,16 @@
buildGoModule rec {
pname = "seaweedfs";
version = "2.85";
version = "2.88";
src = fetchFromGitHub {
owner = "chrislusf";
repo = "seaweedfs";
rev = version;
sha256 = "sha256-MsPvda+VaqO3tXH26nVukNWcJ1n+/n5Qk7BMr/DAVUk=";
sha256 = "sha256-B/gcuga82lZSLPKjYWAiLyvqf1FRQmHJsH2jqLkusjA=";
};
vendorSha256 = "sha256-gK4uHLNcperpG2OVdk7XKCUWCC87cyDBf8qigj/z3jA=";
vendorSha256 = "sha256-N7zOrSMrCR/eOH+08TImI1q2AFGUuWN7xIt3CUVB9rM=";
subPackages = [ "weed" ];
@@ -7,11 +7,11 @@ let
inherit (python3Packages) python pygobject3;
in stdenv.mkDerivation rec {
pname = "gnumeric";
version = "1.12.50";
version = "1.12.51";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "dYgZuhvWmDgp+efG1xp/ogzXWjZSonHluwA9XYvMFLg=";
sha256 = "oA5sbk7N2tq9mwrhgBPXsFk3/cuPmq1ac7lZI8eusd0=";
};
configureFlags = [ "--disable-component" ];
@@ -1,44 +0,0 @@
{ stdenv
, fetchFromGitHub
, poco
, pkg-config
, gnome2
, gtkmm2
, lib
}:
stdenv.mkDerivation rec {
pname = "timekeeper";
version = "1.0";
src = fetchFromGitHub {
owner = "bburdette";
repo = "TimeKeeper";
rev = "v${version}";
fetchSubmodules = true;
sha256 = "03rvzkygnn7igcindbb5bcmfy0l83n0awkzprsnhlb6ndxax3k9w";
};
nativeBuildInputs = [
poco
pkg-config
];
buildInputs = [
gtkmm2
gnome2.libglademm
gnome2.libglade
];
installPhase = ''
install -Dm755 TimeKeeper/TimeKeeper $out/bin/timekeeper
'';
meta = with lib; {
description = "Log hours worked and make reports";
homepage = "https://github.com/bburdette/TimeKeeper";
maintainers = with maintainers; [ bburdette ];
platforms = [ "x86_64-linux" ];
license = licenses.bsd3;
};
}
+2 -2
View File
@@ -8,14 +8,14 @@
mkDerivation rec {
pname = "vnote";
version = "3.12.0";
version = "3.12.888";
src = fetchFromGitHub {
owner = "vnotex";
repo = pname;
fetchSubmodules = true;
rev = "v${version}";
sha256 = "sha256-hlB/G7qFYbkdIk9f2N+q1Do3V1ON8UUQZ6AUmBfK8x0=";
sha256 = "sha256-l9oFixyEM0aAfvrC5rrQMzv7n8rUHECRzhuIQJ/szjc=";
};
nativeBuildInputs = [
+2 -2
View File
@@ -33,13 +33,13 @@
mkDerivation rec {
pname = "sdrangel";
version = "6.18.0";
version = "6.18.1";
src = fetchFromGitHub {
owner = "f4exb";
repo = "sdrangel";
rev = "v${version}";
sha256 = "sha256-L/D8uEWiFGkAXcxnwDWcPQmc3FvXrG6xs9japMmTHys=";
sha256 = "sha256-gf+RUOcki0pi3UH4NHFsmbTV04HUG16UC4jcUjyeip4=";
fetchSubmodules = false;
};
@@ -0,0 +1,24 @@
{ lib, fetchFromGitHub, ocamlPackages }:
ocamlPackages.buildDunePackage rec {
pname = "anders";
version = "1.1.1";
useDune2 = true;
src = fetchFromGitHub {
owner = "groupoid";
repo = "anders";
rev = "${version}";
sha256 = "sha256-JUiZoo2rNLfgs94TlJqUNzul/7ODisCjSFAzhgSp1z4=";
};
buildInputs = with ocamlPackages; [ zarith menhir ];
meta = with lib; {
description = "Modal Homotopy Type System";
homepage = "https://homotopy.dev/";
license = licenses.isc;
maintainers = [ maintainers.suhr ];
};
}
@@ -1,55 +0,0 @@
{ stdenv
, lib
, fetchurl
, fetchpatch
, pkg-config
, autoreconfHook
, gnome2
, gtk2
, glib
, libtifiles2
, libticables2
, libticalcs2
, libticonv
}:
stdenv.mkDerivation rec {
pname = "gfm";
version = "1.08";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "0zq1a9mm54zr18dz2mqh79w1a126xwqz6dcrpjlbd1pnmg01l0q9";
};
patches = fetchpatch {
name = "remove-broken-kde-support.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/remove-broken-kde-support.patch?h=gfm";
sha256 = "03yc8s2avicmv04f2ygg3r3q8l7kpsc94mhp6clp584kmjpjqag5";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
gtk2
gnome2.libglade
glib
libtifiles2
libticables2
libticalcs2
libticonv
];
NIX_CFLAGS_COMPILE = "-I${libticables2}/include/tilp2";
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "Group File Manager (GFM) allows manipulation of single/group/tigroup files";
homepage = "http://lpg.ticalc.org/prj_gfm/index.html";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ siraben luc65r ];
platforms = with platforms; linux ++ darwin;
};
}
@@ -1,57 +0,0 @@
{ stdenv
, lib
, fetchurl
, fetchpatch
, autoreconfHook
, pkg-config
, intltool
, glib
, gnome2
, gtk2
, gfm
, libticables2
, libticalcs2
, libticonv
, libtifiles2
}:
stdenv.mkDerivation rec {
pname = "tilp2";
version = "1.18";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "0isf73bjwk06baz2gm3vpdh600gqck9ca4aqxzb089dmxriv6fkv";
};
patches = fetchpatch {
name = "remove-broken-kde-support.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/remove-broken-kde-support.patch?h=tilp";
sha256 = "1fn6vh7r45spkwpmkvffkbn7zrcsdrs5mjmspd5rwi3jc12cy3ny";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
intltool
];
buildInputs = [
glib
gtk2
gnome2.libglade
gfm
libticables2
libticalcs2
libticonv
libtifiles2
];
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "Transfer data between Texas Instruments graphing calculators and a computer";
homepage = "http://lpg.ticalc.org/prj_tilp/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ luc65r ];
platforms = with platforms; linux ++ darwin;
};
}
@@ -0,0 +1,78 @@
{ lib
, meson
, ninja
, fetchFromGitHub
, appstream-glib
, desktop-file-utils
, gdk-pixbuf
, gettext
, glib
, gnome
, gobject-introspection
, gtk3
, libxml2
, pkg-config
, python3Packages
, wrapGAppsHook }:
python3Packages.buildPythonApplication rec {
pname = "bada-bib";
version = "0.3.0";
format = "other";
strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitHub {
owner = "RogerCrocker";
repo = "BadaBib";
rev = "v${version}";
sha256 = "0rclkkf5kd9ab049lizliiqawx5c5y2qmq40lkxnx09sa0283vg8";
};
nativeBuildInputs = [
gettext
gobject-introspection
libxml2
meson
ninja
pkg-config
wrapGAppsHook
];
buildInputs = [
gdk-pixbuf
glib
gtk3
];
checkInputs = [
appstream-glib
desktop-file-utils
];
pythonPath = with python3Packages; [
bibtexparser
pygobject3
watchgod
];
postPatch = ''
patchShebangs build-aux/meson/postinstall.py
'';
dontWrapGApps = true; # Needs python wrapper
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
postFixup = ''
wrapPythonProgramsIn "$out/libexec" "$out $pythonPath"
'';
meta = with lib; {
homepage = "https://github.com/RogerCrocker/BadaBib";
description = "A simple BibTeX Viewer and Editor";
maintainers = [ maintainers.Cogitri ];
license = licenses.gpl3Plus;
};
}
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "gh";
version = "2.4.0";
version = "2.5.0";
src = fetchFromGitHub {
owner = "cli";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-RFKS6fHh+rX5S31MvAQpJUNgaI6loiUw0FNkdsMFqlQ=";
sha256 = "sha256-zQHFLXcsIFMqMCJp7+3Abc0WbSWKJyfAAE+TTJGRRmY=";
};
vendorSha256 = "sha256-6owFzn+NAhlHjTJEur1H5oZY87ZoptvAnF2w6kafix8=";
vendorSha256 = "sha256-yMc3Czo7gTb2ZSWjj0yyId+qyro4mU1C+FOgEjZEhBY=";
nativeBuildInputs = [ installShellFiles ];
@@ -1,18 +1,30 @@
{ lib, stdenv, rustPlatform, fetchFromGitHub, libiconv, perl, python3, Security, AppKit, openssl, xclip, pkg-config }:
{ lib
, stdenv
, rustPlatform
, fetchFromGitHub
, libiconv
, openssl
, pkg-config
, xclip
, AppKit
, Security
}:
rustPlatform.buildRustPackage rec {
pname = "gitui";
version = "0.19.0";
version = "0.20.1";
src = fetchFromGitHub {
owner = "extrawurst";
repo = pname;
rev = "v${version}";
sha256 = "sha256-PNyXmXHS8StJhx6Qko7zbXrX1CX3owC1HmyX9VV7tEg=";
sha256 = "sha256-zYM0JVhgFnp8JDBx9iEOt029sr8azIPX5jrtvUE/Pn0=";
};
cargoSha256 = "sha256-Q6QUxIe5bkoEcxZZwhJbihaHhSsX8SLqWzmjp8hFsS4=";
cargoSha256 = "sha256-kbLI95GzCwm2OKzzpk7jvgtm8vArf29u5BiPRTh2OmE=";
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [ python3 perl pkg-config ];
buildInputs = [ openssl ]
++ lib.optional stdenv.isLinux xclip
++ lib.optionals stdenv.isDarwin [ libiconv Security AppKit ];
@@ -21,7 +33,7 @@ rustPlatform.buildRustPackage rec {
OPENSSL_NO_VENDOR = 1;
meta = with lib; {
description = "Blazing fast terminal-ui for git written in rust";
description = "Blazing fast terminal-ui for Git written in Rust";
homepage = "https://github.com/extrawurst/gitui";
license = licenses.mit;
maintainers = with maintainers; [ Br1ght0ne yanganto ];
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage rec {
pname = "sub-batch";
version = "0.4.1";
version = "1.0.0";
src = fetchFromGitHub {
owner = "kl";
repo = pname;
rev = "v${version}";
sha256 = "sha256-WUW+lOGbZ82NJxmW+Ogxslf3COOp62aZ/08Yn26l4T0=";
sha256 = "sha256-N+3KyBlLG90C3D5ivgj6qedtKsUBoBHr89gmxyAIfVI=";
};
cargoSha256 = "sha256-m9nBubmuuOcJyegmYGJizY/2b7oamBHKFNIaxOtikcA=";
cargoSha256 = "sha256-rjhSosiLIgcSw6OHpFmGNHXGUdf2QsiIXFVgtO9qNY0=";
nativeBuildInputs = [ makeWrapper ];
@@ -8,16 +8,16 @@
buildGoModule rec {
pname = "lima";
version = "0.8.1";
version = "0.8.2";
src = fetchFromGitHub {
owner = "lima-vm";
repo = pname;
rev = "v${version}";
sha256 = "sha256-vOoRwV4BO40cUWNxmWubgbN1q7WPKe2vifg8F1duaVA=";
sha256 = "sha256-kz+gyl7BuC0G97Lj3T1a859TYhwfAGB1hTiYXq66wwY=";
};
vendorSha256 = "sha256-118TYmpGUNMZgFKsOzqOy71SabG9tN6IeOkpgwVSXTY=";
vendorSha256 = "sha256-x0VmidGV9TsGOyL+OTUHXOxJ2cgvIqph56MrwfR2SP4=";
nativeBuildInputs = [ makeWrapper installShellFiles ];
@@ -243,13 +243,7 @@ stdenv.mkDerivation rec {
# Add a qemu-kvm wrapper for compatibility/convenience.
postInstall = ''
install -m755 -D $emitKvmWarningsPath $out/libexec/emit-kvm-warnings
if [ -x $out/bin/qemu-system-${stdenv.hostPlatform.qemuArch} ]; then
makeWrapper $out/bin/qemu-system-${stdenv.hostPlatform.qemuArch} \
$out/bin/qemu-kvm \
--run $out/libexec/emit-kvm-warnings \
--add-flags "\$([ -r /dev/kvm -a -w /dev/kvm ] && echo -enable-kvm)"
fi
ln -s $out/bin/qemu-system-${stdenv.hostPlatform.qemuArch} $out/bin/qemu-kvm
'';
passthru = {
@@ -259,26 +253,6 @@ stdenv.mkDerivation rec {
# Builds in ~3h with 2 cores, and ~20m with a big-parallel builder.
requiredSystemFeatures = [ "big-parallel" ];
emitKvmWarnings = ''
#!${runtimeShell}
WARNCOL='\033[1;35m'
NEUTRALCOL='\033[0m'
WARNING="''${WARNCOL}warning:''${NEUTRALCOL}"
if [ ! -e /dev/kvm ]; then
echo -e "''${WARNING} KVM is not available - execution will be slow" >&2
echo "Consider installing KVM for hardware-accelerated execution." >&2
echo "If KVM is already installed make sure the kernel module is loaded." >&2
elif [ ! -r /dev/kvm -o ! -w /dev/kvm ]; then
echo -e "''${WARNING} /dev/kvm is not read-/writable - execution will be slow" >&2
echo "/dev/kvm needs to be read-/writable by the user executing QEMU." >&2
echo "" >&2
echo "For hardware-acceleration inside the nix build sandbox /dev/kvm" >&2
echo "must be world-read-/writable (rw-rw-rw-)." >&2
fi
'';
passAsFile = [ "emitKvmWarnings" ];
meta = with lib; {
homepage = "http://www.qemu.org/";
description = "A generic and open source machine emulator and virtualizer";
@@ -8,24 +8,25 @@
, notmuch
, openssl
, ethtool
, lm_sensors
}:
rustPlatform.buildRustPackage rec {
pname = "i3status-rust";
version = "0.21.2";
version = "0.21.4";
src = fetchFromGitHub {
owner = "greshake";
repo = pname;
rev = "v${version}";
sha256 = "sha256-m0Yq6uxo4FAmwvUK/b3zTb79AT9h/fgdm4Q9sf1DYe0=";
sha256 = "sha256-D/+SDKkrYfdzFw+cNBJrCshpDuFSLbr70jvFMbX3B0w=";
};
cargoSha256 = "sha256-J+829GzZ4lKrn3MSip/weaI8pExBt3uex86bKZOofg4=";
cargoSha256 = "sha256-tNwf2ShnzoSrb1R/g0hOGwQMulWYXyVCILU3Jb+Sfpg=";
nativeBuildInputs = [ pkg-config makeWrapper ];
buildInputs = [ dbus libpulseaudio notmuch openssl ];
buildInputs = [ dbus libpulseaudio notmuch openssl lm_sensors ];
buildFeatures = [
"notmuch"
+14 -7
View File
@@ -9,19 +9,24 @@ let
# 0.3.4 would change hashes: https://github.com/NixOS/nixpkgs/issues/25154
patchutils = buildPackages.patchutils_0_3_3;
in
{ stripLen ? 0, extraPrefix ? null, excludes ? [], includes ? [], revert ? false, ... }@args:
{ stripLen ? 0
, extraPrefix ? null
, excludes ? []
, includes ? []
, revert ? false
, postFetch ? ""
, ...
}@args:
let
# Make base-64 encoded SRI hash filename-safe using RFC 4648 §5
tmpname = lib.replaceStrings [ "+" "/" "=" ] [ "-" "_" "" ] args.sha256;
in
fetchurl ({
postFetch = ''
tmpfile="$TMPDIR/${tmpname}"
tmpfile="$TMPDIR/patch"
if [ ! -s "$out" ]; then
echo "error: Fetched patch file '$out' is empty!" 1>&2
exit 1
fi
"${patchutils}/bin/lsdiff" "$out" \
| sort -u | sed -e 's/[*?]/\\&/g' \
| xargs -I{} \
@@ -33,6 +38,7 @@ fetchurl ({
--addnewprefix=b/${extraPrefix} \
''} \
--clean "$out" > "$tmpfile"
if [ ! -s "$tmpfile" ]; then
echo "error: Normalized patch '$tmpfile' is empty (while the fetched file was not)!" 1>&2
echo "Did you maybe fetch a HTML representation of a patch instead of a raw patch?" 1>&2
@@ -40,6 +46,7 @@ fetchurl ({
cat "$out" 1>&2
exit 1
fi
${patchutils}/bin/filterdiff \
-p1 \
${builtins.toString (builtins.map (x: "-x ${lib.escapeShellArg x}") excludes)} \
@@ -56,6 +63,6 @@ fetchurl ({
'' + lib.optionalString revert ''
${patchutils}/bin/interdiff "$out" /dev/null > "$tmpfile"
mv "$tmpfile" "$out"
'' + (args.postFetch or "");
'' + postFetch;
meta.broken = excludes != [] && includes != [];
} // builtins.removeAttrs args ["stripLen" "extraPrefix" "excludes" "includes" "revert" "postFetch"])
+26 -5
View File
@@ -1,15 +1,36 @@
{ lib, stdenv, fetchurl, meson, ninja, gettext, appstream-glib, gnome }:
{ stdenv
, lib
, fetchurl
, meson
, ninja
, python3
, gettext
, appstream-glib
, gnome
}:
stdenv.mkDerivation rec {
pname = "cantarell-fonts";
version = "0.301";
version = "0.303.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "3d35db0ac03f9e6b0d5a53577591b714238985f4cfc31a0aa17f26cd74675e83";
sha256 = "+UY6BlnGPlfjgf3XU88ZKSJTlcW0kTWYlCR2GDBTBBE=";
};
nativeBuildInputs = [ meson ninja gettext appstream-glib ];
nativeBuildInputs = [
meson
ninja
python3
python3.pkgs.psautohint
python3.pkgs.cffsubr
python3.pkgs.statmake
python3.pkgs.ufo2ft
python3.pkgs.setuptools
python3.pkgs.ufoLib2
gettext
appstream-glib
];
# ad-hoc fix for https://github.com/NixOS/nixpkgs/issues/50855
# until we fix gettext's envHook
@@ -19,7 +40,7 @@ stdenv.mkDerivation rec {
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = "1sczskw2kv3qy39i9mzw2lkl94a90bjgv5ln9acy5kh4gb2zmy7z";
outputHash = "XeqHVdTQ7PTzxkjwfzS/BTR7+k/M69sfUKdRXGOTmZE=";
passthru = {
updateScript = gnome.updateScript {
+2 -2
View File
@@ -1,14 +1,14 @@
{ lib, fetchzip }:
let
version = "1.8.3";
version = "1.13.0";
in
fetchzip rec {
name = "Cozette-${version}";
url = "https://github.com/slavfox/Cozette/releases/download/v.${version}/CozetteFonts.zip";
sha256 = "1nc4zk6n7cbv9vwlhpm3ady5lc4d4ic1klyywwfg27w8j0jv57hx";
sha256 = "sha256-xp3BCYfNUxCNewg4FfzmJnKp0PARvvnViMVwT25nWdM=";
postFetch = ''
mkdir -p $out/share/fonts
+6 -2
View File
@@ -4,6 +4,7 @@
, fetchFromGitHub
, fetchurl
, cairo
, nixosTests
, python3
, pkg-config
, pngquant
@@ -70,12 +71,15 @@ let
owner = "googlefonts";
repo = "noto-cjk";
inherit rev sha256;
sparseCheckout = "${typeface}/OTC";
};
installPhase = ''
install -m444 -Dt $out/share/fonts/opentype/noto-cjk ${typeface}/OTC/*.ttc
'';
passthru.tests.noto-fonts = nixosTests.noto-fonts;
meta = with lib; {
description = "Beautiful and free fonts for CJK languages";
homepage = "https://www.google.com/get/noto/help/cjk/";
@@ -113,14 +117,14 @@ in
typeface = "Sans";
version = "2.004";
rev = "9f7f3c38eab63e1d1fddd8d50937fe4f1eacdb1d";
sha256 = "sha256-BX4tcDcz+RGka8mtced1k3BopUJQ14t1BtAVqTjyPik=";
sha256 = "sha256-pNC/WJCYHSlU28E/CSFsrEMbyCe/6tjevDlOvDK9RwU=";
};
noto-fonts-cjk-serif = mkNotoCJK {
typeface = "Serif";
version = "2.000";
rev = "9f7f3c38eab63e1d1fddd8d50937fe4f1eacdb1d";
sha256 = "sha256-BX4tcDcz+RGka8mtced1k3BopUJQ14t1BtAVqTjyPik=";
sha256 = "sha256-Iy4lmWj5l+/Us/dJJ/Jl4MEojE9mrFnhNQxX2zhVngY=";
};
noto-fonts-emoji = let
@@ -0,0 +1,28 @@
{ lib, stdenvNoCC, fetchurl }:
stdenvNoCC.mkDerivation rec {
pname = "phinger-cursors";
version = "1.1";
src = fetchurl {
url = "https://github.com/phisch/phinger-cursors/releases/download/v${version}/phinger-cursors-variants.tar.bz2";
sha256 = "sha256-II+1x+rcjGRRVB8GYkVwkKVHNHcNaBKRb6C613901oc=";
};
sourceRoot = ".";
installPhase = ''
runHook preInstall
mkdir -p $out/share/icons
cp -r ./ $out/share/icons
runHook postInstall
'';
meta = with lib; {
description = "The most over-engineered cursor theme";
homepage = "https://github.com/phisch/phinger-cursors";
platforms = platforms.unix;
license = licenses.cc-by-sa-40;
maintainers = with maintainers; [ fortuneteller2k ];
};
}
@@ -1,17 +0,0 @@
{ stdenv, fetchurl, pkg-config, intltool, gtkmm2, libglade }:
stdenv.mkDerivation rec {
name = "libglademm-2.6.7";
src = fetchurl {
url = "mirror://gnome/sources/libglademm/2.6/${name}.tar.bz2";
sha256 = "1hrbg9l5qb7w0xvr7013qamkckyj0fqc426c851l69zpmhakqm1q";
};
outputs = [ "out" "devdoc" ];
nativeBuildInputs = [ pkg-config ];
buildInputs = [ intltool ];
propagatedBuildInputs = [ gtkmm2 libglade ];
}
+1 -4
View File
@@ -62,10 +62,6 @@ lib.makeScope pkgs.newScope (self: with self; {
autoreconfHook = pkgs.autoreconfHook269;
};
#### BINDINGS
libglademm = callPackage ./bindings/libglademm { };
} // lib.optionalAttrs (config.allowAliases or true) {
inherit (pkgs)
# GTK Libs
@@ -89,4 +85,5 @@ lib.makeScope pkgs.newScope (self: with self; {
gnome_icon_theme = self.gnome-icon-theme;
gnomeicontheme = self.gnome-icon-theme;
gnome_common = gnome-common;
libglademm = throw "libglademm has been removed"; # 2022-01-15
})
+2 -2
View File
@@ -43,13 +43,13 @@ in
stdenv.mkDerivation rec {
pname = "gdm";
version = "41.0";
version = "41.3";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/gdm/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "VzjEKTqfWoDUpungb00N8+nzE8p7Yb+02K+rqYPiANw=";
sha256 = "uwtlCnzqkPCaMyhPvQKXUxVAfvwY6BQAmFLRvK00N9Q=";
};
mesonFlags = [
@@ -26,13 +26,13 @@
stdenv.mkDerivation rec {
pname = "gnome-desktop";
version = "41.2";
version = "41.3";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-desktop/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "sha256-NDKe79rK0jMqatuuU4yNpuUiNcd3WpCLfDIECgdT7Go=";
sha256 = "sha256-jNHKq5MRgowEUkaMalBnqbxEY4NbI6FL5E6P2bAwAcY=";
};
patches = [
@@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "gnome-session-ctl";
version = "40.0";
version = "41.3";
src = fetchFromGitHub {
owner = "nix-community";
repo = pname;
rev = version;
hash = "sha256-gvBmLx8Qoj1vPsOwaZsd9+pTDvU5D7uUts7ZT1pXwNo=";
hash = "sha256-aC0tkTf2lgCRlcbFj1FEOVBm3YUuP+8Yz98W3ZjUydg=";
};
nativeBuildInputs = [
@@ -1,16 +1,42 @@
{ fetchurl, lib, stdenv, substituteAll, meson, ninja, pkg-config, gnome, glib, gtk3, gsettings-desktop-schemas
, gnome-desktop, dbus, json-glib, libICE, xmlto, docbook_xsl, docbook_xml_dtd_412, python3
, libxslt, gettext, makeWrapper, systemd, xorg, libepoxy, gnugrep, bash, gnome-session-ctl }:
{ fetchurl
, lib
, stdenv
, substituteAll
, meson
, ninja
, pkg-config
, gnome
, glib
, gtk3
, gsettings-desktop-schemas
, gnome-desktop
, dbus
, json-glib
, libICE
, xmlto
, docbook_xsl
, docbook_xml_dtd_412
, python3
, libxslt
, gettext
, makeWrapper
, systemd
, xorg
, libepoxy
, bash
, gnome-session-ctl
}:
stdenv.mkDerivation rec {
pname = "gnome-session";
version = "40.1.1";
# Also bump ./ctl.nix when bumping major version.
version = "41.3";
outputs = ["out" "sessions"];
outputs = [ "out" "sessions" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "10nzyhmgkrzk6i70kj7690na0hmsv6qy5bmr10akxq9jxqlphy4w";
sha256 = "7koikFP1ImJAVIiWCTNbiFKHz2e73g3J/YgrAeybWzk=";
};
patches = [
@@ -18,22 +44,41 @@ stdenv.mkDerivation rec {
src = ./fix-paths.patch;
gsettings = "${glib.bin}/bin/gsettings";
dbusLaunch = "${dbus.lib}/bin/dbus-launch";
grep = "${gnugrep}/bin/grep";
bash = "${bash}/bin/bash";
})
];
mesonFlags = [ "-Dsystemd=true" "-Dsystemd_session=default" ];
nativeBuildInputs = [
meson ninja pkg-config gettext makeWrapper
xmlto libxslt docbook_xsl docbook_xml_dtd_412 python3
meson
ninja
pkg-config
gettext
makeWrapper
xmlto
libxslt
docbook_xsl
docbook_xml_dtd_412
python3
dbus # for DTD
];
buildInputs = [
glib gtk3 libICE gnome-desktop json-glib xorg.xtrans gnome.adwaita-icon-theme
gnome.gnome-settings-daemon gsettings-desktop-schemas systemd libepoxy
glib
gtk3
libICE
gnome-desktop
json-glib
xorg.xtrans
gnome.adwaita-icon-theme
gnome.gnome-settings-daemon
gsettings-desktop-schemas
systemd
libepoxy
];
mesonFlags = [
"-Dsystemd=true"
"-Dsystemd_session=default"
];
postPatch = ''
@@ -49,17 +94,6 @@ stdenv.mkDerivation rec {
{} +
'';
# `bin/gnome-session` will reset the environment when run in wayland, we
# therefor wrap `libexec/gnome-session-binary` instead which is the actual
# binary needing wrapping
preFixup = ''
wrapProgram "$out/libexec/gnome-session-binary" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \
--suffix XDG_DATA_DIRS : "${gnome.gnome-shell}/share"\
--suffix XDG_CONFIG_DIRS : "${gnome.gnome-settings-daemon}/etc/xdg"
'';
# We move the GNOME sessions to another output since gnome-session is a dependency of
# GDM itself. If we do not hide them, it will show broken GNOME sessions when GDM is
# enabled without proper GNOME installation.
@@ -72,12 +106,26 @@ stdenv.mkDerivation rec {
rm -rf $out/libexec/gnome-session-ctl
'';
# `bin/gnome-session` will reset the environment when run in wayland, we
# therefor wrap `libexec/gnome-session-binary` instead which is the actual
# binary needing wrapping
preFixup = ''
wrapProgram "$out/libexec/gnome-session-binary" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \
--suffix XDG_DATA_DIRS : "${gnome.gnome-shell}/share"\
--suffix XDG_CONFIG_DIRS : "${gnome.gnome-settings-daemon}/etc/xdg"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-session";
attrPath = "gnome.gnome-session";
};
providedSessions = [ "gnome" "gnome-xorg" ];
providedSessions = [
"gnome"
"gnome-xorg"
];
};
meta = with lib; {
@@ -1,17 +1,10 @@
diff --git a/gnome-session/gnome-session.in b/gnome-session/gnome-session.in
index ddd1a591..46a3488b 100755
index b4b1f8fa..99d52cba 100755
--- a/gnome-session/gnome-session.in
+++ b/gnome-session/gnome-session.in
@@ -3,17 +3,19 @@
if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
@@ -4,13 +4,15 @@ if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
[ "x$XDG_SESSION_CLASS" != "xgreeter" ] &&
[ -n "$SHELL" ] &&
- grep -q "$SHELL" /etc/shells &&
- ! (echo "$SHELL" | grep -q "false") &&
- ! (echo "$SHELL" | grep -q "nologin"); then
+ @grep@ -q "$SHELL" /etc/shells &&
+ ! (echo "$SHELL" | @grep@ -q "false") &&
+ ! (echo "$SHELL" | @grep@ -q "nologin"); then
[ -n "$SHELL" ]; then
if [ "$1" != '-l' ]; then
- exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
+ # Make sure the shell actually sets up the environment.
@@ -28,7 +21,7 @@ index ddd1a591..46a3488b 100755
REGION=${REGION%\'}
diff --git a/gnome-session/main.c b/gnome-session/main.c
index 84edfbe5..e5285489 100644
index a460a849..9d07898f 100644
--- a/gnome-session/main.c
+++ b/gnome-session/main.c
@@ -215,7 +215,7 @@ require_dbus_session (int argc,
@@ -66,13 +66,13 @@ let
in
stdenv.mkDerivation rec {
pname = "gnome-shell";
version = "41.2";
version = "41.3";
outputs = [ "out" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "OEZR6wUTk9ur4AbRrQV78p1c1z67h7x3n/Xhwx6AqCc=";
sha256 = "Hj36KgvklFQYK0rOd/EdENP1uYjvD8tzK3MTVzlJ3tE=";
};
patches = [
+2 -2
View File
@@ -46,13 +46,13 @@
let self = stdenv.mkDerivation rec {
pname = "mutter";
version = "41.2";
version = "41.3";
outputs = [ "out" "dev" "man" ];
src = fetchurl {
url = "mirror://gnome/sources/mutter/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "AN+oEvHEhtdKK3P0IEWuEYL5JGx3lNZ9dLXlQ+pwBhc=";
sha256 = "cZxdEGDrYFwbpkO0hvtXsaPHGX59+DvWwzZvxLaEd+U=";
};
patches = [
+6 -6
View File
@@ -12,11 +12,11 @@
, bash
, gobject-introspection
, libsoup
, gtksourceview
, gtksourceview4
, gsettings-desktop-schemas
, adwaita-icon-theme
, gnome
, gtkspell3
, gspell
, shared-mime-info
, libgee
, libgit2-glib
@@ -29,11 +29,11 @@
stdenv.mkDerivation rec {
pname = "gitg";
version = "3.32.1";
version = "41";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0npg4kqpwl992fgjd2cn3fh84aiwpdp9kd8z7rw2xaj2iazsm914";
sha256 = "f7Ybn7EPuqVI0j1wZbq9cq1j5iHeVYQMBlzm45hsRik=";
};
nativeBuildInputs = [
@@ -52,8 +52,8 @@ stdenv.mkDerivation rec {
glib
gsettings-desktop-schemas
gtk3
gtksourceview
gtkspell3
gtksourceview4
gspell
json-glib
libdazzle
libgee
+1 -1
View File
@@ -214,7 +214,7 @@ lib.makeScope pkgs.newScope (self: with self; {
gtk = pkgs.gtk2;
libxfcegui4 = throw "libxfcegui4 is the deprecated Xfce GUI library. It has been superseded by the libxfce4ui library";
xinitrc = xfce4-session.xinitrc;
inherit (pkgs.gnome2) libglade;
libglade = throw "libglade has been removed";
inherit (pkgs.gnome) gtksourceview;
xfce4-mixer-pulse = xfce4-mixer;
thunar-bare = thunar.override {
+14 -4
View File
@@ -32,9 +32,11 @@ let
x86_64-linux = "linux-x86_64";
i686-linux = "linux-i686";
x86_64-darwin = "darwin-x86_64";
aarch64-darwin = "darwin-universal";
};
arch = archs.${stdenv.system} or (throw "system ${stdenv.system} not supported");
isAarch64Darwin = stdenv.system == "aarch64-darwin";
checkInputs = [ git gmp openssl readline libxml2 libyaml ];
@@ -53,6 +55,8 @@ let
tar --strip-components=1 -C $out -xf ${src}
patchShebangs $out/bin/crystal
'';
meta.broken = lib.versionOlder version "1.2.0" && isAarch64Darwin;
};
commonBuildInputs = extraBuildInputs: [
@@ -206,7 +210,8 @@ let
homepage = "https://crystal-lang.org/";
license = licenses.asl20;
maintainers = with maintainers; [ david50407 fabianhjr manveru peterhoeg ];
platforms = builtins.attrNames archs;
platforms = let archNames = builtins.attrNames archs; in
if (lib.versionOlder version "1.2.0") then remove "aarch64-darwin" archNames else archNames;
broken = lib.versionOlder version "0.36.1" && stdenv.isDarwin;
};
})
@@ -223,6 +228,13 @@ rec {
};
};
binaryCrystal_1_2 = genericBinary {
version = "1.2.0";
sha256s = {
aarch64-darwin = "1hrs8cpjxdkcf8mr9qgzilwbg6bakq87sd4yydfsk2f4pqd6g7nf";
};
};
crystal_1_0 = generic {
version = "1.0.0";
sha256 = "sha256-RI+a3w6Rr+uc5jRf7xw0tOenR+q6qii/ewWfID6dbQ8=";
@@ -238,10 +250,8 @@ rec {
crystal_1_2 = generic {
version = "1.2.2";
sha256 = "sha256-nyOXhsutVBRdtJlJHe2dALl//BUXD1JeeQPgHU4SwiU=";
binary = crystal_1_1;
binary = if isAarch64Darwin then binaryCrystal_1_2 else crystal_1_1;
};
crystal = crystal_1_2;
crystal2nix = callPackage ./crystal2nix.nix { };
}
@@ -23,7 +23,7 @@ let
zuluVersion = "8.54.0.21";
jdkVersion = "8.0.292";
sha256 =
if enableJavaFX then "1b05b2e40f707a151b063ebba821270fa930ebfc05712bc1f5a8a112395731a6"
if enableJavaFX then "8e901075cde2c31f531a34e8321ea4201970936abf54240a232e9389952afe84"
else "05w89wfjlfbpqfjnv6wisxmaf13qb28b2223f9264jyx30qszw1c";
};
}."${stdenv.hostPlatform.system}";
@@ -0,0 +1,50 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch }:
stdenv.mkDerivation rec {
pname = "uasm";
version = "2.53";
src = fetchFromGitHub {
owner = "Terraspace";
repo = pname;
rev = "v${version}";
sha256 = "sha256-Aohwrcb/KTKUFFpfmqVDPNjJh1dMYSNnBJ2eFaP20pM=";
};
# https://github.com/Terraspace/UASM/pull/154
patches = [
# fix `invalid operands to binary - (have 'char *' and 'uint_8 *' {aka 'unsigned char *'})`
(fetchpatch {
name = "fix_pointers_compare.patch";
url = "https://github.com/clouds56/UASM/commit/9cd3a400990e230571e06d4c758bd3bd35f90ab6.patch";
sha256 = "sha256-8mY36dn+g2QNJ1JbWt/y4p0Ha9RSABnOE3vlWANuhsA=";
})
# fix `dbgcv.c:*:*: fatal error: direct.h: No such file or directory`
(fetchpatch {
name = "fix_build_dbgcv_c_on_unix.patch";
url = "https://github.com/clouds56/UASM/commit/806d54cf778246c96dcbe61a4649bf0aebcb0eba.patch";
sha256 = "sha256-uc1LaizdYEh1Ry55Cq+6wrCa1OeBPFo74H5iBpmteAE=";
})
];
enableParallelBuilding = true;
makefile = "gccLinux64.mak";
installPhase = ''
runHook preInstall
install -Dt "$out/bin" -m0755 GccUnixR/uasm
install -Dt "$out/share/doc/${pname}" -m0644 {Readme,History}.txt Doc/*
runHook postInstall
'';
meta = with lib; {
homepage = "http://www.terraspace.co.uk/uasm.html";
description = "A free MASM-compatible assembler based on JWasm";
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ thiagokokada ];
license = licenses.watcom;
};
}

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