Merge master into haskell-updates
This commit is contained in:
commit
01f49857f0
@ -1,6 +1,6 @@
|
||||
# buildFHSUserEnv {#sec-fhs-environments}
|
||||
# buildFHSEnv {#sec-fhs-environments}
|
||||
|
||||
`buildFHSUserEnv` provides a way to build and run FHS-compatible lightweight sandboxes. It creates an isolated root with bound `/nix/store`, so its footprint in terms of disk space needed is quite small. This allows one to run software which is hard or unfeasible to patch for NixOS -- 3rd-party source trees with FHS assumptions, games distributed as tarballs, software with integrity checking and/or external self-updated binaries. It uses Linux namespaces feature to create temporary lightweight environments which are destroyed after all child processes exit, without root user rights requirement. Accepted arguments are:
|
||||
`buildFHSEnv` provides a way to build and run FHS-compatible lightweight sandboxes. It creates an isolated root with bound `/nix/store`, so its footprint in terms of disk space needed is quite small. This allows one to run software which is hard or unfeasible to patch for NixOS -- 3rd-party source trees with FHS assumptions, games distributed as tarballs, software with integrity checking and/or external self-updated binaries. It uses Linux namespaces feature to create temporary lightweight environments which are destroyed after all child processes exit, without root user rights requirement. Accepted arguments are:
|
||||
|
||||
- `name`
|
||||
Environment name.
|
||||
@ -26,7 +26,7 @@ One can create a simple environment using a `shell.nix` like that:
|
||||
```nix
|
||||
{ pkgs ? import <nixpkgs> {} }:
|
||||
|
||||
(pkgs.buildFHSUserEnv {
|
||||
(pkgs.buildFHSEnv {
|
||||
name = "simple-x11-env";
|
||||
targetPkgs = pkgs: (with pkgs;
|
||||
[ udev
|
||||
|
@ -8797,6 +8797,12 @@
|
||||
githubId = 3696783;
|
||||
name = "Leroy Hopson";
|
||||
};
|
||||
lillycham = {
|
||||
email = "lillycat332@gmail.com";
|
||||
github = "lillycat332";
|
||||
githubId = 54189319;
|
||||
name = "Lilly Cham";
|
||||
};
|
||||
lilyball = {
|
||||
email = "lily@sb.org";
|
||||
github = "lilyball";
|
||||
@ -12739,6 +12745,13 @@
|
||||
githubId = 14829269;
|
||||
name = "Ram Kromberg";
|
||||
};
|
||||
rampoina = {
|
||||
email = "rampoina@protonmail.com";
|
||||
matrix = "@rampoina:matrix.org";
|
||||
github = "Rampoina";
|
||||
githubId = 5653911;
|
||||
name = "Rampoina";
|
||||
};
|
||||
ranfdev = {
|
||||
email = "ranfdev@gmail.com";
|
||||
name = "Lorenzo Miglietta";
|
||||
|
@ -94,6 +94,6 @@ environment.systemPackages = [ pkgs.appimage-run ];
|
||||
Then instead of running the AppImage "as-is", run `appimage-run foo.appimage`.
|
||||
|
||||
To make other pre-built executables work on NixOS, you need to package them
|
||||
with Nix and special helpers like `autoPatchelfHook` or `buildFHSUserEnv`. See
|
||||
with Nix and special helpers like `autoPatchelfHook` or `buildFHSEnv`. See
|
||||
the [Nixpkgs manual](https://nixos.org/nixpkgs/manual) for details. This
|
||||
is complex and often doing a source build is easier.
|
||||
|
@ -423,6 +423,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- The `bind` module now allows the per-zone `allow-query` setting to be configured (previously it was hard-coded to `any`; it still defaults to `any` to retain compatibility).
|
||||
|
||||
- `make-disk-image` handles `contents` arguments that are directories better, fixing a bug where it used to put them in a subdirectory of the intended `target`.
|
||||
|
||||
## Detailed migration information {#sec-release-23.05-migration}
|
||||
|
||||
### Pipewire configuration overrides {#sec-release-23.05-migration-pipewire}
|
||||
|
@ -402,11 +402,16 @@ let format' = format; in let
|
||||
done
|
||||
else
|
||||
mkdir -p $root/$(dirname $target)
|
||||
if ! [ -e $root/$target ]; then
|
||||
rsync $rsync_flags $source $root/$target
|
||||
else
|
||||
if [ -e $root/$target ]; then
|
||||
echo "duplicate entry $target -> $source"
|
||||
exit 1
|
||||
elif [ -d $source ]; then
|
||||
# Append a slash to the end of source to get rsync to copy the
|
||||
# directory _to_ the target instead of _inside_ the target.
|
||||
# (See `man rsync`'s note on a trailing slash.)
|
||||
rsync $rsync_flags $source/ $root/$target
|
||||
else
|
||||
rsync $rsync_flags $source $root/$target
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
@ -1166,7 +1166,6 @@
|
||||
./services/web-apps/hledger-web.nix
|
||||
./services/web-apps/icingaweb2/icingaweb2.nix
|
||||
./services/web-apps/icingaweb2/module-monitoring.nix
|
||||
./services/web-apps/ihatemoney
|
||||
./services/web-apps/invidious.nix
|
||||
./services/web-apps/invoiceplane.nix
|
||||
./services/web-apps/isso.nix
|
||||
|
@ -58,6 +58,7 @@ with lib;
|
||||
(mkRemovedOptionModule [ "services" "fourStoreEndpoint" ] "The fourStoreEndpoint module has been removed")
|
||||
(mkRemovedOptionModule [ "services" "fprot" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "frab" ] "The frab module has been removed")
|
||||
(mkRemovedOptionModule [ "services" "ihatemoney" ] "The ihatemoney module has been removed for lack of downstream maintainer")
|
||||
(mkRemovedOptionModule [ "services" "kippo" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "mailpile" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "marathon" ] "The corresponding package was removed from nixpkgs.")
|
||||
|
@ -6,7 +6,7 @@ let
|
||||
cfg = config.services.boinc;
|
||||
allowRemoteGuiRpcFlag = optionalString cfg.allowRemoteGuiRpc "--allow_remote_gui_rpc";
|
||||
|
||||
fhsEnv = pkgs.buildFHSUserEnv {
|
||||
fhsEnv = pkgs.buildFHSEnv {
|
||||
name = "boinc-fhs-env";
|
||||
targetPkgs = pkgs': [ cfg.package ] ++ cfg.extraEnvPackages;
|
||||
runScript = "/bin/boinc_client";
|
||||
|
@ -339,14 +339,9 @@ in
|
||||
};
|
||||
preStart = ''
|
||||
mkdir -m 0755 -p ${smokepingHome}/cache ${smokepingHome}/data
|
||||
rm -f ${smokepingHome}/cropper
|
||||
ln -s ${cfg.package}/htdocs/cropper ${smokepingHome}/cropper
|
||||
rm -f ${smokepingHome}/css
|
||||
ln -s ${cfg.package}/htdocs/css ${smokepingHome}/css
|
||||
rm -f ${smokepingHome}/js
|
||||
ln -s ${cfg.package}/htdocs/js ${smokepingHome}/js
|
||||
rm -f ${smokepingHome}/smokeping.fcgi
|
||||
ln -s ${cgiHome} ${smokepingHome}/smokeping.fcgi
|
||||
ln -sf ${cfg.package}/htdocs/css ${smokepingHome}/css
|
||||
ln -sf ${cfg.package}/htdocs/js ${smokepingHome}/js
|
||||
ln -sf ${cgiHome} ${smokepingHome}/smokeping.fcgi
|
||||
${cfg.package}/bin/smokeping --check --config=${configPath}
|
||||
${cfg.package}/bin/smokeping --static --config=${configPath}
|
||||
'';
|
||||
|
@ -1,153 +0,0 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.ihatemoney;
|
||||
user = "ihatemoney";
|
||||
group = "ihatemoney";
|
||||
db = "ihatemoney";
|
||||
python3 = config.services.uwsgi.package.python3;
|
||||
pkg = python3.pkgs.ihatemoney;
|
||||
toBool = x: if x then "True" else "False";
|
||||
configFile = pkgs.writeText "ihatemoney.cfg" ''
|
||||
from secrets import token_hex
|
||||
# load a persistent secret key
|
||||
SECRET_KEY_FILE = "/var/lib/ihatemoney/secret_key"
|
||||
SECRET_KEY = ""
|
||||
try:
|
||||
with open(SECRET_KEY_FILE) as f:
|
||||
SECRET_KEY = f.read()
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
if not SECRET_KEY:
|
||||
print("ihatemoney: generating a new secret key")
|
||||
SECRET_KEY = token_hex(50)
|
||||
with open(SECRET_KEY_FILE, "w") as f:
|
||||
f.write(SECRET_KEY)
|
||||
del token_hex
|
||||
del SECRET_KEY_FILE
|
||||
|
||||
# "normal" configuration
|
||||
DEBUG = False
|
||||
SQLALCHEMY_DATABASE_URI = '${
|
||||
if cfg.backend == "sqlite"
|
||||
then "sqlite:////var/lib/ihatemoney/ihatemoney.sqlite"
|
||||
else "postgresql:///${db}"}'
|
||||
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
||||
MAIL_DEFAULT_SENDER = (r"${cfg.defaultSender.name}", r"${cfg.defaultSender.email}")
|
||||
ACTIVATE_DEMO_PROJECT = ${toBool cfg.enableDemoProject}
|
||||
ADMIN_PASSWORD = r"${toString cfg.adminHashedPassword /*toString null == ""*/}"
|
||||
ALLOW_PUBLIC_PROJECT_CREATION = ${toBool cfg.enablePublicProjectCreation}
|
||||
ACTIVATE_ADMIN_DASHBOARD = ${toBool cfg.enableAdminDashboard}
|
||||
SESSION_COOKIE_SECURE = ${toBool cfg.secureCookie}
|
||||
ENABLE_CAPTCHA = ${toBool cfg.enableCaptcha}
|
||||
LEGAL_LINK = r"${toString cfg.legalLink}"
|
||||
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
in
|
||||
{
|
||||
options.services.ihatemoney = {
|
||||
enable = mkEnableOption (lib.mdDoc "ihatemoney webapp. Note that this will set uwsgi to emperor mode");
|
||||
backend = mkOption {
|
||||
type = types.enum [ "sqlite" "postgresql" ];
|
||||
default = "sqlite";
|
||||
description = lib.mdDoc ''
|
||||
The database engine to use for ihatemoney.
|
||||
If `postgresql` is selected, then a database called
|
||||
`${db}` will be created. If you disable this option,
|
||||
it will however not be removed.
|
||||
'';
|
||||
};
|
||||
adminHashedPassword = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = lib.mdDoc "The hashed password of the administrator. To obtain it, run `ihatemoney generate_password_hash`";
|
||||
};
|
||||
uwsgiConfig = mkOption {
|
||||
type = types.attrs;
|
||||
example = {
|
||||
http = ":8000";
|
||||
};
|
||||
description = lib.mdDoc "Additional configuration of the UWSGI vassal running ihatemoney. It should notably specify on which interfaces and ports the vassal should listen.";
|
||||
};
|
||||
defaultSender = {
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = "Budget manager";
|
||||
description = lib.mdDoc "The display name of the sender of ihatemoney emails";
|
||||
};
|
||||
email = mkOption {
|
||||
type = types.str;
|
||||
default = "ihatemoney@${config.networking.hostName}";
|
||||
defaultText = literalExpression ''"ihatemoney@''${config.networking.hostName}"'';
|
||||
description = lib.mdDoc "The email of the sender of ihatemoney emails";
|
||||
};
|
||||
};
|
||||
secureCookie = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = lib.mdDoc "Use secure cookies. Disable this when ihatemoney is served via http instead of https";
|
||||
};
|
||||
enableDemoProject = mkEnableOption (lib.mdDoc "access to the demo project in ihatemoney");
|
||||
enablePublicProjectCreation = mkEnableOption (lib.mdDoc "permission to create projects in ihatemoney by anyone");
|
||||
enableAdminDashboard = mkEnableOption (lib.mdDoc "ihatemoney admin dashboard");
|
||||
enableCaptcha = mkEnableOption (lib.mdDoc "a simplistic captcha for some forms");
|
||||
legalLink = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = lib.mdDoc "The URL to a page explaining legal statements about your service, eg. GDPR-related information.";
|
||||
};
|
||||
extraConfig = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = lib.mdDoc "Extra configuration appended to ihatemoney's configuration file. It is a python file, so pay attention to indentation.";
|
||||
};
|
||||
};
|
||||
config = mkIf cfg.enable {
|
||||
services.postgresql = mkIf (cfg.backend == "postgresql") {
|
||||
enable = true;
|
||||
ensureDatabases = [ db ];
|
||||
ensureUsers = [ {
|
||||
name = user;
|
||||
ensurePermissions = {
|
||||
"DATABASE ${db}" = "ALL PRIVILEGES";
|
||||
};
|
||||
} ];
|
||||
};
|
||||
systemd.services.postgresql = mkIf (cfg.backend == "postgresql") {
|
||||
wantedBy = [ "uwsgi.service" ];
|
||||
before = [ "uwsgi.service" ];
|
||||
};
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /var/lib/ihatemoney 770 ${user} ${group}"
|
||||
];
|
||||
users = {
|
||||
users.${user} = {
|
||||
isSystemUser = true;
|
||||
inherit group;
|
||||
};
|
||||
groups.${group} = {};
|
||||
};
|
||||
services.uwsgi = {
|
||||
enable = true;
|
||||
plugins = [ "python3" ];
|
||||
instance = {
|
||||
type = "emperor";
|
||||
vassals.ihatemoney = {
|
||||
type = "normal";
|
||||
strict = true;
|
||||
immediate-uid = user;
|
||||
immediate-gid = group;
|
||||
# apparently flask uses threads: https://github.com/spiral-project/ihatemoney/commit/c7815e48781b6d3a457eaff1808d179402558f8c
|
||||
enable-threads = true;
|
||||
module = "wsgi:application";
|
||||
chdir = "${pkg}/${pkg.pythonModule.sitePackages}/ihatemoney";
|
||||
env = [ "IHATEMONEY_SETTINGS_FILE_PATH=${configFile}" ];
|
||||
pythonPackages = self: [ self.ihatemoney ];
|
||||
} // cfg.uwsgiConfig;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -302,8 +302,12 @@ def main() -> None:
|
||||
if is_default:
|
||||
write_loader_conf(*gen)
|
||||
except OSError as e:
|
||||
profile = f"profile '{gen.profile}'" if gen.profile else "default profile"
|
||||
print("ignoring {} in the list of boot entries because of the following error:\n{}".format(profile, e), file=sys.stderr)
|
||||
# See https://github.com/NixOS/nixpkgs/issues/114552
|
||||
if e.errno == errno.EINVAL:
|
||||
profile = f"profile '{gen.profile}'" if gen.profile else "default profile"
|
||||
print("ignoring {} in the list of boot entries because of the following error:\n{}".format(profile, e), file=sys.stderr)
|
||||
else:
|
||||
raise e
|
||||
|
||||
for root, _, files in os.walk('@efiSysMountPoint@/efi/nixos/.extra-files', topdown=False):
|
||||
relative_root = root.removeprefix("@efiSysMountPoint@/efi/nixos/.extra-files").removeprefix("/")
|
||||
|
@ -135,10 +135,11 @@ with lib;
|
||||
cfgLine = name: value: ''
|
||||
${name}: ${builtins.toString value}
|
||||
'';
|
||||
virtio0Storage = builtins.head (builtins.split ":" cfg.qemuConf.virtio0);
|
||||
cfgFile = fileName: properties: pkgs.writeTextDir fileName ''
|
||||
# generated by NixOS
|
||||
${lib.concatStrings (lib.mapAttrsToList cfgLine properties)}
|
||||
#qmdump#map:virtio0:drive-virtio0:local-lvm:raw:
|
||||
#qmdump#map:virtio0:drive-virtio0:${virtio0Storage}:raw:
|
||||
'';
|
||||
inherit (cfg) partitionTableType;
|
||||
supportEfi = partitionTableType == "efi" || partitionTableType == "hybrid";
|
||||
|
@ -310,7 +310,6 @@ in {
|
||||
i3wm = handleTest ./i3wm.nix {};
|
||||
icingaweb2 = handleTest ./icingaweb2.nix {};
|
||||
iftop = handleTest ./iftop.nix {};
|
||||
ihatemoney = handleTest ./ihatemoney {};
|
||||
incron = handleTest ./incron.nix {};
|
||||
influxdb = handleTest ./influxdb.nix {};
|
||||
initrd-network-openvpn = handleTest ./initrd-network-openvpn {};
|
||||
|
@ -17,6 +17,7 @@ with pkgs.lib;
|
||||
ln -s ${pkgs.writeText "sshPublicKey" sshPublicKey} $out/1.0/meta-data/public-keys/0/openssh-key
|
||||
'';
|
||||
};
|
||||
indentLines = str: concatLines (map (s: " " + s) (splitString "\n" str));
|
||||
in makeTest {
|
||||
name = "ec2-" + name;
|
||||
nodes = {};
|
||||
@ -36,6 +37,8 @@ with pkgs.lib;
|
||||
"create",
|
||||
"-f",
|
||||
"qcow2",
|
||||
"-F",
|
||||
"qcow2",
|
||||
"-o",
|
||||
"backing_file=${image}",
|
||||
disk_image,
|
||||
@ -59,7 +62,11 @@ with pkgs.lib;
|
||||
)
|
||||
|
||||
machine = create_machine({"startCommand": start_command})
|
||||
'' + script;
|
||||
try:
|
||||
'' + indentLines script + ''
|
||||
finally:
|
||||
machine.shutdown()
|
||||
'';
|
||||
|
||||
inherit meta;
|
||||
};
|
||||
|
@ -1,71 +0,0 @@
|
||||
{ system ? builtins.currentSystem,
|
||||
config ? {},
|
||||
pkgs ? import ../../.. { inherit system config; }
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (import ../../lib/testing-python.nix { inherit system pkgs; }) makeTest;
|
||||
f = backend: makeTest {
|
||||
name = "ihatemoney-${backend}";
|
||||
nodes.machine = { nodes, lib, ... }: {
|
||||
services.ihatemoney = {
|
||||
enable = true;
|
||||
enablePublicProjectCreation = true;
|
||||
secureCookie = false;
|
||||
inherit backend;
|
||||
uwsgiConfig = {
|
||||
http = ":8000";
|
||||
};
|
||||
};
|
||||
boot.tmp.cleanOnBoot = true;
|
||||
# for exchange rates
|
||||
security.pki.certificateFiles = [ ./server.crt ];
|
||||
networking.extraHosts = "127.0.0.1 api.exchangerate.host";
|
||||
services.nginx = {
|
||||
enable = true;
|
||||
virtualHosts."api.exchangerate.host" = {
|
||||
addSSL = true;
|
||||
# openssl req -x509 -newkey rsa:4096 -keyout server.key -out server.crt -days 1000000 -nodes -subj '/CN=api.exchangerate.host'
|
||||
sslCertificate = ./server.crt;
|
||||
sslCertificateKey = ./server.key;
|
||||
locations."/".return = "200 '${builtins.readFile ./rates.json}'";
|
||||
};
|
||||
};
|
||||
# ihatemoney needs a local smtp server otherwise project creation just crashes
|
||||
services.postfix.enable = true;
|
||||
};
|
||||
testScript = ''
|
||||
machine.wait_for_open_port(8000)
|
||||
machine.wait_for_unit("uwsgi.service")
|
||||
machine.wait_until_succeeds("curl --fail https://api.exchangerate.host")
|
||||
machine.wait_until_succeeds("curl --fail http://localhost:8000")
|
||||
|
||||
result = machine.succeed(
|
||||
"curl --fail -X POST http://localhost:8000/api/projects -d 'name=yay&id=yay&password=yay&contact_email=yay@example.com&default_currency=XXX'"
|
||||
)
|
||||
assert '"yay"' in result, repr(result)
|
||||
owner, timestamp = machine.succeed(
|
||||
"stat --printf %U:%G___%Y /var/lib/ihatemoney/secret_key"
|
||||
).split("___")
|
||||
assert "ihatemoney:ihatemoney" == owner
|
||||
|
||||
with subtest("Restart machine and service"):
|
||||
machine.shutdown()
|
||||
machine.start()
|
||||
machine.wait_for_open_port(8000)
|
||||
machine.wait_for_unit("uwsgi.service")
|
||||
|
||||
with subtest("check that the database is really persistent"):
|
||||
machine.succeed("curl --fail --basic -u yay:yay http://localhost:8000/api/projects/yay")
|
||||
|
||||
with subtest("check that the secret key is really persistent"):
|
||||
timestamp2 = machine.succeed("stat --printf %Y /var/lib/ihatemoney/secret_key")
|
||||
assert timestamp == timestamp2
|
||||
|
||||
assert "ihatemoney" in machine.succeed("curl --fail http://localhost:8000")
|
||||
'';
|
||||
};
|
||||
in {
|
||||
ihatemoney-sqlite = f "sqlite";
|
||||
ihatemoney-postgresql = f "postgresql";
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
{
|
||||
"rates": {
|
||||
"CAD": 1.3420055134,
|
||||
"HKD": 7.7513783598,
|
||||
"ISK": 135.9407305307,
|
||||
"PHP": 49.3762922123,
|
||||
"DKK": 6.4126464507,
|
||||
"HUF": 298.9145416954,
|
||||
"CZK": 22.6292212267,
|
||||
"GBP": 0.7838128877,
|
||||
"RON": 4.1630771881,
|
||||
"SEK": 8.8464851826,
|
||||
"IDR": 14629.5658166782,
|
||||
"INR": 74.8328738801,
|
||||
"BRL": 5.2357856651,
|
||||
"RUB": 71.8416609235,
|
||||
"HRK": 6.4757064094,
|
||||
"JPY": 106.2715368711,
|
||||
"THB": 31.7203652653,
|
||||
"CHF": 0.9243625086,
|
||||
"EUR": 0.8614748449,
|
||||
"MYR": 4.2644727774,
|
||||
"BGN": 1.6848725017,
|
||||
"TRY": 6.8483804273,
|
||||
"CNY": 7.0169710544,
|
||||
"NOK": 9.213731909,
|
||||
"NZD": 1.5080978635,
|
||||
"ZAR": 16.7427636113,
|
||||
"USD": 1,
|
||||
"MXN": 22.4676085458,
|
||||
"SGD": 1.3855099931,
|
||||
"AUD": 1.4107512061,
|
||||
"ILS": 3.4150585803,
|
||||
"KRW": 1203.3339076499,
|
||||
"PLN": 3.794452102
|
||||
},
|
||||
"base": "USD",
|
||||
"date": "2020-07-24"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEvjCCAqYCCQDkTQrENPCZjjANBgkqhkiG9w0BAQsFADAgMR4wHAYDVQQDDBVh
|
||||
cGkuZXhjaGFuZ2VyYXRlLmhvc3QwIBcNMjEwNzE0MTI1MzQ0WhgPNDc1OTA2MTEx
|
||||
MjUzNDRaMCAxHjAcBgNVBAMMFWFwaS5leGNoYW5nZXJhdGUuaG9zdDCCAiIwDQYJ
|
||||
KoZIhvcNAQEBBQADggIPADCCAgoCggIBAL5zpwUYa/ySqvJ/PUnXYsl1ww5SNGJh
|
||||
NujCRxC0Gw+5t5O7USSHRdz7Eb2PNFMa7JR+lliLAWdjHfqPXJWmP10X5ebvyxeQ
|
||||
TJkR1HpDSY6TQQlJvwr/JNGryyoQYjXvnyeyVu4TS3U0TTI631OonDAj+HbFIs9L
|
||||
gr/HfHzFmxRVLwaJ7hebanihc5RzoWTxgswiOwYQu5AivXQqcvUIxELeT7CxWwiw
|
||||
be/SlalDgoezB/poqaa215FUuN2av+nTn+swH3WOi9kwePLgVKn9BnDMwyh8et13
|
||||
yt27RWCSOcZagRSYsSbBaEJbClZvnuYvDqooJEy0GVbGBZpClKRKe92yd0PTf3ZJ
|
||||
GupyNoCFQlGugY//WLrsPv/Q4WwP+qZ6t97sV0CdM+epKVde/LfPKn+tFMv86qIg
|
||||
Q/uGHdDwUI8XH2EysAavhdlssSrovmpl4hyo9UkzTWfJgAbmOZY3Vba41wsq12FT
|
||||
usDsswGLBD10MdXWltR/Hdk8OnosLmeJxfZODAv31KSfd+4b6Ntr9BYQvAQSO+1/
|
||||
Mf7gEQtNhO003VKIyV5cpH4kVQieEcvoEKgq32NVBSKVf6UIPWIefu19kvrttaUu
|
||||
Q2QW2Qm4Ph/4cWpxl0jcrN5rjmgaBtIMmKYjRIS0ThDWzfVkJdmJuATzExJAplLN
|
||||
nYPBG3gOtQQpAgMBAAEwDQYJKoZIhvcNAQELBQADggIBAJzt/aN7wl88WrvBasVi
|
||||
fSJmJjRaW2rYyBUMptQNkm9ElHN2eQQxJgLi8+9ArQxuGKhHx+D1wMGF8w2yOp0j
|
||||
4atfbXDcT+cTQY55qdEeYgU8KhESHHGszGsUpv7hzU2cACZiXG0YbOmORFYcn49Z
|
||||
yPyN98kW8BViLzNF9v+I/NJPuaaCeWKjXCqY2GCzddiuotrlLtz0CODXZJ506I1F
|
||||
38vQgZb10yAe6+R4y0BK7sUlmfr9BBqVcDQ/z74Kph1aB32zwP8KrNitwG1Tyk6W
|
||||
rxD1dStEQyX8uDPAspe2JrToMWsOMje9F5lotmuzyvwRJYfAav300EtIggBqpiHR
|
||||
o0P/1xxBzmaCHxEUJegdoYg8Q27llqsjR2T78uv/BlxpX9Dv5kNex5EZThKqyz4a
|
||||
Fn1VqiA3D9IsvxH4ud+8eDaP24u1yYObSTDIBsw9xDvoV8fV+NWoNNhcAL5GwC0P
|
||||
Goh7/brZSHUprxGpwRB524E//8XmCsRd/+ShtXbi4gEODMH4xLdkD7fZIJC4eG1H
|
||||
GOVc1MwjiYvbQlPs6MOcQ0iKQneSlaEJmyyO5Ro5OKiKj89Az/mLYX3R17AIsu0T
|
||||
Q5pGcmhKVRyu0zXvkGfK352TLwoe+4vbmakDq21Pkkcy8V9M4wP+vpCfQkg1REQ1
|
||||
+mr1Vg+SFya3mlCxpFTy3j8E
|
||||
-----END CERTIFICATE-----
|
@ -1,52 +0,0 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
NaEkKVO0D0jFtk37s/YqJpCsXg/B7yc=
|
||||
-----END PRIVATE KEY-----
|
@ -27,13 +27,19 @@ let
|
||||
inherit pkgs config;
|
||||
lib = pkgs.lib;
|
||||
format = "qcow2";
|
||||
contents = [{
|
||||
source = pkgs.writeText "testFile" "contents";
|
||||
target = "/testFile";
|
||||
user = "1234";
|
||||
group = "5678";
|
||||
mode = "755";
|
||||
}];
|
||||
contents = [
|
||||
{
|
||||
source = pkgs.writeText "testFile" "contents";
|
||||
target = "/testFile";
|
||||
user = "1234";
|
||||
group = "5678";
|
||||
mode = "755";
|
||||
}
|
||||
{
|
||||
source = ./.;
|
||||
target = "/testDir";
|
||||
}
|
||||
];
|
||||
}) + "/nixos.qcow2";
|
||||
|
||||
in makeEc2Test {
|
||||
@ -42,10 +48,15 @@ in makeEc2Test {
|
||||
userData = null;
|
||||
script = ''
|
||||
machine.start()
|
||||
# Test that if contents includes a file, it is copied to the target.
|
||||
assert "content" in machine.succeed("cat /testFile")
|
||||
fileDetails = machine.succeed("ls -l /testFile")
|
||||
assert "1234" in fileDetails
|
||||
assert "5678" in fileDetails
|
||||
assert "rwxr-xr-x" in fileDetails
|
||||
|
||||
# Test that if contents includes a directory, it is copied to the target.
|
||||
dirList = machine.succeed("ls /testDir")
|
||||
assert "image-contents.nix" in dirList
|
||||
'';
|
||||
}
|
||||
|
@ -16,13 +16,13 @@ assert pcreSupport -> pcre != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ncmpc";
|
||||
version = "0.47";
|
||||
version = "0.48";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MusicPlayerDaemon";
|
||||
repo = "ncmpc";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-7vywLMiIUfRx9/fCmUH1AGUB63bT8z7wabgm3CuLLUs=";
|
||||
sha256 = "sha256-89hBaWFwMPBqSWDmsXND0PEc1a9Fte+p1ho5tWuZFlY=";
|
||||
};
|
||||
|
||||
buildInputs = [ glib ncurses libmpdclient boost ]
|
||||
|
@ -18,16 +18,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ludusavi";
|
||||
version = "0.15.0";
|
||||
version = "0.17.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mtkennerly";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-3nh1EhjiH+dUBw3CNeFSg/+Wkxr5AYgVdM1HzVKbqJI=";
|
||||
sha256 = "sha256-LTqorrZ7hp9hFGcQ0rdc/U6st9YraXEftDpH7VEShs8=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-l9jYqmKC0GJL9MSRbrNng4rO6/dx4q8EVCxfuin4v6E=";
|
||||
cargoSha256 = "sha256-3SijgvIPb+QBAWZaTivw8P5aYjctGfgnVrFYcGl8PyE=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
@ -16,15 +16,16 @@
|
||||
, openimajgrabber
|
||||
, hwi
|
||||
, imagemagick
|
||||
, gzip
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "sparrow";
|
||||
version = "1.7.3";
|
||||
version = "1.7.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-x86_64.tar.gz";
|
||||
sha256 = "sha256-/tKct73v0zWAjY4kTllnb/+SB/8ENgVl8Yh/LErKTxY=";
|
||||
sha256 = "08ircrc93gsf3vgqn07gjwmy4bs3jds9rg184pihyymm7g9girfb";
|
||||
};
|
||||
|
||||
launcher = writeScript "sparrow" ''
|
||||
@ -93,7 +94,7 @@ let
|
||||
sparrow-modules = stdenv.mkDerivation {
|
||||
pname = "sparrow-modules";
|
||||
inherit version src;
|
||||
nativeBuildInputs = [ makeWrapper gnugrep openjdk autoPatchelfHook stdenv.cc.cc.lib zlib ];
|
||||
nativeBuildInputs = [ makeWrapper gzip gnugrep openjdk autoPatchelfHook stdenv.cc.cc.lib zlib ];
|
||||
|
||||
buildPhase = ''
|
||||
# Extract Sparrow's JIMAGE and generate a list of them.
|
||||
@ -143,9 +144,9 @@ let
|
||||
|
||||
# Replace the embedded Tor binary (which is in a Tar archive)
|
||||
# with one from Nixpkgs.
|
||||
cp ${torWrapper} ./tor
|
||||
tar -cJf tor.tar.xz tor
|
||||
cp tor.tar.xz modules/netlayer.jpms/native/linux/x64/tor.tar.xz
|
||||
gzip -c ${torWrapper} > tor.gz
|
||||
cp tor.gz modules/kmp.tor.binary.linuxx64/kmptor/linux/x64/tor.gz
|
||||
find modules
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
@ -158,7 +159,8 @@ let
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
inherit pname version src;
|
||||
inherit version src;
|
||||
pname = "sparrow-unwrapped";
|
||||
nativeBuildInputs = [ makeWrapper copyDesktopItems ];
|
||||
|
||||
desktopItems = [
|
||||
|
@ -1,9 +1,9 @@
|
||||
{ lib
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, sparrow-unwrapped
|
||||
}:
|
||||
|
||||
buildFHSUserEnv {
|
||||
buildFHSEnv {
|
||||
name = "sparrow";
|
||||
|
||||
runScript = "${sparrow-unwrapped}/bin/sparrow";
|
||||
|
@ -23,4 +23,4 @@ sha256sum -c --ignore-missing manifest.txt
|
||||
sha256=$(nix-prefetch-url --type sha256 "file://$PWD/$depname")
|
||||
popd
|
||||
|
||||
update-source-version sparrow "$version" "$sha256"
|
||||
update-source-version sparrow-unwrapped "$version" "$sha256"
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
{ alsa-lib
|
||||
, bash
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, cacert
|
||||
, coreutils
|
||||
, dbus
|
||||
@ -178,7 +178,7 @@ let
|
||||
# Android Studio downloads prebuilt binaries as part of the SDK. These tools
|
||||
# (e.g. `mksdcard`) have `/lib/ld-linux.so.2` set as the interpreter. An FHS
|
||||
# environment is used as a work around for that.
|
||||
fhsEnv = buildFHSUserEnv {
|
||||
fhsEnv = buildFHSEnv {
|
||||
name = "${drvName}-fhs-env";
|
||||
multiPkgs = pkgs: [
|
||||
ncurses5
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ callPackage, makeFontsConf, gnome2, buildFHSUserEnv, tiling_wm ? false }:
|
||||
{ callPackage, makeFontsConf, gnome2, buildFHSEnv, tiling_wm ? false }:
|
||||
|
||||
let
|
||||
mkStudio = opts: callPackage (import ./common.nix opts) {
|
||||
@ -6,7 +6,7 @@ let
|
||||
fontDirectories = [];
|
||||
};
|
||||
inherit (gnome2) GConf gnome_vfs;
|
||||
inherit buildFHSUserEnv;
|
||||
inherit buildFHSEnv;
|
||||
inherit tiling_wm;
|
||||
};
|
||||
stableVersion = {
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, lib, buildFHSUserEnv, callPackage, makeDesktopItem, writeScript
|
||||
{ stdenv, lib, buildFHSEnvChroot, callPackage, makeDesktopItem, writeScript
|
||||
, supportedDevices ? [ "Arria II" "Cyclone V" "Cyclone IV" "Cyclone 10 LP" "MAX II/V" "MAX 10 FPGA" ]
|
||||
, unwrapped ? callPackage ./quartus.nix { inherit supportedDevices; }
|
||||
}:
|
||||
@ -13,7 +13,7 @@ let
|
||||
categories = [ "Development" ];
|
||||
};
|
||||
# I think modelsim_ase/linux/vlm checksums itself, so use FHSUserEnv instead of `patchelf`
|
||||
in buildFHSUserEnv rec {
|
||||
in buildFHSEnvChroot rec {
|
||||
name = "quartus-prime-lite"; # wrapped
|
||||
|
||||
targetPkgs = pkgs: with pkgs; [
|
||||
@ -44,7 +44,7 @@ in buildFHSUserEnv rec {
|
||||
xorg.libXext
|
||||
xorg.libXrender
|
||||
libudev0-shim
|
||||
libxcrypt
|
||||
libxcrypt-legacy
|
||||
];
|
||||
|
||||
passthru = { inherit unwrapped; };
|
||||
|
@ -3286,6 +3286,9 @@ let
|
||||
};
|
||||
|
||||
aliases = super: {
|
||||
_1Password = super."1Password";
|
||||
_2gua = super."2gua";
|
||||
_4ops = super."4ops";
|
||||
Arjun.swagger-viewer = super.arjun.swagger-viewer;
|
||||
jakebecker.elixir-ls = super.elixir-lsp.vscode-elixir-ls;
|
||||
jpoissonnier.vscode-styled-components = super.styled-components.vscode-styled-components;
|
||||
@ -3294,9 +3297,6 @@ let
|
||||
ms-vscode.PowerShell = super.ms-vscode.powershell;
|
||||
rioj7.commandOnAllFiles = super.rioj7.commandonallfiles;
|
||||
WakaTime.vscode-wakatime = super.wakatime.vscode-wakatime;
|
||||
_1Password = throw ''_1Password has been replaced with "1Password"'';
|
||||
_2gua = throw ''_2gua has been replaced with "2gua"'';
|
||||
_4ops = throw ''_4ops has been replaced with "4ops"'';
|
||||
};
|
||||
|
||||
# TODO: add overrides overlay, so that we can have a generated.nix
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ stdenv, lib, makeDesktopItem
|
||||
, unzip, libsecret, libXScrnSaver, libxshmfence, buildPackages
|
||||
, atomEnv, at-spi2-atk, autoPatchelfHook
|
||||
, systemd, fontconfig, libdbusmenu, glib, buildFHSUserEnvBubblewrap, wayland
|
||||
, systemd, fontconfig, libdbusmenu, glib, buildFHSEnv, wayland
|
||||
|
||||
# Populate passthru.tests
|
||||
, tests
|
||||
@ -150,9 +150,9 @@ let
|
||||
# in order to create or update extensions.
|
||||
# See: #83288 #91179 #73810 #41189
|
||||
#
|
||||
# buildFHSUserEnv allows for users to use the existing vscode
|
||||
# buildFHSEnv allows for users to use the existing vscode
|
||||
# extension tooling without significant pain.
|
||||
fhs = { additionalPkgs ? pkgs: [] }: buildFHSUserEnvBubblewrap {
|
||||
fhs = { additionalPkgs ? pkgs: [] }: buildFHSEnv {
|
||||
# also determines the name of the wrapped command
|
||||
name = executableName;
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, SDL2
|
||||
, SDL2_image
|
||||
, SDL2_net
|
||||
@ -39,6 +40,25 @@ stdenv.mkDerivation (self: {
|
||||
hash = "sha256-I90poBeLSq1c8PXyjrx7/UcbfqFNnnNiXfJdWhLPGMc=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Pull missind SDL2_net dependency:
|
||||
# https://github.com/dosbox-staging/dosbox-staging/pull/2358
|
||||
(fetchpatch {
|
||||
name = "sdl2-net.patch";
|
||||
url = "https://github.com/dosbox-staging/dosbox-staging/commit/1b02f187a39263f4b0285323dcfe184bccd749c2.patch";
|
||||
hash = "sha256-Ev97xApInu6r5wvI9Q7FhkSXqtMW/rwJj48fExvqnT0=";
|
||||
})
|
||||
|
||||
# Pull missing SDL2_image dependency:
|
||||
# https://github.com/dosbox-staging/dosbox-staging/pull/2239
|
||||
(fetchpatch {
|
||||
name = "sdl2-image.patch";
|
||||
url = "https://github.com/dosbox-staging/dosbox-staging/commit/ca8b7a906d29a3f8ce956c4af7dc829a6ac3e229.patch";
|
||||
hash = "sha256-WtTVSWWSlfXrdPVsnlDe4P5K/Fnj4QsOzx3Wo/Kusmg=";
|
||||
includes = [ "src/gui/meson.build" ];
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
copyDesktopItems
|
||||
gtest
|
||||
@ -69,11 +89,6 @@ stdenv.mkDerivation (self: {
|
||||
speexdsp
|
||||
];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = toString [
|
||||
"-I${SDL2_image}/include/SDL2"
|
||||
"-I${SDL2_net}/include/SDL2"
|
||||
];
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "dosbox-staging";
|
||||
|
@ -24,13 +24,13 @@
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "duckstation";
|
||||
version = "unstable-2023-01-01";
|
||||
version = "unstable-2023-04-14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stenzek";
|
||||
repo = "duckstation";
|
||||
rev = "06d6447e59f208f21ba42f4df1665b789db13fb7";
|
||||
sha256 = "sha256-DyuQ7J7MVSQHpvPZhMtwqNM8ifjI8UFYQ9SxY5kikBI=";
|
||||
rev = "5fee6f5abee7f3aad65da5523e57896e10e2a53a";
|
||||
sha256 = "sha256-sRs/b4GVXhF3zrOef8DSBKJJGYECUER/nNWZAqv7suA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -21,13 +21,13 @@ assert withNerdIcons -> withIcons == false;
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "nnn";
|
||||
version = "4.7";
|
||||
version = "4.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jarun";
|
||||
repo = "nnn";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-ttG0aEqMlNyJaMhcVfrxbxlrhr1GSydrV58CYSq4CTM=";
|
||||
hash = "sha256-QbKW2wjhUNej3zoX18LdeUHqjNLYhEKyvPH2MXzp/iQ=";
|
||||
};
|
||||
|
||||
configFile = lib.optionalString (conf != null) (builtins.toFile "nnn.h" conf);
|
||||
|
@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "brlcad";
|
||||
version = "7.34.0";
|
||||
version = "7.34.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "BRL-CAD";
|
||||
repo = pname;
|
||||
rev = "refs/tags/rel-${lib.replaceStrings [ "." ] [ "-" ] version}";
|
||||
hash = "sha256-Re5gEXlqdPxniaEP13Q0v0O9rt40V5NrxoUpcNBwn7s=";
|
||||
hash = "sha256-oafu255xElEIk8p4yvNyR2maykUfxQui/L5MkicA+JA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -22,7 +22,7 @@
|
||||
, mkDerivation
|
||||
, xkeyboard_config
|
||||
, fetchurl
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, openal
|
||||
, makeDesktopItem
|
||||
}:
|
||||
@ -94,9 +94,9 @@ let
|
||||
in
|
||||
|
||||
# We can patch the "/bin/superposition", but "/bin/launcher" checks it for changes.
|
||||
# For that we need use a buildFHSUserEnv.
|
||||
# For that we need use a buildFHSEnv.
|
||||
|
||||
buildFHSUserEnv {
|
||||
buildFHSEnv {
|
||||
name = "Superposition";
|
||||
|
||||
targetPkgs = pkgs: [
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ lib
|
||||
, buildFHSUserEnvBubblewrap
|
||||
, buildFHSEnv
|
||||
, symlinkJoin
|
||||
, bottles-unwrapped
|
||||
, gst_all_1
|
||||
@ -99,8 +99,8 @@ in
|
||||
symlinkJoin {
|
||||
name = "bottles";
|
||||
paths = [
|
||||
(buildFHSUserEnvBubblewrap (fhsEnv // { name = "bottles"; runScript = "bottles"; }))
|
||||
(buildFHSUserEnvBubblewrap (fhsEnv // { name = "bottles-cli"; runScript = "bottles-cli"; }))
|
||||
(buildFHSEnv (fhsEnv // { name = "bottles"; runScript = "bottles"; }))
|
||||
(buildFHSEnv (fhsEnv // { name = "bottles-cli"; runScript = "bottles-cli"; }))
|
||||
];
|
||||
postBuild = ''
|
||||
mkdir -p $out/share
|
||||
|
@ -10,11 +10,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "haunt";
|
||||
version = "0.2.4";
|
||||
version = "0.2.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://files.dthompson.us/${pname}/${pname}-${version}.tar.gz";
|
||||
hash = "sha256-zOkICg7KmJJhPWPtJRT3C9sYB1Oig1xLtgPNGe0n3xQ=";
|
||||
hash = "sha256-vPKLQ9hDJdimEAXwIBGgRRlefM8/77xFQoI+0J/lkNs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -27,7 +27,8 @@ stdenv.mkDerivation rec {
|
||||
guile-reader
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
# Test suite is non-determinisitic in later versions
|
||||
doCheck = false;
|
||||
|
||||
postInstall =
|
||||
let
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ lib, stdenv, writeScript, callPackage, buildFHSUserEnv, unwrapped ? callPackage ./runtime.nix {} }:
|
||||
{ lib, stdenv, writeScript, callPackage, buildFHSEnv, unwrapped ? callPackage ./runtime.nix {} }:
|
||||
|
||||
buildFHSUserEnv rec {
|
||||
buildFHSEnv rec {
|
||||
name = "houdini-${unwrapped.version}";
|
||||
|
||||
targetPkgs = pkgs: with pkgs; [
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, buildFHSUserEnv, lutris-unwrapped
|
||||
{ lib, buildFHSEnv, lutris-unwrapped
|
||||
, extraPkgs ? pkgs: [ ]
|
||||
, extraLibraries ? pkgs: [ ]
|
||||
, steamSupport ? true
|
||||
@ -13,7 +13,7 @@ let
|
||||
libXxf86vm libXinerama libSM libXv libXaw libXi libXcursor libXcomposite
|
||||
];
|
||||
|
||||
in buildFHSUserEnv {
|
||||
in buildFHSEnv {
|
||||
name = "lutris";
|
||||
|
||||
runScript = "lutris";
|
||||
|
@ -5,7 +5,8 @@
|
||||
, version
|
||||
, desktopName
|
||||
, longDescription
|
||||
, buildFHSUserEnv
|
||||
, broken ? false
|
||||
, buildFHSEnv
|
||||
, extraBuildInputs ? [ ]
|
||||
, jdk
|
||||
, stdenv
|
||||
@ -68,7 +69,7 @@ let
|
||||
|
||||
in
|
||||
# Package with cups in FHS sandbox, because JAVA bin expects "/usr/bin/lpr" for printing.
|
||||
buildFHSUserEnv {
|
||||
buildFHSEnv {
|
||||
name = pname;
|
||||
targetPkgs = pkgs: [
|
||||
cups
|
||||
@ -94,6 +95,7 @@ buildFHSUserEnv {
|
||||
];
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
inherit broken;
|
||||
mainProgram = pname;
|
||||
maintainers = [ maintainers.pwoelfel ];
|
||||
};
|
||||
|
@ -40,6 +40,8 @@ in
|
||||
sha256 = "sha256-cc8YjrMsYZqgmwp5+AA+HsqzjxzFcTT/ga31NQz/OWc=";
|
||||
};
|
||||
jdk = jdk11;
|
||||
|
||||
broken = true; # Bad hash, probably unstable
|
||||
};
|
||||
|
||||
pdfstudio2021 = callPackage ./common.nix rec {
|
||||
@ -66,5 +68,7 @@ in
|
||||
(lib.getLib stdenv.cc.cc) # for libstdc++.so.6 and libgomp.so.1
|
||||
];
|
||||
jdk = jdk17;
|
||||
|
||||
broken = true; # URL 404s, probably unstable
|
||||
};
|
||||
}.${pname}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, lib, fetchurl, buildFHSUserEnv, makeDesktopItem, makeWrapper, atomEnv, libuuid, at-spi2-atk, icu, openssl, zlib }:
|
||||
{ stdenv, lib, fetchurl, buildFHSEnv, makeDesktopItem, makeWrapper, atomEnv, libuuid, at-spi2-atk, icu, openssl, zlib }:
|
||||
let
|
||||
pname = "sidequest";
|
||||
version = "0.10.24";
|
||||
@ -38,7 +38,7 @@
|
||||
"$out/lib/SideQuest/sidequest"
|
||||
'';
|
||||
};
|
||||
in buildFHSUserEnv {
|
||||
in buildFHSEnv {
|
||||
name = "SideQuest";
|
||||
|
||||
passthru = {
|
||||
|
@ -1,5 +1,6 @@
|
||||
{ mkDerivation
|
||||
, lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, substituteAll
|
||||
, qtbase
|
||||
@ -14,11 +15,12 @@
|
||||
, kio
|
||||
, plasma-framework
|
||||
, qttools
|
||||
, iconv
|
||||
, webviewSupport ? true
|
||||
, jsSupport ? true
|
||||
, kioPluginSupport ? true
|
||||
, plasmoidSupport ? true
|
||||
, systemdSupport ? true
|
||||
, kioPluginSupport ? stdenv.isLinux
|
||||
, plasmoidSupport ? stdenv.isLinux
|
||||
, systemdSupport ? stdenv.isLinux
|
||||
/* It is possible to set via this option an absolute exec path that will be
|
||||
written to the `~/.config/autostart/syncthingtray.desktop` file generated
|
||||
during runtime. Alternatively, one can edit the desktop file themselves after
|
||||
@ -44,7 +46,7 @@ mkDerivation rec {
|
||||
qtutilities
|
||||
boost
|
||||
qtforkawesome
|
||||
]
|
||||
] ++ lib.optionals stdenv.isDarwin [ iconv ]
|
||||
++ lib.optionals webviewSupport [ qtwebengine ]
|
||||
++ lib.optionals jsSupport [ qtdeclarative ]
|
||||
++ lib.optionals kioPluginSupport [ kio ]
|
||||
@ -59,7 +61,8 @@ mkDerivation rec {
|
||||
;
|
||||
|
||||
# No tests are available by upstream, but we test --help anyway
|
||||
doInstallCheck = true;
|
||||
# Don't test on Darwin because output is .app
|
||||
doInstallCheck = !stdenv.isDarwin;
|
||||
installCheckPhase = ''
|
||||
$out/bin/syncthingtray --help | grep ${version}
|
||||
'';
|
||||
@ -79,6 +82,6 @@ mkDerivation rec {
|
||||
description = "Tray application and Dolphin/Plasma integration for Syncthing";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ doronbehar ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
@ -29,6 +29,9 @@ stdenv.mkDerivation {
|
||||
# https://github.com/SerenityOS/serenity/issues/17062
|
||||
substituteInPlace main.cpp \
|
||||
--replace "./SQLServer/SQLServer" "$out/bin/SQLServer"
|
||||
# https://github.com/SerenityOS/serenity/issues/10055
|
||||
substituteInPlace ../Meta/Lagom/CMakeLists.txt \
|
||||
--replace "@rpath" "$out/lib"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -49,13 +52,7 @@ stdenv.mkDerivation {
|
||||
"-DENABLE_UNICODE_DATABASE_DOWNLOAD=false"
|
||||
];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = toString ([
|
||||
"-Wno-error"
|
||||
] ++ lib.optionals (stdenv.isDarwin && lib.versionOlder stdenv.targetPlatform.darwinSdkVersion "11.0") [
|
||||
# error: use of undeclared identifier 'aligned_alloc'
|
||||
"-include mm_malloc.h"
|
||||
"-Daligned_alloc=_mm_malloc"
|
||||
]);
|
||||
env.NIX_CFLAGS_COMPILE = "-Wno-error";
|
||||
|
||||
# https://github.com/SerenityOS/serenity/issues/10055
|
||||
postInstall = lib.optionalString stdenv.isDarwin ''
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, buildFHSUserEnvBubblewrap
|
||||
, buildFHSEnv
|
||||
, copyDesktopItems
|
||||
, dpkg
|
||||
, lndir
|
||||
@ -40,7 +40,7 @@ let
|
||||
mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ];
|
||||
};
|
||||
|
||||
fhs = buildFHSUserEnvBubblewrap {
|
||||
fhs = buildFHSEnv {
|
||||
name = "packettracer7";
|
||||
runScript = "${ptFiles}/bin/packettracer7";
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
, lib
|
||||
, alsa-lib
|
||||
, autoPatchelfHook
|
||||
, buildFHSUserEnvBubblewrap
|
||||
, buildFHSEnv
|
||||
, copyDesktopItems
|
||||
, dbus
|
||||
, dpkg
|
||||
@ -97,7 +97,7 @@ let
|
||||
mimeTypes = [ "application/x-pkt" "application/x-pka" "application/x-pkz" ];
|
||||
};
|
||||
|
||||
fhs = buildFHSUserEnvBubblewrap {
|
||||
fhs = buildFHSEnv {
|
||||
name = "packettracer8";
|
||||
runScript = "${ptFiles}/bin/packettracer";
|
||||
targetPkgs = pkgs: [ libudev0-shim ];
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
let
|
||||
pname = "openlens";
|
||||
version = "6.4.5";
|
||||
version = "6.4.15";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/MuhammedKalkan/OpenLens/releases/download/v${version}/OpenLens-${version}.x86_64.AppImage";
|
||||
sha256 = "sha256-Lwl4unhXSyYCEImiPncAnmIQt26CD4horsREMyi6nuA=";
|
||||
sha256 = "sha256-Q7Vh+/SKbnQ7HbDlx1XqBXg1U2DaIvY139VrIIdOX5E=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, lib, buildFHSUserEnv, writeScript, makeDesktopItem }:
|
||||
{ stdenv, lib, buildFHSEnv, writeScript, makeDesktopItem }:
|
||||
|
||||
let platforms = [ "i686-linux" "x86_64-linux" ]; in
|
||||
|
||||
@ -30,7 +30,7 @@ let
|
||||
};
|
||||
in
|
||||
|
||||
buildFHSUserEnv {
|
||||
buildFHSEnv {
|
||||
name = "dropbox";
|
||||
|
||||
targetPkgs = pkgs: with pkgs; with xorg; [
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ autoPatchelfHook
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, dpkg
|
||||
, fetchurl
|
||||
, inotify-tools
|
||||
@ -41,7 +41,7 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
expressvpndFHS = buildFHSUserEnv {
|
||||
expressvpndFHS = buildFHSEnv {
|
||||
name = "expressvpnd";
|
||||
|
||||
# When connected, it directly creates/deletes resolv.conf to change the DNS entries.
|
||||
|
@ -13,15 +13,16 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "1.10.0";
|
||||
# map of nix platform -> expected url platform
|
||||
platformMap = {
|
||||
x86_64-linux = "linux-x86";
|
||||
aarch64-linux = "linux-arm64";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.10.0";
|
||||
name = "fluffychat";
|
||||
stdenv.mkDerivation {
|
||||
inherit version;
|
||||
pname = "fluffychat";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://gitlab.com/api/v4/projects/16112282/packages/generic/fluffychat/${version}/fluffychat-${platformMap.${stdenv.hostPlatform.system}}.tar.gz";
|
||||
|
@ -0,0 +1,32 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, darwin
|
||||
, stdenv
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "iamb";
|
||||
version = "0.0.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ulyssa";
|
||||
repo = "iamb";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-KKr7dfFSffkFgqcREy/3RIIn5c5IxhFR7CjFJqCmqdM=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-/OBGRE9zualLnMh9Ikh9s9IE9b8mEmAC/H5KUids8a8=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.AppKit
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A Matrix client for Vim addicts";
|
||||
homepage = "https://github.com/ulyssa/iamb";
|
||||
changelog = "https://github.com/ulyssa/iamb/releases/tag/${src.rev}";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ meain ];
|
||||
};
|
||||
}
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "signal-cli";
|
||||
version = "0.11.7";
|
||||
version = "0.11.8";
|
||||
|
||||
# Building from source would be preferred, but is much more involved.
|
||||
src = fetchurl {
|
||||
url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}-Linux.tar.gz";
|
||||
hash = "sha256-oN80HQkPpJfhM4WBaRm4ytmhLjSokjEpfMhP6/XnQXs=";
|
||||
hash = "sha256-lpCPPYkT+q9oYR32rHUGTJI4TmTvy01ttpJxeTSGxVo=";
|
||||
};
|
||||
|
||||
buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
|
||||
|
@ -24,11 +24,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "liferea";
|
||||
version = "1.14.4";
|
||||
version = "1.14.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
|
||||
sha256 = "MD1Qx+4/y1wdIllHFPuthLZMLiMdox0FFpVE7tcdYu8=";
|
||||
sha256 = "IkTnjY9rbij0EaNVTWFJagEtX+E5L+G0dZeOz9jGEXc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -3,7 +3,7 @@
|
||||
# of applications.
|
||||
#
|
||||
# What Nix does, simplifying a bit, is that it extracts an AppImage and starts
|
||||
# it via buildFHSUserEnv - this is totally fine for majority of apps, but makes
|
||||
# it via buildFHSEnv - this is totally fine for majority of apps, but makes
|
||||
# it by-design *impossible* to launch SUID wrappers [^1]; in case of pCloud,
|
||||
# it's fusermount.
|
||||
# (so pCloud starts, but silently fails to mount the FUSE drive.)
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, fetchurl
|
||||
, gsettings-desktop-schemas
|
||||
, makeDesktopItem
|
||||
@ -57,7 +57,7 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
vmwareFHSUserEnv = name: buildFHSUserEnv {
|
||||
vmwareFHSUserEnv = name: buildFHSEnv {
|
||||
inherit name;
|
||||
|
||||
runScript = "${vmwareHorizonClientFiles}/bin/${name}_wrapper";
|
||||
|
3476
pkgs/applications/networking/warp/Cargo.lock
generated
3476
pkgs/applications/networking/warp/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -17,25 +17,24 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "warp";
|
||||
version = "0.4";
|
||||
version = "0.5.2";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "World";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-c8X0kedfM8DPTEQAbh8cXIfEvxG2cdUD3twVHs0/k7U";
|
||||
hash = "sha256-VtmLWbZXKTv+sjICnaBt2EPbtDwIVZym/PZdL2N7UQo=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs build-aux
|
||||
'';
|
||||
|
||||
cargoDeps = rustPlatform.importCargoLock {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"tempfile-3.3.0" = "sha256-zVbGZOEYEmOJGtl5Ko8rYIW9NY16lq5+zMzJ/TSkfsc=";
|
||||
};
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
name = "${pname}-${version}";
|
||||
hash = "sha256-NT6reZUsieqMTX7HW9QmrjcgBpqxZOUfzht9b7suNeY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ atk
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, cairo
|
||||
, dpkg
|
||||
, gdk-pixbuf
|
||||
@ -56,7 +56,7 @@ let
|
||||
${(wrapBinary libs) attrs.toolName}
|
||||
'';
|
||||
});
|
||||
in buildFHSUserEnv {
|
||||
in buildFHSEnv {
|
||||
name = "${attrs.toolName}-${attrs.version}";
|
||||
runScript = "${pkg.outPath}/bin/${attrs.toolName}";
|
||||
} // { inherit (pkg) meta name; }
|
||||
|
@ -16,28 +16,15 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "nvc";
|
||||
version = "1.9.0";
|
||||
version = "1.9.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nickg";
|
||||
repo = pname;
|
||||
rev = "r${version}";
|
||||
hash = "sha256-hsoEAFSXI2bvzZV33jdg1849fipPQlUu3MZVvht54fI=";
|
||||
hash = "sha256-UeA+6RKZMttLThyAf80ONximXRJNw5mUNM+cyCDTcGM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# TODO: remove me on next release
|
||||
(fetchpatch {
|
||||
url = "https://github.com/nickg/nvc/commit/c857e16c33851f8a5386b97bc0dada2836b5db83.patch";
|
||||
hash = "sha256-rvZHI1iQXT9zLpCugg5mGmMZBRbTe9PSHtDG7FVZ67Q=";
|
||||
})
|
||||
];
|
||||
|
||||
# TODO: recheck me on next release
|
||||
postPatch = lib.optionalString stdenv.isLinux ''
|
||||
sed -i "/vhpi4/d" test/regress/testlist.txt
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
check
|
||||
|
@ -1,13 +1,13 @@
|
||||
{ lib, stdenv, fetchurl, gmp, zlib }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
version = "4.3.0";
|
||||
version = "4.3.1";
|
||||
pname = "form";
|
||||
|
||||
# This tarball is released by author, it is not downloaded from tag, so can't use fetchFromGitHub
|
||||
src = fetchurl {
|
||||
url = "https://github.com/vermaseren/form/releases/download/v4.3.0/form-4.3.0.tar.gz";
|
||||
sha256 = "sha256-sjTg0JX3PssJBM3DsNjYMjqfp/RncKUvsiJnxiSq+/Y=";
|
||||
url = "https://github.com/vermaseren/form/releases/download/v4.3.1/form-4.3.1.tar.gz";
|
||||
sha256 = "sha256-8fUS3DT+m71rGfLf7wX8uZEt+0PINop1t5bsRy7ou84=";
|
||||
};
|
||||
|
||||
buildInputs = [ gmp zlib ];
|
||||
|
@ -60,6 +60,8 @@ stdenv.mkDerivation rec {
|
||||
substituteInPlace subprojects/libqalculate/libqalculate/Calculator-plot.cc \
|
||||
--replace 'commandline = "gnuplot"' 'commandline = "${gnuplot}/bin/gnuplot"' \
|
||||
--replace '"gnuplot - ' '"${gnuplot}/bin/gnuplot - '
|
||||
substituteInPlace subprojects/libqalculate/libqalculate/meson.build \
|
||||
--replace "link_with: 'libqalculate_lib_static'" "link_with: libqalculate_lib_static"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
@ -80,6 +82,5 @@ stdenv.mkDerivation rec {
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl3Plus;
|
||||
mainProgram = "com.github.parnold_x.nasc";
|
||||
broken = true; # at 2022-09-23
|
||||
};
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ lib, stdenv
|
||||
, autoPatchelfHook
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, dpkg
|
||||
, fetchurl
|
||||
, gcc-unwrapped
|
||||
@ -35,7 +35,7 @@ let
|
||||
installPhase = "cp -ar usr $out";
|
||||
};
|
||||
in
|
||||
buildFHSUserEnv {
|
||||
buildFHSEnv {
|
||||
name = fahclient.name;
|
||||
|
||||
targetPkgs = pkgs': [
|
||||
|
665
pkgs/applications/terminal-emulators/wezterm/Cargo.lock
generated
665
pkgs/applications/terminal-emulators/wezterm/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -31,14 +31,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "wezterm";
|
||||
version = "20230326-111934-3666303c";
|
||||
version = "20230408-112425-69ae8472";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wez";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-tgJUnQKVdLJKohda9oy9dwz53OiK4O0A9YlsI0o+meY=";
|
||||
hash = "sha256-Uk6I/JtSkGCQGG95DDD1hsu40X00/k5d44WP3OJ+rn4=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@ -52,7 +52,6 @@ rustPlatform.buildRustPackage rec {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"image-0.24.5" = "sha256-fTajVwm88OInqCPZerWcSAm1ga46ansQ3EzAmbT58Js=";
|
||||
"libssh-rs-0.1.7" = "sha256-pLaWKk/iGy7FfoVafpPYzErnKudxeIWzssWv2Zlm58s=";
|
||||
"xcb-imdkit-0.2.0" = "sha256-QOT9HLlA26DVPUF4ViKH2ckexUsu45KZMdJwoUhW+hA=";
|
||||
};
|
||||
};
|
||||
@ -136,6 +135,6 @@ rustPlatform.buildRustPackage rec {
|
||||
description = "GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust";
|
||||
homepage = "https://wezfurlong.org/wezterm";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ SuperSandro2000 ];
|
||||
maintainers = with maintainers; [ SuperSandro2000 mimame ];
|
||||
};
|
||||
}
|
||||
|
@ -25,11 +25,11 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "forgejo";
|
||||
version = "1.19.0-3";
|
||||
version = "1.19.1-0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://codeberg.org/forgejo/forgejo/releases/download/v${version}/forgejo-src-${version}.tar.gz";
|
||||
hash = "sha256-u27DDw3JUtVJ2nvkKfaGzpYP8bpRnwc1LUVra8Epkjc=";
|
||||
hash = "sha256-zoYEkUmJx7lt++2Rmjx/jgyZ2Y9uJH4k8VpD++My7mU=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "hut";
|
||||
version = "0.2.0";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~emersion";
|
||||
repo = "hut";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-g9KbOtZaBAgy/iBBh/Tv5ULJNnNzwzZpA6DOynl+dnk=";
|
||||
sha256 = "sha256-kr5EWQ3zHUp/oNPZV2d3j9AyoEmHEX8/rETiMKTBi3s=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-vuAx8B34Za+GEtekFOUaY07hBk3O2OaJ1JmulbIhwbs=";
|
||||
vendorHash = "sha256-aoqGb7g8UEC/ydmL3GbWGy3HDD1kfDJOMeUP4nO9waA=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
scdoc
|
||||
|
935
pkgs/applications/version-management/sapling/Cargo.lock
generated
935
pkgs/applications/version-management/sapling/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -43,7 +43,7 @@ let
|
||||
owner = "facebook";
|
||||
repo = "sapling";
|
||||
rev = version;
|
||||
hash = "sha256-e+S5gyyJF3bu6Yo+KjG2lLfjToYzzFj10GTcrPfzxDE=";
|
||||
hash = "sha256-rZLLRcZNeYP7yKAgBujqEJ9TwwDPAct060pZ4aj/7PM=";
|
||||
};
|
||||
|
||||
addonsSrc = "${src}/addons";
|
||||
@ -51,7 +51,7 @@ let
|
||||
# Fetches the Yarn modules in Nix to to be used as an offline cache
|
||||
yarnOfflineCache = fetchYarnDeps {
|
||||
yarnLock = "${addonsSrc}/yarn.lock";
|
||||
sha256 = "sha256-bJpfa1i3G5Ym5CLVpCt+7q5FNv34CoJBefXaf4qlxNA=";
|
||||
sha256 = "sha256-cEIij7hocCSPw1Q1ESI/t9IFmLM0Nbr/IjSz3HzBdzU=";
|
||||
};
|
||||
|
||||
# Builds the NodeJS server that runs with `sl web`
|
||||
@ -101,11 +101,10 @@ python3Packages.buildPythonApplication {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"abomonation-0.7.3+smallvec1" = "sha256-AxEXR6GC8gHjycIPOfoViP7KceM29p2ZISIt4iwJzvM=";
|
||||
"cloned-0.1.0" = "sha256-WHsvgnbAYrFx22p3rbMzlCIaZ8+BTsMswiTv4h+A/ZI=";
|
||||
"fb303_core-0.0.0" = "sha256-bg4+4kdHfgaEbLzkCftdLH++QKherIAfM7IzlWeOWKI=";
|
||||
"fbthrift-0.0.1+unstable" = "sha256-0qvab0a3PdvlOq2teXKjYrB9UbWLKzMbHgv/3LSsT+4=";
|
||||
"reqwest-0.11.11" = "sha256-uhc8XhkGW22XDNo0qreWdXeFF2cslOOZHfTRQ30IBcE=";
|
||||
"serde_bser-0.3.1" = "sha256-Sk3prRcLr2ExXvq7Px4+NRXbY8ZaRWOYexnaUAqQ4ao=";
|
||||
"cloned-0.1.0" = "sha256-54XxXSeGoS0j0+dDUC15xn1Hvpvl2T7NJ0dZ6/ZSd9s=";
|
||||
"fb303_core-0.0.0" = "sha256-YVPObJaxb5Giu3s70YP5syRSCmtijUK6y9g3UOzgrQU=";
|
||||
"fbthrift-0.0.1+unstable" = "sha256-sfn8EB1hbJGq/jFjgCrf9OyBpXmIBv5qlIsiao071Os=";
|
||||
"serde_bser-0.3.1" = "sha256-mrY6K6hoRo4exyZlStEIh8vuQdzd8XGkaR1MCEgKIP8=";
|
||||
};
|
||||
};
|
||||
postPatch = ''
|
||||
|
@ -73,6 +73,6 @@
|
||||
"url": "https://files.pythonhosted.org/packages/4c/76/1e41fbb365ad20b6efab2e61b0f4751518444c953b390f9b2d36cf97eea0/Cython-0.29.32.tar.gz"
|
||||
}
|
||||
],
|
||||
"version": "0.2.20230228-144002-h9440b05e",
|
||||
"versionHash": "6463510610610398322"
|
||||
"version": "0.2.20230330-193452-h69692651",
|
||||
"versionHash": "16853369111871393994"
|
||||
}
|
||||
|
@ -8,7 +8,7 @@
|
||||
, addOpenGLRunpath
|
||||
, libGLU
|
||||
, xorg
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, bash
|
||||
, writeText
|
||||
, ocl-icd
|
||||
@ -133,7 +133,7 @@ let
|
||||
}
|
||||
);
|
||||
in
|
||||
buildFHSUserEnv {
|
||||
buildFHSEnv {
|
||||
name = "davinci-resolve";
|
||||
targetPkgs = pkgs: with pkgs; [
|
||||
librsvg
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchurl, dpkg, makeWrapper, buildFHSUserEnv
|
||||
{ lib, stdenv, fetchurl, dpkg, makeWrapper, buildFHSEnv
|
||||
, gtk3, gdk-pixbuf, cairo, libjpeg_original, glib, pango, libGLU
|
||||
, libGL, nvidia_cg_toolkit, zlib, openssl, libuuid , alsa-lib, udev, libjack2
|
||||
}:
|
||||
@ -73,7 +73,7 @@ let
|
||||
};
|
||||
|
||||
# Lightworks expects some files in /usr/share/lightworks
|
||||
in buildFHSUserEnv {
|
||||
in buildFHSEnv {
|
||||
name = lightworks.name;
|
||||
|
||||
targetPkgs = pkgs: [
|
||||
|
@ -2,7 +2,7 @@
|
||||
## - export ELECTRON_SKIP_BINARY_DOWNLOAD=1
|
||||
## - jq "del(.scripts.preinstall)" node_modules/shellcheck/package.json | sponge node_modules/shellcheck/package.json
|
||||
{
|
||||
lib, stdenv, buildFHSUserEnvBubblewrap, runCommand, writeScript, fetchurl, fetchzip
|
||||
lib, stdenv, buildFHSEnv, runCommand, writeScript, fetchurl, fetchzip
|
||||
}:
|
||||
let
|
||||
pname = "webtorrent-desktop";
|
||||
@ -20,7 +20,7 @@ runCommand "${pname}-${version}" rec {
|
||||
else
|
||||
throw "Webtorrent is not currently supported on ${stdenv.hostPlatform.system}";
|
||||
|
||||
fhs = buildFHSUserEnvBubblewrap rec {
|
||||
fhs = buildFHSEnv rec {
|
||||
name = "fhsEnterWebTorrent";
|
||||
runScript = "${src}/WebTorrent";
|
||||
## use the trampoline, if you need to shell into the fhsenv
|
||||
|
@ -1,14 +1,14 @@
|
||||
{ lib, buildPythonApplication, fetchFromGitHub, python-dotenv, pyyaml }:
|
||||
|
||||
buildPythonApplication rec {
|
||||
version = "1.0.3";
|
||||
version = "1.0.6";
|
||||
pname = "podman-compose";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "podman-compose";
|
||||
owner = "containers";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Si/O4dx9bqqRp/hTv3WbTXj46OM+PpyPBnQQWUqcZfs=";
|
||||
sha256 = "sha256-TsNM5xORqwWge+UCijKptwbAcIz1uZFN9BuIOl28vIU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ pyyaml python-dotenv ];
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, fetchurl
|
||||
, lib
|
||||
, zlib
|
||||
@ -64,7 +64,7 @@ let
|
||||
'';
|
||||
});
|
||||
|
||||
vmware-unpack-env = buildFHSUserEnv rec {
|
||||
vmware-unpack-env = buildFHSEnv rec {
|
||||
name = "vmware-unpack-env";
|
||||
targetPkgs = pkgs: [ zlib ];
|
||||
};
|
||||
|
@ -15,16 +15,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "i3status-rust";
|
||||
version = "0.30.5";
|
||||
version = "0.30.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "greshake";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-7Fjz6Q/f6jocMPAcgeodzdImILKuRmF6V0zo00ZPfjI=";
|
||||
hash = "sha256-mxkwAKfra2btUa/l3TjJac68SmzyGwjmz4HD2yN/U8U=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-cHG3wUlk0AotfrQ8pYZNQDualhKSp6aNpY2mbjgnqzU=";
|
||||
cargoHash = "sha256-jJ9JrpEJyk3Cg7YCZadESR0+9vB+ZdTQhG2affoCdx4=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config makeWrapper ];
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
, libarchive
|
||||
, pv
|
||||
, squashfsTools
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, pkgs
|
||||
}:
|
||||
|
||||
@ -43,7 +43,7 @@ rec {
|
||||
extraPkgs,
|
||||
meta ? {},
|
||||
...
|
||||
}: buildFHSUserEnv
|
||||
}: buildFHSEnv
|
||||
(defaultFhsEnvArgs // {
|
||||
inherit name;
|
||||
|
||||
|
@ -166,7 +166,7 @@ stdenv.mkDerivation {
|
||||
|
||||
# If we are asked to wrap `gas` and this bintools has it,
|
||||
# then symlink it (`as` will be symlinked next).
|
||||
# This is mainly for the wrapped gnatboot on x86-64 Darwin,
|
||||
# This is mainly for the wrapped gnat-bootstrap on x86-64 Darwin,
|
||||
# as it must have both the GNU assembler from cctools (installed as `gas`)
|
||||
# and the Clang integrated assembler (installed as `as`).
|
||||
# See pkgs/os-specific/darwin/binutils/default.nix for details.
|
||||
|
@ -18,13 +18,13 @@ lib.checkListOfEnum "${pname}: color variants" [ "default" "purple" "pink" "red"
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
inherit pname;
|
||||
version = "2023-01-08";
|
||||
version = "2023-03-28";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vinceliuice";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-n4kMOIp7AD5Ue4qY4G3ja/VTyYF7cqhdI0uuk9b6o5c=";
|
||||
hash = "sha256-R7QKxZdcKUeTD6E9gj02Tu5tYv9JyqyH2sCsdOk9zTM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -56,9 +56,14 @@
|
||||
"gnome-trash@gnome-trash.b00f.gitlab.com",
|
||||
"gnome-trash@b00f.github.io"
|
||||
],
|
||||
"true-color-invert": [
|
||||
"true-color-invert@jackkenney",
|
||||
"true-color-window-invert@lynet101"
|
||||
],
|
||||
"volume-scroller": [
|
||||
"volume_scroller@trflynn89.pm.me",
|
||||
"volume_scroller@noskoski"
|
||||
"volume_scroller@noskoski",
|
||||
"volume_scroller@francislavoie.github.io"
|
||||
]
|
||||
},
|
||||
"40": {
|
||||
@ -82,6 +87,10 @@
|
||||
"Hide_Activities@shay.shayel.org",
|
||||
"hide-activities-button@nmingori.gnome-shell-extensions.org"
|
||||
],
|
||||
"clipboard-indicator": [
|
||||
"clipboard-indicator@tudmotu.com",
|
||||
"clipboard-indicator@Dieg0Js.github.io"
|
||||
],
|
||||
"shutdowntimer": [
|
||||
"ShutdownTimer@neumann",
|
||||
"shutdown-timer-gnome-shell-extension",
|
||||
@ -123,9 +132,14 @@
|
||||
"wireguard-indicator@gregos.me",
|
||||
"wireguard-indicator@atareao.es"
|
||||
],
|
||||
"true-color-invert": [
|
||||
"true-color-invert@jackkenney",
|
||||
"true-color-window-invert@lynet101"
|
||||
],
|
||||
"volume-scroller": [
|
||||
"volume_scroller@trflynn89.pm.me",
|
||||
"volume_scroller@noskoski"
|
||||
"volume_scroller@noskoski",
|
||||
"volume_scroller@francislavoie.github.io"
|
||||
],
|
||||
"floating-panel": [
|
||||
"floating-panel@aylur",
|
||||
@ -177,9 +191,14 @@
|
||||
"wireguard-indicator@gregos.me",
|
||||
"wireguard-indicator@atareao.es"
|
||||
],
|
||||
"true-color-invert": [
|
||||
"true-color-invert@jackkenney",
|
||||
"true-color-window-invert@lynet101"
|
||||
],
|
||||
"volume-scroller": [
|
||||
"volume_scroller@trflynn89.pm.me",
|
||||
"volume_scroller@noskoski"
|
||||
"volume_scroller@noskoski",
|
||||
"volume_scroller@francislavoie.github.io"
|
||||
],
|
||||
"floating-panel": [
|
||||
"floating-panel@aylur",
|
||||
@ -219,9 +238,14 @@
|
||||
"wireguard-indicator@gregos.me",
|
||||
"wireguard-indicator@atareao.es"
|
||||
],
|
||||
"true-color-invert": [
|
||||
"true-color-invert@jackkenney",
|
||||
"true-color-window-invert@lynet101"
|
||||
],
|
||||
"volume-scroller": [
|
||||
"volume_scroller@trflynn89.pm.me",
|
||||
"volume_scroller@noskoski"
|
||||
"volume_scroller@noskoski",
|
||||
"volume_scroller@francislavoie.github.io"
|
||||
],
|
||||
"auto-activities": [
|
||||
"auto-activities@acedron.github.io",
|
||||
@ -265,9 +289,14 @@
|
||||
"batime@martin.zurowietz.de",
|
||||
"batterytime@typeof.pw"
|
||||
],
|
||||
"volume-scroller": [
|
||||
"volume_scroller@trflynn89.pm.me",
|
||||
"volume_scroller@francislavoie.github.io"
|
||||
],
|
||||
"floating-panel": [
|
||||
"floating-panel@aylur",
|
||||
"floating-panel-usedbymyself@wpism"
|
||||
]
|
||||
}
|
||||
},
|
||||
"44": {}
|
||||
}
|
||||
|
@ -61,9 +61,10 @@ in rec {
|
||||
gnome41Extensions = mapUuidNames (produceExtensionsList "41");
|
||||
gnome42Extensions = mapUuidNames (produceExtensionsList "42");
|
||||
gnome43Extensions = mapUuidNames (produceExtensionsList "43");
|
||||
gnome44Extensions = mapUuidNames (produceExtensionsList "44");
|
||||
|
||||
# Keep the last three versions in here
|
||||
gnomeExtensions = lib.trivial.pipe (gnome41Extensions // gnome42Extensions // gnome43Extensions) [
|
||||
gnomeExtensions = lib.trivial.pipe (gnome42Extensions // gnome43Extensions // gnome44Extensions) [
|
||||
# Apply some custom patches for automatically packaged extensions
|
||||
(callPackage ./extensionOverrides.nix {})
|
||||
# Add all manually packaged extensions
|
||||
|
@ -91,28 +91,6 @@ super: lib.trivial.pipe super [
|
||||
];
|
||||
}))
|
||||
|
||||
(patchExtension "screen-autorotate@kosmospredanie.yandex.ru" (old: {
|
||||
# Requires gjs
|
||||
# https://github.com/NixOS/nixpkgs/issues/164865
|
||||
postPatch = ''
|
||||
for file in *.js; do
|
||||
substituteInPlace $file --replace "gjs" "${gjs}/bin/gjs"
|
||||
done
|
||||
'';
|
||||
}))
|
||||
|
||||
(patchExtension "shell-volume-mixer@derhofbauer.at" (old: {
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./extensionOverridesPatches/shell-volume-mixer_at_derhofbauer.at.patch;
|
||||
inherit pulseaudio;
|
||||
inherit python3;
|
||||
})
|
||||
];
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ rhoriguchi ];
|
||||
}))
|
||||
|
||||
(patchExtension "tophat@fflewddur.github.io" (old: {
|
||||
patches = [
|
||||
(substituteAll {
|
||||
|
@ -6,6 +6,11 @@
|
||||
# - Make a separate section for each GNOME version. Collisions will come back eventually
|
||||
# as the extensions are updated.
|
||||
{
|
||||
# ############################################################################
|
||||
# These are conflicts for older extensions (i.e. they don't support the latest GNOME version).
|
||||
# Make sure to move them up once they are updated
|
||||
|
||||
# ####### GNOME 43 #######
|
||||
"apps-menu@gnome-shell-extensions.gcampax.github.com" = "applications-menu";
|
||||
"Applications_Menu@rmy.pobox.com" = "frippery-applications-menu";
|
||||
|
||||
@ -31,14 +36,13 @@
|
||||
"batime@martin.zurowietz.de" = "battery-time";
|
||||
"batterytime@typeof.pw" = "battery-time-2";
|
||||
|
||||
"volume_scroller@trflynn89.pm.me" = "volume-scroller";
|
||||
"volume_scroller@francislavoie.github.io" = "volume-scroller-2";
|
||||
|
||||
# no source repository can be found for this extension
|
||||
"floating-panel@aylur" = "floating-panel";
|
||||
"floating-panel-usedbymyself@wpism" = null;
|
||||
|
||||
# ############################################################################
|
||||
# These are conflicts for older extensions (i.e. they don't support the latest GNOME version).
|
||||
# Make sure to move them up once they are updated
|
||||
|
||||
# ####### GNOME 42 #######
|
||||
|
||||
"lockkeys@vaina.lt" = "lock-keys";
|
||||
@ -47,8 +51,7 @@
|
||||
"panel-date-format@keiii.github.com" = "panel-date-format";
|
||||
"panel-date-format@atareao.es" = "panel-date-format-2";
|
||||
|
||||
"volume_scroller@trflynn89.pm.me" = "volume-scroller";
|
||||
"volume_scroller@noskoski" = "volume-scroller-2";
|
||||
"volume_scroller@noskoski" = "volume-scroller-3";
|
||||
|
||||
"wireguard-indicator@gregos.me" = "wireguard-indicator-2";
|
||||
"wireguard-indicator@atareao.es" = "wireguard-indicator";
|
||||
@ -56,6 +59,9 @@
|
||||
"auto-activities@acedron.github.io" = "auto-activities-2";
|
||||
"auto-activities@CleoMenezesJr.github.io" = "auto-activities";
|
||||
|
||||
"true-color-invert@jackkenney" = "true-color-invert";
|
||||
"true-color-window-invert@lynet101" = "true-color-window-invert";
|
||||
|
||||
# ####### GNOME 41 #######
|
||||
|
||||
"floatingDock@sun.wxg@gmail.com" = "floating-dock-2";
|
||||
|
File diff suppressed because one or more lines are too long
@ -19,6 +19,7 @@ supported_versions = {
|
||||
"41": "41",
|
||||
"42": "42",
|
||||
"43": "43",
|
||||
"44": "44",
|
||||
}
|
||||
|
||||
# Some type alias to increase readability of complex compound types
|
||||
|
@ -6,7 +6,7 @@
|
||||
}:
|
||||
|
||||
{ bash
|
||||
, buildFHSUserEnv
|
||||
, buildFHSEnv
|
||||
, cacert
|
||||
, git
|
||||
, runCommand
|
||||
@ -100,7 +100,7 @@ let
|
||||
|
||||
# Wrap flutter inside an fhs user env to allow execution of binary,
|
||||
# like adb from $ANDROID_HOME or java from android-studio.
|
||||
fhsEnv = buildFHSUserEnv {
|
||||
fhsEnv = buildFHSEnv {
|
||||
name = "${drvName}-fhs-env";
|
||||
multiPkgs = pkgs: [
|
||||
# Flutter only use these certificates
|
||||
|
@ -16,7 +16,7 @@
|
||||
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
|
||||
, isl ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null
|
||||
, gnatboot ? null
|
||||
, gnat-bootstrap ? null
|
||||
, enableMultilib ? false
|
||||
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
|
||||
, name ? "gcc"
|
||||
@ -34,7 +34,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
|
||||
|
||||
# The go frontend is written in c++
|
||||
assert langGo -> langCC;
|
||||
assert langAda -> gnatboot != null;
|
||||
assert langAda -> gnat-bootstrap != null;
|
||||
|
||||
# threadsCross is just for MinGW
|
||||
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
|
||||
@ -111,7 +111,7 @@ let majorVersion = "10";
|
||||
fetchurl
|
||||
gettext
|
||||
gmp
|
||||
gnatboot
|
||||
gnat-bootstrap
|
||||
gnused
|
||||
isl
|
||||
langAda
|
||||
|
@ -16,7 +16,7 @@
|
||||
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
|
||||
, isl ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null
|
||||
, gnatboot ? null
|
||||
, gnat-bootstrap ? null
|
||||
, enableMultilib ? false
|
||||
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
|
||||
, name ? "gcc"
|
||||
@ -37,7 +37,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
|
||||
|
||||
# The go frontend is written in c++
|
||||
assert langGo -> langCC;
|
||||
assert langAda -> gnatboot != null;
|
||||
assert langAda -> gnat-bootstrap != null;
|
||||
|
||||
# threadsCross is just for MinGW
|
||||
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
|
||||
@ -126,7 +126,7 @@ let majorVersion = "11";
|
||||
fetchurl
|
||||
gettext
|
||||
gmp
|
||||
gnatboot
|
||||
gnat-bootstrap
|
||||
gnused
|
||||
isl
|
||||
langAda
|
||||
|
@ -17,7 +17,7 @@
|
||||
, isl ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null
|
||||
, libucontext ? null
|
||||
, gnatboot ? null
|
||||
, gnat-bootstrap ? null
|
||||
, enableMultilib ? false
|
||||
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
|
||||
, name ? "gcc"
|
||||
@ -39,7 +39,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
|
||||
|
||||
# The go frontend is written in c++
|
||||
assert langGo -> langCC;
|
||||
assert langAda -> gnatboot != null;
|
||||
assert langAda -> gnat-bootstrap != null;
|
||||
|
||||
# TODO: fixup D bootstapping, probably by using gdc11 (and maybe other changes).
|
||||
# error: GDC is required to build d
|
||||
@ -159,7 +159,7 @@ let majorVersion = "12";
|
||||
fetchurl
|
||||
gettext
|
||||
gmp
|
||||
gnatboot
|
||||
gnat-bootstrap
|
||||
gnused
|
||||
isl
|
||||
langAda
|
||||
|
@ -17,7 +17,7 @@
|
||||
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
|
||||
, isl ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null, boehmgc ? null
|
||||
, gnatboot ? null
|
||||
, gnat-bootstrap ? null
|
||||
, zip ? null, unzip ? null, pkg-config ? null
|
||||
, gtk2 ? null, libart_lgpl ? null
|
||||
, libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null
|
||||
@ -45,7 +45,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
|
||||
# The go frontend is written in c++
|
||||
assert langGo -> langCC;
|
||||
|
||||
assert langAda -> gnatboot != null;
|
||||
assert langAda -> gnat-bootstrap != null;
|
||||
|
||||
# threadsCross is just for MinGW
|
||||
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
|
||||
@ -151,7 +151,7 @@ let majorVersion = "6";
|
||||
flex
|
||||
gettext
|
||||
gmp
|
||||
gnatboot
|
||||
gnat-bootstrap
|
||||
gnused
|
||||
gtk2
|
||||
isl
|
||||
|
@ -16,7 +16,7 @@
|
||||
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
|
||||
, isl ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null
|
||||
, gnatboot ? null
|
||||
, gnat-bootstrap ? null
|
||||
, enableMultilib ? false
|
||||
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
|
||||
, name ? "gcc"
|
||||
@ -38,7 +38,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
|
||||
|
||||
# The go frontend is written in c++
|
||||
assert langGo -> langCC;
|
||||
assert langAda -> gnatboot != null;
|
||||
assert langAda -> gnat-bootstrap != null;
|
||||
|
||||
# threadsCross is just for MinGW
|
||||
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
|
||||
@ -112,7 +112,7 @@ let majorVersion = "9";
|
||||
fetchurl
|
||||
gettext
|
||||
gmp
|
||||
gnatboot
|
||||
gnat-bootstrap
|
||||
gnused
|
||||
isl
|
||||
langAda
|
||||
|
@ -17,7 +17,7 @@
|
||||
, cloog ? null
|
||||
, isl ? null
|
||||
, zlib ? null
|
||||
, gnatboot ? null
|
||||
, gnat-bootstrap ? null
|
||||
, flex ? null
|
||||
, boehmgc ? null
|
||||
, zip ? null
|
||||
@ -51,7 +51,7 @@ in
|
||||
++ optionals (perl != null) [ perl ]
|
||||
++ optionals javaAwtGtk [ pkg-config ]
|
||||
++ optionals (with stdenv.targetPlatform; isVc4 || isRedox && flex != null) [ flex ]
|
||||
++ optionals langAda [ gnatboot ]
|
||||
++ optionals langAda [ gnat-bootstrap ]
|
||||
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
|
||||
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
|
||||
++ optionals buildPlatform.isDarwin [ gnused ]
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ lib, version, buildPlatform, hostPlatform, targetPlatform
|
||||
, gnatboot ? null
|
||||
, gnat-bootstrap ? null
|
||||
, langAda ? false
|
||||
, langJava ? false
|
||||
, langJit ? false
|
||||
@ -9,7 +9,7 @@
|
||||
}:
|
||||
|
||||
assert langJava -> lib.versionOlder version "7";
|
||||
assert langAda -> gnatboot != null; let
|
||||
assert langAda -> gnat-bootstrap != null; let
|
||||
needsLib
|
||||
= (lib.versionOlder version "7" && (langJava || langGo))
|
||||
|| (lib.versions.major version == "4" && lib.versions.minor version == "9" && targetPlatform.isDarwin);
|
||||
@ -21,13 +21,13 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
|
||||
'' + lib.optionalString needsLib ''
|
||||
export lib=$out;
|
||||
'' + lib.optionalString langAda ''
|
||||
export PATH=${gnatboot}/bin:$PATH
|
||||
export PATH=${gnat-bootstrap}/bin:$PATH
|
||||
''
|
||||
|
||||
# On x86_64-darwin, the gnatboot bootstrap compiler that we need to build a
|
||||
# On x86_64-darwin, the gnat-bootstrap bootstrap compiler that we need to build a
|
||||
# native GCC with Ada support emits assembly that is accepted by the Clang
|
||||
# integrated assembler, but not by the GNU assembler in cctools-port that Nix
|
||||
# usually in the x86_64-darwin stdenv. In particular, x86_64-darwin gnatboot
|
||||
# usually in the x86_64-darwin stdenv. In particular, x86_64-darwin gnat-bootstrap
|
||||
# emits MOVQ as the mnemonic for quadword interunit moves, such as between XMM
|
||||
# and general registers (e.g "movq %xmm0, %rbp"); the cctools-port assembler,
|
||||
# however, only recognises MOVD for such moves.
|
||||
@ -35,7 +35,7 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
|
||||
# Therefore, for native x86_64-darwin builds that support Ada, we have to use
|
||||
# the Clang integrated assembler to build (at least stage 1 of) GCC, but have to
|
||||
# target GCC at the cctools-port GNU assembler. In the wrapped x86_64-darwin
|
||||
# gnatboot, the former is provided as `as`, while the latter is provided as
|
||||
# gnat-bootstrap, the former is provided as `as`, while the latter is provided as
|
||||
# `gas`.
|
||||
#
|
||||
+ lib.optionalString (
|
||||
@ -45,8 +45,8 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
|
||||
&& targetPlatform.isx86_64
|
||||
&& targetPlatform.isDarwin
|
||||
) ''
|
||||
export AS_FOR_BUILD=${gnatboot}/bin/as
|
||||
export AS_FOR_TARGET=${gnatboot}/bin/gas
|
||||
export AS_FOR_BUILD=${gnat-bootstrap}/bin/as
|
||||
export AS_FOR_TARGET=${gnat-bootstrap}/bin/gas
|
||||
''
|
||||
|
||||
# NOTE 2020/3/18: This environment variable prevents configure scripts from
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gleam";
|
||||
version = "0.27.0";
|
||||
version = "0.28.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gleam-lang";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-RkpHmrxKiMtXOPKd8qBREike2sJ3NZcrc7RIxG08eyI=";
|
||||
hash = "sha256-4sYHI3yh5KvLxdpWkCMya7v5aXG+FvvK7hmpOkX1R28=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ git pkg-config ];
|
||||
@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
|
||||
buildInputs = [ openssl ] ++
|
||||
lib.optionals stdenv.isDarwin [ Security libiconv ];
|
||||
|
||||
cargoSha256 = "sha256-QluOPKEkofRRE+UxNe60f+sA8Ov3um25kl2F/pt19js=";
|
||||
cargoSha256 = "sha256-7RLeLZS28eIGObisRRI3skSkplWZGnyikvD3qfFDpU8=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A statically typed language for the Erlang VM";
|
||||
|
@ -38,7 +38,7 @@ let
|
||||
in with versionMap.${majorVersion};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnatboot";
|
||||
pname = "gnat-bootstrap";
|
||||
inherit gccVersion alireRevision;
|
||||
|
||||
version = "${gccVersion}-${alireRevision}";
|
||||
@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
|
||||
cp -ar * $out/
|
||||
''
|
||||
|
||||
# So far with the Darwin gnatboot binary packages, there have been two
|
||||
# So far with the Darwin gnat-bootstrap binary packages, there have been two
|
||||
# types of dylib path references to other dylibs that need fixups:
|
||||
#
|
||||
# 1. Dylibs in $out/lib with paths starting with
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user