Merge branch 'master' into r-updates
This commit is contained in:
@@ -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`.
|
||||
|
||||
|
||||
@@ -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()],
|
||||
)
|
||||
|
||||
|
||||
@@ -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";
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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" ];
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -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 = ''
|
||||
|
||||
@@ -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
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -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" ];
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -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 = ''
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -82,5 +82,5 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with maintainers; [ ];
|
||||
meta.maintainers = with maintainers; [ patryk27 ];
|
||||
}
|
||||
|
||||
@@ -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 {};
|
||||
|
||||
@@ -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",
|
||||
)
|
||||
'';
|
||||
})
|
||||
@@ -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")
|
||||
'';
|
||||
})
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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
|
||||
};
|
||||
}
|
||||
-57
@@ -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" />
|
||||
@@ -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";
|
||||
};
|
||||
}
|
||||
@@ -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"
|
||||
'';
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
@@ -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
|
||||
|
||||
@@ -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}
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
@@ -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 ];
|
||||
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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 = ''
|
||||
|
||||
@@ -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 ];
|
||||
};
|
||||
}
|
||||
@@ -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";
|
||||
|
||||
@@ -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 ];
|
||||
};
|
||||
}
|
||||
@@ -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
|
||||
|
||||
+5
-4
@@ -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;
|
||||
};
|
||||
}
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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"])
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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 ];
|
||||
}
|
||||
@@ -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
|
||||
})
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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
Reference in New Issue
Block a user