Merge staging-next into staging
This commit is contained in:
commit
5bc501b7aa
@ -124,3 +124,21 @@ in another file (say `default.nix`) to be able to build it with
|
|||||||
```
|
```
|
||||||
$ nix-build -A yaml
|
$ nix-build -A yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Passing options to `idris` commands
|
||||||
|
|
||||||
|
The `build-idris-package` function provides also optional input values to set additional options for the used `idris` commands.
|
||||||
|
|
||||||
|
Specifically, you can set `idrisBuildOptions`, `idrisTestOptions`, `idrisInstallOptions` and `idrisDocOptions` to provide additional options to the `idris` command respectively when building, testing, installing and generating docs for your package.
|
||||||
|
|
||||||
|
For example you could set
|
||||||
|
|
||||||
|
```
|
||||||
|
build-idris-package {
|
||||||
|
idrisBuildOptions = [ "--log" "1" "--verbose" ]
|
||||||
|
|
||||||
|
...
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
to require verbose output during `idris` build phase.
|
||||||
|
@ -1083,6 +1083,11 @@
|
|||||||
github = "codyopel";
|
github = "codyopel";
|
||||||
name = "Cody Opel";
|
name = "Cody Opel";
|
||||||
};
|
};
|
||||||
|
cohencyril = {
|
||||||
|
email = "cyril.cohen@inria.fr";
|
||||||
|
github = "CohenCyril";
|
||||||
|
name = "Cyril Cohen";
|
||||||
|
};
|
||||||
colemickens = {
|
colemickens = {
|
||||||
email = "cole.mickens@gmail.com";
|
email = "cole.mickens@gmail.com";
|
||||||
github = "colemickens";
|
github = "colemickens";
|
||||||
@ -1698,6 +1703,11 @@
|
|||||||
fingerprint = "67FE 98F2 8C44 CF22 1828 E12F D57E FA62 5C9A 925F";
|
fingerprint = "67FE 98F2 8C44 CF22 1828 E12F D57E FA62 5C9A 925F";
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
|
evanjs = {
|
||||||
|
email = "evanjsx@gmail.com";
|
||||||
|
github = "evanjs";
|
||||||
|
name = "Evan Stoll";
|
||||||
|
};
|
||||||
evck = {
|
evck = {
|
||||||
email = "eric@evenchick.com";
|
email = "eric@evenchick.com";
|
||||||
github = "ericevenchick";
|
github = "ericevenchick";
|
||||||
@ -5599,6 +5609,11 @@
|
|||||||
github = "viric";
|
github = "viric";
|
||||||
name = "Lluís Batlle i Rossell";
|
name = "Lluís Batlle i Rossell";
|
||||||
};
|
};
|
||||||
|
virusdave = {
|
||||||
|
email = "dave.nicponski@gmail.com";
|
||||||
|
github = "virusdave";
|
||||||
|
name = "Dave Nicponski";
|
||||||
|
};
|
||||||
vizanto = {
|
vizanto = {
|
||||||
email = "danny@prime.vc";
|
email = "danny@prime.vc";
|
||||||
github = "vizanto";
|
github = "vizanto";
|
||||||
|
@ -67,7 +67,7 @@ rec {
|
|||||||
in
|
in
|
||||||
{ key = "ip-address";
|
{ key = "ip-address";
|
||||||
config =
|
config =
|
||||||
{ networking.hostName = m.fst;
|
{ networking.hostName = mkDefault m.fst;
|
||||||
|
|
||||||
networking.interfaces = listToAttrs interfaces;
|
networking.interfaces = listToAttrs interfaces;
|
||||||
|
|
||||||
|
90
nixos/modules/services/backup/zfs-replication.nix
Normal file
90
nixos/modules/services/backup/zfs-replication.nix
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
{ lib, pkgs, config, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.zfs.autoReplication;
|
||||||
|
recursive = optionalString cfg.recursive " --recursive";
|
||||||
|
followDelete = optionalString cfg.followDelete " --follow-delete";
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
services.zfs.autoReplication = {
|
||||||
|
enable = mkEnableOption "ZFS snapshot replication.";
|
||||||
|
|
||||||
|
followDelete = mkOption {
|
||||||
|
description = "Remove remote snapshots that don't have a local correspondant.";
|
||||||
|
default = true;
|
||||||
|
type = types.bool;
|
||||||
|
};
|
||||||
|
|
||||||
|
host = mkOption {
|
||||||
|
description = "Remote host where snapshots should be sent.";
|
||||||
|
example = "example.com";
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
|
||||||
|
identityFilePath = mkOption {
|
||||||
|
description = "Path to SSH key used to login to host.";
|
||||||
|
example = "/home/username/.ssh/id_rsa";
|
||||||
|
type = types.path;
|
||||||
|
};
|
||||||
|
|
||||||
|
localFilesystem = mkOption {
|
||||||
|
description = "Local ZFS fileystem from which snapshots should be sent. Defaults to the attribute name.";
|
||||||
|
example = "pool/file/path";
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
|
||||||
|
remoteFilesystem = mkOption {
|
||||||
|
description = "Remote ZFS filesystem where snapshots should be sent.";
|
||||||
|
example = "pool/file/path";
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
|
||||||
|
recursive = mkOption {
|
||||||
|
description = "Recursively discover snapshots to send.";
|
||||||
|
default = true;
|
||||||
|
type = types.bool;
|
||||||
|
};
|
||||||
|
|
||||||
|
username = mkOption {
|
||||||
|
description = "Username used by SSH to login to remote host.";
|
||||||
|
example = "username";
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
environment.systemPackages = [
|
||||||
|
pkgs.lz4
|
||||||
|
];
|
||||||
|
|
||||||
|
systemd.services."zfs-replication" = {
|
||||||
|
after = [
|
||||||
|
"zfs-snapshot-daily.service"
|
||||||
|
"zfs-snapshot-frequent.service"
|
||||||
|
"zfs-snapshot-hourly.service"
|
||||||
|
"zfs-snapshot-monthly.service"
|
||||||
|
"zfs-snapshot-weekly.service"
|
||||||
|
];
|
||||||
|
description = "ZFS Snapshot Replication";
|
||||||
|
documentation = [
|
||||||
|
"https://github.com/alunduil/zfs-replicate"
|
||||||
|
];
|
||||||
|
restartIfChanged = false;
|
||||||
|
serviceConfig.ExecStart = "${pkgs.zfs-replicate}/bin/zfs-replicate${recursive} -l ${escapeShellArg cfg.username} -i ${escapeShellArg cfg.identityFilePath}${followDelete} ${escapeShellArg cfg.host} ${escapeShellArg cfg.remoteFilesystem} ${escapeShellArg cfg.localFilesystem}";
|
||||||
|
wantedBy = [
|
||||||
|
"zfs-snapshot-daily.service"
|
||||||
|
"zfs-snapshot-frequent.service"
|
||||||
|
"zfs-snapshot-hourly.service"
|
||||||
|
"zfs-snapshot-monthly.service"
|
||||||
|
"zfs-snapshot-weekly.service"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
maintainers = with lib.maintainers; [ alunduil ];
|
||||||
|
};
|
||||||
|
}
|
@ -251,6 +251,10 @@ in
|
|||||||
|
|
||||||
environment.systemPackages = [ postgresql ];
|
environment.systemPackages = [ postgresql ];
|
||||||
|
|
||||||
|
environment.pathsToLink = [
|
||||||
|
"/share/postgresql"
|
||||||
|
];
|
||||||
|
|
||||||
systemd.services.postgresql =
|
systemd.services.postgresql =
|
||||||
{ description = "PostgreSQL Server";
|
{ description = "PostgreSQL Server";
|
||||||
|
|
||||||
|
@ -9,6 +9,20 @@ let
|
|||||||
in {
|
in {
|
||||||
|
|
||||||
options.services.bloop = {
|
options.services.bloop = {
|
||||||
|
extraOptions = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [ ];
|
||||||
|
example = [
|
||||||
|
"-J-Xmx2G"
|
||||||
|
"-J-XX:MaxInlineLevel=20"
|
||||||
|
"-J-XX:+UseParallelGC"
|
||||||
|
];
|
||||||
|
description = ''
|
||||||
|
Specifies additional command line argument to pass to bloop
|
||||||
|
java process.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
install = mkOption {
|
install = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
@ -25,10 +39,13 @@ in {
|
|||||||
systemd.user.services.bloop = {
|
systemd.user.services.bloop = {
|
||||||
description = "Bloop Scala build server";
|
description = "Bloop Scala build server";
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PATH = mkForce "${makeBinPath [ config.programs.java.package ]}";
|
||||||
|
};
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
ExecStart = ''${pkgs.bloop}/bin/blp-server'';
|
ExecStart = ''${pkgs.bloop}/bin/bloop server'';
|
||||||
Restart = "always";
|
Restart = "always";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -8,6 +8,12 @@ in {
|
|||||||
options = {
|
options = {
|
||||||
services.throttled = {
|
services.throttled = {
|
||||||
enable = mkEnableOption "fix for Intel CPU throttling";
|
enable = mkEnableOption "fix for Intel CPU throttling";
|
||||||
|
|
||||||
|
extraConfig = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "";
|
||||||
|
description = "Alternative configuration";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -16,6 +22,9 @@ in {
|
|||||||
# The upstream package has this in Install, but that's not enough, see the NixOS manual
|
# The upstream package has this in Install, but that's not enough, see the NixOS manual
|
||||||
systemd.services."lenovo_fix".wantedBy = [ "multi-user.target" ];
|
systemd.services."lenovo_fix".wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
environment.etc."lenovo_fix.conf".source = "${pkgs.throttled}/etc/lenovo_fix.conf";
|
environment.etc."lenovo_fix.conf".source =
|
||||||
|
if cfg.extraConfig != ""
|
||||||
|
then pkgs.writeText "lenovo_fix.conf" cfg.extraConfig
|
||||||
|
else "${pkgs.throttled}/etc/lenovo_fix.conf";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -143,21 +143,37 @@ in
|
|||||||
users.users.${cfg.user} = {
|
users.users.${cfg.user} = {
|
||||||
description = "Gitolite user";
|
description = "Gitolite user";
|
||||||
home = cfg.dataDir;
|
home = cfg.dataDir;
|
||||||
createHome = true;
|
|
||||||
uid = config.ids.uids.gitolite;
|
uid = config.ids.uids.gitolite;
|
||||||
group = cfg.group;
|
group = cfg.group;
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
};
|
};
|
||||||
users.groups."${cfg.group}".gid = config.ids.gids.gitolite;
|
users.groups."${cfg.group}".gid = config.ids.gids.gitolite;
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d '${cfg.dataDir}' 0750 ${cfg.user} ${cfg.group} - -"
|
||||||
|
"d '${cfg.dataDir}'/.gitolite - ${cfg.user} ${cfg.group} - -"
|
||||||
|
"d '${cfg.dataDir}'/.gitolite/logs - ${cfg.user} ${cfg.group} - -"
|
||||||
|
|
||||||
|
"Z ${cfg.dataDir} 0750 ${cfg.user} ${cfg.group} - -"
|
||||||
|
];
|
||||||
|
|
||||||
systemd.services."gitolite-init" = {
|
systemd.services."gitolite-init" = {
|
||||||
description = "Gitolite initialization";
|
description = "Gitolite initialization";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
unitConfig.RequiresMountsFor = cfg.dataDir;
|
unitConfig.RequiresMountsFor = cfg.dataDir;
|
||||||
|
|
||||||
serviceConfig.User = "${cfg.user}";
|
environment = {
|
||||||
serviceConfig.Type = "oneshot";
|
GITOLITE_RC = ".gitolite.rc";
|
||||||
serviceConfig.RemainAfterExit = true;
|
GITOLITE_RC_DEFAULT = "${rcDir}/gitolite.rc.default";
|
||||||
|
};
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
User = cfg.user;
|
||||||
|
Group = cfg.group;
|
||||||
|
WorkingDirectory = "~";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
};
|
||||||
|
|
||||||
path = [ pkgs.gitolite pkgs.git pkgs.perl pkgs.bash pkgs.diffutils config.programs.ssh.package ];
|
path = [ pkgs.gitolite pkgs.git pkgs.perl pkgs.bash pkgs.diffutils config.programs.ssh.package ];
|
||||||
script =
|
script =
|
||||||
@ -187,11 +203,6 @@ in
|
|||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
''
|
''
|
||||||
cd ${cfg.dataDir}
|
|
||||||
mkdir -p .gitolite/logs
|
|
||||||
|
|
||||||
GITOLITE_RC=.gitolite.rc
|
|
||||||
GITOLITE_RC_DEFAULT=${rcDir}/gitolite.rc.default
|
|
||||||
if ( [[ ! -e "$GITOLITE_RC" ]] && [[ ! -L "$GITOLITE_RC" ]] ) ||
|
if ( [[ ! -e "$GITOLITE_RC" ]] && [[ ! -L "$GITOLITE_RC" ]] ) ||
|
||||||
( [[ -f "$GITOLITE_RC" ]] && diff -q "$GITOLITE_RC" "$GITOLITE_RC_DEFAULT" >/dev/null ) ||
|
( [[ -f "$GITOLITE_RC" ]] && diff -q "$GITOLITE_RC" "$GITOLITE_RC_DEFAULT" >/dev/null ) ||
|
||||||
( [[ -L "$GITOLITE_RC" ]] && [[ "$(readlink "$GITOLITE_RC")" =~ ^/nix/store/ ]] )
|
( [[ -L "$GITOLITE_RC" ]] && [[ "$(readlink "$GITOLITE_RC")" =~ ^/nix/store/ ]] )
|
||||||
|
@ -34,6 +34,14 @@ in {
|
|||||||
<literal>allowed_ip_1</literal> and so on.
|
<literal>allowed_ip_1</literal> and so on.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
withRemoteIp = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Whether or not the remote IP of a WireGuard peer should be exposed via prometheus.
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
serviceOpts = {
|
serviceOpts = {
|
||||||
path = [ pkgs.wireguard-tools ];
|
path = [ pkgs.wireguard-tools ];
|
||||||
@ -45,6 +53,7 @@ in {
|
|||||||
-p ${toString cfg.port} \
|
-p ${toString cfg.port} \
|
||||||
${optionalString cfg.verbose "-v"} \
|
${optionalString cfg.verbose "-v"} \
|
||||||
${optionalString cfg.singleSubnetPerField "-s"} \
|
${optionalString cfg.singleSubnetPerField "-s"} \
|
||||||
|
${optionalString cfg.withRemoteIp "-r"} \
|
||||||
${optionalString (cfg.wireguardConfig != null) "-n ${cfg.wireguardConfig}"}
|
${optionalString (cfg.wireguardConfig != null) "-n ${cfg.wireguardConfig}"}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
@ -148,7 +148,7 @@ in
|
|||||||
|
|
||||||
systemd.tmpfiles.rules = [
|
systemd.tmpfiles.rules = [
|
||||||
"e '${stateDir}' 0700 unifi - - -"
|
"e '${stateDir}' 0700 unifi - - -"
|
||||||
"e '${stateDir}/data' 0700 unifi - - -"
|
"d '${stateDir}/data' 0700 unifi - - -"
|
||||||
];
|
];
|
||||||
|
|
||||||
systemd.services.unifi = {
|
systemd.services.unifi = {
|
||||||
|
@ -20,7 +20,7 @@ in
|
|||||||
imports = [
|
imports = [
|
||||||
./none.nix ./xterm.nix ./xfce.nix ./plasma5.nix ./lumina.nix
|
./none.nix ./xterm.nix ./xfce.nix ./plasma5.nix ./lumina.nix
|
||||||
./lxqt.nix ./enlightenment.nix ./gnome3.nix ./kodi.nix ./maxx.nix
|
./lxqt.nix ./enlightenment.nix ./gnome3.nix ./kodi.nix ./maxx.nix
|
||||||
./mate.nix ./pantheon.nix
|
./mate.nix ./pantheon.nix ./surf-display.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
|
@ -102,6 +102,10 @@ in
|
|||||||
# Makes qt applications look less alien
|
# Makes qt applications look less alien
|
||||||
export QT_QPA_PLATFORMTHEME=gtk3
|
export QT_QPA_PLATFORMTHEME=gtk3
|
||||||
export QT_STYLE_OVERRIDE=adwaita
|
export QT_STYLE_OVERRIDE=adwaita
|
||||||
|
|
||||||
|
# Settings from elementary-default-settings
|
||||||
|
export GTK_CSD=1
|
||||||
|
export GTK_MODULES=$GTK_MODULES:pantheon-filechooser-module
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -178,7 +178,7 @@ in
|
|||||||
++ lib.optional (cfg.phononBackend == "vlc" && cfg.enableQt4Support) pkgs.phonon-backend-vlc
|
++ lib.optional (cfg.phononBackend == "vlc" && cfg.enableQt4Support) pkgs.phonon-backend-vlc
|
||||||
|
|
||||||
# Optional hardware support features
|
# Optional hardware support features
|
||||||
++ lib.optional config.hardware.bluetooth.enable bluedevil
|
++ lib.optionals config.hardware.bluetooth.enable [ bluedevil bluez-qt ]
|
||||||
++ lib.optional config.networking.networkmanager.enable plasma-nm
|
++ lib.optional config.networking.networkmanager.enable plasma-nm
|
||||||
++ lib.optional config.hardware.pulseaudio.enable plasma-pa
|
++ lib.optional config.hardware.pulseaudio.enable plasma-pa
|
||||||
++ lib.optional config.powerManagement.enable powerdevil
|
++ lib.optional config.powerManagement.enable powerdevil
|
||||||
|
127
nixos/modules/services/x11/desktop-managers/surf-display.nix
Normal file
127
nixos/modules/services/x11/desktop-managers/surf-display.nix
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.xserver.desktopManager.surf-display;
|
||||||
|
|
||||||
|
surfDisplayConf = ''
|
||||||
|
# Surf Kiosk Display: Wrap around surf browser and turn your
|
||||||
|
# system into a browser screen in KIOSK-mode.
|
||||||
|
|
||||||
|
# default download URI for all display screens if not configured individually
|
||||||
|
DEFAULT_WWW_URI="${cfg.defaultWwwUri}"
|
||||||
|
|
||||||
|
# Enforce fixed resolution for all displays (default: not set):
|
||||||
|
#DEFAULT_RESOLUTION="1920x1080"
|
||||||
|
|
||||||
|
# HTTP proxy URL, if needed (default: not set).
|
||||||
|
#HTTP_PROXY_URL="http://webcache:3128"
|
||||||
|
|
||||||
|
# Setting for internal inactivity timer to restart surf-display
|
||||||
|
# if the user goes inactive/idle.
|
||||||
|
INACTIVITY_INTERVAL="${builtins.toString cfg.inactivityInterval}"
|
||||||
|
|
||||||
|
# log to syslog instead of .xsession-errors
|
||||||
|
LOG_TO_SYSLOG="yes"
|
||||||
|
|
||||||
|
# Launch pulseaudio daemon if not already running.
|
||||||
|
WITH_PULSEAUDIO="yes"
|
||||||
|
|
||||||
|
# screensaver settings, see "man 1 xset" for possible options
|
||||||
|
SCREENSAVER_SETTINGS="${cfg.screensaverSettings}"
|
||||||
|
|
||||||
|
# disable right and middle pointer device click in browser sessions while keeping
|
||||||
|
# scrolling wheels' functionality intact... (consider "pointer" subcommand on
|
||||||
|
# xmodmap man page for details).
|
||||||
|
POINTER_BUTTON_MAP="${cfg.pointerButtonMap}"
|
||||||
|
|
||||||
|
# Hide idle mouse pointer.
|
||||||
|
HIDE_IDLE_POINTER="${cfg.hideIdlePointer}"
|
||||||
|
|
||||||
|
${cfg.extraConfig}
|
||||||
|
'';
|
||||||
|
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
services.xserver.desktopManager.surf-display = {
|
||||||
|
enable = mkEnableOption "surf-display as a kiosk browser session";
|
||||||
|
|
||||||
|
defaultWwwUri = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
default = "${pkgs.surf-display}/share/surf-display/empty-page.html";
|
||||||
|
example = "https://www.example.com/";
|
||||||
|
description = "Default URI to display.";
|
||||||
|
};
|
||||||
|
|
||||||
|
inactivityInterval = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 300;
|
||||||
|
example = "0";
|
||||||
|
description = ''
|
||||||
|
Setting for internal inactivity timer to restart surf-display if the
|
||||||
|
user goes inactive/idle to get a fresh session for the next user of
|
||||||
|
the kiosk.
|
||||||
|
|
||||||
|
If this value is set to zero, the whole feature of restarting due to
|
||||||
|
inactivity is disabled.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
screensaverSettings = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
Screensaver settings, see <literal>man 1 xset</literal> for possible options.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
pointerButtonMap = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
default = "1 0 0 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0";
|
||||||
|
description = ''
|
||||||
|
Disable right and middle pointer device click in browser sessions
|
||||||
|
while keeping scrolling wheels' functionality intact. See pointer
|
||||||
|
subcommand on <literal>man xmodmap</literal> for details.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
hideIdlePointer = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
default = "yes";
|
||||||
|
example = "no";
|
||||||
|
description = "Hide idle mouse pointer.";
|
||||||
|
};
|
||||||
|
|
||||||
|
extraConfig = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
default = "";
|
||||||
|
example = ''
|
||||||
|
# Enforce fixed resolution for all displays (default: not set):
|
||||||
|
DEFAULT_RESOLUTION="1920x1080"
|
||||||
|
|
||||||
|
# HTTP proxy URL, if needed (default: not set).
|
||||||
|
HTTP_PROXY_URL="http://webcache:3128"
|
||||||
|
|
||||||
|
# Configure individual display screens with host specific parameters:
|
||||||
|
DISPLAYS['display-host-0']="www_uri=https://www.displayserver.comany.net/display-1/index.html"
|
||||||
|
DISPLAYS['display-host-1']="www_uri=https://www.displayserver.comany.net/display-2/index.html"
|
||||||
|
DISPLAYS['display-host-2']="www_uri=https://www.displayserver.comany.net/display-3/index.html|res=1920x1280"
|
||||||
|
DISPLAYS['display-host-3']="www_uri=https://www.displayserver.comany.net/display-4/index.html"|res=1280x1024"
|
||||||
|
DISPLAYS['display-host-local-file']="www_uri=file:///usr/share/doc/surf-display/empty-page.html"
|
||||||
|
'';
|
||||||
|
description = ''
|
||||||
|
Extra configuration options to append to <literal>/etc/default/surf-display</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.xserver.displayManager.extraSessionFilePackages = [
|
||||||
|
pkgs.surf-display
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.etc."default/surf-display".text = surfDisplayConf;
|
||||||
|
};
|
||||||
|
}
|
@ -96,6 +96,14 @@ in
|
|||||||
type = types.bool;
|
type = types.bool;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
autoSuspend = mkOption {
|
||||||
|
default = true;
|
||||||
|
description = ''
|
||||||
|
Suspend the machine after inactivity.
|
||||||
|
'';
|
||||||
|
type = types.bool;
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
@ -176,10 +184,40 @@ in
|
|||||||
|
|
||||||
systemd.user.services.dbus.wantedBy = [ "default.target" ];
|
systemd.user.services.dbus.wantedBy = [ "default.target" ];
|
||||||
|
|
||||||
programs.dconf.profiles.gdm = pkgs.writeText "dconf-gdm-profile" ''
|
programs.dconf.profiles.gdm =
|
||||||
system-db:local
|
let
|
||||||
${gdm}/share/dconf/profile/gdm
|
customDconf = pkgs.writeTextFile {
|
||||||
'';
|
name = "gdm-dconf";
|
||||||
|
destination = "/dconf/gdm-custom";
|
||||||
|
text = ''
|
||||||
|
${optionalString (!cfg.gdm.autoSuspend) ''
|
||||||
|
[org/gnome/settings-daemon/plugins/power]
|
||||||
|
sleep-inactive-ac-type='nothing'
|
||||||
|
sleep-inactive-battery-type='nothing'
|
||||||
|
sleep-inactive-ac-timeout=0
|
||||||
|
sleep-inactive-battery-timeout=0
|
||||||
|
''}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
customDconfDb = pkgs.stdenv.mkDerivation {
|
||||||
|
name = "gdm-dconf-db";
|
||||||
|
buildCommand = ''
|
||||||
|
${pkgs.gnome3.dconf}/bin/dconf compile $out ${customDconf}/dconf
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in pkgs.stdenv.mkDerivation {
|
||||||
|
name = "dconf-gdm-profile";
|
||||||
|
buildCommand = ''
|
||||||
|
# Check that the GDM profile starts with what we expect.
|
||||||
|
if [ $(head -n 1 ${gdm}/share/dconf/profile/gdm) != "user-db:user" ]; then
|
||||||
|
echo "GDM dconf profile changed, please update gdm.nix"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# Insert our custom DB behind it.
|
||||||
|
sed '2ifile-db:${customDconfDb}' ${gdm}/share/dconf/profile/gdm > $out
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
# Use AutomaticLogin if delay is zero, because it's immediate.
|
# Use AutomaticLogin if delay is zero, because it's immediate.
|
||||||
# Otherwise with TimedLogin with zero seconds the prompt is still
|
# Otherwise with TimedLogin with zero seconds the prompt is still
|
||||||
|
@ -8,11 +8,12 @@ let
|
|||||||
jmxRoles = [{ username = "me"; password = "password"; }];
|
jmxRoles = [{ username = "me"; password = "password"; }];
|
||||||
jmxRolesFile = ./cassandra-jmx-roles;
|
jmxRolesFile = ./cassandra-jmx-roles;
|
||||||
jmxAuthArgs = "-u ${(builtins.elemAt jmxRoles 0).username} -pw ${(builtins.elemAt jmxRoles 0).password}";
|
jmxAuthArgs = "-u ${(builtins.elemAt jmxRoles 0).username} -pw ${(builtins.elemAt jmxRoles 0).password}";
|
||||||
|
jmxPort = 7200; # Non-standard port so it doesn't accidentally work
|
||||||
|
|
||||||
# Would usually be assigned to 512M
|
# Would usually be assigned to 512M
|
||||||
numMaxHeapSize = "400";
|
numMaxHeapSize = "400";
|
||||||
getHeapLimitCommand = ''
|
getHeapLimitCommand = ''
|
||||||
nodetool info | grep "^Heap Memory" | awk \'{print $NF}\'
|
nodetool info -p ${toString jmxPort} | grep "^Heap Memory" | awk \'{print $NF}\'
|
||||||
'';
|
'';
|
||||||
checkHeapLimitCommand = ''
|
checkHeapLimitCommand = ''
|
||||||
[ 1 -eq "$(echo "$(${getHeapLimitCommand}) < ${numMaxHeapSize}" | ${pkgs.bc}/bin/bc)" ]
|
[ 1 -eq "$(echo "$(${getHeapLimitCommand}) < ${numMaxHeapSize}" | ${pkgs.bc}/bin/bc)" ]
|
||||||
@ -27,19 +28,20 @@ let
|
|||||||
package = testPackage;
|
package = testPackage;
|
||||||
maxHeapSize = "${numMaxHeapSize}M";
|
maxHeapSize = "${numMaxHeapSize}M";
|
||||||
heapNewSize = "100M";
|
heapNewSize = "100M";
|
||||||
|
inherit jmxPort;
|
||||||
};
|
};
|
||||||
nodeCfg = ipAddress: extra: {pkgs, config, ...}:
|
nodeCfg = ipAddress: extra: {pkgs, config, ...}: rec {
|
||||||
{ environment.systemPackages = [ testPackage ];
|
environment.systemPackages = [ testPackage ];
|
||||||
networking = {
|
networking = {
|
||||||
firewall.allowedTCPPorts = [ 7000 7199 9042 ];
|
firewall.allowedTCPPorts = [ 7000 9042 services.cassandra.jmxPort ];
|
||||||
useDHCP = false;
|
useDHCP = false;
|
||||||
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
|
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
|
||||||
{ address = ipAddress; prefixLength = 24; }
|
{ address = ipAddress; prefixLength = 24; }
|
||||||
];
|
];
|
||||||
};
|
|
||||||
services.cassandra = cassandraCfg ipAddress // extra;
|
|
||||||
virtualisation.memorySize = 1024;
|
|
||||||
};
|
};
|
||||||
|
services.cassandra = cassandraCfg ipAddress // extra;
|
||||||
|
virtualisation.memorySize = 1024;
|
||||||
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
name = "cassandra-ci";
|
name = "cassandra-ci";
|
||||||
@ -50,7 +52,9 @@ in
|
|||||||
cass2 = nodeCfg "192.168.1.3" { jvmOpts = [ "-Dcassandra.replace_address=cass1" ]; };
|
cass2 = nodeCfg "192.168.1.3" { jvmOpts = [ "-Dcassandra.replace_address=cass1" ]; };
|
||||||
};
|
};
|
||||||
|
|
||||||
testScript = ''
|
testScript = let
|
||||||
|
jmxPortS = toString jmxPort;
|
||||||
|
in ''
|
||||||
# Check configuration
|
# Check configuration
|
||||||
subtest "Timers exist", sub {
|
subtest "Timers exist", sub {
|
||||||
$cass0->succeed("systemctl list-timers | grep cassandra-full-repair.timer");
|
$cass0->succeed("systemctl list-timers | grep cassandra-full-repair.timer");
|
||||||
@ -63,51 +67,51 @@ in
|
|||||||
};
|
};
|
||||||
subtest "Nodetool is operational", sub {
|
subtest "Nodetool is operational", sub {
|
||||||
$cass0->waitForUnit("cassandra.service");
|
$cass0->waitForUnit("cassandra.service");
|
||||||
$cass0->waitUntilSucceeds("nc -z localhost 7199");
|
$cass0->waitUntilSucceeds("nc -z localhost ${jmxPortS}");
|
||||||
$cass0->succeed("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass0'");
|
$cass0->succeed("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass0'");
|
||||||
};
|
};
|
||||||
subtest "Cluster name was set", sub {
|
subtest "Cluster name was set", sub {
|
||||||
$cass0->waitForUnit("cassandra.service");
|
$cass0->waitForUnit("cassandra.service");
|
||||||
$cass0->waitUntilSucceeds("nc -z localhost 7199");
|
$cass0->waitUntilSucceeds("nc -z localhost ${jmxPortS}");
|
||||||
$cass0->waitUntilSucceeds("nodetool describecluster | grep 'Name: ${clusterName}'");
|
$cass0->waitUntilSucceeds("nodetool describecluster -p ${jmxPortS} | grep 'Name: ${clusterName}'");
|
||||||
};
|
};
|
||||||
subtest "Heap limit set correctly", sub {
|
subtest "Heap limit set correctly", sub {
|
||||||
# Nodetool takes a while until it can display info
|
# Nodetool takes a while until it can display info
|
||||||
$cass0->waitUntilSucceeds('nodetool info');
|
$cass0->waitUntilSucceeds('nodetool info -p ${jmxPortS}');
|
||||||
$cass0->succeed('${checkHeapLimitCommand}');
|
$cass0->succeed('${checkHeapLimitCommand}');
|
||||||
};
|
};
|
||||||
|
|
||||||
# Check cluster interaction
|
# Check cluster interaction
|
||||||
subtest "Bring up cluster", sub {
|
subtest "Bring up cluster", sub {
|
||||||
$cass1->waitForUnit("cassandra.service");
|
$cass1->waitForUnit("cassandra.service");
|
||||||
$cass1->waitUntilSucceeds("nodetool ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
$cass1->waitUntilSucceeds("nodetool -p ${jmxPortS} ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
||||||
$cass0->succeed("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
$cass0->succeed("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
||||||
};
|
};
|
||||||
'' + lib.optionalString testRemoteAuth ''
|
'' + lib.optionalString testRemoteAuth ''
|
||||||
subtest "Remote authenticated jmx", sub {
|
subtest "Remote authenticated jmx", sub {
|
||||||
# Doesn't work if not enabled
|
# Doesn't work if not enabled
|
||||||
$cass0->waitUntilSucceeds("nc -z localhost 7199");
|
$cass0->waitUntilSucceeds("nc -z localhost ${jmxPortS}");
|
||||||
$cass1->fail("nc -z 192.168.1.1 7199");
|
$cass1->fail("nc -z 192.168.1.1 ${toString jmxPort}");
|
||||||
$cass1->fail("nodetool -h 192.168.1.1 status");
|
$cass1->fail("nodetool -p ${jmxPortS} -h 192.168.1.1 status");
|
||||||
|
|
||||||
# Works if enabled
|
# Works if enabled
|
||||||
$cass1->waitUntilSucceeds("nc -z localhost 7199");
|
$cass1->waitUntilSucceeds("nc -z localhost ${toString jmxPort}");
|
||||||
$cass0->succeed("nodetool -h 192.168.1.2 ${jmxAuthArgs} status");
|
$cass0->succeed("nodetool -p ${jmxPortS} -h 192.168.1.2 ${jmxAuthArgs} status");
|
||||||
};
|
};
|
||||||
'' + ''
|
'' + ''
|
||||||
subtest "Break and fix node", sub {
|
subtest "Break and fix node", sub {
|
||||||
$cass1->block;
|
$cass1->block;
|
||||||
$cass0->waitUntilSucceeds("nodetool status --resolve-ip | egrep -c '^DN[[:space:]]+cass1'");
|
$cass0->waitUntilSucceeds("nodetool status -p ${jmxPortS} --resolve-ip | egrep -c '^DN[[:space:]]+cass1'");
|
||||||
$cass0->succeed("nodetool status | egrep -c '^UN' | grep 1");
|
$cass0->succeed("nodetool status -p ${jmxPortS} | egrep -c '^UN' | grep 1");
|
||||||
$cass1->unblock;
|
$cass1->unblock;
|
||||||
$cass1->waitUntilSucceeds("nodetool ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
$cass1->waitUntilSucceeds("nodetool -p ${jmxPortS} ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
||||||
$cass0->succeed("nodetool status | egrep -c '^UN' | grep 2");
|
$cass0->succeed("nodetool status -p ${jmxPortS} | egrep -c '^UN' | grep 2");
|
||||||
};
|
};
|
||||||
subtest "Replace crashed node", sub {
|
subtest "Replace crashed node", sub {
|
||||||
$cass1->crash;
|
$cass1->crash;
|
||||||
$cass2->waitForUnit("cassandra.service");
|
$cass2->waitForUnit("cassandra.service");
|
||||||
$cass0->waitUntilFails("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
$cass0->waitUntilFails("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
||||||
$cass0->waitUntilSucceeds("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass2'");
|
$cass0->waitUntilSucceeds("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass2'");
|
||||||
};
|
};
|
||||||
'';
|
'';
|
||||||
})
|
})
|
||||||
|
26
nixos/tests/initdb.nix
Normal file
26
nixos/tests/initdb.nix
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
let
|
||||||
|
pkgs = import <nixpkgs> { };
|
||||||
|
in
|
||||||
|
with import <nixpkgs/nixos/lib/testing.nix> { inherit pkgs; system = builtins.currentSystem; };
|
||||||
|
with pkgs.lib;
|
||||||
|
|
||||||
|
makeTest {
|
||||||
|
name = "pg-initdb";
|
||||||
|
|
||||||
|
machine = {...}:
|
||||||
|
{
|
||||||
|
documentation.enable = false;
|
||||||
|
services.postgresql.enable = true;
|
||||||
|
services.postgresql.package = pkgs.postgresql_9_6;
|
||||||
|
environment.pathsToLink = [
|
||||||
|
"/share/postgresql"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
$machine->start;
|
||||||
|
$machine->succeed("sudo -u postgres initdb -D /tmp/testpostgres2");
|
||||||
|
$machine->shutdown;
|
||||||
|
'';
|
||||||
|
|
||||||
|
}
|
@ -19,7 +19,7 @@ import ./make-test.nix ({ pkgs, ...} : {
|
|||||||
services.mysql.initialScript = pkgs.writeText "mysql-init.sql" ''
|
services.mysql.initialScript = pkgs.writeText "mysql-init.sql" ''
|
||||||
CREATE USER 'passworduser'@'localhost' IDENTIFIED BY 'password123';
|
CREATE USER 'passworduser'@'localhost' IDENTIFIED BY 'password123';
|
||||||
'';
|
'';
|
||||||
services.mysql.package = pkgs.mysql;
|
services.mysql.package = pkgs.mysql57;
|
||||||
};
|
};
|
||||||
|
|
||||||
mariadb =
|
mariadb =
|
||||||
|
50
pkgs/applications/altcoins/ledger-live-desktop/default.nix
Normal file
50
pkgs/applications/altcoins/ledger-live-desktop/default.nix
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
{ stdenv, fetchurl, makeDesktopItem, makeWrapper, appimage-run }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "ledger-live-desktop";
|
||||||
|
version = "1.12.0";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
|
||||||
|
sha256 = "0sn0ri8kqvy36d6vjwsb0mh54nwic58416m6q5drl1schsn6wyvj";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
buildInputs = [ appimage-run ];
|
||||||
|
|
||||||
|
desktopIcon = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/LedgerHQ/${pname}/v${version}/build/icon.png";
|
||||||
|
sha256 = "1mmfaf0yk7xf1kgbs3ka8wsbz1qgh60xj6z91ica1i7lw2qbdd5h";
|
||||||
|
};
|
||||||
|
|
||||||
|
desktopItem = makeDesktopItem {
|
||||||
|
name = pname;
|
||||||
|
exec = "${placeholder "out"}/bin/${pname}";
|
||||||
|
icon = pname;
|
||||||
|
desktopName = "Ledger Live";
|
||||||
|
categories = "Utility;";
|
||||||
|
};
|
||||||
|
|
||||||
|
unpackPhase = ":";
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
${desktopItem.buildCommand}
|
||||||
|
install -D $src $out/share/${src.name}
|
||||||
|
install -Dm -x ${desktopIcon} \
|
||||||
|
$out/share/icons/hicolor/1024x1024/apps/${pname}.png
|
||||||
|
makeWrapper ${appimage-run}/bin/appimage-run $out/bin/${pname} \
|
||||||
|
--add-flags $out/share/${src.name}
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Wallet app for Ledger Nano S and Ledger Blue";
|
||||||
|
homepage = "https://www.ledger.com/live";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ thedavidmeister ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "lnd";
|
pname = "lnd";
|
||||||
version = "0.7.0-beta";
|
version = "0.7.1-beta";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lightningnetwork";
|
owner = "lightningnetwork";
|
||||||
repo = "lnd";
|
repo = "lnd";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0d6m1vfy33rg6d7qmkpydiypav1girxsnxan9njyjz0vhinmq0sx";
|
sha256 = "1c0sm0lavdai4w6d283q54knggw9d42vvqmglnv2h9swbw1l23ry";
|
||||||
};
|
};
|
||||||
|
|
||||||
modSha256 = "0akxi7xhyz7xx0vc003abidva02sp940cc2gfjg4fmzkc95cajc9";
|
modSha256 = "13hjaf4bswk8g57lyxzdlqqp4a6ddl3qm6n4jja4b1h58mlbil73";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Lightning Network Daemon";
|
description = "Lightning Network Daemon";
|
||||||
|
@ -25,13 +25,13 @@ in
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "monero-gui-${version}";
|
name = "monero-gui-${version}";
|
||||||
version = "0.14.1.0";
|
version = "0.14.1.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "monero-project";
|
owner = "monero-project";
|
||||||
repo = "monero-gui";
|
repo = "monero-gui";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0ilx47771faygf97wilm64xnqxgxa3b43q0g9v014npk0qj8pc31";
|
sha256 = "1rm043r6y2mzy8pclnzbjjfxgps8pkfa2b92p66k8y8rdmgq6m1k";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
|
nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
|
||||||
@ -48,7 +48,6 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
./move-log-file.patch
|
./move-log-file.patch
|
||||||
./move-translations-dir.patch
|
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
@ -83,10 +82,6 @@ stdenv.mkDerivation rec {
|
|||||||
mkdir -p $out/share/applications
|
mkdir -p $out/share/applications
|
||||||
cp ${desktopItem}/share/applications/* $out/share/applications
|
cp ${desktopItem}/share/applications/* $out/share/applications
|
||||||
|
|
||||||
# install translations
|
|
||||||
mkdir -p $out/share/translations
|
|
||||||
cp translations/*.qm $out/share/translations/
|
|
||||||
|
|
||||||
# install icons
|
# install icons
|
||||||
for n in 16 24 32 48 64 96 128 256; do
|
for n in 16 24 32 48 64 96 128 256; do
|
||||||
size=$n"x"$n
|
size=$n"x"$n
|
||||||
@ -97,10 +92,11 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Private, secure, untraceable currency";
|
description = "Private, secure, untraceable currency";
|
||||||
homepage = https://getmonero.org/;
|
homepage = https://getmonero.org/;
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = platforms.all;
|
||||||
maintainers = with maintainers; [ rnhmjoj ];
|
badPlatforms = platforms.darwin;
|
||||||
|
maintainers = with maintainers; [ rnhmjoj ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -13,18 +13,3 @@ index a51568d..5a9f683 100644
|
|||||||
parser.addOption(logPathOption);
|
parser.addOption(logPathOption);
|
||||||
parser.addHelpOption();
|
parser.addHelpOption();
|
||||||
parser.process(app);
|
parser.process(app);
|
||||||
diff --git a/Logger.cpp b/Logger.cpp
|
|
||||||
index 6b1daba..c357762 100644
|
|
||||||
--- a/Logger.cpp
|
|
||||||
+++ b/Logger.cpp
|
|
||||||
@@ -28,8 +28,8 @@ static const QString defaultLogName = "monero-wallet-gui.log";
|
|
||||||
static const QString appFolder = "Library/Logs";
|
|
||||||
#else // linux + bsd
|
|
||||||
//HomeLocation = "~"
|
|
||||||
- static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0);
|
|
||||||
- static const QString appFolder = ".bitmonero";
|
|
||||||
+ static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::CacheLocation).at(0);
|
|
||||||
+ static const QString appFolder = "bitmonero";
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
diff --git a/TranslationManager.cpp b/TranslationManager.cpp
|
|
||||||
index e7fc52a..83534cc 100644
|
|
||||||
--- a/TranslationManager.cpp
|
|
||||||
+++ b/TranslationManager.cpp
|
|
||||||
@@ -25,7 +25,7 @@ bool TranslationManager::setLanguage(const QString &language)
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
- QString dir = qApp->applicationDirPath() + "/translations";
|
|
||||||
+ QString dir = qApp->applicationDirPath() + "/../share/translations";
|
|
||||||
QString filename = "monero-core_" + language;
|
|
||||||
|
|
||||||
qDebug("%s: loading translation file '%s' from '%s'",
|
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchFromGitHub, cmake, pkgconfig, vlc
|
{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig, vlc
|
||||||
, qtbase, qtmultimedia, qtsvg, qttools
|
, qtbase, qtmultimedia, qtsvg, qttools
|
||||||
|
|
||||||
# Cantata doesn't build with cdparanoia enabled so we disable that
|
# Cantata doesn't build with cdparanoia enabled so we disable that
|
||||||
@ -35,7 +35,7 @@ let
|
|||||||
|
|
||||||
withUdisks = (withTaglib && withDevices);
|
withUdisks = (withTaglib && withDevices);
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in mkDerivation rec {
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
@ -46,20 +46,20 @@ in stdenv.mkDerivation rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ vlc qtbase qtmultimedia qtsvg ]
|
buildInputs = [ vlc qtbase qtmultimedia qtsvg ]
|
||||||
++ stdenv.lib.optionals withTaglib [ taglib taglib_extras ]
|
++ lib.optionals withTaglib [ taglib taglib_extras ]
|
||||||
++ stdenv.lib.optionals withReplaygain [ ffmpeg speex mpg123 ]
|
++ lib.optionals withReplaygain [ ffmpeg speex mpg123 ]
|
||||||
++ stdenv.lib.optional withCdda cdparanoia
|
++ lib.optional withCdda cdparanoia
|
||||||
++ stdenv.lib.optional withCddb libcddb
|
++ lib.optional withCddb libcddb
|
||||||
++ stdenv.lib.optional withLame lame
|
++ lib.optional withLame lame
|
||||||
++ stdenv.lib.optional withMtp libmtp
|
++ lib.optional withMtp libmtp
|
||||||
++ stdenv.lib.optional withMusicbrainz libmusicbrainz5
|
++ lib.optional withMusicbrainz libmusicbrainz5
|
||||||
++ stdenv.lib.optional withUdisks udisks2;
|
++ lib.optional withUdisks udisks2;
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkgconfig qttools ];
|
nativeBuildInputs = [ cmake pkgconfig qttools ];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
cmakeFlags = stdenv.lib.flatten [
|
cmakeFlags = lib.flatten [
|
||||||
(fstats withTaglib [ "TAGLIB" "TAGLIB_EXTRAS" ])
|
(fstats withTaglib [ "TAGLIB" "TAGLIB_EXTRAS" ])
|
||||||
(fstats withReplaygain [ "FFMPEG" "MPG123" "SPEEXDSP" ])
|
(fstats withReplaygain [ "FFMPEG" "MPG123" "SPEEXDSP" ])
|
||||||
(fstat withCdda "CDPARANOIA")
|
(fstat withCdda "CDPARANOIA")
|
||||||
@ -76,7 +76,7 @@ in stdenv.mkDerivation rec {
|
|||||||
"-DENABLE_HTTPS_SUPPORT=ON"
|
"-DENABLE_HTTPS_SUPPORT=ON"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with lib; {
|
||||||
homepage = https://github.com/cdrummond/cantata;
|
homepage = https://github.com/cdrummond/cantata;
|
||||||
description = "A graphical client for MPD";
|
description = "A graphical client for MPD";
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchFromGitHub, makeWrapper, chromaprint
|
{ stdenv, mkDerivation, fetchFromGitHub, chromaprint
|
||||||
, fftw, flac, faad2, glibcLocales, mp4v2
|
, fftw, flac, faad2, glibcLocales, mp4v2
|
||||||
, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
|
, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
|
||||||
, libGLU, libxcb, lilv, lv2, opusfile
|
, libGLU, libxcb, lilv, lv2, opusfile
|
||||||
@ -6,7 +6,7 @@
|
|||||||
, qtx11extras, rubberband, scons, sqlite, taglib, upower, vampSDK
|
, qtx11extras, rubberband, scons, sqlite, taglib, upower, vampSDK
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
mkDerivation rec {
|
||||||
name = "mixxx-${version}";
|
name = "mixxx-${version}";
|
||||||
version = "2.2.1";
|
version = "2.2.1";
|
||||||
|
|
||||||
@ -17,8 +17,6 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "1q6c2wfpprsx7s7nz1w0mhm2yhikj54jxcv61kwylxx3n5k2na9r";
|
sha256 = "1q6c2wfpprsx7s7nz1w0mhm2yhikj54jxcv61kwylxx3n5k2na9r";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout libsndfile
|
chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout libsndfile
|
||||||
libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkgconfig portaudio portmidi protobuf qtbase qtscript qtsvg
|
libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkgconfig portaudio portmidi protobuf qtbase qtscript qtsvg
|
||||||
@ -34,10 +32,9 @@ stdenv.mkDerivation rec {
|
|||||||
"opus=1"
|
"opus=1"
|
||||||
];
|
];
|
||||||
|
|
||||||
fixupPhase = ''
|
qtWrapperArgs = [
|
||||||
wrapProgram $out/bin/mixxx \
|
"--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive"
|
||||||
--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive;
|
];
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = https://mixxx.org;
|
homepage = https://mixxx.org;
|
||||||
|
@ -24,13 +24,13 @@ let
|
|||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "pulseaudio-modules-bt-${version}";
|
name = "pulseaudio-modules-bt-${version}";
|
||||||
version = "1.1.99";
|
version = "1.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "EHfive";
|
owner = "EHfive";
|
||||||
repo = "pulseaudio-modules-bt";
|
repo = "pulseaudio-modules-bt";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0x670xbd62r3fs9a8pa5p4ppvxn6m64hvlrqa702gvikcvyrmwcg";
|
sha256 = "00xmidcw4fvpbmg0nsm2gk5zw26fpyjbc0pjk6mzr570zbnyqqbn";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, alsaLib, libjack2, dbus, qtbase, qttools, qtx11extras }:
|
{ stdenv, mkDerivation, fetchurl, pkgconfig, alsaLib, libjack2, dbus, qtbase, qttools, qtx11extras }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
mkDerivation rec {
|
||||||
version = "0.5.8";
|
version = "0.5.9";
|
||||||
name = "qjackctl-${version}";
|
name = "qjackctl-${version}";
|
||||||
|
|
||||||
# some dependencies such as killall have to be installed additionally
|
# some dependencies such as killall have to be installed additionally
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/qjackctl/${name}.tar.gz";
|
url = "mirror://sourceforge/qjackctl/${name}.tar.gz";
|
||||||
sha256 = "1r5hf3hcr20n93jrrm7xk2zf6yx264pcr4d10cpybhrancxh602n";
|
sha256 = "1saywsda9m124rmjp7i3n0llryaliabjxhqhvqr6dm983qy7pypk";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, qt5, alsaLib, libjack2 }:
|
{ stdenv, fetchurl, pkgconfig, qt5, alsaLib, libjack2 }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "0.5.4";
|
version = "0.5.5";
|
||||||
name = "qmidinet-${version}";
|
name = "qmidinet-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/qmidinet/${name}.tar.gz";
|
url = "mirror://sourceforge/qmidinet/${name}.tar.gz";
|
||||||
sha256 = "1il4b8v3azb33yg4fy78npi56xlkz4n60f17sgvckyxb2yj57jwq";
|
sha256 = "0az20hh14g7k6h779dk1b6fshxnfj2664sj6ypgllzriwv430x9y";
|
||||||
};
|
};
|
||||||
|
|
||||||
hardeningDisable = [ "format" ];
|
hardeningDisable = [ "format" ];
|
||||||
|
@ -3,11 +3,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "qsampler-${version}";
|
name = "qsampler-${version}";
|
||||||
version = "0.5.5";
|
version = "0.5.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/qsampler/${name}.tar.gz";
|
url = "mirror://sourceforge/qsampler/${name}.tar.gz";
|
||||||
sha256 = "1li2p8zknrdr62wlaassfvgski0rlbr3lvrzywbh32dq8j50w8zf";
|
sha256 = "0lx2mzyajmjckwfvgf8p8bahzpj0n0lflyip41jk32nwd2hzjhbs";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig qttools ];
|
nativeBuildInputs = [ autoconf automake libtool pkgconfig qttools ];
|
||||||
|
@ -1,20 +1,21 @@
|
|||||||
{ alsaLib, autoconf, automake, dssi, fetchurl, libjack2
|
{ alsaLib, autoconf, automake, dssi, fetchurl, libjack2
|
||||||
, ladspaH, ladspaPlugins, liblo, libmad, libsamplerate, libsndfile
|
, ladspaH, ladspaPlugins, liblo, libmad, libsamplerate, libsndfile
|
||||||
, libtool, libvorbis, lilv, lv2, pkgconfig, qttools, qtbase, rubberband, serd
|
, libtool, libvorbis, lilv, lv2, pkgconfig, qttools, qtbase, rubberband, serd
|
||||||
, sord, sratom, stdenv, suil }:
|
, sord, sratom, stdenv, suil, wrapQtAppsHook }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "qtractor";
|
pname = "qtractor";
|
||||||
version = "0.9.8";
|
version = "0.9.9";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
||||||
sha256 = "1llajl450yh7bka32ngm4xdva6a2nnxzjc497ydh07rwkap16smx";
|
sha256 = "0qlbccdxyfy0f09y6qg1xkg12fm67bf2f2c27c22cg8lzk9ang5j";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
autoconf automake libtool pkgconfig qttools
|
autoconf automake libtool pkgconfig qttools wrapQtAppsHook
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
[ alsaLib dssi libjack2 ladspaH
|
[ alsaLib dssi libjack2 ladspaH
|
||||||
ladspaPlugins liblo libmad libsamplerate libsndfile libtool
|
ladspaPlugins liblo libmad libsamplerate libsndfile libtool
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "spectmorph-${version}";
|
name = "spectmorph-${version}";
|
||||||
version = "0.4.1";
|
version = "0.5.0";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://spectmorph.org/files/releases/${name}.tar.bz2";
|
url = "http://spectmorph.org/files/releases/${name}.tar.bz2";
|
||||||
sha256 = "0z00yvv3jl8qsx6bz9msmg09mdnj5r5d4ws5bmnylwxk182whbrv";
|
sha256 = "003wznv3sy1b4g55vqii9pr3i3bb3zmj7nqvwrz7vjsfn2xyd1bn";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ libjack2 lv2 glib qt5.qtbase libao cairo libsndfile fftwFloat ];
|
buildInputs = [ libjack2 lv2 glib qt5.qtbase libao cairo libsndfile fftwFloat ];
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ fetchurl, stdenv, squashfsTools, xorg, alsaLib, makeWrapper, openssl, freetype
|
{ fetchurl, stdenv, squashfsTools, xorg, alsaLib, makeWrapper, openssl, freetype
|
||||||
, glib, pango, cairo, atk, gdk-pixbuf, gtk2, cups, nspr, nss, libpng, libnotify
|
, glib, pango, cairo, atk, gdk-pixbuf, gtk2, cups, nspr, nss, libpng, libnotify
|
||||||
, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg_3, curl, zlib, gnome3
|
, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg_3, curl, zlib, gnome3
|
||||||
, at-spi2-atk, at-spi2-core, apulse
|
, at-spi2-atk
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
@ -10,22 +10,20 @@ let
|
|||||||
# If an update breaks things, one of those might have valuable info:
|
# If an update breaks things, one of those might have valuable info:
|
||||||
# https://aur.archlinux.org/packages/spotify/
|
# https://aur.archlinux.org/packages/spotify/
|
||||||
# https://community.spotify.com/t5/Desktop-Linux
|
# https://community.spotify.com/t5/Desktop-Linux
|
||||||
version = "1.1.10.546.ge08ef575-19";
|
version = "1.0.96.181.gf6bc1b6b-12";
|
||||||
# To get the latest stable revision:
|
# To get the latest stable revision:
|
||||||
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
|
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
|
||||||
# To get general information:
|
# To get general information:
|
||||||
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
|
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
|
||||||
# More examples of api usage:
|
# More examples of api usage:
|
||||||
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
|
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
|
||||||
rev = "36";
|
rev = "30";
|
||||||
|
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
alsaLib
|
alsaLib
|
||||||
apulse
|
|
||||||
atk
|
atk
|
||||||
at-spi2-atk
|
at-spi2-atk
|
||||||
at-spi2-core
|
|
||||||
cairo
|
cairo
|
||||||
cups
|
cups
|
||||||
curl
|
curl
|
||||||
@ -74,7 +72,7 @@ stdenv.mkDerivation {
|
|||||||
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
|
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
|
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
|
||||||
sha512 = "c49f1a86a9b737e64a475bbe62754a36f607669e908eb725a2395f0a0a6b95968e0c8ce27ab2c8b6c92fe8cbacb1ef58de11c79b92dc0f58c2c6d3a140706a1f";
|
sha512 = "859730fbc80067f0828f7e13eee9a21b13b749f897a50e17c2da4ee672785cfd79e1af6336e609529d105e040dc40f61b6189524783ac93d49f991c4ea8b3c56";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ squashfsTools makeWrapper ];
|
buildInputs = [ squashfsTools makeWrapper ];
|
||||||
@ -136,8 +134,6 @@ stdenv.mkDerivation {
|
|||||||
librarypath="${stdenv.lib.makeLibraryPath deps}:$libdir"
|
librarypath="${stdenv.lib.makeLibraryPath deps}:$libdir"
|
||||||
wrapProgram $out/share/spotify/spotify \
|
wrapProgram $out/share/spotify/spotify \
|
||||||
--prefix LD_LIBRARY_PATH : "$librarypath" \
|
--prefix LD_LIBRARY_PATH : "$librarypath" \
|
||||||
--prefix LD_LIBRARY_PATH : "${apulse}/lib/apulse" \
|
|
||||||
--set APULSE_PLAYBACK_DEVICE plug:dmix \
|
|
||||||
--prefix PATH : "${gnome3.zenity}/bin"
|
--prefix PATH : "${gnome3.zenity}/bin"
|
||||||
|
|
||||||
# fix Icon line in the desktop file (#48062)
|
# fix Icon line in the desktop file (#48062)
|
||||||
@ -162,7 +158,7 @@ stdenv.mkDerivation {
|
|||||||
homepage = https://www.spotify.com/;
|
homepage = https://www.spotify.com/;
|
||||||
description = "Play music from the Spotify music service";
|
description = "Play music from the Spotify music service";
|
||||||
license = licenses.unfree;
|
license = licenses.unfree;
|
||||||
maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri timokau angristan ];
|
maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri timokau ];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec {
|
|||||||
sha256 = "1iybk9xrrvhrcl2xl5r2xhyn1ydhrgwnnb8ldhsw5c16b32z03q1";
|
sha256 = "1iybk9xrrvhrcl2xl5r2xhyn1ydhrgwnnb8ldhsw5c16b32z03q1";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "0879p1h32259schmy8j3xnwpw3sw80f8mrj8s6b5aihi3yyzz521";
|
cargoSha256 = "1dzg4sb95ixjfhx6n4w2rgrq4481vw01nsdrbm746mz7nm71csk3";
|
||||||
|
|
||||||
cargoBuildFlags = [
|
cargoBuildFlags = [
|
||||||
"--no-default-features"
|
"--no-default-features"
|
||||||
|
@ -5,13 +5,18 @@
|
|||||||
let
|
let
|
||||||
glfw-git = glfw.overrideAttrs (oldAttrs: rec {
|
glfw-git = glfw.overrideAttrs (oldAttrs: rec {
|
||||||
name = "glfw-git-${version}";
|
name = "glfw-git-${version}";
|
||||||
version = "unstable-2018-05-29";
|
version = "2019-06-30";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "glfw";
|
owner = "AndrewBelt";
|
||||||
repo = "glfw";
|
repo = "glfw";
|
||||||
rev = "0be4f3f75aebd9d24583ee86590a38e741db0904";
|
rev = "d9ab59efc781c392128a449361a381fcc93cf6f3";
|
||||||
sha256 = "0zbcjgc7ks25yi949k0wjknfl00a4dqmz45mhp00k62vlq2sj0i5";
|
sha256 = "1ykkq6qq8y6j5hlfj2zp1p87kr33vwhywziprz20v5avx1q7rjm8";
|
||||||
};
|
};
|
||||||
|
# We patch the source to export a function that was added to the glfw fork
|
||||||
|
# for Rack so it is present when we build glfw as a shared library.
|
||||||
|
# See https://github.com/AndrewBelt/glfw/pull/1 for discussion of this issue
|
||||||
|
# with upstream.
|
||||||
|
patches = [ ./glfw.patch ];
|
||||||
buildInputs = oldAttrs.buildInputs ++ [ libXext libXi ];
|
buildInputs = oldAttrs.buildInputs ++ [ libXext libXi ];
|
||||||
});
|
});
|
||||||
pfft-source = fetchFromBitbucket {
|
pfft-source = fetchFromBitbucket {
|
||||||
@ -23,32 +28,31 @@ let
|
|||||||
in
|
in
|
||||||
with stdenv.lib; stdenv.mkDerivation rec {
|
with stdenv.lib; stdenv.mkDerivation rec {
|
||||||
name = "VCV-Rack-${version}";
|
name = "VCV-Rack-${version}";
|
||||||
version = "0.6.2b";
|
version = "1.1.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "VCVRack";
|
owner = "VCVRack";
|
||||||
repo = "Rack";
|
repo = "Rack";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "17ynhxcci6dyn1yi871fd8yli4924fh12pmk510djwkcj5crhas6";
|
sha256 = "16q3x0jpwkdwwvh7rn472w7nfjf81s10z9c7bx011kk7rgk88hh2";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [ ./rack-minimize-vendoring.patch ];
|
||||||
|
|
||||||
prePatch = ''
|
prePatch = ''
|
||||||
ln -s ${pfft-source} dep/jpommier-pffft-source
|
cp -r ${pfft-source} dep/jpommier-pffft-source
|
||||||
|
|
||||||
mkdir -p dep/include
|
mkdir -p dep/include
|
||||||
|
|
||||||
cp dep/jpommier-pffft-source/*.h dep/include
|
cp dep/jpommier-pffft-source/*.h dep/include
|
||||||
cp dep/nanosvg/src/*.h dep/include
|
cp dep/nanosvg/**/*.h dep/include
|
||||||
cp dep/nanovg/src/*.h dep/include
|
cp dep/nanovg/src/*.h dep/include
|
||||||
cp dep/osdialog/*.h dep/include
|
cp dep/osdialog/*.h dep/include
|
||||||
cp dep/oui-blendish/*.h dep/include
|
cp dep/oui-blendish/*.h dep/include
|
||||||
|
|
||||||
substituteInPlace include/audio.hpp --replace "<RtAudio.h>" "<rtaudio/RtAudio.h>"
|
substituteInPlace include/audio.hpp --replace "<RtAudio.h>" "<rtaudio/RtAudio.h>"
|
||||||
substituteInPlace compile.mk --replace "-march=nocona" ""
|
substituteInPlace compile.mk --replace "-march=nocona" ""
|
||||||
substituteInPlace Makefile \
|
|
||||||
--replace "-Wl,-Bstatic" "" \
|
|
||||||
--replace "-lglfw3" "-lglfw"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
@ -60,13 +64,12 @@ with stdenv.lib; stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
install -D -m755 -t $out/bin Rack
|
install -D -m755 -t $out/bin Rack
|
||||||
cp -r res $out/
|
|
||||||
|
|
||||||
mkdir -p $out/share/rack
|
mkdir -p $out/share/vcv-rack
|
||||||
cp LICENSE.txt LICENSE-dist.txt $out/share/rack
|
cp -r res Core.json template.vcv LICENSE* cacert.pem $out/share/vcv-rack
|
||||||
|
|
||||||
# Override the default global resource file directory
|
# Override the default global resource file directory
|
||||||
wrapProgram $out/bin/Rack --add-flags "-g $out"
|
wrapProgram $out/bin/Rack --add-flags "-s $out/share/vcv-rack"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
13
pkgs/applications/audio/vcv-rack/glfw.patch
Normal file
13
pkgs/applications/audio/vcv-rack/glfw.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
diff --git a/src/init.c b/src/init.c
|
||||||
|
index af4a579e..317e25b8 100644
|
||||||
|
--- a/src/init.c
|
||||||
|
+++ b/src/init.c
|
||||||
|
@@ -339,7 +339,7 @@ GLFWAPI GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun cbfun)
|
||||||
|
|
||||||
|
char glfwOpenedFilename[1024];
|
||||||
|
|
||||||
|
-const char *glfwGetOpenedFilename()
|
||||||
|
+GLFWAPI const char *glfwGetOpenedFilename()
|
||||||
|
{
|
||||||
|
if (glfwOpenedFilename[0])
|
||||||
|
{
|
@ -0,0 +1,14 @@
|
|||||||
|
diff -ru a/Makefile b/Makefile
|
||||||
|
--- a/Makefile 1970-01-01 01:00:01.000000000 +0100
|
||||||
|
+++ b/Makefile 1970-01-01 01:00:01.000000000 +0100
|
||||||
|
@@ -21,8 +21,8 @@
|
||||||
|
build/dep/osdialog/osdialog_gtk2.c.o: FLAGS += $(shell pkg-config --cflags gtk+-2.0)
|
||||||
|
|
||||||
|
LDFLAGS += -rdynamic \
|
||||||
|
- dep/lib/libglfw3.a dep/lib/libGLEW.a dep/lib/libjansson.a dep/lib/libspeexdsp.a dep/lib/libzip.a dep/lib/libz.a dep/lib/librtmidi.a dep/lib/librtaudio.a dep/lib/libcurl.a dep/lib/libssl.a dep/lib/libcrypto.a \
|
||||||
|
- -lpthread -lGL -ldl -lX11 -lasound -ljack \
|
||||||
|
+ -lGLEW -ljansson -lspeexdsp -lzip -lz -lrtmidi -lrtaudio -lcurl -lssl -lcrypto \
|
||||||
|
+ -lpthread -lGL -ldl -lX11 -lasound -ljack -lglfw \
|
||||||
|
$(shell pkg-config --libs gtk+-2.0)
|
||||||
|
TARGET := Rack
|
||||||
|
endif
|
@ -13,9 +13,9 @@ let
|
|||||||
sha256Hash = "090rc307mfm0yw4h592l9307lq4aas8zq0ci49csn6kxhds8rsrm";
|
sha256Hash = "090rc307mfm0yw4h592l9307lq4aas8zq0ci49csn6kxhds8rsrm";
|
||||||
};
|
};
|
||||||
betaVersion = {
|
betaVersion = {
|
||||||
version = "3.5.0.18"; # "Android Studio 3.5 RC 1"
|
version = "3.5.0.19"; # "Android Studio 3.5 RC 2"
|
||||||
build = "191.5717577";
|
build = "191.5763348";
|
||||||
sha256Hash = "1p0w7xrfk33m1wvwnc3s3s7w9rm8wn9b3bjn566w2qpjv5ngdkn3";
|
sha256Hash = "0z7mjpk0cqwk4ysd3cdsahlg70ax90353qvvag9wgyzl2x2sr6d2";
|
||||||
};
|
};
|
||||||
latestVersion = { # canary & dev
|
latestVersion = { # canary & dev
|
||||||
version = "3.6.0.3"; # "Android Studio 3.6 Canary 3"
|
version = "3.6.0.3"; # "Android Studio 3.6 Canary 3"
|
||||||
|
@ -50,4 +50,4 @@ self:
|
|||||||
|
|
||||||
elpaPackages = super // overrides;
|
elpaPackages = super // overrides;
|
||||||
|
|
||||||
in elpaPackages // { inherit elpaBuild elpaPackages; }
|
in elpaPackages // { inherit elpaBuild; }
|
||||||
|
@ -1,57 +0,0 @@
|
|||||||
{ stdenv, fetchFromGitHub, cmake, emacs, libvterm-neovim }:
|
|
||||||
|
|
||||||
let
|
|
||||||
emacsSources = stdenv.mkDerivation {
|
|
||||||
name = emacs.name + "-sources";
|
|
||||||
src = emacs.src;
|
|
||||||
|
|
||||||
dontConfigure = true;
|
|
||||||
dontBuild = true;
|
|
||||||
doCheck = false;
|
|
||||||
fixupPhase = ":";
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out
|
|
||||||
cp -a * $out
|
|
||||||
'';
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
libvterm = libvterm-neovim.overrideAttrs(old: rec {
|
|
||||||
pname = "libvterm-neovim";
|
|
||||||
version = "2019-04-27";
|
|
||||||
name = pname + "-" + version;
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "neovim";
|
|
||||||
repo = "libvterm";
|
|
||||||
rev = "89675ffdda615ffc3f29d1c47a933f4f44183364";
|
|
||||||
sha256 = "0l9ixbj516vl41v78fi302ws655xawl7s94gmx1kb3fmfgamqisy";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
|
||||||
name = "emacs-libvterm-${version}";
|
|
||||||
version = "unstable-2019-07-22";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "akermu";
|
|
||||||
repo = "emacs-libvterm";
|
|
||||||
rev = "301fe9fdfd5fb2496c8428a11e0812fd8a4c0820";
|
|
||||||
sha256 = "0i1hn5gcxayqcbjrnpgczvbicq2vsyn59646ary3crs0mz9wlbpr";
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
|
||||||
buildInputs = [ emacs libvterm ];
|
|
||||||
|
|
||||||
cmakeFlags = [
|
|
||||||
"-DEMACS_SOURCE=${emacsSources}"
|
|
||||||
"-DUSE_SYSTEM_LIBVTERM=True"
|
|
||||||
];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
install -d $out/share/emacs/site-lisp
|
|
||||||
install ../*.el $out/share/emacs/site-lisp
|
|
||||||
install ../*.so $out/share/emacs/site-lisp
|
|
||||||
'';
|
|
||||||
}
|
|
145
pkgs/applications/editors/emacs-modes/manual-packages.nix
Normal file
145
pkgs/applications/editors/emacs-modes/manual-packages.nix
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
{ lib, external, pkgs }: self: with self; with lib.licenses; {
|
||||||
|
|
||||||
|
elisp-ffi = melpaBuild rec {
|
||||||
|
pname = "elisp-ffi";
|
||||||
|
version = "1.0.0";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "skeeto";
|
||||||
|
repo = "elisp-ffi";
|
||||||
|
rev = "${version}";
|
||||||
|
sha256 = "0z2n3h5l5fj8wl8i1ilfzv11l3zba14sgph6gz7dx7q12cnp9j22";
|
||||||
|
};
|
||||||
|
buildInputs = [ external.libffi ];
|
||||||
|
preBuild = "make";
|
||||||
|
recipe = pkgs.writeText "recipe" ''
|
||||||
|
(elisp-ffi
|
||||||
|
:repo "skeeto/elisp-ffi"
|
||||||
|
:fetcher github
|
||||||
|
:files ("ffi-glue" "ffi.el"))
|
||||||
|
'';
|
||||||
|
meta = {
|
||||||
|
description = "Emacs Lisp Foreign Function Interface";
|
||||||
|
longDescription = ''
|
||||||
|
This library provides an FFI for Emacs Lisp so that Emacs
|
||||||
|
programs can invoke functions in native libraries. It works by
|
||||||
|
driving a subprocess to do the heavy lifting, passing result
|
||||||
|
values on to Emacs.
|
||||||
|
'';
|
||||||
|
license = publicDomain;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
agda2-mode = with external; trivialBuild {
|
||||||
|
pname = "agda-mode";
|
||||||
|
version = Agda.version;
|
||||||
|
|
||||||
|
phases = [ "buildPhase" "installPhase" ];
|
||||||
|
|
||||||
|
# already byte-compiled by Agda builder
|
||||||
|
buildPhase = ''
|
||||||
|
agda=`${Agda}/bin/agda-mode locate`
|
||||||
|
cp `dirname $agda`/*.el* .
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Agda2-mode for Emacs extracted from Agda package";
|
||||||
|
longDescription = ''
|
||||||
|
Wrapper packages that liberates init.el from `agda-mode locate` magic.
|
||||||
|
Simply add this to user profile or systemPackages and do `(require 'agda2)` in init.el.
|
||||||
|
'';
|
||||||
|
homepage = Agda.meta.homepage;
|
||||||
|
license = Agda.meta.license;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-R-object-popup =
|
||||||
|
callPackage ./ess-R-object-popup { };
|
||||||
|
|
||||||
|
filesets-plus = callPackage ./filesets-plus { };
|
||||||
|
|
||||||
|
font-lock-plus = callPackage ./font-lock-plus { };
|
||||||
|
|
||||||
|
ghc-mod = melpaBuild rec {
|
||||||
|
pname = "ghc";
|
||||||
|
version = external.ghc-mod.version;
|
||||||
|
src = external.ghc-mod.src;
|
||||||
|
packageRequires = [ haskell-mode ];
|
||||||
|
propagatedUserEnvPkgs = [ external.ghc-mod ];
|
||||||
|
recipe = pkgs.writeText "recipe" ''
|
||||||
|
(ghc-mod :repo "DanielG/ghc-mod" :fetcher github :files ("elisp/*.el"))
|
||||||
|
'';
|
||||||
|
fileSpecs = [ "elisp/*.el" ];
|
||||||
|
meta = {
|
||||||
|
description = "An extension of haskell-mode that provides completion of symbols and documentation browsing";
|
||||||
|
license = bsd3;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
haskell-unicode-input-method = melpaBuild rec {
|
||||||
|
pname = "emacs-haskell-unicode-input-method";
|
||||||
|
version = "20110905.2307";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "roelvandijk";
|
||||||
|
repo = "emacs-haskell-unicode-input-method";
|
||||||
|
rev = "d8d168148c187ed19350bb7a1a190217c2915a63";
|
||||||
|
sha256 = "09b7bg2s9aa4s8f2kdqs4xps3jxkq5wsvbi87ih8b6id38blhf78";
|
||||||
|
};
|
||||||
|
recipe = pkgs.writeText "recipe" ''
|
||||||
|
(haskell-unicode-input-method
|
||||||
|
:repo "roelvandijk/emacs-haskell-unicode-input-method"
|
||||||
|
:fetcher github)
|
||||||
|
'';
|
||||||
|
packageRequires = [];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#haskell-unicode-input-method/";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
hexrgb = callPackage ./hexrgb { };
|
||||||
|
|
||||||
|
header2 = callPackage ./header2 { };
|
||||||
|
|
||||||
|
helm-words = callPackage ./helm-words { };
|
||||||
|
|
||||||
|
icicles = callPackage ./icicles { };
|
||||||
|
|
||||||
|
rtags = melpaBuild rec {
|
||||||
|
inherit (external.rtags) version src meta;
|
||||||
|
|
||||||
|
pname = "rtags";
|
||||||
|
|
||||||
|
dontConfigure = true;
|
||||||
|
|
||||||
|
propagatedUserEnvPkgs = [ external.rtags ];
|
||||||
|
recipe = pkgs.writeText "recipe" ''
|
||||||
|
(rtags
|
||||||
|
:repo "andersbakken/rtags" :fetcher github
|
||||||
|
:files ("src/*.el"))
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
lib-requires =
|
||||||
|
callPackage ./lib-requires { };
|
||||||
|
|
||||||
|
org-mac-link =
|
||||||
|
callPackage ./org-mac-link { };
|
||||||
|
|
||||||
|
perl-completion =
|
||||||
|
callPackage ./perl-completion { };
|
||||||
|
|
||||||
|
railgun = callPackage ./railgun { };
|
||||||
|
|
||||||
|
gn = callPackage ./gn { };
|
||||||
|
|
||||||
|
structured-haskell-mode = self.shm;
|
||||||
|
|
||||||
|
thingatpt-plus = callPackage ./thingatpt-plus { };
|
||||||
|
|
||||||
|
tramp = callPackage ./tramp { };
|
||||||
|
|
||||||
|
yaoddmuse = callPackage ./yaoddmuse { };
|
||||||
|
|
||||||
|
zeitgeist = callPackage ./zeitgeist { };
|
||||||
|
|
||||||
|
}
|
@ -12,289 +12,450 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
{ lib, external }:
|
{ lib, external, pkgs }: variant: self: let
|
||||||
|
|
||||||
self:
|
dontConfigure = pkg: if pkg != null then pkg.override (args: {
|
||||||
|
melpaBuild = drv: args.melpaBuild (drv // {
|
||||||
|
configureScript = "true";
|
||||||
|
});
|
||||||
|
}) else null;
|
||||||
|
|
||||||
|
markBroken = pkg: if pkg != null then pkg.override (args: {
|
||||||
|
melpaBuild = drv: args.melpaBuild (drv // {
|
||||||
|
meta = (drv.meta or {}) // { broken = true; };
|
||||||
|
});
|
||||||
|
}) else null;
|
||||||
|
|
||||||
|
generateMelpa = lib.makeOverridable ({
|
||||||
|
archiveJson ? ./recipes-archive-melpa.json
|
||||||
|
}: let
|
||||||
|
|
||||||
let
|
|
||||||
inherit (import ./libgenerated.nix lib self) melpaDerivation;
|
inherit (import ./libgenerated.nix lib self) melpaDerivation;
|
||||||
imported = lib.listToAttrs (map (melpaDerivation "unstable")
|
super = lib.listToAttrs (map (melpaDerivation variant) (lib.importJSON archiveJson));
|
||||||
(lib.importJSON ./recipes-archive-melpa.json));
|
|
||||||
super = builtins.removeAttrs imported [
|
|
||||||
"swbuff-x" # required dependency swbuff is missing
|
|
||||||
];
|
|
||||||
|
|
||||||
dontConfigure = pkg: pkg.override (args: {
|
generic = import ./melpa-generic.nix;
|
||||||
melpaBuild = drv: args.melpaBuild (drv // {
|
|
||||||
configureScript = "true";
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
markBroken = pkg: pkg.override (args: {
|
overrides = rec {
|
||||||
melpaBuild = drv: args.melpaBuild (drv // {
|
shared = {
|
||||||
meta = (drv.meta or {}) // { broken = true; };
|
# Expects bash to be at /bin/bash
|
||||||
});
|
ac-rtags = markBroken super.ac-rtags;
|
||||||
});
|
|
||||||
|
|
||||||
overrides = {
|
airline-themes = super.airline-themes.override {
|
||||||
# Expects bash to be at /bin/bash
|
inherit (self.melpaPackages) powerline;
|
||||||
ac-rtags = markBroken super.ac-rtags;
|
};
|
||||||
|
|
||||||
# upstream issue: mismatched filename
|
# upstream issue: missing file header
|
||||||
ack-menu = markBroken super.ack-menu;
|
bufshow = markBroken super.bufshow;
|
||||||
|
|
||||||
airline-themes = super.airline-themes.override {
|
# part of a larger package
|
||||||
inherit (self.melpaPackages) powerline;
|
caml = dontConfigure super.caml;
|
||||||
};
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
# Expects bash to be at /bin/bash
|
||||||
bufshow = markBroken super.bufshow;
|
company-rtags = markBroken super.company-rtags;
|
||||||
|
|
||||||
# part of a larger package
|
easy-kill-extras = super.easy-kill-extras.override {
|
||||||
caml = dontConfigure super.caml;
|
inherit (self.melpaPackages) easy-kill;
|
||||||
|
};
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
# upstream issue: missing file header
|
||||||
company-rtags = markBroken super.company-rtags;
|
elmine = markBroken super.elmine;
|
||||||
|
|
||||||
easy-kill-extras = super.easy-kill-extras.override {
|
elpy = super.elpy.overrideAttrs(old: {
|
||||||
inherit (self.melpaPackages) easy-kill;
|
propagatedUserEnvPkgs = old.propagatedUserEnvPkgs ++ [ external.elpy ];
|
||||||
};
|
});
|
||||||
|
|
||||||
editorconfig = super.editorconfig.overrideAttrs (attrs: {
|
evil-magit = super.evil-magit.overrideAttrs (attrs: {
|
||||||
propagatedUserEnvPkgs = [ external.editorconfig-core-c ];
|
|
||||||
});
|
|
||||||
|
|
||||||
egg = super.egg.overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
elmine = markBroken super.elmine;
|
|
||||||
|
|
||||||
ess-R-data-view = super.ess-R-data-view.override {
|
|
||||||
inherit (self.melpaPackages) ess ctable popup;
|
|
||||||
};
|
|
||||||
|
|
||||||
evil-magit = super.evil-magit.overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# missing dependencies
|
|
||||||
evil-search-highlight-persist = super.evil-search-highlight-persist.overrideAttrs (attrs: {
|
|
||||||
packageRequires = with self; [ evil highlight ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
flycheck-rtags = markBroken super.flycheck-rtags;
|
|
||||||
|
|
||||||
forge = super.forge.overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# build timeout
|
|
||||||
graphene = markBroken super.graphene;
|
|
||||||
|
|
||||||
# upstream issue: mismatched filename
|
|
||||||
helm-lobsters = markBroken super.helm-lobsters;
|
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
helm-rtags = markBroken super.helm-rtags;
|
|
||||||
|
|
||||||
# Build same version as Haskell package
|
|
||||||
hindent = super.hindent.overrideAttrs (attrs: {
|
|
||||||
version = external.hindent.version;
|
|
||||||
src = external.hindent.src;
|
|
||||||
packageRequires = [ self.haskell-mode ];
|
|
||||||
propagatedUserEnvPkgs = [ external.hindent ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
ido-complete-space-or-hyphen = markBroken super.ido-complete-space-or-hyphen;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
initsplit = super.initsplit;
|
|
||||||
|
|
||||||
# tries to write a log file to $HOME
|
|
||||||
insert-shebang = super.insert-shebang.overrideAttrs (attrs: {
|
|
||||||
HOME = "/tmp";
|
|
||||||
});
|
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
ivy-rtags = markBroken super.ivy-rtags;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
jsfmt = markBroken super.jsfmt;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
maxframe = markBroken super.maxframe;
|
|
||||||
|
|
||||||
magit =
|
|
||||||
super.magit.overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
# searches for Git at build time
|
||||||
nativeBuildInputs =
|
nativeBuildInputs =
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
});
|
});
|
||||||
|
|
||||||
magit-annex = super.magit-annex.overrideAttrs (attrs: {
|
ess-R-data-view = super.ess-R-data-view.override {
|
||||||
# searches for Git at build time
|
inherit (self.melpaPackages) ess ctable popup;
|
||||||
nativeBuildInputs =
|
};
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
magit-gitflow = super.magit-gitflow.overrideAttrs (attrs: {
|
# Expects bash to be at /bin/bash
|
||||||
# searches for Git at build time
|
flycheck-rtags = markBroken super.flycheck-rtags;
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
magithub = super.magithub.overrideAttrs (attrs: {
|
# build timeout
|
||||||
# searches for Git at build time
|
graphene = markBroken super.graphene;
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
magit-svn = super.magit-svn.overrideAttrs (attrs: {
|
pdf-tools = super.pdf-tools.overrideAttrs(old: {
|
||||||
# searches for Git at build time
|
nativeBuildInputs = [ external.pkgconfig ];
|
||||||
nativeBuildInputs =
|
buildInputs = with external; old.buildInputs ++ [ autoconf automake libpng zlib poppler ];
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
preBuild = "make server/epdfinfo";
|
||||||
});
|
recipe = pkgs.writeText "recipe" ''
|
||||||
|
(pdf-tools
|
||||||
|
:repo "politza/pdf-tools" :fetcher github
|
||||||
|
:files ("lisp/pdf-*.el" "server/epdfinfo"))
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
|
||||||
magit-todos = super.magit-todos.overrideAttrs (attrs: {
|
# Build same version as Haskell package
|
||||||
# searches for Git at build time
|
hindent = super.hindent.overrideAttrs (attrs: {
|
||||||
nativeBuildInputs =
|
version = external.hindent.version;
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
src = external.hindent.src;
|
||||||
});
|
packageRequires = [ self.haskell-mode ];
|
||||||
|
propagatedUserEnvPkgs = [ external.hindent ];
|
||||||
|
});
|
||||||
|
|
||||||
magit-filenotify = super.magit-filenotify.overrideAttrs (attrs: {
|
# upstream issue: missing file header
|
||||||
# searches for Git at build time
|
ido-complete-space-or-hyphen = markBroken super.ido-complete-space-or-hyphen;
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
mhc = super.mhc.override {
|
# upstream issue: missing file header
|
||||||
inherit (self.melpaPackages) calfw;
|
initsplit = markBroken super.initsplit;
|
||||||
};
|
|
||||||
|
|
||||||
# missing .NET
|
irony = super.irony.overrideAttrs(old: {
|
||||||
nemerle = markBroken super.nemerle;
|
preConfigure = ''
|
||||||
|
cd server
|
||||||
|
'';
|
||||||
|
preBuild = ''
|
||||||
|
make
|
||||||
|
'';
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out
|
||||||
|
mv $out/share/emacs/site-lisp/elpa/*/server/bin $out
|
||||||
|
rm -rf $out/share/emacs/site-lisp/elpa/*/server
|
||||||
|
'';
|
||||||
|
preCheck = ''
|
||||||
|
cd source/server
|
||||||
|
'';
|
||||||
|
dontUseCmakeBuildDir = true;
|
||||||
|
doCheck = true;
|
||||||
|
packageRequires = [ self.emacs ];
|
||||||
|
nativeBuildInputs = [ external.cmake external.llvmPackages.llvm external.llvmPackages.clang ];
|
||||||
|
});
|
||||||
|
|
||||||
# part of a larger package
|
# tries to write a log file to $HOME
|
||||||
notmuch = dontConfigure super.notmuch;
|
insert-shebang = super.insert-shebang.overrideAttrs (attrs: {
|
||||||
|
HOME = "/tmp";
|
||||||
|
});
|
||||||
|
|
||||||
# missing OCaml
|
# Expects bash to be at /bin/bash
|
||||||
ocp-indent = markBroken super.ocp-indent;
|
ivy-rtags = markBroken super.ivy-rtags;
|
||||||
|
|
||||||
orgit =
|
# upstream issue: missing file header
|
||||||
(super.orgit.overrideAttrs (attrs: {
|
jsfmt = markBroken super.jsfmt;
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
maxframe = markBroken super.maxframe;
|
||||||
|
|
||||||
|
magit = super.magit.overrideAttrs (attrs: {
|
||||||
# searches for Git at build time
|
# searches for Git at build time
|
||||||
nativeBuildInputs =
|
nativeBuildInputs =
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
}));
|
});
|
||||||
|
|
||||||
# tries to write to $HOME
|
magit-annex = super.magit-annex.overrideAttrs (attrs: {
|
||||||
php-auto-yasnippets = super.php-auto-yasnippets.overrideAttrs (attrs: {
|
# searches for Git at build time
|
||||||
HOME = "/tmp";
|
nativeBuildInputs =
|
||||||
});
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
# upstream issue: mismatched filename
|
magit-todos = super.magit-todos.overrideAttrs (attrs: {
|
||||||
processing-snippets = markBroken super.processing-snippets;
|
# searches for Git at build time
|
||||||
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
# upstream issue: missing file header
|
magit-filenotify = super.magit-filenotify.overrideAttrs (attrs: {
|
||||||
qiita = markBroken super.qiita;
|
# searches for Git at build time
|
||||||
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
racer = super.racer.overrideAttrs (attrs: {
|
magit-gitflow = super.magit-gitflow.overrideAttrs (attrs: {
|
||||||
postPatch = attrs.postPatch or "" + ''
|
# searches for Git at build time
|
||||||
substituteInPlace racer.el \
|
nativeBuildInputs =
|
||||||
--replace /usr/local/src/rust/src ${external.rustPlatform.rustcSrc}
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
'';
|
});
|
||||||
});
|
|
||||||
|
|
||||||
# upstream issue: missing file footer
|
magithub = super.magithub.overrideAttrs (attrs: {
|
||||||
seoul256-theme = markBroken super.seoul256-theme;
|
# searches for Git at build time
|
||||||
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
spaceline = super.spaceline.override {
|
magit-svn = super.magit-svn.overrideAttrs (attrs: {
|
||||||
inherit (self.melpaPackages) powerline;
|
# searches for Git at build time
|
||||||
};
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
# upstream issue: missing file header
|
kubernetes = super.kubernetes.overrideAttrs (attrs: {
|
||||||
speech-tagger = markBroken super.speech-tagger;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
stgit = markBroken super.stgit;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
tawny-mode = markBroken super.tawny-mode;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
textmate = markBroken super.textmate;
|
|
||||||
|
|
||||||
treemacs-magit = super.treemacs-magit.overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
# searches for Git at build time
|
||||||
nativeBuildInputs =
|
nativeBuildInputs =
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
});
|
});
|
||||||
|
|
||||||
# missing OCaml
|
# upstream issue: missing file header
|
||||||
utop = markBroken super.utop;
|
mhc = super.mhc.override {
|
||||||
|
inherit (self.melpaPackages) calfw;
|
||||||
|
};
|
||||||
|
|
||||||
vdiff-magit =
|
# missing .NET
|
||||||
(super.vdiff-magit.overrideAttrs (attrs: {
|
nemerle = markBroken super.nemerle;
|
||||||
|
|
||||||
|
# part of a larger package
|
||||||
|
notmuch = dontConfigure super.notmuch;
|
||||||
|
|
||||||
|
# missing OCaml
|
||||||
|
ocp-indent = markBroken super.ocp-indent;
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
qiita = markBroken super.qiita;
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
speech-tagger = markBroken super.speech-tagger;
|
||||||
|
|
||||||
|
shm = super.shm.overrideAttrs (attrs: {
|
||||||
|
propagatedUserEnvPkgs = [ external.structured-haskell-mode ];
|
||||||
|
});
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
tawny-mode = markBroken super.tawny-mode;
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
textmate = markBroken super.textmate;
|
||||||
|
|
||||||
|
# missing OCaml
|
||||||
|
utop = markBroken super.utop;
|
||||||
|
|
||||||
|
vdiff-magit = super.vdiff-magit.overrideAttrs (attrs: {
|
||||||
nativeBuildInputs =
|
nativeBuildInputs =
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
}));
|
});
|
||||||
|
|
||||||
# upstream issue: missing file header
|
# upstream issue: missing file header
|
||||||
voca-builder = markBroken super.voca-builder;
|
voca-builder = markBroken super.voca-builder;
|
||||||
|
|
||||||
# upstream issue: missing file header
|
# upstream issue: missing file header
|
||||||
window-numbering = markBroken super.window-numbering;
|
window-numbering = markBroken super.window-numbering;
|
||||||
|
|
||||||
w3m = super.w3m.override (args: {
|
vterm = let
|
||||||
melpaBuild = drv: args.melpaBuild (drv // {
|
emacsSources = pkgs.stdenv.mkDerivation {
|
||||||
prePatch =
|
name = self.emacs.name + "-sources";
|
||||||
let w3m = "${lib.getBin external.w3m}/bin/w3m"; in ''
|
src = self.emacs.src;
|
||||||
substituteInPlace w3m.el \
|
|
||||||
--replace 'defcustom w3m-command nil' \
|
dontConfigure = true;
|
||||||
'defcustom w3m-command "${w3m}"'
|
dontBuild = true;
|
||||||
|
doCheck = false;
|
||||||
|
fixupPhase = ":";
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -a * $out
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
libvterm = pkgs.libvterm-neovim.overrideAttrs(old: rec {
|
||||||
|
pname = "libvterm-neovim";
|
||||||
|
version = "2019-04-27";
|
||||||
|
name = pname + "-" + version;
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "neovim";
|
||||||
|
repo = "libvterm";
|
||||||
|
rev = "89675ffdda615ffc3f29d1c47a933f4f44183364";
|
||||||
|
sha256 = "0l9ixbj516vl41v78fi302ws655xawl7s94gmx1kb3fmfgamqisy";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
in pkgs.stdenv.mkDerivation rec {
|
||||||
|
inherit (super.vterm) name version src;
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkgs.cmake ];
|
||||||
|
buildInputs = [ self.emacs libvterm ];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DEMACS_SOURCE=${emacsSources}"
|
||||||
|
"-DUSE_SYSTEM_LIBVTERM=True"
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -d $out/share/emacs/site-lisp
|
||||||
|
install ../*.el $out/share/emacs/site-lisp
|
||||||
|
install ../*.so $out/share/emacs/site-lisp
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
# Legacy alias
|
||||||
|
emacs-libvterm = shared.vterm;
|
||||||
|
|
||||||
|
zmq = super.zmq.overrideAttrs(old: {
|
||||||
|
stripDebugList = [ "share" ];
|
||||||
|
preBuild = ''
|
||||||
|
make
|
||||||
|
'';
|
||||||
|
nativeBuildInputs = [
|
||||||
|
external.autoconf external.automake external.pkgconfig external.libtool
|
||||||
|
(external.zeromq.override { enableDrafts = true; })
|
||||||
|
];
|
||||||
|
postInstall = ''
|
||||||
|
mv $out/share/emacs/site-lisp/elpa/zmq-*/src/.libs/emacs-zmq.so $out/share/emacs/site-lisp/elpa/zmq-*
|
||||||
|
rm -r $out/share/emacs/site-lisp/elpa/zmq-*/src
|
||||||
|
rm $out/share/emacs/site-lisp/elpa/zmq-*/Makefile
|
||||||
|
'';
|
||||||
});
|
});
|
||||||
});
|
|
||||||
|
|
||||||
# Map legacy renames from emacs2nix since code generation was ported to emacs lisp
|
# Map legacy renames from emacs2nix since code generation was ported to emacs lisp
|
||||||
_0blayout = super."0blayout";
|
_0blayout = super."0blayout";
|
||||||
_0xc = super."0xc";
|
_0xc = super."0xc";
|
||||||
_2048-game = super."2048-game";
|
_2048-game = super."2048-game";
|
||||||
_4clojure = super."4clojure";
|
_4clojure = super."4clojure";
|
||||||
at = super."@";
|
at = super."@";
|
||||||
desktop-plus = super."desktop+";
|
desktop-plus = super."desktop+";
|
||||||
# filesets-plus = super."filesets+";
|
ghub-plus = super."ghub+";
|
||||||
ghub-plus = super."ghub+";
|
git-gutter-plus = super."git-gutter+";
|
||||||
git-gutter-plus = super."git-gutter+";
|
git-gutter-fringe-plus = super."git-gutter-fringe+";
|
||||||
git-gutter-fringe-plus = super."git-gutter-fringe+";
|
ido-completing-read-plus = super."ido-completing-read+";
|
||||||
ido-completing-read-plus = super."ido-completing-read+";
|
image-plus = super."image+";
|
||||||
image-plus = super."image+";
|
image-dired-plus = super."image-dired+";
|
||||||
image-dired-plus = super."image-dired+";
|
markdown-mode-plus = super."markdown-mode+";
|
||||||
markdown-mode-plus = super."markdown-mode+";
|
package-plus = super."package+";
|
||||||
package-plus = super."package+";
|
rect-plus = super."rect+";
|
||||||
rect-plus = super."rect+";
|
term-plus = super."term+";
|
||||||
term-plus = super."term+";
|
term-plus-key-intercept = super."term+key-intercept";
|
||||||
term-plus-key-intercept = super."term+key-intercept";
|
term-plus-mux = super."term+mux";
|
||||||
term-plus-mux = super."term+mux";
|
xml-plus = super."xml+";
|
||||||
xml-plus = super."xml+";
|
};
|
||||||
|
|
||||||
|
stable = shared // {
|
||||||
|
# part of a larger package
|
||||||
|
# upstream issue: missing package version
|
||||||
|
cmake-mode = markBroken (dontConfigure super.cmake-mode);
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
connection = markBroken super.connection;
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
dictionary = markBroken super.dictionary;
|
||||||
|
|
||||||
|
# missing git
|
||||||
|
egg = markBroken super.egg;
|
||||||
|
|
||||||
|
# upstream issue: missing dependency redshank
|
||||||
|
emr = markBroken super.emr;
|
||||||
|
|
||||||
|
# upstream issue: doesn't build
|
||||||
|
eterm-256color = markBroken super.eterm-256color;
|
||||||
|
|
||||||
|
# upstream issue: missing dependency highlight
|
||||||
|
evil-search-highlight-persist = markBroken super.evil-search-highlight-persist;
|
||||||
|
|
||||||
|
# upstream issue: missing dependency highlight
|
||||||
|
floobits = markBroken super.floobits;
|
||||||
|
|
||||||
|
# missing OCaml
|
||||||
|
flycheck-ocaml = markBroken super.flycheck-ocaml;
|
||||||
|
|
||||||
|
# upstream issue: missing dependency
|
||||||
|
fold-dwim-org = markBroken super.fold-dwim-org;
|
||||||
|
|
||||||
|
# build timeout
|
||||||
|
graphene = markBroken super.graphene;
|
||||||
|
|
||||||
|
# Expects bash to be at /bin/bash
|
||||||
|
helm-rtags = markBroken super.helm-rtags;
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
link = markBroken super.link;
|
||||||
|
|
||||||
|
# missing OCaml
|
||||||
|
merlin = markBroken super.merlin;
|
||||||
|
|
||||||
|
# upstream issue: missing file header
|
||||||
|
po-mode = markBroken super.po-mode;
|
||||||
|
|
||||||
|
# upstream issue: truncated file
|
||||||
|
powershell = markBroken super.powershell;
|
||||||
|
};
|
||||||
|
|
||||||
|
unstable = shared // {
|
||||||
|
# upstream issue: mismatched filename
|
||||||
|
ack-menu = markBroken super.ack-menu;
|
||||||
|
|
||||||
|
editorconfig = super.editorconfig.overrideAttrs (attrs: {
|
||||||
|
propagatedUserEnvPkgs = [ external.editorconfig-core-c ];
|
||||||
|
});
|
||||||
|
|
||||||
|
egg = super.egg.overrideAttrs (attrs: {
|
||||||
|
# searches for Git at build time
|
||||||
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
|
# missing dependencies
|
||||||
|
evil-search-highlight-persist = super.evil-search-highlight-persist.overrideAttrs (attrs: {
|
||||||
|
packageRequires = with self; [ evil highlight ];
|
||||||
|
});
|
||||||
|
|
||||||
|
forge = super.forge.overrideAttrs (attrs: {
|
||||||
|
# searches for Git at build time
|
||||||
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
|
# upstream issue: mismatched filename
|
||||||
|
helm-lobsters = markBroken super.helm-lobsters;
|
||||||
|
|
||||||
|
# Expects bash to be at /bin/bash
|
||||||
|
helm-rtags = markBroken super.helm-rtags;
|
||||||
|
|
||||||
|
# Fails with "package does not untar cleanly into ..."
|
||||||
|
irony = shared.irony.overrideAttrs(old: {
|
||||||
|
meta = old.meta // {
|
||||||
|
broken = true;
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
orgit =
|
||||||
|
(super.orgit.overrideAttrs (attrs: {
|
||||||
|
# searches for Git at build time
|
||||||
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
}));
|
||||||
|
|
||||||
|
# tries to write to $HOME
|
||||||
|
php-auto-yasnippets = super.php-auto-yasnippets.overrideAttrs (attrs: {
|
||||||
|
HOME = "/tmp";
|
||||||
|
});
|
||||||
|
|
||||||
|
# upstream issue: mismatched filename
|
||||||
|
processing-snippets = markBroken super.processing-snippets;
|
||||||
|
|
||||||
|
racer = super.racer.overrideAttrs (attrs: {
|
||||||
|
postPatch = attrs.postPatch or "" + ''
|
||||||
|
substituteInPlace racer.el \
|
||||||
|
--replace /usr/local/src/rust/src ${external.rustPlatform.rustcSrc}
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
|
||||||
|
# upstream issue: missing file footer
|
||||||
|
seoul256-theme = markBroken super.seoul256-theme;
|
||||||
|
|
||||||
|
spaceline = super.spaceline.override {
|
||||||
|
inherit (self.melpaPackages) powerline;
|
||||||
|
};
|
||||||
|
|
||||||
|
treemacs-magit = super.treemacs-magit.overrideAttrs (attrs: {
|
||||||
|
# searches for Git at build time
|
||||||
|
nativeBuildInputs =
|
||||||
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
});
|
||||||
|
|
||||||
|
w3m = super.w3m.override (args: {
|
||||||
|
melpaBuild = drv: args.melpaBuild (drv // {
|
||||||
|
prePatch =
|
||||||
|
let w3m = "${lib.getBin external.w3m}/bin/w3m"; in ''
|
||||||
|
substituteInPlace w3m.el \
|
||||||
|
--replace 'defcustom w3m-command nil' \
|
||||||
|
'defcustom w3m-command "${w3m}"'
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
melpaPackages =
|
in super // overrides."${variant}");
|
||||||
removeAttrs (super // overrides)
|
|
||||||
[
|
in generateMelpa { }
|
||||||
"show-marks" # missing dependency: fm
|
|
||||||
"lenlen-theme" # missing dependency: color-theme-solarized
|
|
||||||
];
|
|
||||||
in
|
|
||||||
melpaPackages // { inherit melpaPackages; }
|
|
||||||
|
@ -1,235 +0,0 @@
|
|||||||
/*
|
|
||||||
|
|
||||||
# Updating
|
|
||||||
|
|
||||||
To update the list of packages from MELPA,
|
|
||||||
|
|
||||||
|
|
||||||
1. Run ./update-melpa
|
|
||||||
2. Check for evaluation errors:
|
|
||||||
env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPackagesNg.melpaStablePackages
|
|
||||||
env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPackagesNg.melpaPackages
|
|
||||||
3. `git commit -m "melpa-packages: $(date -Idate)" recipes-archive-melpa.json`
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
{ lib, external }:
|
|
||||||
|
|
||||||
self:
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (import ./libgenerated.nix lib self) melpaDerivation;
|
|
||||||
imported = lib.listToAttrs (map (melpaDerivation "stable")
|
|
||||||
(lib.importJSON ./recipes-archive-melpa.json));
|
|
||||||
super = imported;
|
|
||||||
|
|
||||||
dontConfigure = pkg: pkg.override (args: {
|
|
||||||
melpaBuild = drv: args.melpaBuild (drv // {
|
|
||||||
configureScript = "true";
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
markBroken = pkg: if pkg != null then pkg.override (args: {
|
|
||||||
melpaBuild = drv: args.melpaBuild (drv // {
|
|
||||||
meta = (drv.meta or {}) // { broken = true; };
|
|
||||||
});
|
|
||||||
}) else null;
|
|
||||||
|
|
||||||
overrides = {
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
ac-rtags = markBroken super.ac-rtags;
|
|
||||||
|
|
||||||
airline-themes = super.airline-themes.override {
|
|
||||||
inherit (self.melpaPackages) powerline;
|
|
||||||
};
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
bufshow = markBroken super.bufshow;
|
|
||||||
|
|
||||||
# part of a larger package
|
|
||||||
caml = dontConfigure super.caml;
|
|
||||||
|
|
||||||
# part of a larger package
|
|
||||||
# upstream issue: missing package version
|
|
||||||
cmake-mode = markBroken (dontConfigure super.cmake-mode);
|
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
company-rtags = markBroken super.company-rtags;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
connection = markBroken super.connection;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
dictionary = markBroken super.dictionary;
|
|
||||||
|
|
||||||
easy-kill-extras = super.easy-kill-extras.override {
|
|
||||||
inherit (self.melpaPackages) easy-kill;
|
|
||||||
};
|
|
||||||
|
|
||||||
# missing git
|
|
||||||
egg = markBroken super.egg;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
elmine = markBroken super.elmine;
|
|
||||||
|
|
||||||
# upstream issue: missing dependency redshank
|
|
||||||
emr = markBroken super.emr;
|
|
||||||
|
|
||||||
ess-R-data-view = super.ess-R-data-view.override {
|
|
||||||
inherit (self.melpaPackages) ess ctable popup;
|
|
||||||
};
|
|
||||||
|
|
||||||
# upstream issue: doesn't build
|
|
||||||
eterm-256color = markBroken super.eterm-256color;
|
|
||||||
|
|
||||||
# upstream issue: missing dependency highlight
|
|
||||||
evil-search-highlight-persist = markBroken super.evil-search-highlight-persist;
|
|
||||||
|
|
||||||
# upstream issue: missing dependency highlight
|
|
||||||
floobits = markBroken super.floobits;
|
|
||||||
|
|
||||||
# missing OCaml
|
|
||||||
flycheck-ocaml = markBroken super.flycheck-ocaml;
|
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
flycheck-rtags = markBroken super.flycheck-rtags;
|
|
||||||
|
|
||||||
# upstream issue: missing dependency
|
|
||||||
fold-dwim-org = markBroken super.fold-dwim-org;
|
|
||||||
|
|
||||||
# build timeout
|
|
||||||
graphene = markBroken super.graphene;
|
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
helm-rtags = markBroken super.helm-rtags;
|
|
||||||
|
|
||||||
# Build same version as Haskell package
|
|
||||||
hindent = super.hindent.overrideAttrs (attrs: {
|
|
||||||
version = external.hindent.version;
|
|
||||||
src = external.hindent.src;
|
|
||||||
packageRequires = [ self.haskell-mode ];
|
|
||||||
propagatedUserEnvPkgs = [ external.hindent ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
ido-complete-space-or-hyphen = markBroken super.ido-complete-space-or-hyphen;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
initsplit = markBroken super.initsplit;
|
|
||||||
|
|
||||||
# upstream issue: recipe fails
|
|
||||||
insert-shebang = markBroken super.insert-shebang;
|
|
||||||
|
|
||||||
# Expects bash to be at /bin/bash
|
|
||||||
ivy-rtags = markBroken super.ivy-rtags;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
jsfmt = markBroken super.jsfmt;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
link = markBroken super.link;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
maxframe = markBroken super.maxframe;
|
|
||||||
|
|
||||||
magit =
|
|
||||||
(super.magit.override {
|
|
||||||
# version of magit-popup needs to match magit
|
|
||||||
# https://github.com/magit/magit/issues/3286
|
|
||||||
inherit (self.melpaStablePackages) magit-popup;
|
|
||||||
}).overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
magit-todos = super.magit-todos.overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
magit-filenotify = super.magit-filenotify.overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# missing OCaml
|
|
||||||
merlin = markBroken super.merlin;
|
|
||||||
|
|
||||||
mhc = super.mhc.override {
|
|
||||||
inherit (self.melpaPackages) calfw;
|
|
||||||
};
|
|
||||||
|
|
||||||
# missing .NET
|
|
||||||
nemerle = markBroken super.nemerle;
|
|
||||||
|
|
||||||
# part of a larger package
|
|
||||||
notmuch = dontConfigure super.notmuch;
|
|
||||||
|
|
||||||
# missing OCaml
|
|
||||||
ocp-indent = markBroken super.ocp-indent;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
po-mode = markBroken super.po-mode;
|
|
||||||
|
|
||||||
# upstream issue: truncated file
|
|
||||||
powershell = markBroken super.powershell;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
qiita = markBroken super.qiita;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
speech-tagger = markBroken super.speech-tagger;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
stgit = markBroken super.stgit;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
tawny-mode = markBroken super.tawny-mode;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
textmate = markBroken super.textmate;
|
|
||||||
|
|
||||||
# missing OCaml
|
|
||||||
utop = markBroken super.utop;
|
|
||||||
|
|
||||||
vdiff-magit =
|
|
||||||
(super.vdiff-magit.overrideAttrs (attrs: {
|
|
||||||
nativeBuildInputs =
|
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
|
||||||
}));
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
voca-builder = markBroken super.voca-builder;
|
|
||||||
|
|
||||||
# upstream issue: missing file header
|
|
||||||
window-numbering = markBroken super.window-numbering;
|
|
||||||
|
|
||||||
# Map legacy renames from emacs2nix since code generation was ported to emacs lisp
|
|
||||||
_0blayout = super."0blayout";
|
|
||||||
_0xc = super."0xc";
|
|
||||||
_2048-game = super."2048-game";
|
|
||||||
_4clojure = super."4clojure";
|
|
||||||
at = super."@";
|
|
||||||
desktop-plus = super."desktop+";
|
|
||||||
ghub-plus = super."ghub+";
|
|
||||||
git-gutter-plus = super."git-gutter+";
|
|
||||||
git-gutter-fringe-plus = super."git-gutter-fringe+";
|
|
||||||
ido-completing-read-plus = super."ido-completing-read+";
|
|
||||||
image-plus = super."image+";
|
|
||||||
image-dired-plus = super."image-dired+";
|
|
||||||
markdown-mode-plus = super."markdown-mode+";
|
|
||||||
package-plus = super."package+";
|
|
||||||
rect-plus = super."rect+";
|
|
||||||
term-plus = super."term+";
|
|
||||||
term-plus-key-intercept = super."term+key-intercept";
|
|
||||||
term-plus-mux = super."term+mux";
|
|
||||||
xml-plus = super."xml+";
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
melpaStablePackages = super // overrides;
|
|
||||||
in
|
|
||||||
melpaStablePackages // { inherit melpaStablePackages; }
|
|
@ -1,30 +0,0 @@
|
|||||||
{lib, trivialBuild, fetchFromGitHub}:
|
|
||||||
|
|
||||||
trivialBuild rec {
|
|
||||||
pname = "nyan-mode";
|
|
||||||
version = "20150128";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "TeMPOraL";
|
|
||||||
repo = pname;
|
|
||||||
rev = "41faa2c809da7b2cb3e6f8fadefae3f338ced3f2";
|
|
||||||
sha256 = "1idaac7sjc8hhbf5zif61ncg1pvg28c0qfihavdx61albww0ll7f";
|
|
||||||
};
|
|
||||||
|
|
||||||
patches = [ ./directory.patch ];
|
|
||||||
|
|
||||||
preBuild = ''
|
|
||||||
substituteInPlace nyan-mode.el \
|
|
||||||
--replace "@OUT@" "$out/"
|
|
||||||
'';
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
cp -r img $out
|
|
||||||
cp -r mus $out
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "An analog indicator of the position in the buffer";
|
|
||||||
license = lib.licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
diff --git a/nyan-mode.el b/nyan-mode.el
|
|
||||||
index 939a25a..3d0b983 100644
|
|
||||||
--- a/nyan-mode.el
|
|
||||||
+++ b/nyan-mode.el
|
|
||||||
@@ -106,7 +106,7 @@ This can be t or nil."
|
|
||||||
:group 'nyan)
|
|
||||||
|
|
||||||
|
|
||||||
-(defconst +nyan-directory+ (file-name-directory (or load-file-name buffer-file-name)))
|
|
||||||
+(defconst +nyan-directory+ "@OUT@")
|
|
||||||
|
|
||||||
(defconst +nyan-cat-size+ 3)
|
|
||||||
|
|
@ -28,4 +28,4 @@ self:
|
|||||||
|
|
||||||
orgPackages = super // overrides;
|
orgPackages = super // overrides;
|
||||||
|
|
||||||
in orgPackages // { inherit orgPackages; }
|
in orgPackages
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
{ stdenv, fetchgit }:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "redshank";
|
|
||||||
name = "${pname}-20120510";
|
|
||||||
|
|
||||||
src = fetchgit {
|
|
||||||
url = "http://www.foldr.org/~michaelw/projects/redshank.git";
|
|
||||||
rev = "f98e68f532e622bcd464292ca4a9cf5fbea14ebb";
|
|
||||||
sha256 = "1jdkgvd5xy9hl5q611jwah2n05abjp7qcy9sj4k1z11x0ii62b6p";
|
|
||||||
};
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/share/emacs/site-lisp
|
|
||||||
cp *.el *.elc $out/share/emacs/site-lisp/
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Common Lisp Editing Extensions (for Emacs)";
|
|
||||||
homepage = http://www.foldr.org/~michaelw/emacs/redshank/;
|
|
||||||
platforms = stdenv.lib.platforms.all;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,25 +0,0 @@
|
|||||||
{ stdenv, fetchurl }:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "stgit";
|
|
||||||
name = "${pname}-2009-10-28";
|
|
||||||
|
|
||||||
dontUnpack = true;
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://raw.githubusercontent.com/miracle2k/stgit/master/contrib/stgit.el";
|
|
||||||
sha256 = "0pl8q480633vdkylr85s7cbd4653xpzwklnxrwm8xhsnvw9d501q";
|
|
||||||
name = "stgit.el";
|
|
||||||
};
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/share/emacs/site-lisp
|
|
||||||
cp $src $out/share/emacs/site-lisp/stgit.el
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "An emacs mode for Stgit";
|
|
||||||
homepage = http://procode.org/stgit/;
|
|
||||||
platforms = stdenv.lib.platforms.all;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,8 +1,6 @@
|
|||||||
#! /usr/bin/env nix-shell
|
#! /usr/bin/env nix-shell
|
||||||
#! nix-shell --show-trace -i sh -p git nix nix-prefetch-git nix-prefetch-hg "import ./updater-emacs.nix"
|
#! nix-shell --show-trace ./updater-emacs.nix -i bash
|
||||||
|
|
||||||
# "with import ../../../.. {}; emacsWithPackages (epkgs: with epkgs.melpaPackages; [ promise semaphore ])"
|
SCRIPT_DIR="$( cd "$(dirname "$0")" ; pwd -P )"
|
||||||
|
|
||||||
exec emacs --fg-daemon=updater --quick -l update-melpa.el -f run-updater "$@"
|
exec emacs --fg-daemon=updater --quick -l $SCRIPT_DIR/update-melpa.el -f run-updater "$@"
|
||||||
|
|
||||||
# exec emacs update-melpa.el "$@"
|
|
||||||
|
@ -1,29 +1,40 @@
|
|||||||
with import ../../../.. {};
|
let
|
||||||
(emacsPackagesNgFor emacs26).
|
pkgs = import ../../../.. {};
|
||||||
emacsWithPackages (epkgs: let
|
|
||||||
promise = epkgs.trivialBuild {
|
|
||||||
pname = "promise";
|
|
||||||
version = "1";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "bendlas";
|
|
||||||
repo = "emacs-promise";
|
|
||||||
rev = "4da97087c5babbd8429b5ce62a8323b9b03c6022";
|
|
||||||
sha256 = "0yin7kj69g4zxs30pvk47cnfygxlaw7jc7chr3b36lz51yqczjsy";
|
|
||||||
|
|
||||||
};
|
emacsEnv = (pkgs.emacsPackagesNgFor pkgs.emacs26).emacsWithPackages (epkgs: let
|
||||||
};
|
|
||||||
semaphore = epkgs.trivialBuild {
|
|
||||||
pname = "semaphore";
|
|
||||||
version = "1";
|
|
||||||
packageRequires = [ promise ];
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "webnf";
|
|
||||||
repo = "semaphore.el";
|
|
||||||
rev = "93802cb093073bc6a6ccd797328dafffcef248e0";
|
|
||||||
sha256 = "09pfyp27m35sv340xarhld7xx2vv5fs5xj4418709iw6l6hpk853";
|
|
||||||
|
|
||||||
|
promise = epkgs.trivialBuild {
|
||||||
|
pname = "promise";
|
||||||
|
version = "1";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "bendlas";
|
||||||
|
repo = "emacs-promise";
|
||||||
|
rev = "4da97087c5babbd8429b5ce62a8323b9b03c6022";
|
||||||
|
sha256 = "0yin7kj69g4zxs30pvk47cnfygxlaw7jc7chr3b36lz51yqczjsy";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
in [ promise semaphore ]
|
semaphore = epkgs.trivialBuild {
|
||||||
# ++ (with epkgs.melpaPackages; [ smex rainbow-delimiters paredit ])
|
pname = "semaphore";
|
||||||
)
|
version = "1";
|
||||||
|
packageRequires = [ promise ];
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "webnf";
|
||||||
|
repo = "semaphore.el";
|
||||||
|
rev = "93802cb093073bc6a6ccd797328dafffcef248e0";
|
||||||
|
sha256 = "09pfyp27m35sv340xarhld7xx2vv5fs5xj4418709iw6l6hpk853";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
in [ promise semaphore ]);
|
||||||
|
|
||||||
|
in pkgs.mkShell {
|
||||||
|
buildInputs = [
|
||||||
|
pkgs.git
|
||||||
|
pkgs.nix
|
||||||
|
pkgs.bash
|
||||||
|
pkgs.nix-prefetch-git
|
||||||
|
pkgs.nix-prefetch-hg
|
||||||
|
emacsEnv
|
||||||
|
];
|
||||||
|
}
|
||||||
|
@ -42,11 +42,11 @@ let
|
|||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "gnome-builder";
|
pname = "gnome-builder";
|
||||||
version = "3.32.3";
|
version = "3.32.4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "1vlr69sgiv3kg2qa3n7aw3913bmvlcpyhy3w8lls13wjrgif4wny";
|
sha256 = "0xip58m206p8wa28p0a3y4ykylzr5xzmirjl3dspg4j25r08i8qr";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -263,12 +263,12 @@ in
|
|||||||
|
|
||||||
datagrip = buildDataGrip rec {
|
datagrip = buildDataGrip rec {
|
||||||
name = "datagrip-${version}";
|
name = "datagrip-${version}";
|
||||||
version = "2019.1.4"; /* updated by script */
|
version = "2019.2.1"; /* updated by script */
|
||||||
description = "Your Swiss Army Knife for Databases and SQL";
|
description = "Your Swiss Army Knife for Databases and SQL";
|
||||||
license = stdenv.lib.licenses.unfree;
|
license = stdenv.lib.licenses.unfree;
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
|
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
|
||||||
sha256 = "0zjcn71fgngkvsixgimzm5afwjbd8zf14zzm6barap4pwp5xx0hb"; /* updated by script */
|
sha256 = "0va5dcvjxq7mlkz0di5zl1ra5gv6cls3wy40fvkpm2vlirg0m31s"; /* updated by script */
|
||||||
};
|
};
|
||||||
wmClass = "jetbrains-datagrip";
|
wmClass = "jetbrains-datagrip";
|
||||||
update-channel = "DataGrip RELEASE";
|
update-channel = "DataGrip RELEASE";
|
||||||
@ -367,12 +367,12 @@ in
|
|||||||
|
|
||||||
ruby-mine = buildRubyMine rec {
|
ruby-mine = buildRubyMine rec {
|
||||||
name = "ruby-mine-${version}";
|
name = "ruby-mine-${version}";
|
||||||
version = "2019.1.2"; /* updated by script */
|
version = "2019.2"; /* updated by script */
|
||||||
description = "The Most Intelligent Ruby and Rails IDE";
|
description = "The Most Intelligent Ruby and Rails IDE";
|
||||||
license = stdenv.lib.licenses.unfree;
|
license = stdenv.lib.licenses.unfree;
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
|
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
|
||||||
sha256 = "1zhci8nkywv66bwc6hbyh4h3x61qhv2fbmfb5gkw9znkk1qa0q6v"; /* updated by script */
|
sha256 = "1f4mdarmh7m9jq432d0s9jds9288g0zgpxnlpmx12i26vvq8kykd"; /* updated by script */
|
||||||
};
|
};
|
||||||
wmClass = "jetbrains-rubymine";
|
wmClass = "jetbrains-rubymine";
|
||||||
update-channel = "RubyMine RELEASE";
|
update-channel = "RubyMine RELEASE";
|
||||||
|
@ -4,12 +4,12 @@ with stdenv.lib;
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "kakoune-unwrapped";
|
pname = "kakoune-unwrapped";
|
||||||
version = "2019.01.20";
|
version = "2019.07.01";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = "kakoune";
|
repo = "kakoune";
|
||||||
owner = "mawww";
|
owner = "mawww";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "04ak1jm7b1i03sx10z3fxw08rn692y2fj482jn5kpzfzj91b2ila";
|
sha256 = "0jdkldq5rygzc0wcxr1j4fmp2phciy8602ghhf6xq21a9bq2v639";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
buildInputs = [ ncurses asciidoc docbook_xsl libxslt ];
|
buildInputs = [ ncurses asciidoc docbook_xsl libxslt ];
|
||||||
@ -25,6 +25,11 @@ stdenv.mkDerivation rec {
|
|||||||
export version="v${version}"
|
export version="v${version}"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
doInstallCheckPhase = true;
|
||||||
|
installCheckPhase = ''
|
||||||
|
$out/bin/kak -ui json -E "kill 0"
|
||||||
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://kakoune.org/;
|
homepage = http://kakoune.org/;
|
||||||
description = "A vim inspired text editor";
|
description = "A vim inspired text editor";
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
{ stdenv, fetchFromGitHub, cmake, doxygen, makeWrapper
|
{ stdenv, mkDerivation, fetchFromGitHub, cmake, doxygen, makeWrapper
|
||||||
, msgpack, neovim, pythonPackages, qtbase }:
|
, msgpack, neovim, pythonPackages, qtbase }:
|
||||||
|
|
||||||
let
|
let
|
||||||
unwrapped = stdenv.mkDerivation rec {
|
unwrapped = mkDerivation rec {
|
||||||
pname = "neovim-qt-unwrapped";
|
pname = "neovim-qt-unwrapped";
|
||||||
version = "0.2.11";
|
version = "0.2.12";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "equalsraf";
|
owner = "equalsraf";
|
||||||
repo = "neovim-qt";
|
repo = "neovim-qt";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0pc1adxc89p2rdvb6nxyqr9sjzqz9zw2dg7a4ardxsl3a8jga1wh";
|
sha256 = "09s3044j0y8nmyi8ykslfii6fx7k9mckmdvb0jn2xmdabpb60i20";
|
||||||
};
|
};
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
@ -24,7 +24,7 @@ let
|
|||||||
jinja2 python msgpack
|
jinja2 python msgpack
|
||||||
]);
|
]);
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake doxygen makeWrapper ];
|
nativeBuildInputs = [ cmake doxygen ];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
@ -4,13 +4,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "quilter";
|
pname = "quilter";
|
||||||
version = "1.9.2";
|
version = "1.9.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lainsce";
|
owner = "lainsce";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "10r6d695avxj31yghb82ymgnd7f1dawwbqz3gfy0rycjza9dxvv8";
|
sha256 = "09acknajbkfpw8f5pay2qj69dzhwbiplsvpp1hy9ma6msmxkr6cm";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
|
|||||||
description = "Focus on your writing - designed for elementary OS";
|
description = "Focus on your writing - designed for elementary OS";
|
||||||
homepage = https://github.com/lainsce/quilter;
|
homepage = https://github.com/lainsce/quilter;
|
||||||
license = licenses.gpl2Plus;
|
license = licenses.gpl2Plus;
|
||||||
maintainers = with maintainers; [ worldofpeace ];
|
maintainers = pantheon.maintainers;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -5,13 +5,13 @@
|
|||||||
|
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "rednotebook";
|
pname = "rednotebook";
|
||||||
version = "2.8";
|
version = "2.11.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jendrikseipp";
|
owner = "jendrikseipp";
|
||||||
repo = "rednotebook";
|
repo = "rednotebook";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0k75lw3p6jx30ngvn8iipk1763gazkbrsad3fpl3sqppaqaggryj";
|
sha256 = "04c7a0wgmdl88v9386y1052c38ajbkryiwhqps5lx34d4g7r6hm1";
|
||||||
};
|
};
|
||||||
|
|
||||||
# We have not packaged tests.
|
# We have not packaged tests.
|
||||||
@ -30,6 +30,10 @@ buildPythonApplication rec {
|
|||||||
"--suffix XDG_DATA_DIRS : $XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
|
"--suffix XDG_DATA_DIRS : $XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Until gobject-introspection in nativeBuildInputs is supported.
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-472568643
|
||||||
|
strictDeps = false;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = http://rednotebook.sourceforge.net/;
|
homepage = http://rednotebook.sourceforge.net/;
|
||||||
description = "A modern journal that includes a calendar navigation, customizable templates, export functionality and word clouds";
|
description = "A modern journal that includes a calendar navigation, customizable templates, export functionality and word clouds";
|
||||||
|
@ -4,13 +4,13 @@ with python3.pkgs;
|
|||||||
|
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "thonny";
|
pname = "thonny";
|
||||||
version = "3.1.2";
|
version = "3.2.0b7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = pname;
|
owner = pname;
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1simqqxm72k5zhavhllkinsyw8ggy6fjs5ppj82g3l5g3919pfna";
|
sha256 = "0p0hi5rj873cszx9rpbjjq51vs6xys3rlq9v1rya710i3fnw0hqh";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with python3.pkgs; [
|
propagatedBuildInputs = with python3.pkgs; [
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{ stdenv, fetchurl, makeWrapper, electron_3, dpkg, gtk3, glib, gsettings-desktop-schemas, wrapGAppsHook }:
|
{ stdenv, fetchurl, makeWrapper, electron_5, dpkg, gtk3, glib, gsettings-desktop-schemas, wrapGAppsHook }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "typora";
|
pname = "typora";
|
||||||
version = "0.9.72";
|
version = "0.9.73";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.typora.io/linux/typora_${version}_amd64.deb";
|
url = "https://www.typora.io/linux/typora_${version}_amd64.deb";
|
||||||
sha256 = "0q7fj77pr3ykpwgip87h12qxvpvlzs15mi9w3phqm3p9mmm9rlrs";
|
sha256 = "1fgcb4bx5pw8ah5j30d38gw7qi1cmqarfhvgdns9f2n0d57bvvw3";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
makeWrapper ${electron_3}/bin/electron $out/bin/typora \
|
makeWrapper ${electron_5}/bin/electron $out/bin/typora \
|
||||||
--add-flags $out/share/typora \
|
--add-flags $out/share/typora \
|
||||||
"''${gappsWrapperArgs[@]}" \
|
"''${gappsWrapperArgs[@]}" \
|
||||||
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}"
|
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}"
|
||||||
@ -50,6 +50,6 @@ stdenv.mkDerivation rec {
|
|||||||
homepage = https://typora.io;
|
homepage = https://typora.io;
|
||||||
license = licenses.unfree;
|
license = licenses.unfree;
|
||||||
maintainers = with maintainers; [ jensbin worldofpeace ];
|
maintainers = with maintainers; [ jensbin worldofpeace ];
|
||||||
inherit (electron_3.meta) platforms;
|
platforms = [ "x86_64-linux"];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -52,13 +52,13 @@
|
|||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "digikam";
|
pname = "digikam";
|
||||||
version = "6.1.0";
|
version = "6.2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "KDE";
|
owner = "KDE";
|
||||||
repo = "digikam";
|
repo = "digikam";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0h0jqfgpanhxfi3r7cgip58ppypqx79z6c5jj7i7f19hp2zziip8";
|
sha256 = "1l1nb1nwicmip2jxhn5gzr7h60igvns0zs3kzp36r6qf4wvg3v2z";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];
|
nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];
|
||||||
@ -105,6 +105,8 @@ mkDerivation rec {
|
|||||||
threadweaver
|
threadweaver
|
||||||
];
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DENABLE_MYSQLSUPPORT=1"
|
"-DENABLE_MYSQLSUPPORT=1"
|
||||||
"-DENABLE_INTERNALMYSQL=1"
|
"-DENABLE_INTERNALMYSQL=1"
|
||||||
|
@ -11,11 +11,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "drawio";
|
pname = "drawio";
|
||||||
version = "10.9.5";
|
version = "11.1.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
|
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
|
||||||
sha256 = "13687d5bfxj7wlbh5j13pvxvs69whlg820wllk3pb1xb3syynlpn";
|
sha256 = "1jibkxx00rma641c3xr7720qj9slqsvhbpi7nawi6f2f91gzyc10";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -9,11 +9,11 @@ let
|
|||||||
pythonPackages = python3Packages;
|
pythonPackages = python3Packages;
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "freecad-${version}";
|
name = "freecad-${version}";
|
||||||
version = "0.18.2";
|
version = "0.18.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/FreeCAD/FreeCAD/archive/${version}.tar.gz";
|
url = "https://github.com/FreeCAD/FreeCAD/archive/${version}.tar.gz";
|
||||||
sha256 = "1r5rhaiq22yhrfpmcmzx6bflqj6q9asbyjyfja4x4rzfy9yh0a4v";
|
sha256 = "07j7azgnicmd8cqnyskp15y44ykgj5qqz5y3w1jdynrv3yrvk1kz";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ninja pkgconfig pythonPackages.pyside2-tools ];
|
nativeBuildInputs = [ cmake ninja pkgconfig pythonPackages.pyside2-tools ];
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
{stdenv, fetchFromGitHub, qtbase, mesa_glu}:
|
{ stdenv, fetchFromGitHub, mkDerivation, qtbase, mesa_glu }:
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
|
mkDerivation rec {
|
||||||
name = "fstl-${version}";
|
name = "fstl-${version}";
|
||||||
version = "0.9.3";
|
version = "0.9.3";
|
||||||
|
|
||||||
|
@ -10,11 +10,11 @@
|
|||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "krita";
|
pname = "krita";
|
||||||
version = "4.2.2";
|
version = "4.2.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.gz";
|
url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.gz";
|
||||||
sha256 = "1pzk5bqp3kh22djhvsvmsc7ybirs4hsnkpg1y9677m2gxwbqnnps";
|
sha256 = "1f14r2mrqasl6nr3sss0xy2h8xlxd5wdcjcd64m9nz2gwlm39r7w";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake extra-cmake-modules python3Packages.sip makeWrapper ];
|
nativeBuildInputs = [ cmake extra-cmake-modules python3Packages.sip makeWrapper ];
|
||||||
|
@ -14,13 +14,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "openimageio";
|
pname = "openimageio";
|
||||||
version = "2.0.9";
|
version = "2.0.10";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "OpenImageIO";
|
owner = "OpenImageIO";
|
||||||
repo = "oiio";
|
repo = "oiio";
|
||||||
rev = "Release-${version}";
|
rev = "Release-${version}";
|
||||||
sha256 = "17diyfk586hll54cl476kbhbcm3nihw6cb4bgjkjxxzxbd3wx839";
|
sha256 = "0k60kgfahsqcgmydsf1kh1qzshn8mksaw772z48a40qnx28pfjys";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "bin" "out" "dev" "doc" ];
|
outputs = [ "bin" "out" "dev" "doc" ];
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "pdfcpu";
|
pname = "pdfcpu";
|
||||||
version = "0.2.1";
|
version = "0.2.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hhrutter";
|
owner = "hhrutter";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0cg17nph3qv1ca86j3wcd33vqs6clkzi6y2nrajmk7dq5vbzr6nn";
|
sha256 = "1knvi0v9nfzw40dayrw5cjidg9h900143v1pi6240yd7r7isx348";
|
||||||
};
|
};
|
||||||
|
|
||||||
modSha256 = "0cz4gs88s9z2yv1gc9ap92vv2j93ab6kr25zjgl2r7z6clbl5fzp";
|
modSha256 = "0cz4gs88s9z2yv1gc9ap92vv2j93ab6kr25zjgl2r7z6clbl5fzp";
|
||||||
|
45
pkgs/applications/graphics/runwayml/default.nix
Normal file
45
pkgs/applications/graphics/runwayml/default.nix
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
{ lib
|
||||||
|
, fetchurl
|
||||||
|
, appimageTools
|
||||||
|
, symlinkJoin
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
pname = "runwayml";
|
||||||
|
version = "0.8.1";
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://runway-releases.s3.amazonaws.com/Runway%20${version}.AppImage";
|
||||||
|
sha256 = "0pqnlwk804cly2x9kph39g9ps5dv75ybi2v1fgrvmhk3wbmwmpb0";
|
||||||
|
name="${pname}-${version}.AppImage";
|
||||||
|
};
|
||||||
|
|
||||||
|
binary = appimageTools.wrapType2 {
|
||||||
|
name = "${pname}";
|
||||||
|
inherit src;
|
||||||
|
};
|
||||||
|
# we only use this to extract the icon
|
||||||
|
appimage-contents = appimageTools.extractType2 {
|
||||||
|
inherit name src;
|
||||||
|
};
|
||||||
|
|
||||||
|
in
|
||||||
|
symlinkJoin {
|
||||||
|
inherit name;
|
||||||
|
paths = [ binary ];
|
||||||
|
|
||||||
|
postBuild = ''
|
||||||
|
mkdir -p $out/share/pixmaps/ $out/share/applications
|
||||||
|
cp ${appimage-contents}/usr/share/icons/hicolor/1024x1024/apps/runway.png $out/share/pixmaps/runway.png
|
||||||
|
sed 's:Exec=AppRun:Exec=runwayml:' ${appimage-contents}/runway.desktop > $out/share/applications/runway.desktop
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Machine learning for creators";
|
||||||
|
homepage = https://runwayml.com/;
|
||||||
|
license = licenses.unfree;
|
||||||
|
maintainers = with maintainers; [ prusnak ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
@ -1,6 +1,8 @@
|
|||||||
{ mkDerivation
|
{ mkDerivation
|
||||||
, lib
|
, lib
|
||||||
, extra-cmake-modules
|
, extra-cmake-modules
|
||||||
|
, breeze-icons
|
||||||
|
, breeze-qt5
|
||||||
, kdoctools
|
, kdoctools
|
||||||
, kconfig
|
, kconfig
|
||||||
, kcrash
|
, kcrash
|
||||||
@ -19,7 +21,8 @@
|
|||||||
, shared-mime-info
|
, shared-mime-info
|
||||||
, libv4l
|
, libv4l
|
||||||
, kfilemetadata
|
, kfilemetadata
|
||||||
, ffmpeg
|
, ffmpeg-full
|
||||||
|
, frei0r
|
||||||
, phonon-backend-gstreamer
|
, phonon-backend-gstreamer
|
||||||
, qtdeclarative
|
, qtdeclarative
|
||||||
, qtquickcontrols
|
, qtquickcontrols
|
||||||
@ -37,6 +40,8 @@ mkDerivation {
|
|||||||
kdoctools
|
kdoctools
|
||||||
];
|
];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
breeze-icons
|
||||||
|
breeze-qt5
|
||||||
kconfig
|
kconfig
|
||||||
kcrash
|
kcrash
|
||||||
kdbusaddons
|
kdbusaddons
|
||||||
@ -59,7 +64,8 @@ mkDerivation {
|
|||||||
qtwebkit
|
qtwebkit
|
||||||
shared-mime-info
|
shared-mime-info
|
||||||
libv4l
|
libv4l
|
||||||
ffmpeg
|
ffmpeg-full
|
||||||
|
frei0r
|
||||||
rttr
|
rttr
|
||||||
kpurpose
|
kpurpose
|
||||||
kdeclarative
|
kdeclarative
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ config, stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
|
{ config, stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
|
||||||
, ilmbase, libXi, libX11, libXext, libXrender
|
, ilmbase, libXi, libX11, libXext, libXrender
|
||||||
, libjpeg, libpng, libsamplerate, libsndfile
|
, libjpeg, libpng, libsamplerate, libsndfile
|
||||||
, libtiff, libGLU_combined, openal, opencolorio, openexr, openimageio, openjpeg_1, pythonPackages
|
, libtiff, libGLU_combined, openal, opencolorio, openexr, openimageio, openjpeg_1, python3Packages
|
||||||
, zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath
|
, zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath
|
||||||
, jackaudioSupport ? false, libjack2
|
, jackaudioSupport ? false, libjack2
|
||||||
, cudaSupport ? config.cudaSupport or false, cudatoolkit
|
, cudaSupport ? config.cudaSupport or false, cudatoolkit
|
||||||
@ -11,14 +11,15 @@
|
|||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
let python = pythonPackages.python; in
|
let python = python3Packages.python; in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "blender-2.79b";
|
pname = "blender";
|
||||||
|
version = "2.80";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.blender.org/source/${name}.tar.gz";
|
url = "https://download.blender.org/source/${pname}-${version}.tar.gz";
|
||||||
sha256 = "1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c";
|
sha256 = "1h550jisdbis50hxwk5kxrvrk1a6sh2fsri3yyj66vhzbi87x7fd";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ] ++ optional cudaSupport addOpenGLRunpath;
|
nativeBuildInputs = [ cmake ] ++ optional cudaSupport addOpenGLRunpath;
|
||||||
@ -36,7 +37,6 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
postPatch =
|
postPatch =
|
||||||
''
|
''
|
||||||
substituteInPlace doc/manpage/blender.1.py --replace /usr/bin/python ${python}/bin/python3
|
|
||||||
substituteInPlace extern/clew/src/clew.c --replace '"libOpenCL.so"' '"${ocl-icd}/lib/libOpenCL.so"'
|
substituteInPlace extern/clew/src/clew.c --replace '"libOpenCL.so"' '"${ocl-icd}/lib/libOpenCL.so"'
|
||||||
'';
|
'';
|
||||||
|
|
||||||
@ -47,10 +47,7 @@ stdenv.mkDerivation rec {
|
|||||||
"-DWITH_INSTALL_PORTABLE=OFF"
|
"-DWITH_INSTALL_PORTABLE=OFF"
|
||||||
"-DWITH_FFTW3=ON"
|
"-DWITH_FFTW3=ON"
|
||||||
#"-DWITH_SDL=ON"
|
#"-DWITH_SDL=ON"
|
||||||
"-DWITH_GAMEENGINE=ON"
|
|
||||||
"-DWITH_OPENCOLORIO=ON"
|
"-DWITH_OPENCOLORIO=ON"
|
||||||
"-DWITH_SYSTEM_OPENJPEG=ON"
|
|
||||||
"-DWITH_PLAYER=ON"
|
|
||||||
"-DWITH_OPENSUBDIV=ON"
|
"-DWITH_OPENSUBDIV=ON"
|
||||||
"-DPYTHON_LIBRARY=${python.libPrefix}m"
|
"-DPYTHON_LIBRARY=${python.libPrefix}m"
|
||||||
"-DPYTHON_LIBPATH=${python}/lib"
|
"-DPYTHON_LIBPATH=${python}/lib"
|
||||||
@ -58,13 +55,10 @@ stdenv.mkDerivation rec {
|
|||||||
"-DPYTHON_VERSION=${python.pythonVersion}"
|
"-DPYTHON_VERSION=${python.pythonVersion}"
|
||||||
"-DWITH_PYTHON_INSTALL=OFF"
|
"-DWITH_PYTHON_INSTALL=OFF"
|
||||||
"-DWITH_PYTHON_INSTALL_NUMPY=OFF"
|
"-DWITH_PYTHON_INSTALL_NUMPY=OFF"
|
||||||
|
"-DPYTHON_NUMPY_PATH=${python3Packages.numpy}/${python.sitePackages}"
|
||||||
]
|
]
|
||||||
++ optional jackaudioSupport "-DWITH_JACK=ON"
|
++ optional jackaudioSupport "-DWITH_JACK=ON"
|
||||||
++ optionals cudaSupport
|
++ optional cudaSupport "-DWITH_CYCLES_CUDA_BINARIES=ON"
|
||||||
[ "-DWITH_CYCLES_CUDA_BINARIES=ON"
|
|
||||||
# Disable architectures before sm_30 to support new CUDA toolkits.
|
|
||||||
"-DCYCLES_CUDA_BINARIES_ARCH=sm_30;sm_35;sm_37;sm_50;sm_52;sm_60;sm_61"
|
|
||||||
]
|
|
||||||
++ optional colladaSupport "-DWITH_OPENCOLLADA=ON";
|
++ optional colladaSupport "-DWITH_OPENCOLLADA=ON";
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-I${ilmbase.dev}/include/OpenEXR -I${python}/include/${python.libPrefix}";
|
NIX_CFLAGS_COMPILE = "-I${ilmbase.dev}/include/OpenEXR -I${python}/include/${python.libPrefix}";
|
||||||
@ -78,7 +72,7 @@ stdenv.mkDerivation rec {
|
|||||||
postInstall = optionalString enableNumpy
|
postInstall = optionalString enableNumpy
|
||||||
''
|
''
|
||||||
wrapProgram $out/bin/blender \
|
wrapProgram $out/bin/blender \
|
||||||
--prefix PYTHONPATH : ${pythonPackages.numpy}/${python.sitePackages}
|
--prefix PYTHONPATH : ${python3Packages.numpy}/${python.sitePackages}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Set RUNPATH so that libcuda and libnvrtc in /run/opengl-driver(-32)/lib can be
|
# Set RUNPATH so that libcuda and libnvrtc in /run/opengl-driver(-32)/lib can be
|
||||||
|
@ -49,8 +49,7 @@ stdenv.mkDerivation rec {
|
|||||||
]);
|
]);
|
||||||
|
|
||||||
qtWrapperArgs = [
|
qtWrapperArgs = [
|
||||||
"--prefix PYTHONPATH: $PYTHONPATH"
|
"--prefix PATH : ${poppler_utils.out}/bin"
|
||||||
"--prefix PATH: ${poppler_utils.out}/bin}"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
@ -76,7 +75,7 @@ stdenv.mkDerivation rec {
|
|||||||
sed -i "2i import sys; sys.argv[0] = 'calibre'" $out/bin/calibre
|
sed -i "2i import sys; sys.argv[0] = 'calibre'" $out/bin/calibre
|
||||||
|
|
||||||
for program in $out/bin/*; do
|
for program in $out/bin/*; do
|
||||||
wrapQtApp $program
|
wrapQtApp $program --prefix PYTHONPATH : $PYTHONPATH
|
||||||
done
|
done
|
||||||
|
|
||||||
# Replace @out@ by the output path.
|
# Replace @out@ by the output path.
|
||||||
|
@ -1,21 +1,20 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, ncurses }:
|
{ stdenv, fetchFromGitHub, autoreconfHook, ncurses }:
|
||||||
|
|
||||||
let
|
|
||||||
version = "1.2a";
|
|
||||||
in with stdenv.lib;
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "cmatrix";
|
||||||
|
version = "2.0";
|
||||||
|
|
||||||
name = "cmatrix-${version}";
|
src = fetchFromGitHub {
|
||||||
|
owner = "abishekvashok";
|
||||||
src = fetchurl{
|
repo = "cmatrix";
|
||||||
url = "http://www.asty.org/cmatrix/dist/${name}.tar.gz";
|
rev = "v${version}";
|
||||||
sha256 = "0k06fw2n8nzp1pcdynhajp5prba03gfgsbj91bknyjr5xb5fd9hz";
|
sha256 = "1h9jz4m4s5l8c3figaq46ja0km1gimrkfxm4dg7mf4s84icmasbm";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ autoreconfHook ];
|
||||||
buildInputs = [ ncurses ];
|
buildInputs = [ ncurses ];
|
||||||
|
|
||||||
meta = {
|
meta = with stdenv.lib; {
|
||||||
description = "Simulates the falling characters theme from The Matrix movie";
|
description = "Simulates the falling characters theme from The Matrix movie";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
CMatrix simulates the display from "The Matrix" and is based
|
CMatrix simulates the display from "The Matrix" and is based
|
||||||
|
@ -1,21 +1,21 @@
|
|||||||
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, qtgraphicaleffects, curaengine, plugins ? [] }:
|
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, qtgraphicaleffects, curaengine, plugins ? [] }:
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
name = "cura-${version}";
|
pname = "cura";
|
||||||
version = "4.1.0";
|
version = "4.2.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Ultimaker";
|
owner = "Ultimaker";
|
||||||
repo = "Cura";
|
repo = "Cura";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1mfpnjrh3splpkadgml3v71k939g56zb9hbmzghwfjwlrf8valmz";
|
sha256 = "1qnai8vmgy5lx3lapw96j41i8mw9p6r99i3qzs709l9yzrix6l86";
|
||||||
};
|
};
|
||||||
|
|
||||||
materials = fetchFromGitHub {
|
materials = fetchFromGitHub {
|
||||||
owner = "Ultimaker";
|
owner = "Ultimaker";
|
||||||
repo = "fdm_materials";
|
repo = "fdm_materials";
|
||||||
rev = version;
|
rev = "4.2.0"; # TODO: change back to `version` after 4.2.1
|
||||||
sha256 = "0yp2162msxfwpixzvassn23p7r3swjpwk4nhsjka5w6fm8pv0wpl";
|
sha256 = "17x43v0np58qbdfk3wz1k7i9pl0plndx9gmf7y0n23nl9f1qzb0m";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
|
buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
|
||||||
@ -29,6 +29,11 @@ mkDerivation rec {
|
|||||||
"-DCURA_VERSION=${version}"
|
"-DCURA_VERSION=${version}"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
makeWrapperArgs = [
|
||||||
|
# hacky workaround for https://github.com/NixOS/nixpkgs/issues/59901
|
||||||
|
"--set OMP_NUM_THREADS 1"
|
||||||
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i 's,/python''${PYTHON_VERSION_MAJOR}/dist-packages,/python''${PYTHON_VERSION_MAJOR}.''${PYTHON_VERSION_MINOR}/site-packages,g' CMakeLists.txt
|
sed -i 's,/python''${PYTHON_VERSION_MAJOR}/dist-packages,/python''${PYTHON_VERSION_MAJOR}.''${PYTHON_VERSION_MINOR}/site-packages,g' CMakeLists.txt
|
||||||
sed -i 's, executable_name = .*, executable_name = "${curaengine}/bin/CuraEngine",' plugins/CuraEngineBackend/CuraEngineBackend.py
|
sed -i 's, executable_name = .*, executable_name = "${curaengine}/bin/CuraEngine",' plugins/CuraEngineBackend/CuraEngineBackend.py
|
||||||
@ -52,6 +57,6 @@ mkDerivation rec {
|
|||||||
homepage = https://github.com/Ultimaker/Cura;
|
homepage = https://github.com/Ultimaker/Cura;
|
||||||
license = licenses.lgpl3Plus;
|
license = licenses.lgpl3Plus;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ abbradar ];
|
maintainers = with maintainers; [ abbradar gebner ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,58 +0,0 @@
|
|||||||
{ stdenv, fetchurl, dpkg, bash, python27Packages }:
|
|
||||||
|
|
||||||
let
|
|
||||||
py = python27Packages;
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "cura-lulzbot-${version}";
|
|
||||||
version = "15.02.1-1.03-5064";
|
|
||||||
|
|
||||||
src =
|
|
||||||
if stdenv.hostPlatform.system == "x86_64-linux" then
|
|
||||||
fetchurl {
|
|
||||||
url = "https://download.alephobjects.com/ao/aodeb/dists/jessie/main/binary-amd64/cura_${version}_amd64.deb";
|
|
||||||
sha256 = "1gsfidg3gim5pjbl82vkh0cw4ya253m4p7nirm8nr6yjrsirkzxg";
|
|
||||||
}
|
|
||||||
else if stdenv.hostPlatform.system == "i686-linux" then
|
|
||||||
fetchurl {
|
|
||||||
url = "http://download.alephobjects.com/ao/aodeb/dists/jessie/main/binary-i386/cura_${version}_i386.deb";
|
|
||||||
sha256 = "0xd3df6bxq4rijgvsqvps454jkc1nzhxbdzzj6j2w317ppsbhyc1";
|
|
||||||
}
|
|
||||||
else throw "${name} is not supported on ${stdenv.hostPlatform.system}";
|
|
||||||
|
|
||||||
python_deps = with py; [ pyopengl pyserial numpy wxPython30 power setuptools ];
|
|
||||||
pythonPath = python_deps;
|
|
||||||
propagatedBuildInputs = python_deps;
|
|
||||||
buildInputs = [ dpkg bash py.wrapPython ];
|
|
||||||
|
|
||||||
phases = [ "unpackPhase" "installPhase" ];
|
|
||||||
unpackPhase = "dpkg-deb -x ${src} ./";
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/bin
|
|
||||||
cp -r usr/share $out/share
|
|
||||||
find $out/share -type f -exec sed -i 's|/usr/share/cura|$out/share/cura|g' "{}" \;
|
|
||||||
|
|
||||||
cat <<EOT > $out/bin/cura
|
|
||||||
#!${bash}/bin/bash
|
|
||||||
PYTHONPATH=$PYTHONPATH:$out/share/cura ${py.python}/bin/python $out/share/cura/cura.py "\$@"
|
|
||||||
EOT
|
|
||||||
|
|
||||||
chmod 555 $out/bin/cura
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
|
||||||
description = "3D printing host software for the Lulzbot";
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
Cura LulzBot Edition is a fork of the 3D printing/slicing
|
|
||||||
software from Ultimaker, with changes to support 3D printers
|
|
||||||
from Aleph Objects.
|
|
||||||
'';
|
|
||||||
|
|
||||||
homepage = https://www.lulzbot.com/cura/;
|
|
||||||
license = licenses.agpl3;
|
|
||||||
platforms = platforms.linux;
|
|
||||||
maintainers = with maintainers; [ pjones ];
|
|
||||||
};
|
|
||||||
}
|
|
26
pkgs/applications/misc/cura/lulzbot/curaengine.nix
Normal file
26
pkgs/applications/misc/cura/lulzbot/curaengine.nix
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
{ stdenv, callPackage, fetchgit, fetchpatch, cmake, libarcusLulzbot, stb, protobuf }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "curaengine-lulzBot-${version}";
|
||||||
|
version = "3.6.18";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = https://code.alephobjects.com/source/curaengine-lulzbot.git;
|
||||||
|
rev = "ec6a1a0f0aa387ef97e5c106633cf8d7fb9cd00d";
|
||||||
|
sha256 = "0wdkvg1hmqp1gaym804lw09x4ngf5ffasd861jhflpy7djbmkfn8";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
buildInputs = [ libarcusLulzbot stb protobuf ];
|
||||||
|
|
||||||
|
cmakeFlags = [ "-DCURA_ENGINE_VERSION=${version}" ];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A powerful, fast and robust engine for processing 3D models into 3D printing instruction";
|
||||||
|
homepage = https://code.alephobjects.com/source/curaengine-lulzbot/;
|
||||||
|
license = licenses.agpl3;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ chaduffy ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
78
pkgs/applications/misc/cura/lulzbot/default.nix
Normal file
78
pkgs/applications/misc/cura/lulzbot/default.nix
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
{ lib, callPackage, fetchgit, cmake, jq, python3Packages, qtbase, qtquickcontrols2 }:
|
||||||
|
|
||||||
|
let
|
||||||
|
# admittedly, we're using (printer firmware) blobs when we could compile them ourselves.
|
||||||
|
curaBinaryDataVersion = "3.6.18"; # Marlin v2.0.0.144. Keep this accurate wrt. the below.
|
||||||
|
curaBinaryData = fetchgit {
|
||||||
|
url = https://code.alephobjects.com/diffusion/CBD/cura-binary-data.git;
|
||||||
|
rev = "cdc046494bbfe1f65bfb34659a257eef9a0100a0";
|
||||||
|
sha256 = "0v0s036gxdjiglas2yzw95alv60sw3pq5k1zrrhmw9mxr4irrblb";
|
||||||
|
};
|
||||||
|
|
||||||
|
libarcusLulzbot = callPackage ./libarcus.nix {
|
||||||
|
inherit (python3Packages) buildPythonPackage sip pythonOlder;
|
||||||
|
};
|
||||||
|
libsavitarLulzbot = callPackage ./libsavitar.nix {
|
||||||
|
inherit (python3Packages) buildPythonPackage sip pythonOlder;
|
||||||
|
};
|
||||||
|
|
||||||
|
inherit (python3Packages) buildPythonPackage pyqt5 numpy scipy shapely pythonOlder;
|
||||||
|
curaengine = callPackage ./curaengine.nix {
|
||||||
|
inherit libarcusLulzbot;
|
||||||
|
};
|
||||||
|
uraniumLulzbot = callPackage ./uranium.nix {
|
||||||
|
inherit callPackage libarcusLulzbot;
|
||||||
|
inherit (python3Packages) buildPythonPackage pyqt5 numpy scipy shapely pythonOlder;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
python3Packages.buildPythonApplication rec {
|
||||||
|
name = "cura-lulzbot-${version}";
|
||||||
|
version = "3.6.18";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = https://code.alephobjects.com/source/cura-lulzbot.git;
|
||||||
|
rev = "71f1ac5a2b9f535175a3858a565930348358a9ca";
|
||||||
|
sha256 = "0by06fpxvdgy858lwhsccbmvkdq67j2s1cz8v6jnrnjrsxk7vzka";
|
||||||
|
};
|
||||||
|
|
||||||
|
format = "other"; # using cmake to build
|
||||||
|
buildInputs = [ qtbase qtquickcontrols2 ];
|
||||||
|
# numpy-stl temporarily disabled due to https://code.alephobjects.com/T8415
|
||||||
|
propagatedBuildInputs = with python3Packages; [ pyserial requests zeroconf ] ++ [ libsavitarLulzbot uraniumLulzbot libarcusLulzbot ]; # numpy-stl
|
||||||
|
nativeBuildInputs = [ cmake python3Packages.wrapPython ];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DURANIUM_DIR=${uraniumLulzbot.src}"
|
||||||
|
"-DCURA_VERSION=${version}"
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
sed -i 's,/python''${PYTHON_VERSION_MAJOR}/dist-packages,/python''${PYTHON_VERSION_MAJOR}.''${PYTHON_VERSION_MINOR}/site-packages,g' CMakeLists.txt
|
||||||
|
sed -i 's, executable_name = .*, executable_name = "${curaengine}/bin/CuraEngine",' plugins/CuraEngineBackend/CuraEngineBackend.py
|
||||||
|
'';
|
||||||
|
|
||||||
|
preFixup = ''
|
||||||
|
substituteInPlace "$out/bin/cura-lulzbot" --replace 'import cura.CuraApplication' 'import Savitar; import cura.CuraApplication'
|
||||||
|
ln -sT "${curaBinaryData}/cura/resources/firmware" "$out/share/cura/resources/firmware"
|
||||||
|
ln -sT "${uraniumLulzbot}/share/uranium" "$out/share/uranium"
|
||||||
|
${jq}/bin/jq --arg out "$out" '.build=$out' >"$out/version.json" <<'EOF'
|
||||||
|
${builtins.toJSON {
|
||||||
|
cura = version;
|
||||||
|
cura_version = version;
|
||||||
|
binarydata = curaBinaryDataVersion;
|
||||||
|
engine = curaengine.version;
|
||||||
|
libarcus = libarcusLulzbot.version;
|
||||||
|
libsavitar = libsavitarLulzbot.version;
|
||||||
|
uranium = uraniumLulzbot.version;
|
||||||
|
}}
|
||||||
|
EOF
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "3D printer / slicing GUI built on top of the Uranium framework";
|
||||||
|
homepage = https://code.alephobjects.com/diffusion/CURA/;
|
||||||
|
license = licenses.agpl3; # a partial relicense to LGPL has happened, but not certain that all AGPL bits are expunged
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ chaduffy ];
|
||||||
|
};
|
||||||
|
}
|
33
pkgs/applications/misc/cura/lulzbot/libarcus.nix
Normal file
33
pkgs/applications/misc/cura/lulzbot/libarcus.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ stdenv, buildPythonPackage, fetchgit, fetchurl, cmake, sip, protobuf, pythonOlder }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "libarcus";
|
||||||
|
version = "3.6.18";
|
||||||
|
format = "other";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = https://code.alephobjects.com/source/arcus.git;
|
||||||
|
rev = "c795c0644591703ce04e1fd799fc97b1539031aa";
|
||||||
|
sha256 = "1yap9wbqxbjx3kqyqcsldny4mlcm33ywiwpdjlfgs0wjahfg4ip0";
|
||||||
|
};
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.4.0";
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ sip ];
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
buildInputs = [ protobuf ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
# To workaround buggy SIP detection which overrides PYTHONPATH
|
||||||
|
sed -i '/SET(ENV{PYTHONPATH}/d' cmake/FindSIP.cmake
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Communication library between internal components for Ultimaker software";
|
||||||
|
homepage = https://code.alephobjects.com/source/arcus/;
|
||||||
|
license = licenses.lgpl3Plus;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ chaduffy ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
33
pkgs/applications/misc/cura/lulzbot/libsavitar.nix
Normal file
33
pkgs/applications/misc/cura/lulzbot/libsavitar.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ stdenv, buildPythonPackage, pythonOlder, fetchgit, cmake, sip }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "libsavitar-lulzbot";
|
||||||
|
name = "libsavitar-lulzbot";
|
||||||
|
version = "3.6.18";
|
||||||
|
format = "other";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = https://code.alephobjects.com/source/savitar.git;
|
||||||
|
rev = "988a26d35b2a1d042f8c38938ccda77ab146af7d";
|
||||||
|
sha256 = "146agw3a92azkgs5ahmn2rrck4an78m2r3pcss6ihmb60lx165k7";
|
||||||
|
};
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
# To workaround buggy SIP detection which overrides PYTHONPATH
|
||||||
|
sed -i '/SET(ENV{PYTHONPATH}/d' cmake/FindSIP.cmake
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ sip ];
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.4.0";
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "C++ implementation of 3mf loading with SIP python bindings";
|
||||||
|
homepage = https://github.com/Ultimaker/libSavitar;
|
||||||
|
license = licenses.lgpl3Plus;
|
||||||
|
platforms = platforms.unix;
|
||||||
|
maintainers = with maintainers; [ chaduffy ];
|
||||||
|
};
|
||||||
|
}
|
@ -0,0 +1,16 @@
|
|||||||
|
diff --git a/UM/Qt/Bindings/i18nCatalogProxy.py b/UM/Qt/Bindings/i18nCatalogProxy.py
|
||||||
|
index 7e2bb16c..cec70dd6 100644
|
||||||
|
--- a/UM/Qt/Bindings/i18nCatalogProxy.py
|
||||||
|
+++ b/UM/Qt/Bindings/i18nCatalogProxy.py
|
||||||
|
@@ -86,9 +86,9 @@ class i18nCatalogProxy(QObject): # [CodeStyle: Ultimaker code style requires cla
|
||||||
|
# \todo Move this to a more generic place so more things can use it.
|
||||||
|
def _wrapFunction(self, engine, this_object, function):
|
||||||
|
# JavaScript code that wraps the Python method call in a closure
|
||||||
|
- wrap_js = """function(this_object) {{
|
||||||
|
+ wrap_js = """(function(this_object) {{
|
||||||
|
return function({args}) {{ return this_object.{function}({args}) }}
|
||||||
|
- }}"""
|
||||||
|
+ }})"""
|
||||||
|
|
||||||
|
# Get the function name and argument list.
|
||||||
|
function_name = function.__name__
|
41
pkgs/applications/misc/cura/lulzbot/uranium.nix
Normal file
41
pkgs/applications/misc/cura/lulzbot/uranium.nix
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
{ stdenv, callPackage, fetchurl, fetchgit, buildPythonPackage, fetchFromGitHub, python, cmake
|
||||||
|
, pyqt5, numpy, scipy, shapely, libarcusLulzbot, doxygen, gettext, pythonOlder }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
version = "3.6.18";
|
||||||
|
pname = "uranium";
|
||||||
|
name = "uraniumLulzbot";
|
||||||
|
format = "other";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = https://code.alephobjects.com/diffusion/U/uranium.git;
|
||||||
|
rev = "33df88a7414375ac924ac761113baa48d2ced2b4";
|
||||||
|
sha256 = "109cbv7y105crbrzfp70lmcr9n20ap5c97i5qd46fmxbx86yj7f8";
|
||||||
|
};
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.5.0";
|
||||||
|
|
||||||
|
buildInputs = [ python gettext ];
|
||||||
|
propagatedBuildInputs = [ pyqt5 numpy scipy shapely libarcusLulzbot ];
|
||||||
|
nativeBuildInputs = [ cmake doxygen ];
|
||||||
|
|
||||||
|
# Qt 5.12+ support; see https://code.alephobjects.com/rU70b73ba0a270799b9eacf78e400aa8b8ab3fb2ee
|
||||||
|
patches = [ ./uranium-qt512-support.patch ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
sed -i 's,/python''${PYTHON_VERSION_MAJOR}/dist-packages,/python''${PYTHON_VERSION_MAJOR}.''${PYTHON_VERSION_MINOR}/site-packages,g' CMakeLists.txt
|
||||||
|
sed -i \
|
||||||
|
-e "s,Resources.addSearchPath(os.path.join(os.path.abspath(os.path.dirname(__file__)).*,Resources.addSearchPath(\"$out/share/uranium/resources\")," \
|
||||||
|
-e "s,self._plugin_registry.addPluginLocation(os.path.join(os.path.abspath(os.path.dirname(__file__)).*,self._plugin_registry.addPluginLocation(\"$out/lib/uranium/plugins\")," \
|
||||||
|
UM/Application.py
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A Python framework for building Desktop applications";
|
||||||
|
homepage = https://code.alephobjects.com/diffusion/U/;
|
||||||
|
license = licenses.lgpl3Plus;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ chaduffy ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -6,13 +6,13 @@ let
|
|||||||
|
|
||||||
octoprint = stdenv.mkDerivation rec {
|
octoprint = stdenv.mkDerivation rec {
|
||||||
pname = "Cura-OctoPrintPlugin";
|
pname = "Cura-OctoPrintPlugin";
|
||||||
version = "3.5.5";
|
version = "3.5.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "fieldOfView";
|
owner = "fieldOfView";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "d05a9a4c1a01c584d5cec4f4b7d170077235467a";
|
rev = "46548cbb8d32d10fe3aee12f272d5d8f34271738";
|
||||||
sha256 = "0ik69g3kbn7rz2wh0cfq9ww8x222kagd8jvsd4xlqgq4yrf0jk7x";
|
sha256 = "0pllba8qx1746pnf5ccbkqn2j6f8hhknpgyrrv244ykvigrlczx0";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "curaengine-${version}";
|
name = "curaengine-${version}";
|
||||||
version = "4.1.0";
|
version = "4.2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Ultimaker";
|
owner = "Ultimaker";
|
||||||
repo = "CuraEngine";
|
repo = "CuraEngine";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "14zy9ir46vndsi4l8kapm6byw02fimm7ava2rfi0kvcckf5yq9w8";
|
sha256 = "13hbzsx4fwrbwviyhh8z04gs9b0m8fjl8a31ci7gr2dfdmgjs6pd";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
|
|||||||
homepage = https://github.com/Ultimaker/CuraEngine;
|
homepage = https://github.com/Ultimaker/CuraEngine;
|
||||||
license = licenses.agpl3;
|
license = licenses.agpl3;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ abbradar ];
|
maintainers = with maintainers; [ abbradar gebner ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "dbeaver-ce-${version}";
|
name = "dbeaver-ce-${version}";
|
||||||
version = "6.1.3";
|
version = "6.1.4";
|
||||||
|
|
||||||
desktopItem = makeDesktopItem {
|
desktopItem = makeDesktopItem {
|
||||||
name = "dbeaver";
|
name = "dbeaver";
|
||||||
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
|
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
|
||||||
sha256 = "1ngfypx0wbq98rv791zls07h46rnj69qixpslw0xn9bb3ky4snbf";
|
sha256 = "1l4skcannbzddhm773dm3hwv3a7b3xy569gydcfczgdlgzgmlfjq";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
@ -16,13 +16,13 @@ let
|
|||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gImageReader-${version}";
|
name = "gImageReader-${version}";
|
||||||
version = "3.3.0";
|
version = "3.3.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner= "manisandro";
|
owner= "manisandro";
|
||||||
repo = "gImageReader";
|
repo = "gImageReader";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0pjk4kr7bc5q4hi1xf7na2zln9fyqdazgzq62r3bg41nzy7fakcz";
|
sha256 = "17hz2dgxx2j7hsk0lx3riidqvlsg0ylnicjd2gphsi3yp7w20zdj";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "gallery_dl";
|
pname = "gallery_dl";
|
||||||
version = "1.8.6";
|
version = "1.10.1";
|
||||||
|
|
||||||
src = python3Packages.fetchPypi {
|
src = python3Packages.fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "0in47v6c82a6mqg4wzxrji7wd8a9qh5386rsr77s3a8613am1n2x";
|
sha256 = "174d2q7w0kwa6xx9k3bl5gdwmk0gklvch963g7vl979wqsf7nskw";
|
||||||
};
|
};
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
@ -4,11 +4,11 @@
|
|||||||
with stdenv.lib;
|
with stdenv.lib;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gkrellm-2.3.10";
|
name = "gkrellm-2.3.11";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://gkrellm.srcbox.net/releases/${name}.tar.bz2";
|
url = "http://gkrellm.srcbox.net/releases/${name}.tar.bz2";
|
||||||
sha256 = "0rnpzjr0ys0ypm078y63q4aplcgdr5nshjzhmz330n6dmnxci7lb";
|
sha256 = "01lccz4fga40isv09j8rjgr0qy10rff9vj042n6gi6gdv4z69q0y";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig which ];
|
nativeBuildInputs = [ pkgconfig which ];
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl
|
{ stdenv, mkDerivation, fetchurl
|
||||||
, qtbase, qtsvg, qtserialport, qtwebkit, qtmultimedia, qttools, qtconnectivity
|
, qtbase, qtsvg, qtserialport, qtwebkit, qtmultimedia, qttools, qtconnectivity
|
||||||
, yacc, flex, zlib, qmake, makeDesktopItem, makeWrapper
|
, yacc, flex, zlib, qmake, makeDesktopItem, makeWrapper
|
||||||
}:
|
}:
|
||||||
@ -13,7 +13,7 @@ let
|
|||||||
comment = "Performance software for cyclists, runners and triathletes";
|
comment = "Performance software for cyclists, runners and triathletes";
|
||||||
categories = "Application;Utility;";
|
categories = "Application;Utility;";
|
||||||
};
|
};
|
||||||
in stdenv.mkDerivation rec {
|
in mkDerivation rec {
|
||||||
name = "golden-cheetah-${version}";
|
name = "golden-cheetah-${version}";
|
||||||
version = "3.4";
|
version = "3.4";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
@ -29,6 +29,9 @@ in stdenv.mkDerivation rec {
|
|||||||
NIX_LDFLAGS = [
|
NIX_LDFLAGS = [
|
||||||
"-lz"
|
"-lz"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
qtWrapperArgs = [ "--set LD_LIBRARY_PATH ${zlib.out}/lib" ];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
cp src/gcconfig.pri.in src/gcconfig.pri
|
cp src/gcconfig.pri.in src/gcconfig.pri
|
||||||
cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri
|
cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri
|
||||||
@ -40,7 +43,6 @@ in stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
cp src/GoldenCheetah $out/bin
|
cp src/GoldenCheetah $out/bin
|
||||||
wrapProgram $out/bin/GoldenCheetah --set LD_LIBRARY_PATH "${zlib.out}/lib"
|
|
||||||
install -Dm644 "${desktopItem}/share/applications/"* -t $out/share/applications/
|
install -Dm644 "${desktopItem}/share/applications/"* -t $out/share/applications/
|
||||||
install -Dm644 src/Resources/images/gc.png $out/share/pixmaps/goldencheetah.png
|
install -Dm644 src/Resources/images/gc.png $out/share/pixmaps/goldencheetah.png
|
||||||
|
|
||||||
|
@ -1,25 +1,29 @@
|
|||||||
{ stdenv, fetchFromGitHub, pkgconfig, libXtst, libvorbis, hunspell
|
{ mkDerivation, lib, fetchFromGitHub, pkgconfig, libXtst, libvorbis, hunspell
|
||||||
, libao, ffmpeg, libeb, lzo, xz, libtiff
|
, libao, ffmpeg, libeb, lzo, xz, libtiff, opencc
|
||||||
, qtbase, qtsvg, qtwebkit, qtx11extras, qttools, qmake }:
|
, qtbase, qtsvg, qtwebkit, qtx11extras, qttools, qmake }:
|
||||||
stdenv.mkDerivation rec {
|
mkDerivation rec {
|
||||||
|
|
||||||
name = "goldendict-2018-06-13";
|
name = "goldendict-2019-08-01";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "goldendict";
|
owner = "goldendict";
|
||||||
repo = "goldendict";
|
repo = "goldendict";
|
||||||
rev = "48e850c7ec11d83cba7499f7fdce377ef3849bbb";
|
rev = "0f951b06a55f3a201891cf645a556e773bda5f52";
|
||||||
sha256 = "0i4q4waqjv45hgwillvjik97pg26kwlmz4925djjkx8s6hxgjlq9";
|
sha256 = "1d1hn95vhvsmbq9q96l5adn90g0hg25dl01knb4y4v6v9x4yrl2x";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig qmake ];
|
nativeBuildInputs = [ pkgconfig qmake ];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
qtbase qtsvg qtwebkit qtx11extras qttools
|
qtbase qtsvg qtwebkit qtx11extras qttools
|
||||||
libXtst libvorbis hunspell libao ffmpeg libeb lzo xz libtiff
|
libXtst libvorbis hunspell libao ffmpeg libeb lzo xz libtiff opencc
|
||||||
];
|
];
|
||||||
|
|
||||||
qmakeFlags = [ "CONFIG+=zim_support" ];
|
qmakeFlags = [
|
||||||
|
"goldendict.pro"
|
||||||
|
"CONFIG+=zim_support"
|
||||||
|
"CONFIG+=chinese_conversion_support"
|
||||||
|
];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with lib; {
|
||||||
homepage = http://goldendict.org/;
|
homepage = http://goldendict.org/;
|
||||||
description = "A feature-rich dictionary lookup program";
|
description = "A feature-rich dictionary lookup program";
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "jgmenu";
|
pname = "jgmenu";
|
||||||
version = "3.1";
|
version = "3.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "johanmalm";
|
owner = "johanmalm";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "03lk89d6wvqv234qciksd4zm0z4lkvrxfh6r9ff0d8yzg67m7rd0";
|
sha256 = "02qpvlmcis7217hkqilhszza4g1smb4byx4gihgp5207aj8qhz0l";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv
|
{ mkDerivation
|
||||||
, lib
|
, lib
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, extra-cmake-modules
|
, extra-cmake-modules
|
||||||
@ -18,7 +18,7 @@
|
|||||||
, kwayland
|
, kwayland
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "kdeconnect";
|
pname = "kdeconnect";
|
||||||
version = "1.3.4";
|
version = "1.3.4";
|
||||||
|
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
, desktop-file-utils, libSM, imagemagick }:
|
, desktop-file-utils, libSM, imagemagick }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "19.04";
|
version = "19.07";
|
||||||
name = "mediainfo-gui-${version}";
|
name = "mediainfo-gui-${version}";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
||||||
sha256 = "11wag23gx7nprrm1qlgvbc83rs9zxdsshqrp98zwia80xh8c9bk5";
|
sha256 = "0b2ypdlpj5v64ggqk628mgqraba27z725sa0zf0fa4agxhf9ka44";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||||
|
@ -1,71 +1,85 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, libpng, openssl, curl, gtk2, check, SDL
|
{ stdenv, fetchurl, fetchpatch, makeWrapper, wrapGAppsHook
|
||||||
, libxml2, libidn, perl, nettools, perlPackages
|
|
||||||
, libXcursor, libXrandr, makeWrapper
|
# Buildtime dependencies.
|
||||||
|
|
||||||
|
, check, pkgconfig, xxd
|
||||||
|
|
||||||
|
# Runtime dependencies.
|
||||||
|
|
||||||
|
, curl, expat, libXcursor, libXrandr, libidn, libjpeg, libpng, libwebp, libxml2
|
||||||
|
, openssl, perl, perlPackages
|
||||||
|
|
||||||
|
# uilib-specific dependencies
|
||||||
|
|
||||||
|
, gtk2 # GTK 2
|
||||||
|
, SDL # Framebuffer
|
||||||
|
|
||||||
|
# Configuration
|
||||||
|
|
||||||
, uilib ? "framebuffer"
|
, uilib ? "framebuffer"
|
||||||
, buildsystem
|
|
||||||
, nsgenbind
|
# Netsurf-specific dependencies
|
||||||
, libnsfb
|
|
||||||
, libwapcaplet
|
, libcss, libdom, libhubbub, libnsbmp, libnsfb, libnsgif
|
||||||
, libparserutils
|
, libnslog, libnspsl, libnsutils, libparserutils, libsvgtiny, libutf8proc
|
||||||
, libcss
|
, libwapcaplet, nsgenbind
|
||||||
, libhubbub
|
|
||||||
, libdom
|
|
||||||
, libnsbmp
|
|
||||||
, libnsgif
|
|
||||||
, libnsutils
|
|
||||||
, libutf8proc
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (stdenv.lib) optional optionals;
|
||||||
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
|
||||||
name = "netsurf-${version}";
|
name = "netsurf-${version}";
|
||||||
version = "3.5";
|
version = "3.9";
|
||||||
|
|
||||||
# UI libs incldue Framebuffer, and gtk
|
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/netsurf/releases/source/netsurf-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/netsurf/releases/source/netsurf-${version}-src.tar.gz";
|
||||||
sha256 = "1k0x8mzgavfy7q9kywl6kzsc084g1xlymcnsxi5v6jp279nsdwwq";
|
sha256 = "1hzcm2s2wh5sapgr000lg63hcdbj6hyajxl43xa1x80kc5piqbyp";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
patches = [
|
||||||
buildInputs = [ libpng openssl curl gtk2 check libxml2 libidn perl
|
# GTK: prefer using curl's intrinsic defaults for CURLOPT_CA*
|
||||||
nettools perlPackages.HTMLParser libXcursor libXrandr makeWrapper SDL
|
(fetchpatch {
|
||||||
buildsystem
|
name = "0001-GTK-prefer-using-curl-s-intrinsic-defaults-for-CURLO.patch";
|
||||||
nsgenbind
|
url = "http://source.netsurf-browser.org/netsurf.git/patch/?id=87177d8aa109206d131e0d80a2080ce55dab01c7";
|
||||||
libnsfb
|
sha256 = "08bc60pc5k5qpckqv21zgmgszj3rpwskfc84shs8vg92vkimv2ai";
|
||||||
libwapcaplet
|
})
|
||||||
libparserutils
|
];
|
||||||
libcss
|
|
||||||
libhubbub
|
nativeBuildInputs = [
|
||||||
libdom
|
makeWrapper
|
||||||
libnsbmp
|
perl
|
||||||
libnsgif
|
perlPackages.HTMLParser
|
||||||
libnsutils
|
pkgconfig
|
||||||
|
xxd
|
||||||
|
]
|
||||||
|
++ optional (uilib == "gtk") wrapGAppsHook
|
||||||
|
;
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
check curl libXcursor libXrandr libidn libjpeg libpng libwebp libxml2 openssl
|
||||||
|
# Netsurf-specific libraries
|
||||||
|
nsgenbind libnsfb libwapcaplet libparserutils libnslog libcss
|
||||||
|
libhubbub libdom libnsbmp libnsgif libsvgtiny libnsutils libnspsl
|
||||||
libutf8proc
|
libutf8proc
|
||||||
];
|
]
|
||||||
|
++ optionals (uilib == "framebuffer") [ expat SDL ]
|
||||||
|
++ optional (uilib == "gtk") gtk2
|
||||||
|
;
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
cat <<EOF > Makefile.conf
|
cat <<EOF > Makefile.conf
|
||||||
override NETSURF_GTK_RESOURCES := $out/share/Netsurf/${uilib}/res
|
override NETSURF_GTK_RES_PATH := $out/share/
|
||||||
override NETSURF_USE_GRESOURCE := YES
|
override NETSURF_USE_GRESOURCE := YES
|
||||||
EOF
|
EOF
|
||||||
'';
|
'';
|
||||||
|
|
||||||
makeFlags = [
|
makeFlags = [
|
||||||
"PREFIX=$(out)"
|
"PREFIX=${placeholder "out"}"
|
||||||
"NSSHARED=${buildsystem}/share/netsurf-buildsystem"
|
|
||||||
"TARGET=${uilib}"
|
"TARGET=${uilib}"
|
||||||
];
|
];
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/bin $out/share/Netsurf/${uilib}
|
|
||||||
cmd=$(case "${uilib}" in framebuffer) echo nsfb;; gtk) echo nsgtk;; esac)
|
|
||||||
cp $cmd $out/bin/netsurf
|
|
||||||
wrapProgram $out/bin/netsurf --set NETSURFRES $out/share/Netsurf/${uilib}/res
|
|
||||||
tar -hcf - ${uilib}/res | (cd $out/share/Netsurf/ && tar -xvpf -)
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = http://www.netsurf-browser.org/;
|
homepage = http://www.netsurf-browser.org/;
|
||||||
description = "Free opensource web browser";
|
description = "Free opensource web browser";
|
||||||
|
@ -8,11 +8,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libcss";
|
libname = "libcss";
|
||||||
version = "0.6.0";
|
version = "0.9.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "0qp4p1q1dwgdra4pkrzd081zjzisxkgwx650ijx323j8bj725daf";
|
sha256 = "1vw9j3d2mr4wbvs8fyqmgslkbxknvac10456775hflxxcivbm3xr";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -9,11 +9,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libdom";
|
libname = "libdom";
|
||||||
version = "0.3.0";
|
version = "0.4.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "1kk6qbqagx5ypiy9kf0059iqdzyz8fqaw336vzhb5gnrzjw3wv4a";
|
sha256 = "1ixkqsl3f7dl1kajksm0c231w1v5xy8z6hm3v67hgm9nh4qcvfcy";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -7,11 +7,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libhubbub";
|
libname = "libhubbub";
|
||||||
version = "0.3.3";
|
version = "0.3.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "101781iw32p47386fxqr01nrkywi12w17ajh02k2vlga4z8zyv86";
|
sha256 = "1x3v7xvagx85v9h3pypzc86rcxs4mij87mmcqkp8pq50q6awfmnp";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libnsbmp";
|
libname = "libnsbmp";
|
||||||
version = "0.1.3";
|
version = "0.1.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "0gmvzw1whh7553d6s98vr4ri2whjwrgggcq1z5b160gwjw20mzyy";
|
sha256 = "0lib2m07d1i0k80m4blkwnj0g7rha4jbm5vrgd0wwbkyfa0hvk35";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libnsfb";
|
libname = "libnsfb";
|
||||||
version = "0.1.4";
|
version = "0.2.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "176f8why9gzbaca9nnxjqasl02qzc6g507z5w3dzkcjifnkz4mzl";
|
sha256 = "09qag9lgn5ahanbcyf2rvfmsz15vazfwnl8xpn8f1iczd44b0bv0";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libnsgif";
|
libname = "libnsgif";
|
||||||
version = "0.1.3";
|
version = "0.2.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "1a4z45gh0fw4iybf34fig725av25h31ffk0azi0snzh4130cklnk";
|
sha256 = "0jwshypgmx16xlsbx3d8njk8a5khazlplca5mxd3rdbhrlsabbly";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
33
pkgs/applications/misc/netsurf/libnslog/default.nix
Normal file
33
pkgs/applications/misc/netsurf/libnslog/default.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig, bison, flex
|
||||||
|
, buildsystem
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
|
||||||
|
name = "netsurf-${libname}-${version}";
|
||||||
|
libname = "libnslog";
|
||||||
|
version = "0.1.2";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
|
sha256 = "1ggs6xvxp8fbg5w8pifalipm458ygr9ab6j2yvj8fnnmxwvdh4jd";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkgconfig bison flex ];
|
||||||
|
buildInputs = [
|
||||||
|
buildsystem
|
||||||
|
];
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"PREFIX=$(out)"
|
||||||
|
"NSSHARED=${buildsystem}/share/netsurf-buildsystem"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://www.netsurf-browser.org/;
|
||||||
|
description = "NetSurf Parametric Logging Library";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = [ maintainers.samueldr ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
33
pkgs/applications/misc/netsurf/libnspsl/default.nix
Normal file
33
pkgs/applications/misc/netsurf/libnspsl/default.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig
|
||||||
|
, buildsystem
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
|
||||||
|
name = "netsurf-${libname}-${version}";
|
||||||
|
libname = "libnspsl";
|
||||||
|
version = "0.1.5";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
|
sha256 = "0siq8zjfxv75i9fw6q5hkaijpdm1w3zskd5qk6vsvz8cqan4vifd";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
buildInputs = [
|
||||||
|
buildsystem
|
||||||
|
];
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"PREFIX=$(out)"
|
||||||
|
"NSSHARED=${buildsystem}/share/netsurf-buildsystem"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://www.netsurf-browser.org/;
|
||||||
|
description = "NetSurf Public Suffix List - Handling library";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = [ maintainers.samueldr ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libnsutils";
|
libname = "libnsutils";
|
||||||
version = "0.0.2";
|
version = "0.0.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "03p4xmd08yhj70nyj7acjccmmshs59lv4n4zsqpsn5lgkwa23lzy";
|
sha256 = "09w1rixps1iiq6wirjwxmd6h87llvjzvw565rahjb3rlyhcplfqf";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
name = "netsurf-${libname}-${version}";
|
name = "netsurf-${libname}-${version}";
|
||||||
libname = "libparserutils";
|
libname = "libparserutils";
|
||||||
version = "0.2.3";
|
version = "0.2.4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
sha256 = "01gzlsabgl6x0icd8758d9jqs8rrf9574bdkjainn04w3fs3znf5";
|
sha256 = "1n2794y2l0c8nv8z2pxwfnbn882987ifmxjv60zdxkhcndhswarj";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ buildsystem perl ];
|
buildInputs = [ buildsystem perl ];
|
||||||
|
41
pkgs/applications/misc/netsurf/libsvgtiny/default.nix
Normal file
41
pkgs/applications/misc/netsurf/libsvgtiny/default.nix
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig, gperf
|
||||||
|
, buildsystem
|
||||||
|
, libdom
|
||||||
|
, libhubbub
|
||||||
|
, libparserutils
|
||||||
|
, libwapcaplet
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
|
||||||
|
name = "netsurf-${libname}-${version}";
|
||||||
|
libname = "libsvgtiny";
|
||||||
|
version = "0.1.7";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||||
|
sha256 = "10bpkmvfpydj74im3r6kqm9vnvgib6afy0alx71q5n0w5yawy39c";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkgconfig gperf ];
|
||||||
|
buildInputs = [
|
||||||
|
buildsystem
|
||||||
|
libdom
|
||||||
|
libhubbub
|
||||||
|
libparserutils
|
||||||
|
libwapcaplet
|
||||||
|
];
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"PREFIX=$(out)"
|
||||||
|
"NSSHARED=${buildsystem}/share/netsurf-buildsystem"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://www.netsurf-browser.org/;
|
||||||
|
description = "NetSurf SVG decoder";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = [ maintainers.samueldr ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user