Merge master into haskell-updates
This commit is contained in:
@@ -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.
|
||||
|
||||
@@ -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
|
||||
[...]
|
||||
>>>
|
||||
</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. -->
|
||||
|
||||
@@ -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()))
|
||||
|
||||
@@ -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),
|
||||
|
||||
@@ -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():
|
||||
|
||||
@@ -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 =
|
||||
|
||||
@@ -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";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)"}'';
|
||||
|
||||
@@ -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
|
||||
];
|
||||
|
||||
@@ -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
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -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 ];
|
||||
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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"'
|
||||
)
|
||||
|
||||
@@ -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 ];
|
||||
};
|
||||
|
||||
@@ -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=''
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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 ];
|
||||
};
|
||||
}
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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,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==";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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
Reference in New Issue
Block a user