Merge master into haskell-updates

This commit is contained in:
github-actions[bot]
2022-01-27 00:07:58 +00:00
committed by GitHub
188 changed files with 4656 additions and 1701 deletions
+11 -3
View File
@@ -32,9 +32,9 @@ Given that most of the OCaml ecosystem is now built with dune, nixpkgs includes
Here is a simple package example.
- It defines an (optional) attribute `minimalOCamlVersion` that will be used to
throw a descriptive evaluation error if building with an older OCaml is
attempted.
- It defines an (optional) attribute `minimalOCamlVersion` (see note below)
that will be used to throw a descriptive evaluation error if building with
an older OCaml is attempted.
- It uses the `fetchFromGitHub` fetcher to get its source.
@@ -117,3 +117,11 @@ buildDunePackage rec {
};
}
```
Note about `minimalOCamlVersion`. A deprecated version of this argument was
spelled `minimumOCamlVersion`; setting the old attribute wrongly modifies the
derivation hash and is therefore inappropriate. As a technical dept, currently
packaged libraries may still use the old spelling: maintainers are invited to
fix this when updating packages. Massive renaming is strongly discouraged as it
would be challenging to review, difficult to test, and will cause unnecessary
rebuild.
+18 -1
View File
@@ -3545,7 +3545,7 @@
name = "Leo Maroni";
};
emmanuelrosa = {
email = "emmanuel_rosa@aol.com";
email = "emmanuelrosa@protonmail.com";
matrix = "@emmanuelrosa:matrix.org";
github = "emmanuelrosa";
githubId = 13485450;
@@ -5984,6 +5984,13 @@
githubId = 107689;
name = "Josh Holland";
};
jsierles = {
email = "joshua@hey.com";
matrix = "@jsierles:matrix.org";
name = "Joshua Sierles";
github = "jsierles";
githubId = 82;
};
jtcoolen = {
email = "jtcoolen@pm.me";
name = "Julien Coolen";
@@ -6061,6 +6068,16 @@
githubId = 2396926;
name = "Justin Woo";
};
jvanbruegge = {
email = "supermanitu@gmail.com";
github = "jvanbruegge";
githubId = 1529052;
name = "Jan van Brügge";
keys = [{
longkeyid = "rsa4096/0x366572BE7D6C78A2";
fingerprint = "3513 5CE5 77AD 711F 3825 9A99 3665 72BE 7D6C 78A2";
}];
};
jwatt = {
email = "jwatt@broken.watch";
github = "jjwatt";
@@ -5,7 +5,7 @@ when developing or debugging a test:
```ShellSession
$ nix-build . -A nixosTests.login.driverInteractive
$ ./result/bin/nixos-test-driver --interactive
$ ./result/bin/nixos-test-driver
[...]
>>>
```
@@ -28,7 +28,7 @@ You can re-use the VM states coming from a previous run by setting the
`--keep-vm-state` flag.
```ShellSession
$ ./result/bin/nixos-test-driver --interactive --keep-vm-state
$ ./result/bin/nixos-test-driver --keep-vm-state
```
The machine state is stored in the `$TMPDIR/vm-state-machinename`
@@ -6,7 +6,7 @@
</para>
<programlisting>
$ nix-build . -A nixosTests.login.driverInteractive
$ ./result/bin/nixos-test-driver --interactive
$ ./result/bin/nixos-test-driver
[...]
&gt;&gt;&gt;
</programlisting>
@@ -30,7 +30,7 @@ $ ./result/bin/nixos-test-driver --interactive
the <literal>--keep-vm-state</literal> flag.
</para>
<programlisting>
$ ./result/bin/nixos-test-driver --interactive --keep-vm-state
$ ./result/bin/nixos-test-driver --keep-vm-state
</programlisting>
<para>
The machine state is stored in the
@@ -712,6 +712,15 @@
warning.
</para>
</listitem>
<listitem>
<para>
<literal>programs.tmux</literal> has a new option
<literal>plugins</literal> that accepts a list of packages
from the <literal>tmuxPlugins</literal> group. The specified
packages are added to the system and loaded by
<literal>tmux</literal>.
</para>
</listitem>
</itemizedlist>
</section>
</section>
@@ -243,4 +243,6 @@ In addition to numerous new and upgraded packages, this release has the followin
Reason is that the old name has been deprecated upstream.
Using the old option name will still work, but produce a warning.
- `programs.tmux` has a new option `plugins` that accepts a list of packages from the `tmuxPlugins` group. The specified packages are added to the system and loaded by `tmux`.
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
+31 -3
View File
@@ -33,6 +33,22 @@ class EnvDefault(argparse.Action):
setattr(namespace, self.dest, values)
def writeable_dir(arg: str) -> Path:
"""Raises an ArgumentTypeError if the given argument isn't a writeable directory
Note: We want to fail as early as possible if a directory isn't writeable,
since an executed nixos-test could fail (very late) because of the test-driver
writing in a directory without proper permissions.
"""
path = Path(arg)
if not path.is_dir():
raise argparse.ArgumentTypeError("{0} is not a directory".format(path))
if not os.access(path, os.W_OK):
raise argparse.ArgumentTypeError(
"{0} is not a writeable directory".format(path)
)
return path
def main() -> None:
arg_parser = argparse.ArgumentParser(prog="nixos-test-driver")
arg_parser.add_argument(
@@ -45,7 +61,7 @@ def main() -> None:
"-I",
"--interactive",
help="drop into a python repl and run the tests interactively",
action="store_true",
action=argparse.BooleanOptionalAction,
)
arg_parser.add_argument(
"--start-scripts",
@@ -63,6 +79,14 @@ def main() -> None:
nargs="*",
help="vlans to span by the driver",
)
arg_parser.add_argument(
"-o",
"--output_directory",
help="""The path to the directory where outputs copied from the VM will be placed.
By e.g. Machine.copy_from_vm or Machine.screenshot""",
default=Path.cwd(),
type=writeable_dir,
)
arg_parser.add_argument(
"testscript",
action=EnvDefault,
@@ -77,7 +101,11 @@ def main() -> None:
rootlog.info("Machine state will be reset. To keep it, pass --keep-vm-state")
with Driver(
args.start_scripts, args.vlans, args.testscript.read_text(), args.keep_vm_state
args.start_scripts,
args.vlans,
args.testscript.read_text(),
args.output_directory.resolve(),
args.keep_vm_state,
) as driver:
if args.interactive:
ptpython.repl.embed(driver.test_symbols(), {})
@@ -94,7 +122,7 @@ def generate_driver_symbols() -> None:
in user's test scripts. That list is then used by pyflakes to lint those
scripts.
"""
d = Driver([], [], "")
d = Driver([], [], "", Path())
test_symbols = d.test_symbols()
with open("driver-symbols", "w") as fp:
fp.write(",".join(test_symbols.keys()))
+29 -4
View File
@@ -10,6 +10,28 @@ from test_driver.vlan import VLan
from test_driver.polling_condition import PollingCondition
def get_tmp_dir() -> Path:
"""Returns a temporary directory that is defined by TMPDIR, TEMP, TMP or CWD
Raises an exception in case the retrieved temporary directory is not writeable
See https://docs.python.org/3/library/tempfile.html#tempfile.gettempdir
"""
tmp_dir = Path(tempfile.gettempdir())
tmp_dir.mkdir(mode=0o700, exist_ok=True)
if not tmp_dir.is_dir():
raise NotADirectoryError(
"The directory defined by TMPDIR, TEMP, TMP or CWD: {0} is not a directory".format(
tmp_dir
)
)
if not os.access(tmp_dir, os.W_OK):
raise PermissionError(
"The directory defined by TMPDIR, TEMP, TMP, or CWD: {0} is not writeable".format(
tmp_dir
)
)
return tmp_dir
class Driver:
"""A handle to the driver that sets up the environment
and runs the tests"""
@@ -24,12 +46,13 @@ class Driver:
start_scripts: List[str],
vlans: List[int],
tests: str,
out_dir: Path,
keep_vm_state: bool = False,
):
self.tests = tests
self.out_dir = out_dir
tmp_dir = Path(os.environ.get("TMPDIR", tempfile.gettempdir()))
tmp_dir.mkdir(mode=0o700, exist_ok=True)
tmp_dir = get_tmp_dir()
with rootlog.nested("start all VLans"):
self.vlans = [VLan(nr, tmp_dir) for nr in vlans]
@@ -47,6 +70,7 @@ class Driver:
name=cmd.machine_name,
tmp_dir=tmp_dir,
callbacks=[self.check_polling_conditions],
out_dir=self.out_dir,
)
for cmd in cmd(start_scripts)
]
@@ -141,8 +165,8 @@ class Driver:
"Using legacy create_machine(), please instantiate the"
"Machine class directly, instead"
)
tmp_dir = Path(os.environ.get("TMPDIR", tempfile.gettempdir()))
tmp_dir.mkdir(mode=0o700, exist_ok=True)
tmp_dir = get_tmp_dir()
if args.get("startCommand"):
start_command: str = args.get("startCommand", "")
@@ -154,6 +178,7 @@ class Driver:
return Machine(
tmp_dir=tmp_dir,
out_dir=self.out_dir,
start_command=cmd,
name=name,
keep_vm_state=args.get("keep_vm_state", False),
+5 -4
View File
@@ -297,6 +297,7 @@ class Machine:
the machine lifecycle with the help of a start script / command."""
name: str
out_dir: Path
tmp_dir: Path
shared_dir: Path
state_dir: Path
@@ -325,6 +326,7 @@ class Machine:
def __init__(
self,
out_dir: Path,
tmp_dir: Path,
start_command: StartCommand,
name: str = "machine",
@@ -332,6 +334,7 @@ class Machine:
allow_reboot: bool = False,
callbacks: Optional[List[Callable]] = None,
) -> None:
self.out_dir = out_dir
self.tmp_dir = tmp_dir
self.keep_vm_state = keep_vm_state
self.allow_reboot = allow_reboot
@@ -702,10 +705,9 @@ class Machine:
self.connected = True
def screenshot(self, filename: str) -> None:
out_dir = os.environ.get("out", os.getcwd())
word_pattern = re.compile(r"^\w+$")
if word_pattern.match(filename):
filename = os.path.join(out_dir, "{}.png".format(filename))
filename = os.path.join(self.out_dir, "{}.png".format(filename))
tmp = "{}.ppm".format(filename)
with self.nested(
@@ -756,7 +758,6 @@ class Machine:
all the VMs (using a temporary directory).
"""
# Compute the source, target, and intermediate shared file names
out_dir = Path(os.environ.get("out", os.getcwd()))
vm_src = Path(source)
with tempfile.TemporaryDirectory(dir=self.shared_dir) as shared_td:
shared_temp = Path(shared_td)
@@ -766,7 +767,7 @@ class Machine:
# Copy the file to the shared directory inside VM
self.succeed(make_command(["mkdir", "-p", vm_shared_temp]))
self.succeed(make_command(["cp", "-r", vm_src, vm_intermediate]))
abs_target = out_dir / target_dir / vm_src.name
abs_target = self.out_dir / target_dir / vm_src.name
abs_target.parent.mkdir(exist_ok=True, parents=True)
# Copy the file from the shared directory outside VM
if intermediate.is_dir():
+5 -2
View File
@@ -30,7 +30,7 @@ rec {
# effectively mute the XMLLogger
export LOGFILE=/dev/null
${driver}/bin/nixos-test-driver
${driver}/bin/nixos-test-driver -o $out
'';
passthru = driver.passthru // {
@@ -51,6 +51,7 @@ rec {
, enableOCR ? false
, skipLint ? false
, passthru ? {}
, interactive ? false
}:
let
# Reifies and correctly wraps the python test driver for
@@ -139,7 +140,8 @@ rec {
wrapProgram $out/bin/nixos-test-driver \
--set startScripts "''${vmStartScripts[*]}" \
--set testScript "$out/test-script" \
--set vlans '${toString vlans}'
--set vlans '${toString vlans}' \
${lib.optionalString (interactive) "--add-flags --interactive"}
'');
# Make a full-blown test
@@ -217,6 +219,7 @@ rec {
testName = name;
qemu_pkg = pkgs.qemu;
nodes = nodes pkgs.qemu;
interactive = true;
};
test =
+23 -12
View File
@@ -1,4 +1,4 @@
{ config, pkgs ,lib ,... }:
{ config, pkgs, lib, ... }:
with lib;
@@ -13,13 +13,13 @@ with lib;
options.xdg.portal = {
enable =
mkEnableOption "<link xlink:href='https://github.com/flatpak/xdg-desktop-portal'>xdg desktop integration</link>"//{
mkEnableOption "<link xlink:href='https://github.com/flatpak/xdg-desktop-portal'>xdg desktop integration</link>" // {
default = false;
};
extraPortals = mkOption {
type = types.listOf types.package;
default = [];
default = [ ];
description = ''
List of additional portals to add to path. Portals allow interaction
with system, like choosing files or taking screenshots. At minimum,
@@ -46,25 +46,36 @@ with lib;
let
cfg = config.xdg.portal;
packages = [ pkgs.xdg-desktop-portal ] ++ cfg.extraPortals;
joinedPortals = pkgs.symlinkJoin {
joinedPortals = pkgs.buildEnv {
name = "xdg-portals";
paths = cfg.extraPortals;
paths = packages;
pathsToLink = [ "/share/xdg-desktop-portal/portals" "/share/applications" ];
};
in mkIf cfg.enable {
in
mkIf cfg.enable {
assertions = [
{ assertion = (cfg.gtkUsePortal -> cfg.extraPortals != []);
message = "Setting xdg.portal.gtkUsePortal to true requires a portal implementation in xdg.portal.extraPortals such as xdg-desktop-portal-gtk or xdg-desktop-portal-kde.";
{
assertion = cfg.extraPortals != [ ];
message = "Setting xdg.portal.enable to true requires a portal implementation in xdg.portal.extraPortals such as xdg-desktop-portal-gtk or xdg-desktop-portal-kde.";
}
];
services.dbus.packages = packages;
services.dbus.packages = packages;
systemd.packages = packages;
environment.sessionVariables = {
GTK_USE_PORTAL = mkIf cfg.gtkUsePortal "1";
XDG_DESKTOP_PORTAL_DIR = "${joinedPortals}/share/xdg-desktop-portal/portals";
environment = {
# fixes screen sharing on plasmawayland on non-chromium apps by linking
# share/applications/*.desktop files
# see https://github.com/NixOS/nixpkgs/issues/145174
systemPackages = [ joinedPortals ];
pathsToLink = [ "/share/applications" ];
sessionVariables = {
GTK_USE_PORTAL = mkIf cfg.gtkUsePortal "1";
XDG_DESKTOP_PORTAL_DIR = "${joinedPortals}/share/xdg-desktop-portal/portals";
};
};
};
}
-1
View File
@@ -852,7 +852,6 @@
./services/networking/quassel.nix
./services/networking/quorum.nix
./services/networking/quicktun.nix
./services/networking/racoon.nix
./services/networking/radicale.nix
./services/networking/radvd.nix
./services/networking/rdnssd.nix
+14 -1
View File
@@ -52,6 +52,12 @@ let
set -s escape-time ${toString cfg.escapeTime}
set -g history-limit ${toString cfg.historyLimit}
${lib.optionalString (cfg.plugins != []) ''
# Run plugins
${lib.concatMapStringsSep "\n" (x: "run-shell ${x.rtp}") cfg.plugins}
''}
${cfg.extraConfig}
'';
@@ -165,6 +171,13 @@ in {
downside it doesn't survive user logout.
'';
};
plugins = mkOption {
default = [];
type = types.listOf types.package;
description = "List of plugins to install.";
example = lib.literalExpression "[ pkgs.tmuxPlugins.nord ]";
};
};
};
@@ -174,7 +187,7 @@ in {
environment = {
etc."tmux.conf".text = tmuxConf;
systemPackages = [ pkgs.tmux ];
systemPackages = [ pkgs.tmux ] ++ cfg.plugins;
variables = {
TMUX_TMPDIR = lib.optional cfg.secureSocket ''''${XDG_RUNTIME_DIR:-"/run/user/$(id -u)"}'';
+3
View File
@@ -80,6 +80,9 @@ with lib;
libinput and synaptics.
'')
(mkRemovedOptionModule [ "virtualisation" "rkt" ] "The rkt module has been removed, it was archived by upstream")
(mkRemovedOptionModule [ "services" "racoon" ] ''
The racoon module has been removed, because the software project was abandoned upstream.
'')
# Do NOT add any option renames here, see top of the file
];
+1 -1
View File
@@ -9,7 +9,7 @@ let
# On Nix level we don't attempt to precisely validate the address specifications.
# The optional IPv6 scope spec comes *after* port, perhaps surprisingly.
mkListen = kind: addr: let
al_v4 = builtins.match "([0-9.]+):([0-9]+)()" addr;
al_v4 = builtins.match "([0-9.]+):([0-9]+)($)" addr;
al_v6 = builtins.match "\\[(.+)]:([0-9]+)(%.*|$)" addr;
al_portOnly = builtins.match "([0-9]+)" addr;
al = findFirst (a: a != null)
@@ -1,45 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.racoon;
in {
options.services.racoon = {
enable = mkEnableOption "racoon";
config = mkOption {
description = "Contents of racoon configuration file.";
default = "";
type = types.str;
};
configPath = mkOption {
description = "Location of racoon config if config is not provided.";
default = "/etc/racoon/racoon.conf";
type = types.path;
};
};
config = mkIf cfg.enable {
systemd.services.racoon = {
description = "Racoon Daemon";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
ExecStart = "${pkgs.ipsecTools}/bin/racoon -f ${
if (cfg.config != "") then pkgs.writeText "racoon.conf" cfg.config
else cfg.configPath
}";
ExecReload = "${pkgs.ipsecTools}/bin/racoonctl reload-config";
PIDFile = "/run/racoon.pid";
Type = "forking";
Restart = "always";
};
preStart = ''
rm /run/racoon.pid || true
mkdir -p /var/racoon
'';
};
};
}
+8 -53
View File
@@ -36,17 +36,6 @@ in {
Open vSwitch package to use.
'';
};
ipsec = mkOption {
type = types.bool;
default = false;
description = ''
Whether to start racoon service for openvswitch.
Supported only if openvswitch version is less than 2.6.0.
Use <literal>virtualisation.vswitch.package = pkgs.openvswitch-lts</literal>
for a version that supports ipsec over GRE.
'';
};
};
config = mkIf cfg.enable (let
@@ -65,7 +54,7 @@ in {
installPhase = "mkdir -p $out";
};
in (mkMerge [{
in {
environment.systemPackages = [ cfg.package ];
boot.kernelModules = [ "tun" "openvswitch" ];
@@ -142,48 +131,14 @@ in {
};
};
}
(mkIf (cfg.ipsec && (versionOlder cfg.package.version "2.6.0")) {
environment.systemPackages = [ pkgs.ipsecTools ];
});
services.racoon.enable = true;
services.racoon.configPath = "${runDir}/ipsec/etc/racoon/racoon.conf";
networking.firewall.extraCommands = ''
iptables -I INPUT -t mangle -p esp -j MARK --set-mark 1/1
iptables -I INPUT -t mangle -p udp --dport 4500 -j MARK --set-mark 1/1
'';
systemd.services.ovs-monitor-ipsec = {
description = "Open_vSwitch Ipsec Daemon";
wantedBy = [ "multi-user.target" ];
requires = [ "ovsdb.service" ];
before = [ "vswitchd.service" "racoon.service" ];
environment.UNIXCTLPATH = "/tmp/ovsdb.ctl.sock";
serviceConfig = {
ExecStart = ''
${cfg.package}/bin/ovs-monitor-ipsec \
--root-prefix ${runDir}/ipsec \
--pidfile /run/openvswitch/ovs-monitor-ipsec.pid \
--monitor --detach \
unix:/run/openvswitch/db.sock
'';
PIDFile = "/run/openvswitch/ovs-monitor-ipsec.pid";
# Use service type 'forking' to correctly determine when ovs-monitor-ipsec is ready.
Type = "forking";
};
preStart = ''
rm -r ${runDir}/ipsec/etc/racoon/certs || true
mkdir -p ${runDir}/ipsec/{etc/racoon,etc/init.d/,usr/sbin/}
ln -fs ${pkgs.ipsecTools}/bin/setkey ${runDir}/ipsec/usr/sbin/setkey
ln -fs ${pkgs.writeScript "racoon-restart" ''
#!${pkgs.runtimeShell}
/run/current-system/sw/bin/systemctl $1 racoon
''} ${runDir}/ipsec/etc/init.d/racoon
'';
};
})]));
imports = [
(mkRemovedOptionModule [ "virtualisation" "vswitch" "ipsec" ] ''
OpenVSwitch IPSec functionality has been removed, because it depended on racoon,
which was removed from nixpkgs, because it was abanoded upstream.
'')
];
meta.maintainers = with maintainers; [ netixx ];
+1 -1
View File
@@ -31,7 +31,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
machine.wait_for_open_port(18545)
machine.succeed(
'geth attach --exec "eth.chainId()" http://localhost:8545 | grep \'"0x0"\' '
'geth attach --exec eth.blockNumber http://localhost:8545 | grep \'^0$\' '
)
machine.succeed(
+2 -2
View File
@@ -36,12 +36,12 @@ in {
client1.wait_for_x()
client2.wait_for_x()
client1.execute("teeworlds 'player_name Alice;connect server'&")
client1.execute("teeworlds 'player_name Alice;connect server' >&2 &")
server.wait_until_succeeds(
'journalctl -u teeworlds -e | grep --extended-regexp -q "team_join player=\'[0-9]:Alice"'
)
client2.execute("teeworlds 'player_name Bob;connect server'&")
client2.execute("teeworlds 'player_name Bob;connect server' >&2 &")
server.wait_until_succeeds(
'journalctl -u teeworlds -e | grep --extended-regexp -q "team_join player=\'[0-9]:Bob"'
)
+3 -3
View File
@@ -12,13 +12,13 @@
}:
stdenv.mkDerivation rec {
pname = "cyanrip";
version = "0.7.0";
version = "0.8.0";
src = fetchFromGitHub {
owner = "cyanreg";
repo = pname;
rev = "v${version}";
sha256 = "0lgb92sfpf4w3nj5vlj6j7931mj2q3cmcx1app9snf853jk9ahmw";
sha256 = "1aip52bwkq8cb1d8ifyv2m6m5dz7jk6qmbhyb97yyf4nhxv445ky";
};
nativeBuildInputs = [ meson ninja pkg-config ];
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "https://github.com/cyanreg/cyanrip";
description = "Bule-ish CD ripper";
license = licenses.lgpl3Plus;
license = licenses.lgpl21Plus;
platforms = platforms.all;
maintainers = [ maintainers.zane ];
};
+4 -2
View File
@@ -113,8 +113,10 @@ in
substituteInPlace src/nvim/CMakeLists.txt --replace " util" ""
'';
# For treesitter plugins, libstdc++.so.6 will be needed
NIX_LDFLAGS = [ "-lstdc++"];
# For treesitter plugins, libstdc++.so.6, or equivalent will be needed
NIX_LDFLAGS =
lib.optionals stdenv.cc.isGNU [ "-lstdc++"]
++ lib.optionals stdenv.cc.isClang [ "-lc++" ];
# export PATH=$PWD/build/bin:${PATH}
shellHook=''
+18 -13
View File
@@ -1,24 +1,25 @@
{ lib, stdenv, fetchFromGitHub, flex, bison, pkg-config, zlib, libtiff, libpng, fftw
, cairo, readline, ffmpeg_3, makeWrapper, wxGTK30, netcdf, blas
, proj, gdal, geos, sqlite, postgresql, libmysqlclient, python2Packages, libLAS, proj-datumgrid
, cairo, readline, ffmpeg, makeWrapper, wxGTK30, netcdf, blas
, proj, gdal, geos, sqlite, postgresql, libmysqlclient, python3Packages, libLAS, proj-datumgrid
, zstd, pdal, wrapGAppsHook
}:
stdenv.mkDerivation rec {
name = "grass";
version = "7.6.1";
version = "7.8.6";
src = with lib; fetchFromGitHub {
owner = "OSGeo";
repo = "grass";
rev = "${name}_${replaceStrings ["."] ["_"] version}";
sha256 = "1amjk9rz7vw5ha7nyl5j2bfwj5if9w62nlwx5qbp1x7spldimlll";
rev = version;
sha256 = "sha256-zvZqFWuxNyA+hu+NMiRbQVdzzrQPsZrdGdfVB17+SbM=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ flex bison zlib proj gdal libtiff libpng fftw sqlite cairo proj
readline ffmpeg_3 makeWrapper wxGTK30 netcdf geos postgresql libmysqlclient blas
libLAS proj-datumgrid ]
++ (with python2Packages; [ python python-dateutil wxPython30 numpy ]);
buildInputs = [ flex bison zlib proj gdal libtiff libpng fftw sqlite cairo
readline ffmpeg makeWrapper wxGTK30 netcdf geos postgresql libmysqlclient blas
libLAS proj-datumgrid zstd pdal wrapGAppsHook ]
++ (with python3Packages; [ python python-dateutil wxPython_4_1 numpy ]);
# On Darwin the installer tries to symlink the help files into a system
# directory
@@ -37,6 +38,7 @@ stdenv.mkDerivation rec {
"--with-readline"
"--with-wxwidgets"
"--with-netcdf"
"--with-pdal"
"--with-geos"
"--with-postgres"
"--with-postgres-libs=${postgresql.lib}/lib/"
@@ -46,6 +48,9 @@ stdenv.mkDerivation rec {
"--with-mysql-libs=${libmysqlclient}/lib/mysql"
"--with-blas"
"--with-liblas=${libLAS}/bin/liblas-config"
"--with-zstd"
"--with-fftw"
"--with-pthread"
];
# Otherwise a very confusing "Can't load GDAL library" error
@@ -62,6 +67,7 @@ stdenv.mkDerivation rec {
scripts/g.extension.all/g.extension.all.py \
scripts/r.drain/r.drain.py \
scripts/r.pack/r.pack.py \
scripts/r.import/r.import.py \
scripts/r.tileset/r.tileset.py \
scripts/r.unpack/r.unpack.py \
scripts/v.clip/v.clip.py \
@@ -79,18 +85,17 @@ stdenv.mkDerivation rec {
temporal/t.rast.algebra/t.rast.algebra.py \
temporal/t.rast3d.algebra/t.rast3d.algebra.py \
temporal/t.vect.algebra/t.vect.algebra.py \
temporal/t.downgrade/t.downgrade.py \
temporal/t.select/t.select.py
for d in gui lib scripts temporal tools; do
patchShebangs $d
done
'';
NIX_CFLAGS_COMPILE = "-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1";
postInstall = ''
wrapProgram $out/bin/grass76 \
wrapProgram $out/bin/grass78 \
--set PYTHONPATH $PYTHONPATH \
--set GRASS_PYTHON ${python2Packages.python}/bin/${python2Packages.python.executable} \
--set GRASS_PYTHON ${python3Packages.python.interpreter} \
--suffix LD_LIBRARY_PATH ':' '${gdal}/lib'
ln -s $out/grass*/lib $out/lib
ln -s $out/grass*/include $out/include
+10 -4
View File
@@ -1,17 +1,21 @@
{ lib, makeWrapper, symlinkJoin
, qgis-unwrapped, extraPythonPackages ? (ps: [ ])
, extraPythonPackages ? (ps: [ ])
, libsForQt5
}:
with lib;
symlinkJoin rec {
let
qgis-unwrapped = libsForQt5.callPackage ./unwrapped.nix { };
in symlinkJoin rec {
inherit (qgis-unwrapped) version;
name = "qgis-${version}";
paths = [ qgis-unwrapped ];
nativeBuildInputs = [ makeWrapper qgis-unwrapped.python3Packages.wrapPython ];
nativeBuildInputs = [ makeWrapper qgis-unwrapped.py.pkgs.wrapPython ];
# extend to add to the python environment of QGIS without rebuilding QGIS application.
pythonInputs = qgis-unwrapped.pythonBuildInputs ++ (extraPythonPackages qgis-unwrapped.python3Packages);
pythonInputs = qgis-unwrapped.pythonBuildInputs ++ (extraPythonPackages qgis-unwrapped.py.pkgs);
postBuild = ''
# unpackPhase
@@ -23,5 +27,7 @@ symlinkJoin rec {
--set PYTHONPATH $program_PYTHONPATH
'';
passthru.unwrapped = qgis-unwrapped;
meta = qgis-unwrapped.meta;
}
+32
View File
@@ -0,0 +1,32 @@
{ lib, makeWrapper, symlinkJoin
, extraPythonPackages ? (ps: [ ])
, libsForQt5
}:
with lib;
let
qgis-ltr-unwrapped = libsForQt5.callPackage ./unwrapped-ltr.nix { };
in symlinkJoin rec {
inherit (qgis-ltr-unwrapped) version;
name = "qgis-${version}";
paths = [ qgis-ltr-unwrapped ];
nativeBuildInputs = [ makeWrapper qgis-ltr-unwrapped.py.pkgs.wrapPython ];
# extend to add to the python environment of QGIS without rebuilding QGIS application.
pythonInputs = qgis-ltr-unwrapped.pythonBuildInputs ++ (extraPythonPackages qgis-ltr-unwrapped.py.pkgs);
postBuild = ''
buildPythonPath "$pythonInputs"
wrapProgram $out/bin/qgis \
--prefix PATH : $program_PATH \
--set PYTHONPATH $program_PYTHONPATH
'';
passthru.unwrapped = qgis-ltr-unwrapped;
inherit (qgis-ltr-unwrapped) meta;
}
@@ -0,0 +1,148 @@
{ lib
, mkDerivation
, fetchFromGitHub
, cmake
, ninja
, flex
, bison
, proj
, geos
, xlibsWrapper
, sqlite
, gsl
, qwt
, fcgi
, python3
, libspatialindex
, libspatialite
, postgresql
, txt2tags
, openssl
, libzip
, hdf5
, netcdf
, exiv2
, protobuf
, qtbase
, qtsensors
, qca-qt5
, qtkeychain
, qt3d
, qscintilla
, qtserialport
, qtxmlpatterns
, withGrass ? true
, grass
, withWebKit ? true
, qtwebkit
, makeWrapper
}:
let
py = python3.override {
packageOverrides = self: super: {
pyqt5 = super.pyqt5.override {
withLocation = true;
};
};
};
pythonBuildInputs = with py.pkgs; [
qscintilla-qt5
gdal
jinja2
numpy
psycopg2
chardet
python-dateutil
pyyaml
pytz
requests
urllib3
pygments
pyqt5
sip_4
owslib
six
];
in mkDerivation rec {
version = "3.16.16";
pname = "qgis-ltr-unwrapped";
src = fetchFromGitHub {
owner = "qgis";
repo = "QGIS";
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
sha256 = "85RlV1Ik1BeN9B7UE51ktTWMiGkMga2E/fnhyiVwjIs=";
};
passthru = {
inherit pythonBuildInputs;
inherit py;
};
buildInputs = [
openssl
proj
geos
xlibsWrapper
sqlite
gsl
qwt
exiv2
protobuf
fcgi
libspatialindex
libspatialite
postgresql
txt2tags
libzip
hdf5
netcdf
qtbase
qtsensors
qca-qt5
qtkeychain
qscintilla
qtserialport
qtxmlpatterns
qt3d
] ++ lib.optional withGrass grass
++ lib.optional withWebKit qtwebkit
++ pythonBuildInputs;
nativeBuildInputs = [ makeWrapper cmake flex bison ninja ];
# Force this pyqt_sip_dir variable to point to the sip dir in PyQt5
#
# TODO: Correct PyQt5 to provide the expected directory and fix
# build to use PYQT5_SIP_DIR consistently.
postPatch = ''
substituteInPlace cmake/FindPyQt5.py \
--replace 'sip_dir = cfg.default_sip_dir' 'sip_dir = "${py.pkgs.pyqt5}/${py.pkgs.python.sitePackages}/PyQt5/bindings"'
'';
cmakeFlags = [
"-DCMAKE_SKIP_BUILD_RPATH=OFF"
"-DWITH_3D=True"
"-DPYQT5_SIP_DIR=${py.pkgs.pyqt5}/${py.pkgs.python.sitePackages}/PyQt5/bindings"
"-DQSCI_SIP_DIR=${py.pkgs.qscintilla-qt5}/${py.pkgs.python.sitePackages}/PyQt5/bindings"
] ++ lib.optional (!withWebKit) "-DWITH_QTWEBKIT=OFF"
++ lib.optional withGrass "-DGRASS_PREFIX7=${grass}/grass78";
postFixup = lib.optionalString withGrass ''
# grass has to be availble on the command line even though we baked in
# the path at build time using GRASS_PREFIX
wrapProgram $out/bin/qgis \
--prefix PATH : ${lib.makeBinPath [ grass ]}
'';
meta = with lib; {
description = "A Free and Open Source Geographic Information System";
homepage = "https://www.qgis.org";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ lsix sikmir erictapen ];
};
}
+35 -10
View File
@@ -12,7 +12,7 @@
, gsl
, qwt
, fcgi
, python3Packages
, python3
, libspatialindex
, libspatialite
, postgresql
@@ -27,6 +27,7 @@
, qtsensors
, qca-qt5
, qtkeychain
, qt3d
, qscintilla
, qtserialport
, qtxmlpatterns
@@ -34,10 +35,22 @@
, grass
, withWebKit ? true
, qtwebkit
, pdal
, zstd
, makeWrapper
}:
let
pythonBuildInputs = with python3Packages; [
py = python3.override {
packageOverrides = self: super: {
pyqt5 = super.pyqt5.override {
withLocation = true;
};
};
};
pythonBuildInputs = with py.pkgs; [
qscintilla-qt5
gdal
jinja2
@@ -56,19 +69,19 @@ let
six
];
in mkDerivation rec {
version = "3.16.14";
version = "3.22.3";
pname = "qgis-unwrapped";
src = fetchFromGitHub {
owner = "qgis";
repo = "QGIS";
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
sha256 = "sha256-3FUGSBdlhJhhpTPtYuzKOznsC7PJV3kRL9Il2Yryi1Q=";
sha256 = "TLXhXHU0dp0MnKHFw/+1rQnJbebnwje21Oasy0qWctk=";
};
passthru = {
inherit pythonBuildInputs;
inherit python3Packages;
inherit py;
};
buildInputs = [
@@ -96,11 +109,14 @@ in mkDerivation rec {
qscintilla
qtserialport
qtxmlpatterns
qt3d
pdal
zstd
] ++ lib.optional withGrass grass
++ lib.optional withWebKit qtwebkit
++ pythonBuildInputs;
nativeBuildInputs = [ cmake flex bison ninja ];
nativeBuildInputs = [ makeWrapper cmake flex bison ninja ];
# Force this pyqt_sip_dir variable to point to the sip dir in PyQt5
#
@@ -108,15 +124,24 @@ in mkDerivation rec {
# build to use PYQT5_SIP_DIR consistently.
postPatch = ''
substituteInPlace cmake/FindPyQt5.py \
--replace 'sip_dir = cfg.default_sip_dir' 'sip_dir = "${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings"'
--replace 'sip_dir = cfg.default_sip_dir' 'sip_dir = "${py.pkgs.pyqt5}/${py.pkgs.python.sitePackages}/PyQt5/bindings"'
'';
cmakeFlags = [
"-DCMAKE_SKIP_BUILD_RPATH=OFF"
"-DPYQT5_SIP_DIR=${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings"
"-DQSCI_SIP_DIR=${python3Packages.qscintilla-qt5}/${python3Packages.python.sitePackages}/PyQt5/bindings"
"-DWITH_3D=True"
"-DWITH_PDAL=TRUE"
"-DPYQT5_SIP_DIR=${py.pkgs.pyqt5}/${py.pkgs.python.sitePackages}/PyQt5/bindings"
"-DQSCI_SIP_DIR=${py.pkgs.qscintilla-qt5}/${py.pkgs.python.sitePackages}/PyQt5/bindings"
] ++ lib.optional (!withWebKit) "-DWITH_QTWEBKIT=OFF"
++ lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}";
++ lib.optional withGrass "-DGRASS_PREFIX7=${grass}/grass78";
postFixup = lib.optionalString withGrass ''
# grass has to be availble on the command line even though we baked in
# the path at build time using GRASS_PREFIX
wrapProgram $out/bin/qgis \
--prefix PATH : ${lib.makeBinPath [ grass ]}
'';
meta = {
description = "A Free and Open Source Geographic Information System";
@@ -18,13 +18,13 @@
stdenv.mkDerivation rec {
pname = "cherrytree";
version = "0.99.44";
version = "0.99.45";
src = fetchFromGitHub {
owner = "giuspen";
repo = "cherrytree";
rev = version;
sha256 = "sha256-13wZb+PxeCrQ3MpewMnqBHO8QnoCRFhKU4awTdYtFd4=";
sha256 = "sha256-DGhzqv7huFVgCdXy3DuIBT+7s2q6FB7+gFPd4zEXi2M=";
};
nativeBuildInputs = [
-59
View File
@@ -1,59 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, autoconf
, automake
, bc
, fluxbox
, gettext
, glibmm
, gtkmm2
, libglademm
, libsigcxx
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "fme";
version = "1.1.3";
src = fetchFromGitHub {
owner = "rdehouss";
repo = "fme";
rev = "v${version}";
sha256 = "sha256-P67OmExBdWM6NZhDyYceVJOZiy8RC+njk/QvgQcWZeQ=";
};
nativeBuildInputs = [
autoconf
automake
gettext
pkg-config
];
buildInputs = [
bc
fluxbox
glibmm
gtkmm2
libglademm
libsigcxx
];
preConfigure = ''
./autogen.sh
'';
meta = with lib; {
homepage = "https://github.com/rdehouss/fme/";
description = "Editor for Fluxbox menus";
longDescription = ''
Fluxbox Menu Editor is a menu editor for the Window Manager Fluxbox
written in C++ with the libraries Gtkmm, Glibmm, libglademm and gettext
for internationalization. Its user-friendly interface will help you to
edit, delete, move (Drag and Drop) a row, a submenu, etc very easily.
'';
license = licenses.gpl2Plus;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}
@@ -18,7 +18,7 @@
python3.pkgs.buildPythonApplication rec {
pname = "metadata-cleaner";
version = "2.1.3";
version = "2.1.4";
format = "other";
@@ -26,7 +26,7 @@ python3.pkgs.buildPythonApplication rec {
owner = "rmnvgr";
repo = "metadata-cleaner";
rev = "v${version}";
hash = "sha256-9sLjgqqQBXcudlBRmqAwWcWMUXoIUyAK272zaNKbJNY=";
hash = "sha256-46J0iLXzZX5tww4CK8WhrADql023rauO0fpW7Asn5ZY=";
};
nativeBuildInputs = [
+2 -2
View File
@@ -9,13 +9,13 @@
buildGoPackage rec {
pname = "mob";
version = "2.2.0";
version = "2.2.1";
src = fetchFromGitHub {
rev = "v${version}";
owner = "remotemobprogramming";
repo = pname;
sha256 = "sha256-nf0FSaUi8qX1f4Luo0cP4ZLoOKbyvgmpilMOWXbzzIM=";
sha256 = "sha256-1yE3KFGY51m6OL4LYrz+BSCHQSnbQRSpB3EUqAzSr+M=";
};
nativeBuildInputs = [
@@ -10,14 +10,14 @@
stdenv.mkDerivation rec {
pname = "rivercarro";
version = "0.1.1";
version = "0.1.2";
src = fetchFromSourcehut {
owner = "~novakane";
repo = pname;
fetchSubmodules = true;
rev = "v${version}";
sha256 = "0h1wvl6rlrpr67zl51x71hy7nwkfd5kfv5p2mql6w5fybxxyqnpm";
sha256 = "07md837ki0yln464w8vgwyl3yjrvkz1p8alxlmwqfn4w45nqhw77";
};
nativeBuildInputs = [
@@ -1,23 +1,24 @@
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
{ lib, buildGo117Module, fetchFromGitHub, installShellFiles }:
buildGoModule rec {
buildGo117Module rec {
pname = "helm";
version = "3.7.2";
gitCommit = "663a896f4a815053445eec4153677ddc24a0a361";
version = "3.8.0";
gitCommit = "d14138609b01886f544b2025f5000351c9eb092e";
src = fetchFromGitHub {
owner = "helm";
repo = "helm";
rev = "v${version}";
sha256 = "sha256-MhBuwpgF1PBAZ5QwF7t4J1gqam2cMX+hkdZs7KoSD6I=";
sha256 = "sha256-/vxf3YfBP1WHFpqll6iq4m+X4NA16qHnuGA0wvrVRsg=";
};
vendorSha256 = "sha256-YDdpeVh9rG3MF1HgG7uuRvjXDr9Fcjuhrj16kpK8tsI=";
vendorSha256 = "sha256-M7XId+2HIh1mFzU54qQZEisWdVq67RlGJjlw+2dpiDc=";
doCheck = false;
subPackages = [ "cmd/helm" ];
ldflags = [
"-w" "-s"
"-w"
"-s"
"-X helm.sh/helm/v3/internal/version.version=v${version}"
"-X helm.sh/helm/v3/internal/version.gitCommit=${gitCommit}"
];
@@ -2,15 +2,15 @@
buildGoModule rec {
pname = "istioctl";
version = "1.12.1";
version = "1.12.2";
src = fetchFromGitHub {
owner = "istio";
repo = "istio";
rev = version;
sha256 = "sha256-oMf60mxreBSlgxVInTFM8kozYVZz5RdgzV3rYUnadnA=";
sha256 = "sha256-6eVFyGVvOUr5RA5jeavKcLJedv4jOGXAg3aa4N3cNx8=";
};
vendorSha256 = "sha256-e8qh8J745TXUo6c1uMS8GyawEG9YFlMYl/nHpWIFK1Q=";
vendorSha256 = "sha256-ie7XRu+2+NmhMNtJEL2OgZH6wuTPJX9O2+cZBnI04JA=";
doCheck = false;
@@ -11,9 +11,9 @@
buildGoModule rec {
pname = "minikube";
version = "1.24.0";
version = "1.25.1";
vendorSha256 = "sha256-jFE4aHHgVmVcQu8eH97h9P3zchtmKv/KUIfv7f2ws3I=";
vendorSha256 = "sha256-MnyXePsnhb1Tl76uAtVW/DLacE0etXREGsapgNiZbMo=";
doCheck = false;
@@ -21,7 +21,7 @@ buildGoModule rec {
owner = "kubernetes";
repo = "minikube";
rev = "v${version}";
sha256 = "sha256-WW5VVjm7cq/3/RGiIE2nn8O+VK0RHCtKkrlboIzhqC4=";
sha256 = "sha256-pRNOVN9u27im9fkUawJYjuGHTW0N7L5oJa3fQ6DUO+4=";
};
nativeBuildInputs = [ installShellFiles pkg-config which ];
@@ -1,11 +1,11 @@
{ lib, buildGoModule, fetchFromGitHub }:
# SHA of ${version} for the tool's help output. Unfortunately this is needed in build flags.
let rev = "237bd35906f5c4bed1f4de4aa58cc6a6a676d4fd";
let rev = "0665cd322b11bb40c2774776de765c38d8104bed";
in
buildGoModule rec {
pname = "sonobuoy";
version = "0.55.1"; # Do not forget to update `rev` above
version = "0.56.0"; # Do not forget to update `rev` above
ldflags =
let t = "github.com/vmware-tanzu/sonobuoy";
@@ -20,10 +20,10 @@ buildGoModule rec {
owner = "vmware-tanzu";
repo = "sonobuoy";
rev = "v${version}";
sha256 = "sha256-pHpnh+6O9yjnDA8u0jyLvqNQbXC+xz8fRn47aQNdOAo=";
sha256 = "sha256-78skqo3sq567s3/XN54xtC0mefDY3Io3BD0d+JP7k5Q=";
};
vendorSha256 = "sha256-jPKCWTFABKRZCg6X5VVdrmOU/ZFc7yGD7R8RJrpcITg=";
vendorSha256 = "sha256-qKXm39CwrTcXENIMh2BBS3MUlhJvmTTA3UzZNpF0PCc=";
subPackages = [ "." ];
@@ -0,0 +1,44 @@
{ lib, buildGo117Module, fetchFromGitHub }:
buildGo117Module rec {
pname = "talosctl";
version = "0.14.1";
src = fetchFromGitHub {
owner = "talos-systems";
repo = "talos";
rev = "v${version}";
sha256 = "sha256-JeZ+Q6LTDJtoxfu4mJNc3wv3Y6OPcIUvgnozj9mWwLw=";
};
vendorSha256 = "sha256-ujbEWvcNJJOUegVgAGEPwYF02TiqD1lZELvqc/Gmb4A=";
# look for GO_LDFLAGS getting set in the Makefile
ldflags =
let
versionPkg = "github.com/talos-systems/talos/pkg/version"; # VERSION_PKG
imagesPkgs = "github.com/talos-systems/talos/pkg/images"; # IMAGES_PKGS
mgmtHelpersPkg = "github.com/talos-systems/talos/cmd/talosctl/pkg/mgmt/helpers"; #MGMT_HELPERS_PKG
in
[
"-X ${versionPkg}.Name=Talos"
"-X ${versionPkg}.SHA=${src.rev}" # should be the hash, but as we build from tags, this needs to do
"-X ${versionPkg}.Tag=${src.rev}"
"-X ${versionPkg}.PkgsVersion=v0.9.0-2-g447ce75" # PKGS
"-X ${versionPkg}.ExtrasVersion=v0.7.0-1-gd6b73a7" # EXTRAS
"-X ${imagesPkgs}.Username=talos-systems" # USERNAME
"-X ${imagesPkgs}.Registry=ghcr.io" # REGISTRY
"-X ${mgmtHelpersPkg}.ArtifactsPath=_out" # ARTIFACTS
];
subPackages = [ "cmd/talosctl" ];
doCheck = false;
meta = with lib; {
description = "A CLI for out-of-band management of Kubernetes nodes created by Talos";
homepage = "https://github.com/talos-systems/talos";
license = licenses.mpl20;
maintainers = with maintainers; [ flokli ];
};
}
@@ -21,16 +21,33 @@
stdenv.mkDerivation rec {
pname = "zeek";
version = "4.1.1";
version = "4.2.0";
src = fetchurl {
url = "https://download.zeek.org/zeek-${version}.tar.gz";
sha256 = "0wq3kjc3zc5ikzwix7k7gr92v75rg6283kx5fzvc3lcdkaczq2lc";
sha256 = "sha256-jZoCjKn+x61KnkinY+KWBSOEz0AupM03FXe/8YPCdFE=";
};
nativeBuildInputs = [ cmake flex bison file ];
buildInputs = [ openssl libpcap zlib curl libmaxminddb gperftools python3 swig ncurses ]
++ lib.optionals stdenv.isDarwin [ gettext ];
nativeBuildInputs = [
bison
cmake
file
flex
];
buildInputs = [
curl
gperftools
libmaxminddb
libpcap
ncurses
openssl
python3
swig
zlib
] ++ lib.optionals stdenv.isDarwin [
gettext
];
outputs = [ "out" "lib" "py" ];
@@ -54,7 +71,7 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
description = "Powerful network analysis framework much different from a typical IDS";
description = "Network analysis framework much different from a typical IDS";
homepage = "https://www.zeek.org";
changelog = "https://github.com/zeek/zeek/blob/v${version}/CHANGES";
license = licenses.bsd3;
@@ -28,11 +28,11 @@
}:
let
version = "5.9.1.1380";
version = "5.9.3.1911";
srcs = {
x86_64-linux = fetchurl {
url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz";
sha256 = "0r1w13y3ks377hdyil9s68vn09vh22zl6ni4693fm7cf6q49ayyw";
sha256 = "0pamn028k96z0j9xzv56szk7sy0czd9myqm4p3hps1gkczc9wzs4";
};
};
@@ -2,6 +2,7 @@
, alsa-lib, atk, cairo, cups, dbus, expat, fontconfig, freetype
, gdk-pixbuf, glib, gnome2, pango, nspr, nss, gtk3, mesa
, xorg, autoPatchelfHook, systemd, libnotify, libappindicator
, makeWrapper
}:
let deps = [
@@ -53,6 +54,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [
autoPatchelfHook
dpkg
makeWrapper
];
buildInputs = deps;
@@ -73,12 +75,14 @@ stdenv.mkDerivation rec {
mv usr/bin/* $out/bin
mv opt/Mullvad\ VPN/* $out/share/mullvad
sed -i 's|"\/opt\/Mullvad.*VPN|env MULLVAD_DISABLE_UPDATE_NOTIFICATION=1 "'$out'/bin|g' $out/share/applications/mullvad-vpn.desktop
ln -s $out/share/mullvad/mullvad-{gui,vpn} $out/bin/
ln -s $out/share/mullvad/resources/mullvad-daemon $out/bin/mullvad-daemon
ln -sf $out/share/mullvad/resources/mullvad-problem-report $out/bin/mullvad-problem-report
wrapProgram $out/bin/mullvad-vpn --set MULLVAD_DISABLE_UPDATE_NOTIFICATION 1
sed -i "s|Exec.*$|Exec=$out/bin/mullvad-vpn $U|" $out/share/applications/mullvad-vpn.desktop
runHook postInstall
'';
@@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, nettools, java, polyml, z3, veriT, vampire, eprover-ho, rlwrap, makeDesktopItem }:
{ lib, stdenv, fetchurl, coreutils, nettools, java, polyml, z3, veriT, vampire, eprover-ho, rlwrap, makeDesktopItem }:
# nettools needed for hostname
stdenv.mkDerivation rec {
@@ -73,6 +73,11 @@ stdenv.mkDerivation rec {
for comp in contrib/jdk* contrib/polyml-* contrib/z3-* contrib/verit-* contrib/vampire-* contrib/e-*; do
rm -rf $comp/x86*
done
substituteInPlace lib/Tools/env \
--replace /usr/bin/env ${coreutils}/bin/env
rm -r heaps
'' + (if ! stdenv.isLinux then "" else ''
arch=${if stdenv.hostPlatform.system == "x86_64-linux" then "x86_64-linux" else "x86-linux"}
for f in contrib/*/$arch/{bash_process,epclextract,nunchaku,SPASS,zipperposition}; do
@@ -83,6 +88,11 @@ stdenv.mkDerivation rec {
done
'');
buildPhase = ''
export HOME=$TMP # The build fails if home is not set
bin/isabelle build -v -o system_heaps -b HOL
'';
installPhase = ''
mkdir -p $out/bin
mv $TMP/$dirname $out
@@ -117,7 +127,7 @@ stdenv.mkDerivation rec {
'';
homepage = "https://isabelle.in.tum.de/";
license = licenses.bsd3;
maintainers = [ maintainers.jwiegley ];
maintainers = [ maintainers.jwiegley maintainers.jvanbruegge ];
platforms = platforms.linux;
};
}
@@ -6,7 +6,7 @@
# build
, cmake
, ctags
, python2Packages
, python3Packages
, swig
# math
, eigen
@@ -30,13 +30,13 @@
, lp_solve
, colpack
# extra support
, pythonSupport ? true
, pythonSupport ? false
, opencvSupport ? false
, opencv ? null
, withSvmLight ? false
}:
assert pythonSupport -> python2Packages != null;
assert pythonSupport -> python3Packages != null;
assert opencvSupport -> opencv != null;
assert (!blas.isILP64) && (!lapack.isILP64);
@@ -101,7 +101,7 @@ stdenv.mkDerivation rec {
] ++ lib.optional (!withSvmLight) ./svmlight-scrubber.patch;
nativeBuildInputs = [ cmake swig ctags ]
++ (with python2Packages; [ python jinja2 ply ]);
++ (with python3Packages; [ python jinja2 ply ]);
buildInputs = [
eigen
@@ -121,7 +121,7 @@ stdenv.mkDerivation rec {
nlopt
lp_solve
colpack
] ++ lib.optionals pythonSupport (with python2Packages; [ python numpy ])
] ++ lib.optionals pythonSupport (with python3Packages; [ python numpy ])
++ lib.optional opencvSupport opencv;
cmakeFlags = let
@@ -139,7 +139,7 @@ stdenv.mkDerivation rec {
"-DENABLE_TESTING=${enableIf doCheck}"
"-DDISABLE_META_INTEGRATION_TESTS=ON"
"-DTRAVIS_DISABLE_META_CPP=ON"
"-DPythonModular=${enableIf pythonSupport}"
"-DINTERFACE_PYTHON=${enableIf pythonSupport}"
"-DOpenCV=${enableIf opencvSupport}"
"-DUSE_SVMLIGHT=${enableIf withSvmLight}"
];
@@ -177,6 +177,12 @@ stdenv.mkDerivation rec {
rm -r $out/share
'';
postFixup = ''
# CMake incorrectly calculates library path from dev prefix
substituteInPlace $dev/lib/cmake/shogun/ShogunTargets-release.cmake \
--replace "\''${_IMPORT_PREFIX}/lib/" "$out/lib/"
'';
meta = with lib; {
description = "A toolbox which offers a wide range of efficient and unified machine learning methods";
homepage = "http://shogun-toolbox.org/";
@@ -7,14 +7,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "cwltool";
version = "3.1.20220119140128";
version = "3.1.20220124184855";
format = "setuptools";
src = fetchFromGitHub {
owner = "common-workflow-language";
repo = pname;
rev = version;
sha256 = "1jmrm0qrqgka79avc1kq63fgh20gx6g07fc8p3iih4k85vhdyl3f";
sha256 = "0b0mxminfijbi3d9sslhwhs8awnagdsx8d2wh9x9ipdpwipihpmb";
};
postPatch = ''
@@ -1,19 +1,20 @@
{ fetchurl, lib, stdenv, libxml2, freetype, libGLU, libGL, glew, qt4
, cmake, makeWrapper, libjpeg, python2 }:
{ fetchurl, lib, stdenv, libxml2, freetype, libGLU, libGL, glew
, qtbase, wrapQtAppsHook, python3
, cmake, libjpeg }:
let version = "5.2.1"; in
stdenv.mkDerivation rec {
pname = "tulip";
inherit version;
version = "5.6.1";
src = fetchurl {
url = "mirror://sourceforge/auber/${pname}-${version}_src.tar.gz";
sha256 = "0bqmqy6sri87a8xv5xf7ffaq5zin4hiaa13g0l64b84i7yckfwky";
sha256 = "1fy3nvgxv3igwc1d23zailcgigj1d0f2kkh7a5j24c0dyqz5zxmw";
};
buildInputs = [ libxml2 freetype glew libGLU libGL qt4 libjpeg python2 ];
buildInputs = [ libxml2 freetype glew libGLU libGL libjpeg qtbase python3 ];
nativeBuildInputs = [ cmake wrapQtAppsHook ];
nativeBuildInputs = [ cmake makeWrapper ];
qtWrapperArgs = [ ''--prefix PATH : ${lib.makeBinPath [ python3 ]}'' ];
# FIXME: "make check" needs Docbook's DTD 4.4, among other things.
doCheck = false;
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "arakiken";
repo = pname;
rev = "rel-${lib.replaceStrings [ "." ] [ "_" ] version}"; # 3.9.1 -> rel-3_9_1
rev = version;
sha256 = "sha256-DvGR3rDegInpnLp3H+rXNXktCGhpjsBBPTRMwodeTro=";
};
@@ -11,17 +11,24 @@
, pyyaml
, argcomplete
, typing-extensions
, packaging
, pytestCheckHook
, pytest-freezegun
, pytest-mock
, pytest-regressions
, git
}:
buildPythonApplication rec {
pname = "commitizen";
version = "2.20.3";
version = "2.20.4";
src = fetchFromGitHub {
owner = "commitizen-tools";
repo = pname;
rev = "v${version}";
sha256 = "sha256-rAm2GTRxZIHQmn/FM0IwwH/2h+oOvzGmeVr5xkvD/zA=";
sha256 = "sha256-2DhWiUAkAkyNxYB1CGzUB2nGZeCWvFqSztrxasUPSXw=";
deepClone = true;
};
format = "pyproject";
@@ -38,6 +45,59 @@ buildPythonApplication rec {
pyyaml
argcomplete
typing-extensions
packaging
];
doCheck = true;
checkInputs = [
pytestCheckHook
pytest-freezegun
pytest-mock
pytest-regressions
argcomplete
git
];
# NB: These require full git history
disabledTests = [
"test_breaking_change_content_v1"
"test_breaking_change_content_v1_beta"
"test_breaking_change_content_v1_multiline"
"test_bump_command_prelease"
"test_bump_dry_run"
"test_bump_files_only"
"test_bump_local_version"
"test_bump_major_increment"
"test_bump_minor_increment"
"test_bump_on_git_with_hooks_no_verify_disabled"
"test_bump_on_git_with_hooks_no_verify_enabled"
"test_bump_patch_increment"
"test_bump_tag_exists_raises_exception"
"test_bump_when_bumpping_is_not_support"
"test_bump_when_version_inconsistent_in_version_files"
"test_bump_with_changelog_arg"
"test_bump_with_changelog_config"
"test_bump_with_changelog_to_stdout_arg"
"test_changelog_config_flag_increment"
"test_changelog_config_start_rev_option"
"test_changelog_from_start"
"test_changelog_from_version_zero_point_two"
"test_changelog_hook"
"test_changelog_incremental_angular_sample"
"test_changelog_incremental_keep_a_changelog_sample"
"test_changelog_incremental_keep_a_changelog_sample_with_annotated_tag"
"test_changelog_incremental_with_release_candidate_version"
"test_changelog_is_persisted_using_incremental"
"test_changelog_multiple_incremental_do_not_add_new_lines"
"test_changelog_replacing_unreleased_using_incremental"
"test_changelog_with_different_cz"
"test_get_commits"
"test_get_commits_author_and_email"
"test_get_commits_with_signature"
"test_get_latest_tag_name"
"test_is_staging_clean_when_updating_file"
"test_none_increment_should_not_call_git_tag_and_error_code_is_not_zero"
"test_prevent_prerelease_when_no_increment_detected"
];
meta = with lib; {
+2 -2
View File
@@ -2,7 +2,7 @@
let
pname = "lbry-desktop";
version = "0.50.2";
version = "0.52.0";
in appimageTools.wrapAppImage rec {
name = "${pname}-${version}";
@@ -12,7 +12,7 @@ in appimageTools.wrapAppImage rec {
src = fetchurl {
url = "https://github.com/lbryio/lbry-desktop/releases/download/v${version}/LBRY_${version}.AppImage";
# Gotten from latest-linux.yml
sha512 = "br6HvVRz+ybmAhmQh3vOC5wgLmOCVrGHDn59ueWk6rFoKOCbm8WdmdadOZvHeN1ld2nlvPzEy+KXMOEfF1LeQg==";
sha512 = "FMsO1tUhym11hxot/0S4pXwjvt1YhOUahwiQU+HhOxrZhcrOwwyXUzMy3sAzKdZjidKpA5DbLjkgwPlg2kGWwg==";
};
};
+11 -1
View File
@@ -155,7 +155,7 @@ stdenv.mkDerivation rec {
xcbutilkeysyms
xlibsWrapper
])
++ optional (!hostIsAarch) live555
++ optional (!hostIsAarch && !onlyLibVLC) live555
++ optional jackSupport libjack2
++ optionals chromecastSupport [ libmicrodns protobuf ]
++ optionals skins2Support (with xorg; [
@@ -192,6 +192,16 @@ stdenv.mkDerivation rec {
url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/4250fe8f28c220d883db454cec2b2c76a07473eb/trunk/vlc-3.0.11.1-srt_1.4.2.patch";
sha256 = "53poWjZfwq/6l316sqiCp0AtcGweyXBntcLDFPSokHQ=";
})
# patches to build with recent live555
# upstream issue: https://code.videolan.org/videolan/vlc/-/issues/25473
(fetchpatch {
url = "https://code.videolan.org/videolan/vlc/uploads/3c84ea58d7b94d7a8d354eaffe4b7d55/0001-Get-addr-by-ref.-from-getConnectionEndpointAddress.patch";
sha256 = "171d3qjl9a4dm13sqig3ra8s2zcr76wfnqz4ba4asg139cyc1axd";
})
(fetchpatch {
url = "https://code.videolan.org/videolan/vlc/uploads/eb1c313d2d499b8a777314f789794f9d/0001-Add-lssl-and-lcrypto-to-liblive555_plugin_la_LIBADD.patch";
sha256 = "0kyi8q2zn2ww148ngbia9c7qjgdrijf4jlvxyxgrj29cb5iy1kda";
})
];
postPatch = ''
@@ -37,13 +37,13 @@ let
in
stdenv.mkDerivation rec {
pname = "crun";
version = "1.4.1";
version = "1.4.2";
src = fetchFromGitHub {
owner = "containers";
repo = pname;
rev = version;
sha256 = "sha256-j2+ga+jnKnjnFGmrOOym99keLALg7wR7Jk+jjesiMc4=";
sha256 = "sha256-zGtHO8CgpbXTh8nZ6WA0ocakzLjL/PW2IULI5QSEPVI=";
fetchSubmodules = true;
};
@@ -254,5 +254,9 @@ stdenv.mkDerivation (rec {
platforms = [ "x86_64-linux" ];
maintainers = with lib.maintainers; [ eelco tstrobel oxij ];
license = lib.licenses.gpl2;
# https://xenbits.xen.org/docs/unstable/support-matrix.html
knownVulnerabilities = lib.optionals (lib.versionOlder version "4.13") [
"This version of Xen has reached its end of life. See https://xenbits.xen.org/docs/unstable/support-matrix.html"
];
} // (config.meta or {});
} // removeAttrs config [ "xenfiles" "buildInputs" "patches" "postPatch" "meta" ])
@@ -48,12 +48,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
appstream
desktop-file-utils
@@ -95,6 +89,12 @@ stdenv.mkDerivation rec {
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Code editor designed for elementary OS";
homepage = "https://github.com/elementary/code";
@@ -24,11 +24,9 @@ stdenv.mkDerivation rec {
pname = "elementary-feedback";
version = "6.1.0";
repoName = "feedback";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "feedback";
rev = version;
sha256 = "02wydbpa5qaa4xmmh4m7rbj4djbrn2i44zjakj5i6mzwjlj6sv5n";
};
@@ -42,12 +40,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
gettext
meson
@@ -74,6 +66,12 @@ stdenv.mkDerivation rec {
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "GitHub Issue Reporter designed for elementary OS";
homepage = "https://github.com/elementary/feedback";
@@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, nix-update-script
, pkg-config
, meson
@@ -33,7 +32,7 @@
stdenv.mkDerivation rec {
pname = "elementary-files";
version = "6.1.1";
version = "6.1.2";
outputs = [ "out" "dev" ];
@@ -41,18 +40,9 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = "files";
rev = version;
sha256 = "sha256-5TSzV8MQG81aCCR8yiCPhKJaLrp/fwf4mjP32KkcbbY=";
sha256 = "sha256-g9g4wJXjjudk4Qt96XGUiV/X86Ae2lqhM+psh9h+XFE=";
};
patches = [
# Fix build with meson 0.61
# https://github.com/elementary/files/pull/1973
(fetchpatch {
url = "https://github.com/elementary/files/commit/28428fbda905ece59d3427a3a40e986fdf71a916.patch";
sha256 = "sha256-GZTHAH9scQWrBqdrDI14cj57f61HD8o79zFcPCXjKmc=";
})
];
nativeBuildInputs = [
desktop-file-utils
gettext
@@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, nix-update-script
, pkg-config
, meson
@@ -26,24 +25,15 @@
stdenv.mkDerivation rec {
pname = "elementary-mail";
version = "6.3.1";
version = "6.4.0";
src = fetchFromGitHub {
owner = "elementary";
repo = "mail";
rev = version;
sha256 = "sha256-wOu9jvvwG53vzcNa38nk4eREZWW7Cin8el4qApQ8gI8=";
sha256 = "sha256-ooqVNMgeAqGlFcfachPPfhSiKTEEcNGv5oWdM7VLWOc=";
};
patches = [
# Fix build with meson 0.61
# https://github.com/elementary/mail/pull/751
(fetchpatch {
url = "https://github.com/elementary/mail/commit/bbadc56529276d8e0ff98e9df7d9bb1bf8fc5783.patch";
sha256 = "sha256-lJEnX5/G6e8PdKy1XGlwFIoCeSy6SR5p68tS4noj+44=";
})
];
nativeBuildInputs = [
appstream
desktop-file-utils
@@ -34,11 +34,9 @@ stdenv.mkDerivation rec {
pname = "elementary-music";
version = "5.1.1";
repoName = "music";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "music";
rev = version;
sha256 = "1wqsn4ss9acg0scaqpg514ll2dj3bl71wly4mm79qkinhy30yv9n";
};
@@ -58,12 +56,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
desktop-file-utils
meson
@@ -108,6 +100,12 @@ stdenv.mkDerivation rec {
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Music player and library designed for elementary OS";
homepage = "https://github.com/elementary/music";
@@ -36,11 +36,9 @@ stdenv.mkDerivation rec {
pname = "elementary-photos";
version = "2.7.3";
repoName = "photos";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "photos";
rev = version;
sha256 = "sha256-ja4ElW0FNm9oNyn+00SdI2Cxep6LyWTYM8Blc6bnuiY=";
};
@@ -26,13 +26,13 @@
stdenv.mkDerivation rec {
pname = "elementary-tasks";
version = "6.1.0";
version = "6.2.0";
src = fetchFromGitHub {
owner = "elementary";
repo = "tasks";
rev = version;
sha256 = "sha256-Gt9Hp9m28QdAFnKIT1xcbiSM5cn6kW7wEXmi/iFfu8k=";
sha256 = "sha256-eHaWXntLkk5G+cR5uFwWsIvbSPsbrvpglYBh91ta/M0=";
};
nativeBuildInputs = [
@@ -32,12 +32,6 @@ stdenv.mkDerivation rec {
sha256 = "0abpcawmmv5mgzk2i5n9rlairmjr2v9rg9b8c9g7xa085s496bi9";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
desktop-file-utils
gettext
@@ -66,6 +60,12 @@ stdenv.mkDerivation rec {
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
homepage = "https://github.com/elementary/sideload";
description = "Flatpak installer, designed for elementary OS";
@@ -40,12 +40,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -61,6 +55,12 @@ stdenv.mkDerivation rec {
wingpanel-indicator-a11y
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Universal Access Plug";
homepage = "https://github.com/elementary/switchboard-plug-a11y";
@@ -29,11 +29,13 @@ stdenv.mkDerivation rec {
sha256 = "0c075ac7iqz4hqbp2ph0cwyhiq0jn6c1g1jjfhygjbssv3vvd268";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
patches = [
# Use NixOS's default wallpaper
(substituteAll {
src = ./fix-background-path.patch;
default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}";
})
];
nativeBuildInputs = [
meson
@@ -53,13 +55,11 @@ stdenv.mkDerivation rec {
switchboard
];
patches = [
# Use NixOS's default wallpaper
(substituteAll {
src = ./fix-background-path.patch;
default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}";
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard About Plug";
@@ -24,12 +24,6 @@ stdenv.mkDerivation rec {
sha256 = "18izmzhqp6x5ivha9yl8gyz9adyrsylw7w5p0cwm1bndgqbi7yh5";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -45,6 +39,12 @@ stdenv.mkDerivation rec {
switchboard
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Applications Plug";
homepage = "https://github.com/elementary/switchboard-plug-applications";
@@ -35,12 +35,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -57,6 +51,12 @@ stdenv.mkDerivation rec {
wingpanel-indicator-bluetooth # settings schema
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Bluetooth Plug";
homepage = "https://github.com/elementary/switchboard-plug-bluetooth";
@@ -27,12 +27,6 @@ stdenv.mkDerivation rec {
sha256 = "10rqhxsqbl1xnz5n84d7m39c3vb71k153989xvyc55djia1wjx96";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
@@ -61,6 +55,12 @@ stdenv.mkDerivation rec {
switchboard
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Date & Time Plug";
homepage = "https://github.com/elementary/switchboard-plug-datetime";
@@ -24,12 +24,6 @@ stdenv.mkDerivation rec {
sha256 = "sha256-3sYZCazGnTjIi3Iry5673TMI13sD0GuY+46AK+NJH70=";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -45,6 +39,12 @@ stdenv.mkDerivation rec {
switchboard
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Displays Plug";
homepage = "https://github.com/elementary/switchboard-plug-display";
@@ -40,12 +40,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
libxml2
meson
@@ -67,6 +61,12 @@ stdenv.mkDerivation rec {
switchboard
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Keyboard Plug";
homepage = "https://github.com/elementary/switchboard-plug-keyboard";
@@ -29,11 +29,12 @@ stdenv.mkDerivation rec {
sha256 = "0nqgbpk1knvbj5xa078i0ka6lzqmaaa873gwj3mhjr5q2gzkw7y5";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
touchegg = touchegg;
})
];
nativeBuildInputs = [
meson
@@ -54,12 +55,11 @@ stdenv.mkDerivation rec {
touchegg
];
patches = [
(substituteAll {
src = ./fix-paths.patch;
touchegg = touchegg;
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Mouse & Touchpad Plug";
@@ -27,11 +27,12 @@ stdenv.mkDerivation rec {
sha256 = "0nqihsbrpjw4nx1c50g854bqybniw38adi78vzg8nyl6ikj2r0z4";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
inherit networkmanagerapplet;
})
];
nativeBuildInputs = [
meson
@@ -49,12 +50,11 @@ stdenv.mkDerivation rec {
switchboard
];
patches = [
(substituteAll {
src = ./fix-paths.patch;
inherit networkmanagerapplet;
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Networking Plug";
@@ -34,12 +34,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -55,6 +49,12 @@ stdenv.mkDerivation rec {
switchboard
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Notifications Plug";
homepage = "https://github.com/elementary/switchboard-plug-notifications";
@@ -28,12 +28,6 @@ stdenv.mkDerivation rec {
sha256 = "006h8mrhmdrbd83vhdyahgrfk9wh6j9kjincpp7dz7sl8fsyhmcr";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -53,6 +47,12 @@ stdenv.mkDerivation rec {
wingpanel-indicator-power # settings schema
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Power Plug";
homepage = "https://github.com/elementary/switchboard-plug-power";
@@ -34,12 +34,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -55,6 +49,12 @@ stdenv.mkDerivation rec {
switchboard
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Printers Plug";
homepage = "https://github.com/elementary/switchboard-plug-printers";
@@ -33,12 +33,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -53,6 +47,12 @@ stdenv.mkDerivation rec {
switchboard
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Sharing Plug";
homepage = "https://github.com/elementary/switchboard-plug-sharing";
@@ -37,12 +37,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -62,6 +56,12 @@ stdenv.mkDerivation rec {
xorg.libXi
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Switchboard Wacom Plug";
homepage = "https://github.com/elementary/switchboard-plug-wacom";
@@ -28,12 +28,6 @@ stdenv.mkDerivation rec {
sha256 = "02dfsrfmr297cxpyd5m3746ihcgjyfnb3d42ng9m4ljdvh0dxgim";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
gettext
meson
@@ -73,6 +67,12 @@ stdenv.mkDerivation rec {
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Extensible System Settings app for Pantheon";
homepage = "https://github.com/elementary/switchboard";
@@ -12,11 +12,9 @@ stdenv.mkDerivation rec {
pname = "elementary-gtk-theme";
version = "6.1.1";
repoName = "stylesheet";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "stylesheet";
rev = version;
sha256 = "sha256-gciBn5MQ5Cu+dROL5kCt2GCbNA7W4HOWXyjMBd4OP+8=";
};
@@ -15,11 +15,9 @@ stdenv.mkDerivation rec {
pname = "elementary-icon-theme";
version = "6.1.0";
repoName = "icons";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "icons";
rev = version;
sha256 = "sha256-WR4HV0nJKj0WeSFHXLK64O0LhX8myAJE4w0aztyhPn4=";
};
@@ -11,11 +11,9 @@ stdenv.mkDerivation rec {
pname = "elementary-sound-theme";
version = "1.1.0";
repoName = "sound-theme";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "sound-theme";
rev = version;
sha256 = "sha256-fR6gtKx9J6o2R1vQZ5yx4kEX3Ak+q8I6hRVMZzyB2E8=";
};
@@ -17,11 +17,9 @@ stdenv.mkDerivation rec {
pname = "elementary-default-settings";
version = "6.0.2";
repoName = "default-settings";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "default-settings";
rev = version;
sha256 = "sha256-qaPj/Qp7RYzHgElFdM8bHV42oiPUbCMTC9Q+MUj4Q6Y=";
};
@@ -40,16 +40,32 @@ stdenv.mkDerivation rec {
sha256 = "1f606ds56sp1c58q8dblfpaq9pwwkqw9i4gkwksw45m2xkwlbflq";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
xgreeters = linkFarm "pantheon-greeter-xgreeters" [{
path = "${elementary-greeter}/share/xgreeters/io.elementary.greeter.desktop";
name = "io.elementary.greeter.desktop";
}];
};
patches = [
./sysconfdir-install.patch
# Needed until https://github.com/elementary/greeter/issues/360 is fixed
(substituteAll {
src = ./hardcode-fallback-background.patch;
default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}";
})
# Revert "UserCard: use accent color for logged_in check (#566)"
# https://github.com/elementary/greeter/pull/566
# Fixes crash issue reported in:
# https://github.com/elementary/greeter/issues/578
# https://github.com/NixOS/nixpkgs/issues/151609
# Probably also fixes:
# https://github.com/elementary/greeter/issues/568
# https://github.com/elementary/greeter/issues/583
# https://github.com/NixOS/nixpkgs/issues/140513
# Revisit this when the greeter is ported to GTK 4:
# https://github.com/elementary/greeter/pull/591
./revert-pr566.patch
# Fix build with meson 0.61
# https://github.com/elementary/greeter/pull/590
(fetchpatch {
url = "https://github.com/elementary/greeter/commit/a4b25244058fce794a9f13f6b22a8ff7735ebde9.patch";
sha256 = "sha256-qPXhdvmYG8YMDU/CjbEkfZ0glgRzxnu0TsOPtvWHxLY=";
})
];
nativeBuildInputs = [
desktop-file-utils
@@ -84,21 +100,6 @@ stdenv.mkDerivation rec {
"-Dgsd-dir=${gnome-settings-daemon}/libexec/" # trailing slash is needed
];
patches = [
./sysconfdir-install.patch
# Needed until https://github.com/elementary/greeter/issues/360 is fixed
(substituteAll {
src = ./hardcode-fallback-background.patch;
default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}";
})
# Fix build with meson 0.61
# https://github.com/elementary/greeter/pull/590
(fetchpatch {
url = "https://github.com/elementary/greeter/commit/a4b25244058fce794a9f13f6b22a8ff7735ebde9.patch";
sha256 = "sha256-qPXhdvmYG8YMDU/CjbEkfZ0glgRzxnu0TsOPtvWHxLY=";
})
];
preFixup = ''
gappsWrapperArgs+=(
# dbus-launch needed in path
@@ -125,6 +126,17 @@ stdenv.mkDerivation rec {
--replace "Exec=io.elementary.greeter" "Exec=$out/bin/io.elementary.greeter"
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
xgreeters = linkFarm "pantheon-greeter-xgreeters" [{
path = "${elementary-greeter}/share/xgreeters/io.elementary.greeter.desktop";
name = "io.elementary.greeter.desktop";
}];
};
meta = with lib; {
description = "LightDM Greeter for Pantheon";
homepage = "https://github.com/elementary/greeter";
@@ -0,0 +1,103 @@
From 572a73cbc84dd9a0f5a7667a60c75ed5580d84a1 Mon Sep 17 00:00:00 2001
From: Bobby Rong <rjl931189261@126.com>
Date: Tue, 25 Jan 2022 10:03:31 +0800
Subject: [PATCH] Revert "UserCard: use accent color for logged_in check
(#566)"
This reverts commit 6f18c79c780582e43039032f6926816efa82e206.
---
data/Check.css | 11 -----------
data/greeter.gresource.xml | 1 -
src/Cards/UserCard.vala | 29 +++--------------------------
3 files changed, 3 insertions(+), 38 deletions(-)
delete mode 100644 data/Check.css
diff --git a/data/Check.css b/data/Check.css
deleted file mode 100644
index 947db6b..0000000
--- a/data/Check.css
+++ /dev/null
@@ -1,11 +0,0 @@
-check {
- background-color: @accent_color;
- border-radius: 99px;
- color: white;
- margin: 2px;
- min-height: 20px;
- min-width: 20px;
- -gtk-icon-shadow: 0 1px 1px shade(@accent_color, 0.7);
- -gtk-icon-source: -gtk-icontheme("check-active-symbolic");
- -gtk-icon-transform: scale(0.6);
-}
diff --git a/data/greeter.gresource.xml b/data/greeter.gresource.xml
index 604c89a..ce9be29 100644
--- a/data/greeter.gresource.xml
+++ b/data/greeter.gresource.xml
@@ -2,7 +2,6 @@
<gresources>
<gresource prefix="/io/elementary/greeter">
<file alias="Card.css" compressed="true">Card.css</file>
- <file alias="Check.css" compressed="true">Check.css</file>
<file alias="DateTime.css" compressed="true">DateTime.css</file>
<file alias="MainWindow.css" compressed="true">MainWindow.css</file>
</gresource>
diff --git a/src/Cards/UserCard.vala b/src/Cards/UserCard.vala
index 83df22c..02d2b0a 100644
--- a/src/Cards/UserCard.vala
+++ b/src/Cards/UserCard.vala
@@ -42,7 +42,6 @@ public class Greeter.UserCard : Greeter.BaseCard {
private Gtk.Stack login_stack;
private Greeter.PasswordEntry password_entry;
- private unowned Gtk.StyleContext logged_in_context;
private weak Gtk.StyleContext main_grid_style_context;
private weak Gtk.StyleContext password_entry_context;
@@ -214,14 +213,10 @@ public class Greeter.UserCard : Greeter.BaseCard {
};
avatar_overlay.add (avatar);
- var logged_in = new SelectionCheck () {
- halign = Gtk.Align.END,
- valign = Gtk.Align.END
- };
-
- logged_in_context = logged_in.get_style_context ();
-
if (lightdm_user.logged_in) {
+ var logged_in = new Gtk.Image.from_icon_name ("selection-checked", Gtk.IconSize.LARGE_TOOLBAR);
+ logged_in.halign = logged_in.valign = Gtk.Align.END;
+
avatar_overlay.add_overlay (logged_in);
session_button.sensitive = false;
@@ -304,7 +299,6 @@ public class Greeter.UserCard : Greeter.BaseCard {
gtksettings.gtk_theme_name = "io.elementary.stylesheet." + accent_to_string (prefers_accent_color);
var style_provider = Gtk.CssProvider.get_named (gtksettings.gtk_theme_name, null);
- logged_in_context.add_provider (style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
password_entry_context.add_provider (style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
}
@@ -451,21 +445,4 @@ public class Greeter.UserCard : Greeter.BaseCard {
return GLib.Source.REMOVE;
});
}
-
- private class SelectionCheck : Gtk.Spinner {
- private static Gtk.CssProvider check_provider;
-
- class construct {
- set_css_name (Gtk.STYLE_CLASS_CHECK);
- }
-
- static construct {
- check_provider = new Gtk.CssProvider ();
- check_provider.load_from_resource ("/io/elementary/greeter/Check.css");
- }
-
- construct {
- get_style_context ().add_provider (check_provider, Gtk.STYLE_PROVIDER_PRIORITY_USER);
- }
- }
}
@@ -26,15 +26,26 @@ stdenv.mkDerivation rec {
pname = "elementary-onboarding";
version = "6.1.0";
repoName = "onboarding";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "onboarding";
rev = version;
sha256 = "sha256-9voy9eje3VlV4IMM664EyjKWTfSVogX5JoRCqhsUXTE=";
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
appcenter = appcenter;
})
# Provides the directory where the locales are actually installed
# https://github.com/elementary/onboarding/pull/147
(fetchpatch {
url = "https://github.com/elementary/onboarding/commit/af19c3dbefd1c0e0ec18eddacc1f21cb991f5513.patch";
sha256 = "sha256-fSFfjSd33W7rXXEUHY8b3rv9B9c31XfCjxjRxBBrqjs=";
})
];
nativeBuildInputs = [
gettext
meson
@@ -56,19 +67,6 @@ stdenv.mkDerivation rec {
libhandy
];
patches = [
(substituteAll {
src = ./fix-paths.patch;
appcenter = appcenter;
})
# Provides the directory where the locales are actually installed
# https://github.com/elementary/onboarding/pull/147
(fetchpatch {
url = "https://github.com/elementary/onboarding/commit/af19c3dbefd1c0e0ec18eddacc1f21cb991f5513.patch";
sha256 = "sha256-fSFfjSd33W7rXXEUHY8b3rv9B9c31XfCjxjRxBBrqjs=";
})
];
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
@@ -13,21 +13,13 @@ stdenv.mkDerivation rec {
pname = "elementary-print-shim";
version = "0.1.3";
repoName = "print";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "print";
rev = version;
sha256 = "sha256-l2IUu9Mj22lZ5yajPcsGrJcJDakNu4srCV0Qea5ybPA=";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -37,6 +29,12 @@ stdenv.mkDerivation rec {
buildInputs = [ gtk3 ];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Simple shim for printing support via Contractor";
homepage = "https://github.com/elementary/print";
@@ -80,7 +80,7 @@ let
Name=Pantheon
Comment=This session provides elementary experience
Exec=@out@/libexec/pantheon
TryExec=${wingpanel}/bin/wingpanel
TryExec=${wingpanel}/bin/io.elementary.wingpanel
Icon=
DesktopNames=Pantheon
Type=Application
@@ -92,11 +92,9 @@ stdenv.mkDerivation rec {
pname = "elementary-session-settings";
version = "6.0.0";
repoName = "session-settings";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "session-settings";
rev = version;
sha256 = "1faglpa7q3a4335gnd074a3lnsdspyjdnskgy4bfnf6xmwjx7kjx";
};
@@ -34,12 +34,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -60,6 +54,12 @@ stdenv.mkDerivation rec {
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Universal Access Indicator for Wingpanel";
homepage = "https://github.com/elementary/wingpanel-indicator-a11y";
@@ -27,12 +27,6 @@ stdenv.mkDerivation rec {
sha256 = "12rasf8wy3cqnfjlm9s2qnx4drzx0w0yviagkng3kspdzm3vzsqy";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
glib # for glib-compile-schemas
libxml2
@@ -57,6 +51,12 @@ stdenv.mkDerivation rec {
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Bluetooth Indicator for Wingpanel";
homepage = "https://github.com/elementary/wingpanel-indicator-bluetooth";
@@ -29,11 +29,18 @@ stdenv.mkDerivation rec {
sha256 = "10zzsil5l6snz47nx887r22sl2n0j6bg4dhxmgk3j3xp3jhgmrgl";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
gkbd_keyboard_display = "${libgnomekbd}/bin/gkbd-keyboard-display";
})
# Upstream code not respecting our localedir
# https://github.com/elementary/wingpanel-indicator-keyboard/pull/110
(fetchpatch {
url = "https://github.com/elementary/wingpanel-indicator-keyboard/commit/ea5df2f62a99a216ee5ed137268e710490a852a4.patch";
sha256 = "0fmdz10xgzsryj0f0dnpjrh9yygjkb91a7pxg0rwddxbprhnr7j0";
})
];
nativeBuildInputs = [
meson
@@ -52,18 +59,11 @@ stdenv.mkDerivation rec {
xorg.xkeyboardconfig
];
patches = [
(substituteAll {
src = ./fix-paths.patch;
gkbd_keyboard_display = "${libgnomekbd}/bin/gkbd-keyboard-display";
})
# Upstream code not respecting our localedir
# https://github.com/elementary/wingpanel-indicator-keyboard/pull/110
(fetchpatch {
url = "https://github.com/elementary/wingpanel-indicator-keyboard/commit/ea5df2f62a99a216ee5ed137268e710490a852a4.patch";
sha256 = "0fmdz10xgzsryj0f0dnpjrh9yygjkb91a7pxg0rwddxbprhnr7j0";
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Keyboard Indicator for Wingpanel";
@@ -34,12 +34,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
libxml2
meson
@@ -55,6 +49,12 @@ stdenv.mkDerivation rec {
wingpanel
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Night Light Indicator for Wingpanel";
homepage = "https://github.com/elementary/wingpanel-indicator-nightlight";
@@ -30,11 +30,12 @@ stdenv.mkDerivation rec {
sha256 = "1zlpnl7983jkpy2nik08ih8lwrqvm456h993ixa6armzlazdvnjk";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
gnome_power_manager = gnome.gnome-power-manager;
})
];
nativeBuildInputs = [
meson
@@ -55,18 +56,17 @@ stdenv.mkDerivation rec {
wingpanel
];
patches = [
(substituteAll {
src = ./fix-paths.patch;
gnome_power_manager = gnome.gnome-power-manager;
})
];
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Power Indicator for Wingpanel";
homepage = "https://github.com/elementary/wingpanel-indicator-power";
@@ -35,12 +35,6 @@ stdenv.mkDerivation rec {
})
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -57,6 +51,12 @@ stdenv.mkDerivation rec {
wingpanel
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Session Indicator for Wingpanel";
homepage = "https://github.com/elementary/wingpanel-indicator-session";
@@ -31,6 +31,10 @@ stdenv.mkDerivation rec {
sha256 = "sha256-WvkQx+9YjKCINpyVg8KjCV0GAb0rJfblSFaO14/4oas=";
};
patches = [
./indicators.patch
];
nativeBuildInputs = [
gettext
meson
@@ -53,10 +57,6 @@ stdenv.mkDerivation rec {
mesa # for libEGL
];
patches = [
./indicators.patch
];
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
@@ -25,12 +25,6 @@ stdenv.mkDerivation rec {
sha256 = "1sqww7zlzl086pjww3d21ah1g78lfrc9aagrqhmsnnbji9gwb8ab";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
dbus
meson
@@ -49,6 +43,12 @@ stdenv.mkDerivation rec {
PKG_CONFIG_DBUS_1_SESSION_BUS_SERVICES_DIR = "${placeholder "out"}/share/dbus-1/services";
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "A desktop-wide extension service used by elementary OS";
homepage = "https://github.com/elementary/contractor";
@@ -19,11 +19,9 @@ stdenv.mkDerivation rec {
pname = "elementary-notifications";
version = "6.0.0";
repoName = "notifications";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "notifications";
rev = version;
sha256 = "0jfppafbc8jwhhnillylicz4zfds789d8b31ifsx0qijlxa7kji9";
};
@@ -23,11 +23,9 @@ stdenv.mkDerivation rec {
pname = "elementary-settings-daemon";
version = "1.1.0";
repoName = "settings-daemon";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
repo = "settings-daemon";
rev = version;
sha256 = "sha256-1Xp1uJzDFuGZlhJhKj00cYtb4Q1syMAm+82fTOtk0VI=";
};
@@ -25,12 +25,6 @@ stdenv.mkDerivation rec {
sha256 = "0hx3sky0vd2vshkscy3w5x3s18gd45cfqh510xhbmvc0sa32q9gd";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
desktop-file-utils
meson
@@ -51,6 +45,12 @@ stdenv.mkDerivation rec {
${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas
'';
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Pantheon Geoclue2 Agent";
homepage = "https://github.com/elementary/pantheon-agent-geoclue2";
@@ -24,12 +24,6 @@ stdenv.mkDerivation rec {
sha256 = "1acqjjarl225yk0f68wkldsamcrzrj0ibpcxma04wq9w7jlmz60c";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
@@ -45,6 +39,12 @@ stdenv.mkDerivation rec {
polkit
];
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
meta = with lib; {
description = "Polkit Agent for the Pantheon Desktop";
homepage = "https://github.com/elementary/pantheon-agent-polkit";
+3 -3
View File
@@ -6,12 +6,12 @@
stdenv.mkDerivation rec {
pname = "qbe";
version = "unstable-2021-11-22";
version = "unstable-2021-12-05";
src = fetchgit {
url = "git://c9x.me/qbe.git";
rev = "bf153b359e9ce3ebef9bca899eb7ed5bd9045c11";
sha256 = "sha256-13Mvq4VWZxlye/kncJibCnfSECx4PeHMYLuX0xMkN3A=";
rev = "367c8215d99054892740ad74c690b106c45ebf60";
sha256 = "sha256-xhTEiFR1RXMHtxmXlRof3O8monXEjstyWP3GClZmMuU=";
};
makeFlags = [ "PREFIX=$(out)" ];
@@ -1,19 +1,6 @@
{ lib, fetchzip, mkCoqDerivation, coq, version ? null }:
let
ocamlPackages =
coq.ocamlPackages.overrideScope'
(self: super: {
ppxlib = super.ppxlib.override { version = "0.15.0"; };
# the following does not work
ppx_sexp_conv = super.ppx_sexp_conv.overrideAttrs (_: {
src = fetchzip {
url = "https://github.com/janestreet/ppx_sexp_conv/archive/v0.14.1.tar.gz";
sha256 = "04bx5id99clrgvkg122nx03zig1m7igg75piphhyx04w33shgkz2";
};
});
});
release = {
"8.14.0+0.14.0".sha256 = "sha256:1kh80yb791yl771qbqkvwhbhydfii23a7lql0jgifvllm2k8hd8d";
"8.14+rc1+0.14.0".sha256 = "1w7d7anvcfx8vz51mnrf1jkw6rlpzjkjlr06avf58wlhymww7pja";
@@ -29,8 +16,6 @@ in
inherit version release;
defaultVersion = with versions;
if isGe "4.12" coq.ocamlPackages.ocaml.version then null
else
switch coq.version [
{ case = isEq "8.14"; out = "8.14.0+0.14.0"; }
{ case = isEq "8.13"; out = "8.13.0+0.13.0"; }
@@ -42,7 +27,7 @@ in
useDune2 = true;
propagatedBuildInputs =
with ocamlPackages; [
with coq.ocamlPackages; [
cmdliner
findlib # run time dependency of SerAPI
ppx_deriving
@@ -13,13 +13,13 @@
stdenv.mkDerivation rec {
pname = "obb";
version = "0.0.1";
version = "0.0.2";
src = fetchFromGitHub {
owner = "babashka";
repo = pname;
rev = "v${version}";
sha256 = "sha256-WxQjBg6el6XMiHTurmSo1GgZnTdaJjRmcV3+3X4yohc=";
sha256 = "1Gxh4IMtytQCuPS+BWOc5AgjEBxa43ebYfDsxLSPeY0=";
};
nativeBuildInputs = [ makeWrapper ];
@@ -21,6 +21,8 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DBUILD_SHARED_LIBS=ON"
"-DCMAKE_SKIP_BUILD_RPATH=OFF" # for tests
] ++ lib.optionals stdenv.hostPlatform.isRiscV [
"-DCMAKE_C_FLAGS=-fasynchronous-unwind-tables"
];
# aws-c-common misuses cmake modules, so we need
+2 -2
View File
@@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "imath";
version = "3.1.3";
version = "3.1.4";
src = fetchFromGitHub {
owner = "AcademySoftwareFoundation";
repo = "imath";
rev = "v${version}";
sha256 = "sha256-LoyV1Wtugva6MTpREstP2rYMrHW2xR0qfEAIV1Fo1Ns=";
sha256 = "sha256-FZXIIzAxhd0QlJAV0q7spEa1pNFXutI0WFZbT3izN4M=";
};
nativeBuildInputs = [ cmake ];
@@ -32,5 +32,6 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ izorkin ];
license = licenses.lgpl3;
platforms = platforms.unix;
broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/libthreadar.x86_64-darwin
};
}
+24 -13
View File
@@ -1,23 +1,35 @@
{ stdenv, fetchurl, lib, darwin }:
{ lib
, stdenv
, fetchurl
, darwin
, openssl
}:
# Based on https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD
stdenv.mkDerivation rec {
pname = "live555";
version = "2019.11.22";
version = "2022.01.21";
src = fetchurl { # the upstream doesn't provide a stable URL
src = fetchurl {
urls = [
"mirror://sourceforge/slackbuildsdirectlinks/live.${version}.tar.gz"
"http://www.live555.com/liveMedia/public/live.${version}.tar.gz"
"https://download.videolan.org/contrib/live555/live.${version}.tar.gz"
"mirror://sourceforge/slackbuildsdirectlinks/live.${version}.tar.gz"
];
sha256 = "144y2wsfpaclkj7srx85f3y3parzn7vbjmzc2afc62wdsb9gn46d";
sha256 = "sha256-diV5wULbOrqMRDCyI9NjVaR6JUbYl9KWHUlvA/jjqQ4=";
};
nativeBuildInputs = lib.optional stdenv.isDarwin darwin.cctools;
buildInputs = [ openssl ];
postPatch = ''
sed 's,/bin/rm,rm,g' -i genMakefiles
sed \
substituteInPlace config.macosx-catalina \
--replace '/usr/lib/libssl.46.dylib' "${openssl.out}/lib/libssl.dylib" \
--replace '/usr/lib/libcrypto.44.dylib' "${openssl.out}/lib/libcrypto.dylib"
sed -i -e 's|/bin/rm|rm|g' genMakefiles
sed -i \
-e 's/$(INCLUDES) -I. -O2 -DSOCKLEN_T/$(INCLUDES) -I. -O2 -I. -fPIC -DRTSPCLIENT_SYNCHRONOUS_INTERFACE=1 -DSOCKLEN_T/g' \
-i config.linux
config.linux
'' + lib.optionalString (stdenv ? glibc) ''
substituteInPlace liveMedia/include/Locale.hh \
--replace '<xlocale.h>' '<locale.h>'
@@ -27,7 +39,7 @@ stdenv.mkDerivation rec {
runHook preConfigure
./genMakefiles ${{
x86_64-darwin = "macosx";
x86_64-darwin = "macosx-catalina";
i686-linux = "linux";
x86_64-linux = "linux-64bit";
aarch64-linux = "linux-64bit";
@@ -48,15 +60,14 @@ stdenv.mkDerivation rec {
runHook postInstall
'';
nativeBuildInputs = lib.optional stdenv.isDarwin darwin.cctools;
enableParallelBuilding = true;
meta = with lib; {
description = "Set of C++ libraries for multimedia streaming, using open standard protocols (RTP/RTCP, RTSP, SIP)";
homepage = "http://www.live555.com/liveMedia/";
description = "Set of C++ libraries for multimedia streaming, using open standard protocols (RTP/RTCP, RTSP, SIP)";
changelog = "http://www.live555.com/liveMedia/public/changelog.txt";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
broken = stdenv.hostPlatform.isAarch64;
};

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