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
|
||||
```
|
||||
|
||||
## 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";
|
||||
name = "Cody Opel";
|
||||
};
|
||||
cohencyril = {
|
||||
email = "cyril.cohen@inria.fr";
|
||||
github = "CohenCyril";
|
||||
name = "Cyril Cohen";
|
||||
};
|
||||
colemickens = {
|
||||
email = "cole.mickens@gmail.com";
|
||||
github = "colemickens";
|
||||
|
@ -1698,6 +1703,11 @@
|
|||
fingerprint = "67FE 98F2 8C44 CF22 1828 E12F D57E FA62 5C9A 925F";
|
||||
}];
|
||||
};
|
||||
evanjs = {
|
||||
email = "evanjsx@gmail.com";
|
||||
github = "evanjs";
|
||||
name = "Evan Stoll";
|
||||
};
|
||||
evck = {
|
||||
email = "eric@evenchick.com";
|
||||
github = "ericevenchick";
|
||||
|
@ -5599,6 +5609,11 @@
|
|||
github = "viric";
|
||||
name = "Lluís Batlle i Rossell";
|
||||
};
|
||||
virusdave = {
|
||||
email = "dave.nicponski@gmail.com";
|
||||
github = "virusdave";
|
||||
name = "Dave Nicponski";
|
||||
};
|
||||
vizanto = {
|
||||
email = "danny@prime.vc";
|
||||
github = "vizanto";
|
||||
|
|
|
@ -67,7 +67,7 @@ rec {
|
|||
in
|
||||
{ key = "ip-address";
|
||||
config =
|
||||
{ networking.hostName = m.fst;
|
||||
{ networking.hostName = mkDefault m.fst;
|
||||
|
||||
networking.interfaces = listToAttrs interfaces;
|
||||
|
||||
|
|
|
@ -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.pathsToLink = [
|
||||
"/share/postgresql"
|
||||
];
|
||||
|
||||
systemd.services.postgresql =
|
||||
{ description = "PostgreSQL Server";
|
||||
|
||||
|
|
|
@ -9,6 +9,20 @@ let
|
|||
in {
|
||||
|
||||
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 {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
|
@ -25,10 +39,13 @@ in {
|
|||
systemd.user.services.bloop = {
|
||||
description = "Bloop Scala build server";
|
||||
|
||||
environment = {
|
||||
PATH = mkForce "${makeBinPath [ config.programs.java.package ]}";
|
||||
};
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = ''${pkgs.bloop}/bin/blp-server'';
|
||||
Restart = "always";
|
||||
Type = "simple";
|
||||
ExecStart = ''${pkgs.bloop}/bin/bloop server'';
|
||||
Restart = "always";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -8,6 +8,12 @@ in {
|
|||
options = {
|
||||
services.throttled = {
|
||||
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
|
||||
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} = {
|
||||
description = "Gitolite user";
|
||||
home = cfg.dataDir;
|
||||
createHome = true;
|
||||
uid = config.ids.uids.gitolite;
|
||||
group = cfg.group;
|
||||
useDefaultShell = true;
|
||||
};
|
||||
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" = {
|
||||
description = "Gitolite initialization";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
unitConfig.RequiresMountsFor = cfg.dataDir;
|
||||
|
||||
serviceConfig.User = "${cfg.user}";
|
||||
serviceConfig.Type = "oneshot";
|
||||
serviceConfig.RemainAfterExit = true;
|
||||
environment = {
|
||||
GITOLITE_RC = ".gitolite.rc";
|
||||
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 ];
|
||||
script =
|
||||
|
@ -187,11 +203,6 @@ 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" ]] ) ||
|
||||
( [[ -f "$GITOLITE_RC" ]] && diff -q "$GITOLITE_RC" "$GITOLITE_RC_DEFAULT" >/dev/null ) ||
|
||||
( [[ -L "$GITOLITE_RC" ]] && [[ "$(readlink "$GITOLITE_RC")" =~ ^/nix/store/ ]] )
|
||||
|
|
|
@ -34,6 +34,14 @@ in {
|
|||
<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 = {
|
||||
path = [ pkgs.wireguard-tools ];
|
||||
|
@ -45,6 +53,7 @@ in {
|
|||
-p ${toString cfg.port} \
|
||||
${optionalString cfg.verbose "-v"} \
|
||||
${optionalString cfg.singleSubnetPerField "-s"} \
|
||||
${optionalString cfg.withRemoteIp "-r"} \
|
||||
${optionalString (cfg.wireguardConfig != null) "-n ${cfg.wireguardConfig}"}
|
||||
'';
|
||||
};
|
||||
|
|
|
@ -148,7 +148,7 @@ in
|
|||
|
||||
systemd.tmpfiles.rules = [
|
||||
"e '${stateDir}' 0700 unifi - - -"
|
||||
"e '${stateDir}/data' 0700 unifi - - -"
|
||||
"d '${stateDir}/data' 0700 unifi - - -"
|
||||
];
|
||||
|
||||
systemd.services.unifi = {
|
||||
|
|
|
@ -20,7 +20,7 @@ in
|
|||
imports = [
|
||||
./none.nix ./xterm.nix ./xfce.nix ./plasma5.nix ./lumina.nix
|
||||
./lxqt.nix ./enlightenment.nix ./gnome3.nix ./kodi.nix ./maxx.nix
|
||||
./mate.nix ./pantheon.nix
|
||||
./mate.nix ./pantheon.nix ./surf-display.nix
|
||||
];
|
||||
|
||||
options = {
|
||||
|
|
|
@ -102,6 +102,10 @@ in
|
|||
# Makes qt applications look less alien
|
||||
export QT_QPA_PLATFORMTHEME=gtk3
|
||||
export QT_STYLE_OVERRIDE=adwaita
|
||||
|
||||
# Settings from elementary-default-settings
|
||||
export GTK_CSD=1
|
||||
export GTK_MODULES=$GTK_MODULES:pantheon-filechooser-module
|
||||
fi
|
||||
'';
|
||||
|
||||
|
|
|
@ -178,7 +178,7 @@ in
|
|||
++ lib.optional (cfg.phononBackend == "vlc" && cfg.enableQt4Support) pkgs.phonon-backend-vlc
|
||||
|
||||
# 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.hardware.pulseaudio.enable plasma-pa
|
||||
++ lib.optional config.powerManagement.enable powerdevil
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
|
||||
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" ];
|
||||
|
||||
programs.dconf.profiles.gdm = pkgs.writeText "dconf-gdm-profile" ''
|
||||
system-db:local
|
||||
${gdm}/share/dconf/profile/gdm
|
||||
'';
|
||||
programs.dconf.profiles.gdm =
|
||||
let
|
||||
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.
|
||||
# Otherwise with TimedLogin with zero seconds the prompt is still
|
||||
|
|
|
@ -8,11 +8,12 @@ let
|
|||
jmxRoles = [{ username = "me"; password = "password"; }];
|
||||
jmxRolesFile = ./cassandra-jmx-roles;
|
||||
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
|
||||
numMaxHeapSize = "400";
|
||||
getHeapLimitCommand = ''
|
||||
nodetool info | grep "^Heap Memory" | awk \'{print $NF}\'
|
||||
nodetool info -p ${toString jmxPort} | grep "^Heap Memory" | awk \'{print $NF}\'
|
||||
'';
|
||||
checkHeapLimitCommand = ''
|
||||
[ 1 -eq "$(echo "$(${getHeapLimitCommand}) < ${numMaxHeapSize}" | ${pkgs.bc}/bin/bc)" ]
|
||||
|
@ -27,19 +28,20 @@ let
|
|||
package = testPackage;
|
||||
maxHeapSize = "${numMaxHeapSize}M";
|
||||
heapNewSize = "100M";
|
||||
inherit jmxPort;
|
||||
};
|
||||
nodeCfg = ipAddress: extra: {pkgs, config, ...}:
|
||||
{ environment.systemPackages = [ testPackage ];
|
||||
networking = {
|
||||
firewall.allowedTCPPorts = [ 7000 7199 9042 ];
|
||||
useDHCP = false;
|
||||
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
|
||||
{ address = ipAddress; prefixLength = 24; }
|
||||
];
|
||||
};
|
||||
services.cassandra = cassandraCfg ipAddress // extra;
|
||||
virtualisation.memorySize = 1024;
|
||||
nodeCfg = ipAddress: extra: {pkgs, config, ...}: rec {
|
||||
environment.systemPackages = [ testPackage ];
|
||||
networking = {
|
||||
firewall.allowedTCPPorts = [ 7000 9042 services.cassandra.jmxPort ];
|
||||
useDHCP = false;
|
||||
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
|
||||
{ address = ipAddress; prefixLength = 24; }
|
||||
];
|
||||
};
|
||||
services.cassandra = cassandraCfg ipAddress // extra;
|
||||
virtualisation.memorySize = 1024;
|
||||
};
|
||||
in
|
||||
{
|
||||
name = "cassandra-ci";
|
||||
|
@ -50,7 +52,9 @@ in
|
|||
cass2 = nodeCfg "192.168.1.3" { jvmOpts = [ "-Dcassandra.replace_address=cass1" ]; };
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
testScript = let
|
||||
jmxPortS = toString jmxPort;
|
||||
in ''
|
||||
# Check configuration
|
||||
subtest "Timers exist", sub {
|
||||
$cass0->succeed("systemctl list-timers | grep cassandra-full-repair.timer");
|
||||
|
@ -63,51 +67,51 @@ in
|
|||
};
|
||||
subtest "Nodetool is operational", sub {
|
||||
$cass0->waitForUnit("cassandra.service");
|
||||
$cass0->waitUntilSucceeds("nc -z localhost 7199");
|
||||
$cass0->succeed("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass0'");
|
||||
$cass0->waitUntilSucceeds("nc -z localhost ${jmxPortS}");
|
||||
$cass0->succeed("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass0'");
|
||||
};
|
||||
subtest "Cluster name was set", sub {
|
||||
$cass0->waitForUnit("cassandra.service");
|
||||
$cass0->waitUntilSucceeds("nc -z localhost 7199");
|
||||
$cass0->waitUntilSucceeds("nodetool describecluster | grep 'Name: ${clusterName}'");
|
||||
$cass0->waitUntilSucceeds("nc -z localhost ${jmxPortS}");
|
||||
$cass0->waitUntilSucceeds("nodetool describecluster -p ${jmxPortS} | grep 'Name: ${clusterName}'");
|
||||
};
|
||||
subtest "Heap limit set correctly", sub {
|
||||
# Nodetool takes a while until it can display info
|
||||
$cass0->waitUntilSucceeds('nodetool info');
|
||||
$cass0->waitUntilSucceeds('nodetool info -p ${jmxPortS}');
|
||||
$cass0->succeed('${checkHeapLimitCommand}');
|
||||
};
|
||||
|
||||
# Check cluster interaction
|
||||
subtest "Bring up cluster", sub {
|
||||
$cass1->waitForUnit("cassandra.service");
|
||||
$cass1->waitUntilSucceeds("nodetool ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
||||
$cass0->succeed("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
||||
$cass1->waitUntilSucceeds("nodetool -p ${jmxPortS} ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
||||
$cass0->succeed("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
||||
};
|
||||
'' + lib.optionalString testRemoteAuth ''
|
||||
subtest "Remote authenticated jmx", sub {
|
||||
# Doesn't work if not enabled
|
||||
$cass0->waitUntilSucceeds("nc -z localhost 7199");
|
||||
$cass1->fail("nc -z 192.168.1.1 7199");
|
||||
$cass1->fail("nodetool -h 192.168.1.1 status");
|
||||
$cass0->waitUntilSucceeds("nc -z localhost ${jmxPortS}");
|
||||
$cass1->fail("nc -z 192.168.1.1 ${toString jmxPort}");
|
||||
$cass1->fail("nodetool -p ${jmxPortS} -h 192.168.1.1 status");
|
||||
|
||||
# Works if enabled
|
||||
$cass1->waitUntilSucceeds("nc -z localhost 7199");
|
||||
$cass0->succeed("nodetool -h 192.168.1.2 ${jmxAuthArgs} status");
|
||||
$cass1->waitUntilSucceeds("nc -z localhost ${toString jmxPort}");
|
||||
$cass0->succeed("nodetool -p ${jmxPortS} -h 192.168.1.2 ${jmxAuthArgs} status");
|
||||
};
|
||||
'' + ''
|
||||
subtest "Break and fix node", sub {
|
||||
$cass1->block;
|
||||
$cass0->waitUntilSucceeds("nodetool status --resolve-ip | egrep -c '^DN[[:space:]]+cass1'");
|
||||
$cass0->succeed("nodetool status | egrep -c '^UN' | grep 1");
|
||||
$cass0->waitUntilSucceeds("nodetool status -p ${jmxPortS} --resolve-ip | egrep -c '^DN[[:space:]]+cass1'");
|
||||
$cass0->succeed("nodetool status -p ${jmxPortS} | egrep -c '^UN' | grep 1");
|
||||
$cass1->unblock;
|
||||
$cass1->waitUntilSucceeds("nodetool ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
||||
$cass0->succeed("nodetool status | egrep -c '^UN' | grep 2");
|
||||
$cass1->waitUntilSucceeds("nodetool -p ${jmxPortS} ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
|
||||
$cass0->succeed("nodetool status -p ${jmxPortS} | egrep -c '^UN' | grep 2");
|
||||
};
|
||||
subtest "Replace crashed node", sub {
|
||||
$cass1->crash;
|
||||
$cass2->waitForUnit("cassandra.service");
|
||||
$cass0->waitUntilFails("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
||||
$cass0->waitUntilSucceeds("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass2'");
|
||||
$cass0->waitUntilFails("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass1'");
|
||||
$cass0->waitUntilSucceeds("nodetool status -p ${jmxPortS} --resolve-ip | egrep '^UN[[:space:]]+cass2'");
|
||||
};
|
||||
'';
|
||||
})
|
||||
|
|
|
@ -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" ''
|
||||
CREATE USER 'passworduser'@'localhost' IDENTIFIED BY 'password123';
|
||||
'';
|
||||
services.mysql.package = pkgs.mysql;
|
||||
services.mysql.package = pkgs.mysql57;
|
||||
};
|
||||
|
||||
mariadb =
|
||||
|
|
|
@ -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 {
|
||||
pname = "lnd";
|
||||
version = "0.7.0-beta";
|
||||
version = "0.7.1-beta";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lightningnetwork";
|
||||
repo = "lnd";
|
||||
rev = "v${version}";
|
||||
sha256 = "0d6m1vfy33rg6d7qmkpydiypav1girxsnxan9njyjz0vhinmq0sx";
|
||||
sha256 = "1c0sm0lavdai4w6d283q54knggw9d42vvqmglnv2h9swbw1l23ry";
|
||||
};
|
||||
|
||||
modSha256 = "0akxi7xhyz7xx0vc003abidva02sp940cc2gfjg4fmzkc95cajc9";
|
||||
modSha256 = "13hjaf4bswk8g57lyxzdlqqp4a6ddl3qm6n4jja4b1h58mlbil73";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Lightning Network Daemon";
|
||||
|
|
|
@ -25,13 +25,13 @@ in
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "monero-gui-${version}";
|
||||
version = "0.14.1.0";
|
||||
version = "0.14.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "monero-project";
|
||||
repo = "monero-gui";
|
||||
rev = "v${version}";
|
||||
sha256 = "0ilx47771faygf97wilm64xnqxgxa3b43q0g9v014npk0qj8pc31";
|
||||
sha256 = "1rm043r6y2mzy8pclnzbjjfxgps8pkfa2b92p66k8y8rdmgq6m1k";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
|
||||
|
@ -48,7 +48,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
patches = [
|
||||
./move-log-file.patch
|
||||
./move-translations-dir.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -83,10 +82,6 @@ stdenv.mkDerivation rec {
|
|||
mkdir -p $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
|
||||
for n in 16 24 32 48 64 96 128 256; do
|
||||
size=$n"x"$n
|
||||
|
@ -97,10 +92,11 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
meta = {
|
||||
description = "Private, secure, untraceable currency";
|
||||
homepage = https://getmonero.org/;
|
||||
license = licenses.bsd3;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ rnhmjoj ];
|
||||
description = "Private, secure, untraceable currency";
|
||||
homepage = https://getmonero.org/;
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.all;
|
||||
badPlatforms = platforms.darwin;
|
||||
maintainers = with maintainers; [ rnhmjoj ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,18 +13,3 @@ index a51568d..5a9f683 100644
|
|||
parser.addOption(logPathOption);
|
||||
parser.addHelpOption();
|
||||
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
|
||||
|
||||
# Cantata doesn't build with cdparanoia enabled so we disable that
|
||||
|
@ -35,7 +35,7 @@ let
|
|||
|
||||
withUdisks = (withTaglib && withDevices);
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
in mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
|
@ -46,20 +46,20 @@ in stdenv.mkDerivation rec {
|
|||
};
|
||||
|
||||
buildInputs = [ vlc qtbase qtmultimedia qtsvg ]
|
||||
++ stdenv.lib.optionals withTaglib [ taglib taglib_extras ]
|
||||
++ stdenv.lib.optionals withReplaygain [ ffmpeg speex mpg123 ]
|
||||
++ stdenv.lib.optional withCdda cdparanoia
|
||||
++ stdenv.lib.optional withCddb libcddb
|
||||
++ stdenv.lib.optional withLame lame
|
||||
++ stdenv.lib.optional withMtp libmtp
|
||||
++ stdenv.lib.optional withMusicbrainz libmusicbrainz5
|
||||
++ stdenv.lib.optional withUdisks udisks2;
|
||||
++ lib.optionals withTaglib [ taglib taglib_extras ]
|
||||
++ lib.optionals withReplaygain [ ffmpeg speex mpg123 ]
|
||||
++ lib.optional withCdda cdparanoia
|
||||
++ lib.optional withCddb libcddb
|
||||
++ lib.optional withLame lame
|
||||
++ lib.optional withMtp libmtp
|
||||
++ lib.optional withMusicbrainz libmusicbrainz5
|
||||
++ lib.optional withUdisks udisks2;
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig qttools ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
cmakeFlags = stdenv.lib.flatten [
|
||||
cmakeFlags = lib.flatten [
|
||||
(fstats withTaglib [ "TAGLIB" "TAGLIB_EXTRAS" ])
|
||||
(fstats withReplaygain [ "FFMPEG" "MPG123" "SPEEXDSP" ])
|
||||
(fstat withCdda "CDPARANOIA")
|
||||
|
@ -76,7 +76,7 @@ in stdenv.mkDerivation rec {
|
|||
"-DENABLE_HTTPS_SUPPORT=ON"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
meta = with lib; {
|
||||
homepage = https://github.com/cdrummond/cantata;
|
||||
description = "A graphical client for MPD";
|
||||
license = licenses.gpl3;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchFromGitHub, makeWrapper, chromaprint
|
||||
{ stdenv, mkDerivation, fetchFromGitHub, chromaprint
|
||||
, fftw, flac, faad2, glibcLocales, mp4v2
|
||||
, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
|
||||
, libGLU, libxcb, lilv, lv2, opusfile
|
||||
|
@ -6,7 +6,7 @@
|
|||
, qtx11extras, rubberband, scons, sqlite, taglib, upower, vampSDK
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
mkDerivation rec {
|
||||
name = "mixxx-${version}";
|
||||
version = "2.2.1";
|
||||
|
||||
|
@ -17,8 +17,6 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1q6c2wfpprsx7s7nz1w0mhm2yhikj54jxcv61kwylxx3n5k2na9r";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = [
|
||||
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
|
||||
|
@ -34,10 +32,9 @@ stdenv.mkDerivation rec {
|
|||
"opus=1"
|
||||
];
|
||||
|
||||
fixupPhase = ''
|
||||
wrapProgram $out/bin/mixxx \
|
||||
--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive;
|
||||
'';
|
||||
qtWrapperArgs = [
|
||||
"--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://mixxx.org;
|
||||
|
|
|
@ -24,13 +24,13 @@ let
|
|||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "pulseaudio-modules-bt-${version}";
|
||||
version = "1.1.99";
|
||||
version = "1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "EHfive";
|
||||
repo = "pulseaudio-modules-bt";
|
||||
rev = "v${version}";
|
||||
sha256 = "0x670xbd62r3fs9a8pa5p4ppvxn6m64hvlrqa702gvikcvyrmwcg";
|
||||
sha256 = "00xmidcw4fvpbmg0nsm2gk5zw26fpyjbc0pjk6mzr570zbnyqqbn";
|
||||
};
|
||||
|
||||
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 {
|
||||
version = "0.5.8";
|
||||
mkDerivation rec {
|
||||
version = "0.5.9";
|
||||
name = "qjackctl-${version}";
|
||||
|
||||
# some dependencies such as killall have to be installed additionally
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/qjackctl/${name}.tar.gz";
|
||||
sha256 = "1r5hf3hcr20n93jrrm7xk2zf6yx264pcr4d10cpybhrancxh602n";
|
||||
sha256 = "1saywsda9m124rmjp7i3n0llryaliabjxhqhvqr6dm983qy7pypk";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{ stdenv, fetchurl, pkgconfig, qt5, alsaLib, libjack2 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.5.4";
|
||||
version = "0.5.5";
|
||||
name = "qmidinet-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/qmidinet/${name}.tar.gz";
|
||||
sha256 = "1il4b8v3azb33yg4fy78npi56xlkz4n60f17sgvckyxb2yj57jwq";
|
||||
sha256 = "0az20hh14g7k6h779dk1b6fshxnfj2664sj6ypgllzriwv430x9y";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qsampler-${version}";
|
||||
version = "0.5.5";
|
||||
version = "0.5.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/qsampler/${name}.tar.gz";
|
||||
sha256 = "1li2p8zknrdr62wlaassfvgski0rlbr3lvrzywbh32dq8j50w8zf";
|
||||
sha256 = "0lx2mzyajmjckwfvgf8p8bahzpj0n0lflyip41jk32nwd2hzjhbs";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig qttools ];
|
||||
|
|
|
@ -1,20 +1,21 @@
|
|||
{ alsaLib, autoconf, automake, dssi, fetchurl, libjack2
|
||||
, ladspaH, ladspaPlugins, liblo, libmad, libsamplerate, libsndfile
|
||||
, libtool, libvorbis, lilv, lv2, pkgconfig, qttools, qtbase, rubberband, serd
|
||||
, sord, sratom, stdenv, suil }:
|
||||
, sord, sratom, stdenv, suil, wrapQtAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "qtractor";
|
||||
version = "0.9.8";
|
||||
version = "0.9.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1llajl450yh7bka32ngm4xdva6a2nnxzjc497ydh07rwkap16smx";
|
||||
sha256 = "0qlbccdxyfy0f09y6qg1xkg12fm67bf2f2c27c22cg8lzk9ang5j";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf automake libtool pkgconfig qttools
|
||||
autoconf automake libtool pkgconfig qttools wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[ alsaLib dssi libjack2 ladspaH
|
||||
ladspaPlugins liblo libmad libsamplerate libsndfile libtool
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "spectmorph-${version}";
|
||||
version = "0.4.1";
|
||||
version = "0.5.0";
|
||||
src = fetchurl {
|
||||
url = "http://spectmorph.org/files/releases/${name}.tar.bz2";
|
||||
sha256 = "0z00yvv3jl8qsx6bz9msmg09mdnj5r5d4ws5bmnylwxk182whbrv";
|
||||
sha256 = "003wznv3sy1b4g55vqii9pr3i3bb3zmj7nqvwrz7vjsfn2xyd1bn";
|
||||
};
|
||||
|
||||
buildInputs = [ libjack2 lv2 glib qt5.qtbase libao cairo libsndfile fftwFloat ];
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ fetchurl, stdenv, squashfsTools, xorg, alsaLib, makeWrapper, openssl, freetype
|
||||
, glib, pango, cairo, atk, gdk-pixbuf, gtk2, cups, nspr, nss, libpng, libnotify
|
||||
, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg_3, curl, zlib, gnome3
|
||||
, at-spi2-atk, at-spi2-core, apulse
|
||||
, at-spi2-atk
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -10,22 +10,20 @@ let
|
|||
# If an update breaks things, one of those might have valuable info:
|
||||
# https://aur.archlinux.org/packages/spotify/
|
||||
# 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:
|
||||
# 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:
|
||||
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
|
||||
# More examples of api usage:
|
||||
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
|
||||
rev = "36";
|
||||
rev = "30";
|
||||
|
||||
|
||||
deps = [
|
||||
alsaLib
|
||||
apulse
|
||||
atk
|
||||
at-spi2-atk
|
||||
at-spi2-core
|
||||
cairo
|
||||
cups
|
||||
curl
|
||||
|
@ -74,7 +72,7 @@ stdenv.mkDerivation {
|
|||
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
|
||||
src = fetchurl {
|
||||
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
|
||||
sha512 = "c49f1a86a9b737e64a475bbe62754a36f607669e908eb725a2395f0a0a6b95968e0c8ce27ab2c8b6c92fe8cbacb1ef58de11c79b92dc0f58c2c6d3a140706a1f";
|
||||
sha512 = "859730fbc80067f0828f7e13eee9a21b13b749f897a50e17c2da4ee672785cfd79e1af6336e609529d105e040dc40f61b6189524783ac93d49f991c4ea8b3c56";
|
||||
};
|
||||
|
||||
buildInputs = [ squashfsTools makeWrapper ];
|
||||
|
@ -136,8 +134,6 @@ stdenv.mkDerivation {
|
|||
librarypath="${stdenv.lib.makeLibraryPath deps}:$libdir"
|
||||
wrapProgram $out/share/spotify/spotify \
|
||||
--prefix LD_LIBRARY_PATH : "$librarypath" \
|
||||
--prefix LD_LIBRARY_PATH : "${apulse}/lib/apulse" \
|
||||
--set APULSE_PLAYBACK_DEVICE plug:dmix \
|
||||
--prefix PATH : "${gnome3.zenity}/bin"
|
||||
|
||||
# fix Icon line in the desktop file (#48062)
|
||||
|
@ -162,7 +158,7 @@ stdenv.mkDerivation {
|
|||
homepage = https://www.spotify.com/;
|
||||
description = "Play music from the Spotify music service";
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri timokau angristan ];
|
||||
maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri timokau ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec {
|
|||
sha256 = "1iybk9xrrvhrcl2xl5r2xhyn1ydhrgwnnb8ldhsw5c16b32z03q1";
|
||||
};
|
||||
|
||||
cargoSha256 = "0879p1h32259schmy8j3xnwpw3sw80f8mrj8s6b5aihi3yyzz521";
|
||||
cargoSha256 = "1dzg4sb95ixjfhx6n4w2rgrq4481vw01nsdrbm746mz7nm71csk3";
|
||||
|
||||
cargoBuildFlags = [
|
||||
"--no-default-features"
|
||||
|
|
|
@ -5,13 +5,18 @@
|
|||
let
|
||||
glfw-git = glfw.overrideAttrs (oldAttrs: rec {
|
||||
name = "glfw-git-${version}";
|
||||
version = "unstable-2018-05-29";
|
||||
version = "2019-06-30";
|
||||
src = fetchFromGitHub {
|
||||
owner = "glfw";
|
||||
owner = "AndrewBelt";
|
||||
repo = "glfw";
|
||||
rev = "0be4f3f75aebd9d24583ee86590a38e741db0904";
|
||||
sha256 = "0zbcjgc7ks25yi949k0wjknfl00a4dqmz45mhp00k62vlq2sj0i5";
|
||||
rev = "d9ab59efc781c392128a449361a381fcc93cf6f3";
|
||||
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 ];
|
||||
});
|
||||
pfft-source = fetchFromBitbucket {
|
||||
|
@ -23,32 +28,31 @@ let
|
|||
in
|
||||
with stdenv.lib; stdenv.mkDerivation rec {
|
||||
name = "VCV-Rack-${version}";
|
||||
version = "0.6.2b";
|
||||
version = "1.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "VCVRack";
|
||||
repo = "Rack";
|
||||
rev = "v${version}";
|
||||
sha256 = "17ynhxcci6dyn1yi871fd8yli4924fh12pmk510djwkcj5crhas6";
|
||||
sha256 = "16q3x0jpwkdwwvh7rn472w7nfjf81s10z9c7bx011kk7rgk88hh2";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
patches = [ ./rack-minimize-vendoring.patch ];
|
||||
|
||||
prePatch = ''
|
||||
ln -s ${pfft-source} dep/jpommier-pffft-source
|
||||
cp -r ${pfft-source} dep/jpommier-pffft-source
|
||||
|
||||
mkdir -p 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/osdialog/*.h dep/include
|
||||
cp dep/oui-blendish/*.h dep/include
|
||||
|
||||
substituteInPlace include/audio.hpp --replace "<RtAudio.h>" "<rtaudio/RtAudio.h>"
|
||||
substituteInPlace compile.mk --replace "-march=nocona" ""
|
||||
substituteInPlace Makefile \
|
||||
--replace "-Wl,-Bstatic" "" \
|
||||
--replace "-lglfw3" "-lglfw"
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -60,13 +64,12 @@ with stdenv.lib; stdenv.mkDerivation rec {
|
|||
|
||||
installPhase = ''
|
||||
install -D -m755 -t $out/bin Rack
|
||||
cp -r res $out/
|
||||
|
||||
mkdir -p $out/share/rack
|
||||
cp LICENSE.txt LICENSE-dist.txt $out/share/rack
|
||||
mkdir -p $out/share/vcv-rack
|
||||
cp -r res Core.json template.vcv LICENSE* cacert.pem $out/share/vcv-rack
|
||||
|
||||
# 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; {
|
||||
|
|
|
@ -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";
|
||||
};
|
||||
betaVersion = {
|
||||
version = "3.5.0.18"; # "Android Studio 3.5 RC 1"
|
||||
build = "191.5717577";
|
||||
sha256Hash = "1p0w7xrfk33m1wvwnc3s3s7w9rm8wn9b3bjn566w2qpjv5ngdkn3";
|
||||
version = "3.5.0.19"; # "Android Studio 3.5 RC 2"
|
||||
build = "191.5763348";
|
||||
sha256Hash = "0z7mjpk0cqwk4ysd3cdsahlg70ax90353qvvag9wgyzl2x2sr6d2";
|
||||
};
|
||||
latestVersion = { # canary & dev
|
||||
version = "3.6.0.3"; # "Android Studio 3.6 Canary 3"
|
||||
|
|
|
@ -50,4 +50,4 @@ self:
|
|||
|
||||
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
|
||||
'';
|
||||
}
|
|
@ -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;
|
||||
imported = lib.listToAttrs (map (melpaDerivation "unstable")
|
||||
(lib.importJSON ./recipes-archive-melpa.json));
|
||||
super = builtins.removeAttrs imported [
|
||||
"swbuff-x" # required dependency swbuff is missing
|
||||
];
|
||||
super = lib.listToAttrs (map (melpaDerivation variant) (lib.importJSON archiveJson));
|
||||
|
||||
dontConfigure = pkg: pkg.override (args: {
|
||||
melpaBuild = drv: args.melpaBuild (drv // {
|
||||
configureScript = "true";
|
||||
});
|
||||
});
|
||||
generic = import ./melpa-generic.nix;
|
||||
|
||||
markBroken = pkg: pkg.override (args: {
|
||||
melpaBuild = drv: args.melpaBuild (drv // {
|
||||
meta = (drv.meta or {}) // { broken = true; };
|
||||
});
|
||||
});
|
||||
overrides = rec {
|
||||
shared = {
|
||||
# Expects bash to be at /bin/bash
|
||||
ac-rtags = markBroken super.ac-rtags;
|
||||
|
||||
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: mismatched filename
|
||||
ack-menu = markBroken super.ack-menu;
|
||||
# upstream issue: missing file header
|
||||
bufshow = markBroken super.bufshow;
|
||||
|
||||
airline-themes = super.airline-themes.override {
|
||||
inherit (self.melpaPackages) powerline;
|
||||
};
|
||||
# part of a larger package
|
||||
caml = dontConfigure super.caml;
|
||||
|
||||
# upstream issue: missing file header
|
||||
bufshow = markBroken super.bufshow;
|
||||
# Expects bash to be at /bin/bash
|
||||
company-rtags = markBroken super.company-rtags;
|
||||
|
||||
# part of a larger package
|
||||
caml = dontConfigure super.caml;
|
||||
easy-kill-extras = super.easy-kill-extras.override {
|
||||
inherit (self.melpaPackages) easy-kill;
|
||||
};
|
||||
|
||||
# Expects bash to be at /bin/bash
|
||||
company-rtags = markBroken super.company-rtags;
|
||||
# upstream issue: missing file header
|
||||
elmine = markBroken super.elmine;
|
||||
|
||||
easy-kill-extras = super.easy-kill-extras.override {
|
||||
inherit (self.melpaPackages) easy-kill;
|
||||
};
|
||||
elpy = super.elpy.overrideAttrs(old: {
|
||||
propagatedUserEnvPkgs = old.propagatedUserEnvPkgs ++ [ external.elpy ];
|
||||
});
|
||||
|
||||
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 ];
|
||||
});
|
||||
|
||||
# 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: {
|
||||
evil-magit = super.evil-magit.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
magit-annex = super.magit-annex.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
ess-R-data-view = super.ess-R-data-view.override {
|
||||
inherit (self.melpaPackages) ess ctable popup;
|
||||
};
|
||||
|
||||
magit-gitflow = super.magit-gitflow.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
# Expects bash to be at /bin/bash
|
||||
flycheck-rtags = markBroken super.flycheck-rtags;
|
||||
|
||||
magithub = super.magithub.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
# build timeout
|
||||
graphene = markBroken super.graphene;
|
||||
|
||||
magit-svn = super.magit-svn.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
pdf-tools = super.pdf-tools.overrideAttrs(old: {
|
||||
nativeBuildInputs = [ external.pkgconfig ];
|
||||
buildInputs = with external; old.buildInputs ++ [ autoconf automake libpng zlib poppler ];
|
||||
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: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
# 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 ];
|
||||
});
|
||||
|
||||
magit-filenotify = super.magit-filenotify.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
# upstream issue: missing file header
|
||||
ido-complete-space-or-hyphen = markBroken super.ido-complete-space-or-hyphen;
|
||||
|
||||
mhc = super.mhc.override {
|
||||
inherit (self.melpaPackages) calfw;
|
||||
};
|
||||
# upstream issue: missing file header
|
||||
initsplit = markBroken super.initsplit;
|
||||
|
||||
# missing .NET
|
||||
nemerle = markBroken super.nemerle;
|
||||
irony = super.irony.overrideAttrs(old: {
|
||||
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
|
||||
notmuch = dontConfigure super.notmuch;
|
||||
# tries to write a log file to $HOME
|
||||
insert-shebang = super.insert-shebang.overrideAttrs (attrs: {
|
||||
HOME = "/tmp";
|
||||
});
|
||||
|
||||
# missing OCaml
|
||||
ocp-indent = markBroken super.ocp-indent;
|
||||
# Expects bash to be at /bin/bash
|
||||
ivy-rtags = markBroken super.ivy-rtags;
|
||||
|
||||
orgit =
|
||||
(super.orgit.overrideAttrs (attrs: {
|
||||
# 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
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
}));
|
||||
});
|
||||
|
||||
# tries to write to $HOME
|
||||
php-auto-yasnippets = super.php-auto-yasnippets.overrideAttrs (attrs: {
|
||||
HOME = "/tmp";
|
||||
});
|
||||
magit-annex = super.magit-annex.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
# upstream issue: mismatched filename
|
||||
processing-snippets = markBroken super.processing-snippets;
|
||||
magit-todos = super.magit-todos.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
# upstream issue: missing file header
|
||||
qiita = markBroken super.qiita;
|
||||
magit-filenotify = super.magit-filenotify.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
racer = super.racer.overrideAttrs (attrs: {
|
||||
postPatch = attrs.postPatch or "" + ''
|
||||
substituteInPlace racer.el \
|
||||
--replace /usr/local/src/rust/src ${external.rustPlatform.rustcSrc}
|
||||
'';
|
||||
});
|
||||
magit-gitflow = super.magit-gitflow.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
# upstream issue: missing file footer
|
||||
seoul256-theme = markBroken super.seoul256-theme;
|
||||
magithub = super.magithub.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
spaceline = super.spaceline.override {
|
||||
inherit (self.melpaPackages) powerline;
|
||||
};
|
||||
magit-svn = super.magit-svn.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
# 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;
|
||||
|
||||
treemacs-magit = super.treemacs-magit.overrideAttrs (attrs: {
|
||||
kubernetes = super.kubernetes.overrideAttrs (attrs: {
|
||||
# searches for Git at build time
|
||||
nativeBuildInputs =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
});
|
||||
|
||||
# missing OCaml
|
||||
utop = markBroken super.utop;
|
||||
# upstream issue: missing file header
|
||||
mhc = super.mhc.override {
|
||||
inherit (self.melpaPackages) calfw;
|
||||
};
|
||||
|
||||
vdiff-magit =
|
||||
(super.vdiff-magit.overrideAttrs (attrs: {
|
||||
# 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
|
||||
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 =
|
||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||
}));
|
||||
});
|
||||
|
||||
# upstream issue: missing file header
|
||||
voca-builder = markBroken super.voca-builder;
|
||||
# upstream issue: missing file header
|
||||
voca-builder = markBroken super.voca-builder;
|
||||
|
||||
# upstream issue: missing file header
|
||||
window-numbering = markBroken super.window-numbering;
|
||||
# upstream issue: missing file header
|
||||
window-numbering = markBroken super.window-numbering;
|
||||
|
||||
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}"'
|
||||
vterm = let
|
||||
emacsSources = pkgs.stdenv.mkDerivation {
|
||||
name = self.emacs.name + "-sources";
|
||||
src = self.emacs.src;
|
||||
|
||||
dontConfigure = true;
|
||||
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
|
||||
_0blayout = super."0blayout";
|
||||
_0xc = super."0xc";
|
||||
_2048-game = super."2048-game";
|
||||
_4clojure = super."4clojure";
|
||||
at = super."@";
|
||||
desktop-plus = super."desktop+";
|
||||
# filesets-plus = super."filesets+";
|
||||
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+";
|
||||
# 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+";
|
||||
};
|
||||
|
||||
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 =
|
||||
removeAttrs (super // overrides)
|
||||
[
|
||||
"show-marks" # missing dependency: fm
|
||||
"lenlen-theme" # missing dependency: color-theme-solarized
|
||||
];
|
||||
in
|
||||
melpaPackages // { inherit melpaPackages; }
|
||||
in super // overrides."${variant}");
|
||||
|
||||
in generateMelpa { }
|
||||
|
|
|
@ -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;
|
||||
|
||||
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
|
||||
#! 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 update-melpa.el "$@"
|
||||
exec emacs --fg-daemon=updater --quick -l $SCRIPT_DIR/update-melpa.el -f run-updater "$@"
|
||||
|
|
|
@ -1,29 +1,40 @@
|
|||
with import ../../../.. {};
|
||||
(emacsPackagesNgFor emacs26).
|
||||
emacsWithPackages (epkgs: let
|
||||
promise = epkgs.trivialBuild {
|
||||
pname = "promise";
|
||||
version = "1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "bendlas";
|
||||
repo = "emacs-promise";
|
||||
rev = "4da97087c5babbd8429b5ce62a8323b9b03c6022";
|
||||
sha256 = "0yin7kj69g4zxs30pvk47cnfygxlaw7jc7chr3b36lz51yqczjsy";
|
||||
|
||||
let
|
||||
pkgs = import ../../../.. {};
|
||||
|
||||
emacsEnv = (pkgs.emacsPackagesNgFor pkgs.emacs26).emacsWithPackages (epkgs: let
|
||||
|
||||
promise = epkgs.trivialBuild {
|
||||
pname = "promise";
|
||||
version = "1";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "bendlas";
|
||||
repo = "emacs-promise";
|
||||
rev = "4da97087c5babbd8429b5ce62a8323b9b03c6022";
|
||||
sha256 = "0yin7kj69g4zxs30pvk47cnfygxlaw7jc7chr3b36lz51yqczjsy";
|
||||
};
|
||||
};
|
||||
};
|
||||
semaphore = epkgs.trivialBuild {
|
||||
pname = "semaphore";
|
||||
version = "1";
|
||||
packageRequires = [ promise ];
|
||||
src = fetchFromGitHub {
|
||||
owner = "webnf";
|
||||
repo = "semaphore.el";
|
||||
rev = "93802cb093073bc6a6ccd797328dafffcef248e0";
|
||||
sha256 = "09pfyp27m35sv340xarhld7xx2vv5fs5xj4418709iw6l6hpk853";
|
||||
|
||||
|
||||
semaphore = epkgs.trivialBuild {
|
||||
pname = "semaphore";
|
||||
version = "1";
|
||||
packageRequires = [ promise ];
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "webnf";
|
||||
repo = "semaphore.el";
|
||||
rev = "93802cb093073bc6a6ccd797328dafffcef248e0";
|
||||
sha256 = "09pfyp27m35sv340xarhld7xx2vv5fs5xj4418709iw6l6hpk853";
|
||||
};
|
||||
};
|
||||
};
|
||||
in [ promise semaphore ]
|
||||
# ++ (with epkgs.melpaPackages; [ smex rainbow-delimiters paredit ])
|
||||
)
|
||||
|
||||
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
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-builder";
|
||||
version = "3.32.3";
|
||||
version = "3.32.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1vlr69sgiv3kg2qa3n7aw3913bmvlcpyhy3w8lls13wjrgif4wny";
|
||||
sha256 = "0xip58m206p8wa28p0a3y4ykylzr5xzmirjl3dspg4j25r08i8qr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -263,12 +263,12 @@ in
|
|||
|
||||
datagrip = buildDataGrip rec {
|
||||
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";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
|
||||
sha256 = "0zjcn71fgngkvsixgimzm5afwjbd8zf14zzm6barap4pwp5xx0hb"; /* updated by script */
|
||||
sha256 = "0va5dcvjxq7mlkz0di5zl1ra5gv6cls3wy40fvkpm2vlirg0m31s"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-datagrip";
|
||||
update-channel = "DataGrip RELEASE";
|
||||
|
@ -367,12 +367,12 @@ in
|
|||
|
||||
ruby-mine = buildRubyMine rec {
|
||||
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";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
|
||||
sha256 = "1zhci8nkywv66bwc6hbyh4h3x61qhv2fbmfb5gkw9znkk1qa0q6v"; /* updated by script */
|
||||
sha256 = "1f4mdarmh7m9jq432d0s9jds9288g0zgpxnlpmx12i26vvq8kykd"; /* updated by script */
|
||||
};
|
||||
wmClass = "jetbrains-rubymine";
|
||||
update-channel = "RubyMine RELEASE";
|
||||
|
|
|
@ -4,12 +4,12 @@ with stdenv.lib;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "kakoune-unwrapped";
|
||||
version = "2019.01.20";
|
||||
version = "2019.07.01";
|
||||
src = fetchFromGitHub {
|
||||
repo = "kakoune";
|
||||
owner = "mawww";
|
||||
rev = "v${version}";
|
||||
sha256 = "04ak1jm7b1i03sx10z3fxw08rn692y2fj482jn5kpzfzj91b2ila";
|
||||
sha256 = "0jdkldq5rygzc0wcxr1j4fmp2phciy8602ghhf6xq21a9bq2v639";
|
||||
};
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ ncurses asciidoc docbook_xsl libxslt ];
|
||||
|
@ -25,6 +25,11 @@ stdenv.mkDerivation rec {
|
|||
export version="v${version}"
|
||||
'';
|
||||
|
||||
doInstallCheckPhase = true;
|
||||
installCheckPhase = ''
|
||||
$out/bin/kak -ui json -E "kill 0"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://kakoune.org/;
|
||||
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 }:
|
||||
|
||||
let
|
||||
unwrapped = stdenv.mkDerivation rec {
|
||||
unwrapped = mkDerivation rec {
|
||||
pname = "neovim-qt-unwrapped";
|
||||
version = "0.2.11";
|
||||
version = "0.2.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "equalsraf";
|
||||
repo = "neovim-qt";
|
||||
rev = "v${version}";
|
||||
sha256 = "0pc1adxc89p2rdvb6nxyqr9sjzqz9zw2dg7a4ardxsl3a8jga1wh";
|
||||
sha256 = "09s3044j0y8nmyi8ykslfii6fx7k9mckmdvb0jn2xmdabpb60i20";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
|
@ -24,7 +24,7 @@ let
|
|||
jinja2 python msgpack
|
||||
]);
|
||||
|
||||
nativeBuildInputs = [ cmake doxygen makeWrapper ];
|
||||
nativeBuildInputs = [ cmake doxygen ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "quilter";
|
||||
version = "1.9.2";
|
||||
version = "1.9.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lainsce";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "10r6d695avxj31yghb82ymgnd7f1dawwbqz3gfy0rycjza9dxvv8";
|
||||
sha256 = "09acknajbkfpw8f5pay2qj69dzhwbiplsvpp1hy9ma6msmxkr6cm";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
|
|||
description = "Focus on your writing - designed for elementary OS";
|
||||
homepage = https://github.com/lainsce/quilter;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ worldofpeace ];
|
||||
maintainers = pantheon.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "rednotebook";
|
||||
version = "2.8";
|
||||
version = "2.11.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jendrikseipp";
|
||||
repo = "rednotebook";
|
||||
rev = "v${version}";
|
||||
sha256 = "0k75lw3p6jx30ngvn8iipk1763gazkbrsad3fpl3sqppaqaggryj";
|
||||
sha256 = "04c7a0wgmdl88v9386y1052c38ajbkryiwhqps5lx34d4g7r6hm1";
|
||||
};
|
||||
|
||||
# We have not packaged tests.
|
||||
|
@ -30,6 +30,10 @@ buildPythonApplication rec {
|
|||
"--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; {
|
||||
homepage = http://rednotebook.sourceforge.net/;
|
||||
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 {
|
||||
pname = "thonny";
|
||||
version = "3.1.2";
|
||||
version = "3.2.0b7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1simqqxm72k5zhavhllkinsyw8ggy6fjs5ppj82g3l5g3919pfna";
|
||||
sha256 = "0p0hi5rj873cszx9rpbjjq51vs6xys3rlq9v1rya710i3fnw0hqh";
|
||||
};
|
||||
|
||||
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 {
|
||||
pname = "typora";
|
||||
version = "0.9.72";
|
||||
version = "0.9.73";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.typora.io/linux/typora_${version}_amd64.deb";
|
||||
sha256 = "0q7fj77pr3ykpwgip87h12qxvpvlzs15mi9w3phqm3p9mmm9rlrs";
|
||||
sha256 = "1fgcb4bx5pw8ah5j30d38gw7qi1cmqarfhvgdns9f2n0d57bvvw3";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
postFixup = ''
|
||||
makeWrapper ${electron_3}/bin/electron $out/bin/typora \
|
||||
makeWrapper ${electron_5}/bin/electron $out/bin/typora \
|
||||
--add-flags $out/share/typora \
|
||||
"''${gappsWrapperArgs[@]}" \
|
||||
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}"
|
||||
|
@ -50,6 +50,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = https://typora.io;
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ jensbin worldofpeace ];
|
||||
inherit (electron_3.meta) platforms;
|
||||
platforms = [ "x86_64-linux"];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -52,13 +52,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "digikam";
|
||||
version = "6.1.0";
|
||||
version = "6.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KDE";
|
||||
repo = "digikam";
|
||||
rev = "v${version}";
|
||||
sha256 = "0h0jqfgpanhxfi3r7cgip58ppypqx79z6c5jj7i7f19hp2zziip8";
|
||||
sha256 = "1l1nb1nwicmip2jxhn5gzr7h60igvns0zs3kzp36r6qf4wvg3v2z";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];
|
||||
|
@ -105,6 +105,8 @@ mkDerivation rec {
|
|||
threadweaver
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
cmakeFlags = [
|
||||
"-DENABLE_MYSQLSUPPORT=1"
|
||||
"-DENABLE_INTERNALMYSQL=1"
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "drawio";
|
||||
version = "10.9.5";
|
||||
version = "11.1.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
|
||||
sha256 = "13687d5bfxj7wlbh5j13pvxvs69whlg820wllk3pb1xb3syynlpn";
|
||||
sha256 = "1jibkxx00rma641c3xr7720qj9slqsvhbpi7nawi6f2f91gzyc10";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -9,11 +9,11 @@ let
|
|||
pythonPackages = python3Packages;
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "freecad-${version}";
|
||||
version = "0.18.2";
|
||||
version = "0.18.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/FreeCAD/FreeCAD/archive/${version}.tar.gz";
|
||||
sha256 = "1r5rhaiq22yhrfpmcmzx6bflqj6q9asbyjyfja4x4rzfy9yh0a4v";
|
||||
sha256 = "07j7azgnicmd8cqnyskp15y44ykgj5qqz5y3w1jdynrv3yrvk1kz";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ninja pkgconfig pythonPackages.pyside2-tools ];
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{stdenv, fetchFromGitHub, qtbase, mesa_glu}:
|
||||
stdenv.mkDerivation rec {
|
||||
{ stdenv, fetchFromGitHub, mkDerivation, qtbase, mesa_glu }:
|
||||
|
||||
mkDerivation rec {
|
||||
name = "fstl-${version}";
|
||||
version = "0.9.3";
|
||||
|
||||
|
|
|
@ -10,11 +10,11 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "krita";
|
||||
version = "4.2.2";
|
||||
version = "4.2.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1pzk5bqp3kh22djhvsvmsc7ybirs4hsnkpg1y9677m2gxwbqnnps";
|
||||
sha256 = "1f14r2mrqasl6nr3sss0xy2h8xlxd5wdcjcd64m9nz2gwlm39r7w";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake extra-cmake-modules python3Packages.sip makeWrapper ];
|
||||
|
|
|
@ -14,13 +14,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openimageio";
|
||||
version = "2.0.9";
|
||||
version = "2.0.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpenImageIO";
|
||||
repo = "oiio";
|
||||
rev = "Release-${version}";
|
||||
sha256 = "17diyfk586hll54cl476kbhbcm3nihw6cb4bgjkjxxzxbd3wx839";
|
||||
sha256 = "0k60kgfahsqcgmydsf1kh1qzshn8mksaw772z48a40qnx28pfjys";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "out" "dev" "doc" ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "pdfcpu";
|
||||
version = "0.2.1";
|
||||
version = "0.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hhrutter";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0cg17nph3qv1ca86j3wcd33vqs6clkzi6y2nrajmk7dq5vbzr6nn";
|
||||
sha256 = "1knvi0v9nfzw40dayrw5cjidg9h900143v1pi6240yd7r7isx348";
|
||||
};
|
||||
|
||||
modSha256 = "0cz4gs88s9z2yv1gc9ap92vv2j93ab6kr25zjgl2r7z6clbl5fzp";
|
||||
|
|
|
@ -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
|
||||
, lib
|
||||
, extra-cmake-modules
|
||||
, breeze-icons
|
||||
, breeze-qt5
|
||||
, kdoctools
|
||||
, kconfig
|
||||
, kcrash
|
||||
|
@ -19,7 +21,8 @@
|
|||
, shared-mime-info
|
||||
, libv4l
|
||||
, kfilemetadata
|
||||
, ffmpeg
|
||||
, ffmpeg-full
|
||||
, frei0r
|
||||
, phonon-backend-gstreamer
|
||||
, qtdeclarative
|
||||
, qtquickcontrols
|
||||
|
@ -37,6 +40,8 @@ mkDerivation {
|
|||
kdoctools
|
||||
];
|
||||
buildInputs = [
|
||||
breeze-icons
|
||||
breeze-qt5
|
||||
kconfig
|
||||
kcrash
|
||||
kdbusaddons
|
||||
|
@ -59,7 +64,8 @@ mkDerivation {
|
|||
qtwebkit
|
||||
shared-mime-info
|
||||
libv4l
|
||||
ffmpeg
|
||||
ffmpeg-full
|
||||
frei0r
|
||||
rttr
|
||||
kpurpose
|
||||
kdeclarative
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ config, stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
|
||||
, ilmbase, libXi, libX11, libXext, libXrender
|
||||
, 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
|
||||
, jackaudioSupport ? false, libjack2
|
||||
, cudaSupport ? config.cudaSupport or false, cudatoolkit
|
||||
|
@ -11,14 +11,15 @@
|
|||
|
||||
with lib;
|
||||
|
||||
let python = pythonPackages.python; in
|
||||
let python = python3Packages.python; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "blender-2.79b";
|
||||
pname = "blender";
|
||||
version = "2.80";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.blender.org/source/${name}.tar.gz";
|
||||
sha256 = "1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c";
|
||||
url = "https://download.blender.org/source/${pname}-${version}.tar.gz";
|
||||
sha256 = "1h550jisdbis50hxwk5kxrvrk1a6sh2fsri3yyj66vhzbi87x7fd";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ] ++ optional cudaSupport addOpenGLRunpath;
|
||||
|
@ -36,7 +37,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
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"'
|
||||
'';
|
||||
|
||||
|
@ -47,10 +47,7 @@ stdenv.mkDerivation rec {
|
|||
"-DWITH_INSTALL_PORTABLE=OFF"
|
||||
"-DWITH_FFTW3=ON"
|
||||
#"-DWITH_SDL=ON"
|
||||
"-DWITH_GAMEENGINE=ON"
|
||||
"-DWITH_OPENCOLORIO=ON"
|
||||
"-DWITH_SYSTEM_OPENJPEG=ON"
|
||||
"-DWITH_PLAYER=ON"
|
||||
"-DWITH_OPENSUBDIV=ON"
|
||||
"-DPYTHON_LIBRARY=${python.libPrefix}m"
|
||||
"-DPYTHON_LIBPATH=${python}/lib"
|
||||
|
@ -58,13 +55,10 @@ stdenv.mkDerivation rec {
|
|||
"-DPYTHON_VERSION=${python.pythonVersion}"
|
||||
"-DWITH_PYTHON_INSTALL=OFF"
|
||||
"-DWITH_PYTHON_INSTALL_NUMPY=OFF"
|
||||
"-DPYTHON_NUMPY_PATH=${python3Packages.numpy}/${python.sitePackages}"
|
||||
]
|
||||
++ optional jackaudioSupport "-DWITH_JACK=ON"
|
||||
++ optionals cudaSupport
|
||||
[ "-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 cudaSupport "-DWITH_CYCLES_CUDA_BINARIES=ON"
|
||||
++ optional colladaSupport "-DWITH_OPENCOLLADA=ON";
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${ilmbase.dev}/include/OpenEXR -I${python}/include/${python.libPrefix}";
|
||||
|
@ -78,7 +72,7 @@ stdenv.mkDerivation rec {
|
|||
postInstall = optionalString enableNumpy
|
||||
''
|
||||
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
|
||||
|
|
|
@ -49,8 +49,7 @@ stdenv.mkDerivation rec {
|
|||
]);
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--prefix PYTHONPATH: $PYTHONPATH"
|
||||
"--prefix PATH: ${poppler_utils.out}/bin}"
|
||||
"--prefix PATH : ${poppler_utils.out}/bin"
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
|
@ -76,7 +75,7 @@ stdenv.mkDerivation rec {
|
|||
sed -i "2i import sys; sys.argv[0] = 'calibre'" $out/bin/calibre
|
||||
|
||||
for program in $out/bin/*; do
|
||||
wrapQtApp $program
|
||||
wrapQtApp $program --prefix PYTHONPATH : $PYTHONPATH
|
||||
done
|
||||
|
||||
# Replace @out@ by the output path.
|
||||
|
|
|
@ -1,25 +1,24 @@
|
|||
{ stdenv, fetchurl, pkgconfig, ncurses }:
|
||||
{ stdenv, fetchFromGitHub, autoreconfHook, ncurses }:
|
||||
|
||||
let
|
||||
version = "1.2a";
|
||||
in with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cmatrix";
|
||||
version = "2.0";
|
||||
|
||||
name = "cmatrix-${version}";
|
||||
|
||||
src = fetchurl{
|
||||
url = "http://www.asty.org/cmatrix/dist/${name}.tar.gz";
|
||||
sha256 = "0k06fw2n8nzp1pcdynhajp5prba03gfgsbj91bknyjr5xb5fd9hz";
|
||||
src = fetchFromGitHub {
|
||||
owner = "abishekvashok";
|
||||
repo = "cmatrix";
|
||||
rev = "v${version}";
|
||||
sha256 = "1h9jz4m4s5l8c3figaq46ja0km1gimrkfxm4dg7mf4s84icmasbm";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
buildInputs = [ ncurses ];
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Simulates the falling characters theme from The Matrix movie";
|
||||
longDescription = ''
|
||||
CMatrix simulates the display from "The Matrix" and is based
|
||||
on the screensaver from the movie's website.
|
||||
on the screensaver from the movie's website.
|
||||
'';
|
||||
homepage = http://www.asty.org/cmatrix/;
|
||||
platforms = ncurses.meta.platforms;
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, qtgraphicaleffects, curaengine, plugins ? [] }:
|
||||
|
||||
mkDerivation rec {
|
||||
name = "cura-${version}";
|
||||
version = "4.1.0";
|
||||
pname = "cura";
|
||||
version = "4.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Ultimaker";
|
||||
repo = "Cura";
|
||||
rev = version;
|
||||
sha256 = "1mfpnjrh3splpkadgml3v71k939g56zb9hbmzghwfjwlrf8valmz";
|
||||
sha256 = "1qnai8vmgy5lx3lapw96j41i8mw9p6r99i3qzs709l9yzrix6l86";
|
||||
};
|
||||
|
||||
materials = fetchFromGitHub {
|
||||
owner = "Ultimaker";
|
||||
repo = "fdm_materials";
|
||||
rev = version;
|
||||
sha256 = "0yp2162msxfwpixzvassn23p7r3swjpwk4nhsjka5w6fm8pv0wpl";
|
||||
rev = "4.2.0"; # TODO: change back to `version` after 4.2.1
|
||||
sha256 = "17x43v0np58qbdfk3wz1k7i9pl0plndx9gmf7y0n23nl9f1qzb0m";
|
||||
};
|
||||
|
||||
buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
|
||||
|
@ -29,6 +29,11 @@ mkDerivation rec {
|
|||
"-DCURA_VERSION=${version}"
|
||||
];
|
||||
|
||||
makeWrapperArgs = [
|
||||
# hacky workaround for https://github.com/NixOS/nixpkgs/issues/59901
|
||||
"--set OMP_NUM_THREADS 1"
|
||||
];
|
||||
|
||||
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
|
||||
|
@ -52,6 +57,6 @@ mkDerivation rec {
|
|||
homepage = https://github.com/Ultimaker/Cura;
|
||||
license = licenses.lgpl3Plus;
|
||||
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 ];
|
||||
};
|
||||
}
|
|
@ -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 ];
|
||||
};
|
||||
}
|
||||
|
|
@ -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 ];
|
||||
};
|
||||
}
|
|
@ -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 ];
|
||||
};
|
||||
}
|
||||
|
|
@ -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__
|
|
@ -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 {
|
||||
pname = "Cura-OctoPrintPlugin";
|
||||
version = "3.5.5";
|
||||
version = "3.5.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fieldOfView";
|
||||
repo = pname;
|
||||
rev = "d05a9a4c1a01c584d5cec4f4b7d170077235467a";
|
||||
sha256 = "0ik69g3kbn7rz2wh0cfq9ww8x222kagd8jvsd4xlqgq4yrf0jk7x";
|
||||
rev = "46548cbb8d32d10fe3aee12f272d5d8f34271738";
|
||||
sha256 = "0pllba8qx1746pnf5ccbkqn2j6f8hhknpgyrrv244ykvigrlczx0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "curaengine-${version}";
|
||||
version = "4.1.0";
|
||||
version = "4.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Ultimaker";
|
||||
repo = "CuraEngine";
|
||||
rev = version;
|
||||
sha256 = "14zy9ir46vndsi4l8kapm6byw02fimm7ava2rfi0kvcckf5yq9w8";
|
||||
sha256 = "13hbzsx4fwrbwviyhh8z04gs9b0m8fjl8a31ci7gr2dfdmgjs6pd";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = https://github.com/Ultimaker/CuraEngine;
|
||||
license = licenses.agpl3;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ abbradar ];
|
||||
maintainers = with maintainers; [ abbradar gebner ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "dbeaver-ce-${version}";
|
||||
version = "6.1.3";
|
||||
version = "6.1.4";
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "dbeaver";
|
||||
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
|
||||
sha256 = "1ngfypx0wbq98rv791zls07h46rnj69qixpslw0xn9bb3ky4snbf";
|
||||
sha256 = "1l4skcannbzddhm773dm3hwv3a7b3xy569gydcfczgdlgzgmlfjq";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
|
|
@ -16,13 +16,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gImageReader-${version}";
|
||||
version = "3.3.0";
|
||||
version = "3.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner= "manisandro";
|
||||
repo = "gImageReader";
|
||||
rev = "v${version}";
|
||||
sha256 = "0pjk4kr7bc5q4hi1xf7na2zln9fyqdazgzq62r3bg41nzy7fakcz";
|
||||
sha256 = "17hz2dgxx2j7hsk0lx3riidqvlsg0ylnicjd2gphsi3yp7w20zdj";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "gallery_dl";
|
||||
version = "1.8.6";
|
||||
version = "1.10.1";
|
||||
|
||||
src = python3Packages.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0in47v6c82a6mqg4wzxrji7wd8a9qh5386rsr77s3a8613am1n2x";
|
||||
sha256 = "174d2q7w0kwa6xx9k3bl5gdwmk0gklvch963g7vl979wqsf7nskw";
|
||||
};
|
||||
|
||||
doCheck = false;
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gkrellm-2.3.10";
|
||||
name = "gkrellm-2.3.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://gkrellm.srcbox.net/releases/${name}.tar.bz2";
|
||||
sha256 = "0rnpzjr0ys0ypm078y63q4aplcgdr5nshjzhmz330n6dmnxci7lb";
|
||||
sha256 = "01lccz4fga40isv09j8rjgr0qy10rff9vj042n6gi6gdv4z69q0y";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig which ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl
|
||||
{ stdenv, mkDerivation, fetchurl
|
||||
, qtbase, qtsvg, qtserialport, qtwebkit, qtmultimedia, qttools, qtconnectivity
|
||||
, yacc, flex, zlib, qmake, makeDesktopItem, makeWrapper
|
||||
}:
|
||||
|
@ -13,7 +13,7 @@ let
|
|||
comment = "Performance software for cyclists, runners and triathletes";
|
||||
categories = "Application;Utility;";
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
in mkDerivation rec {
|
||||
name = "golden-cheetah-${version}";
|
||||
version = "3.4";
|
||||
src = fetchurl {
|
||||
|
@ -29,6 +29,9 @@ in stdenv.mkDerivation rec {
|
|||
NIX_LDFLAGS = [
|
||||
"-lz"
|
||||
];
|
||||
|
||||
qtWrapperArgs = [ "--set LD_LIBRARY_PATH ${zlib.out}/lib" ];
|
||||
|
||||
preConfigure = ''
|
||||
cp src/gcconfig.pri.in src/gcconfig.pri
|
||||
cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri
|
||||
|
@ -40,7 +43,6 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
mkdir -p $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 src/Resources/images/gc.png $out/share/pixmaps/goldencheetah.png
|
||||
|
||||
|
|
|
@ -1,25 +1,29 @@
|
|||
{ stdenv, fetchFromGitHub, pkgconfig, libXtst, libvorbis, hunspell
|
||||
, libao, ffmpeg, libeb, lzo, xz, libtiff
|
||||
{ mkDerivation, lib, fetchFromGitHub, pkgconfig, libXtst, libvorbis, hunspell
|
||||
, libao, ffmpeg, libeb, lzo, xz, libtiff, opencc
|
||||
, qtbase, qtsvg, qtwebkit, qtx11extras, qttools, qmake }:
|
||||
stdenv.mkDerivation rec {
|
||||
mkDerivation rec {
|
||||
|
||||
name = "goldendict-2018-06-13";
|
||||
name = "goldendict-2019-08-01";
|
||||
src = fetchFromGitHub {
|
||||
owner = "goldendict";
|
||||
repo = "goldendict";
|
||||
rev = "48e850c7ec11d83cba7499f7fdce377ef3849bbb";
|
||||
sha256 = "0i4q4waqjv45hgwillvjik97pg26kwlmz4925djjkx8s6hxgjlq9";
|
||||
rev = "0f951b06a55f3a201891cf645a556e773bda5f52";
|
||||
sha256 = "1d1hn95vhvsmbq9q96l5adn90g0hg25dl01knb4y4v6v9x4yrl2x";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig qmake ];
|
||||
buildInputs = [
|
||||
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/;
|
||||
description = "A feature-rich dictionary lookup program";
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "jgmenu";
|
||||
version = "3.1";
|
||||
version = "3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "johanmalm";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "03lk89d6wvqv234qciksd4zm0z4lkvrxfh6r9ff0d8yzg67m7rd0";
|
||||
sha256 = "02qpvlmcis7217hkqilhszza4g1smb4byx4gihgp5207aj8qhz0l";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv
|
||||
{ mkDerivation
|
||||
, lib
|
||||
, fetchurl
|
||||
, extra-cmake-modules
|
||||
|
@ -18,7 +18,7 @@
|
|||
, kwayland
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
mkDerivation rec {
|
||||
pname = "kdeconnect";
|
||||
version = "1.3.4";
|
||||
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
, desktop-file-utils, libSM, imagemagick }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "19.04";
|
||||
version = "19.07";
|
||||
name = "mediainfo-gui-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
||||
sha256 = "11wag23gx7nprrm1qlgvbc83rs9zxdsshqrp98zwia80xh8c9bk5";
|
||||
sha256 = "0b2ypdlpj5v64ggqk628mgqraba27z725sa0zf0fa4agxhf9ka44";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
|
|
@ -1,71 +1,85 @@
|
|||
{ stdenv, fetchurl, pkgconfig, libpng, openssl, curl, gtk2, check, SDL
|
||||
, libxml2, libidn, perl, nettools, perlPackages
|
||||
, libXcursor, libXrandr, makeWrapper
|
||||
{ stdenv, fetchurl, fetchpatch, makeWrapper, wrapGAppsHook
|
||||
|
||||
# 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"
|
||||
, buildsystem
|
||||
, nsgenbind
|
||||
, libnsfb
|
||||
, libwapcaplet
|
||||
, libparserutils
|
||||
, libcss
|
||||
, libhubbub
|
||||
, libdom
|
||||
, libnsbmp
|
||||
, libnsgif
|
||||
, libnsutils
|
||||
, libutf8proc
|
||||
|
||||
# Netsurf-specific dependencies
|
||||
|
||||
, libcss, libdom, libhubbub, libnsbmp, libnsfb, libnsgif
|
||||
, libnslog, libnspsl, libnsutils, libparserutils, libsvgtiny, libutf8proc
|
||||
, libwapcaplet, nsgenbind
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (stdenv.lib) optional optionals;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "netsurf-${version}";
|
||||
version = "3.5";
|
||||
|
||||
# UI libs incldue Framebuffer, and gtk
|
||||
version = "3.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/netsurf/releases/source/netsurf-${version}-src.tar.gz";
|
||||
sha256 = "1k0x8mzgavfy7q9kywl6kzsc084g1xlymcnsxi5v6jp279nsdwwq";
|
||||
sha256 = "1hzcm2s2wh5sapgr000lg63hcdbj6hyajxl43xa1x80kc5piqbyp";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ libpng openssl curl gtk2 check libxml2 libidn perl
|
||||
nettools perlPackages.HTMLParser libXcursor libXrandr makeWrapper SDL
|
||||
buildsystem
|
||||
nsgenbind
|
||||
libnsfb
|
||||
libwapcaplet
|
||||
libparserutils
|
||||
libcss
|
||||
libhubbub
|
||||
libdom
|
||||
libnsbmp
|
||||
libnsgif
|
||||
libnsutils
|
||||
patches = [
|
||||
# GTK: prefer using curl's intrinsic defaults for CURLOPT_CA*
|
||||
(fetchpatch {
|
||||
name = "0001-GTK-prefer-using-curl-s-intrinsic-defaults-for-CURLO.patch";
|
||||
url = "http://source.netsurf-browser.org/netsurf.git/patch/?id=87177d8aa109206d131e0d80a2080ce55dab01c7";
|
||||
sha256 = "08bc60pc5k5qpckqv21zgmgszj3rpwskfc84shs8vg92vkimv2ai";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
perl
|
||||
perlPackages.HTMLParser
|
||||
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
|
||||
];
|
||||
]
|
||||
++ optionals (uilib == "framebuffer") [ expat SDL ]
|
||||
++ optional (uilib == "gtk") gtk2
|
||||
;
|
||||
|
||||
preConfigure = ''
|
||||
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
|
||||
EOF
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
"PREFIX=$(out)"
|
||||
"NSSHARED=${buildsystem}/share/netsurf-buildsystem"
|
||||
"PREFIX=${placeholder "out"}"
|
||||
"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; {
|
||||
homepage = http://www.netsurf-browser.org/;
|
||||
description = "Free opensource web browser";
|
||||
|
|
|
@ -8,11 +8,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
name = "netsurf-${libname}-${version}";
|
||||
libname = "libcss";
|
||||
version = "0.6.0";
|
||||
version = "0.9.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "0qp4p1q1dwgdra4pkrzd081zjzisxkgwx650ijx323j8bj725daf";
|
||||
sha256 = "1vw9j3d2mr4wbvs8fyqmgslkbxknvac10456775hflxxcivbm3xr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -9,11 +9,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
name = "netsurf-${libname}-${version}";
|
||||
libname = "libdom";
|
||||
version = "0.3.0";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "1kk6qbqagx5ypiy9kf0059iqdzyz8fqaw336vzhb5gnrzjw3wv4a";
|
||||
sha256 = "1ixkqsl3f7dl1kajksm0c231w1v5xy8z6hm3v67hgm9nh4qcvfcy";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -7,11 +7,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
name = "netsurf-${libname}-${version}";
|
||||
libname = "libhubbub";
|
||||
version = "0.3.3";
|
||||
version = "0.3.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "101781iw32p47386fxqr01nrkywi12w17ajh02k2vlga4z8zyv86";
|
||||
sha256 = "1x3v7xvagx85v9h3pypzc86rcxs4mij87mmcqkp8pq50q6awfmnp";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
name = "netsurf-${libname}-${version}";
|
||||
libname = "libnsbmp";
|
||||
version = "0.1.3";
|
||||
version = "0.1.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "0gmvzw1whh7553d6s98vr4ri2whjwrgggcq1z5b160gwjw20mzyy";
|
||||
sha256 = "0lib2m07d1i0k80m4blkwnj0g7rha4jbm5vrgd0wwbkyfa0hvk35";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
name = "netsurf-${libname}-${version}";
|
||||
libname = "libnsfb";
|
||||
version = "0.1.4";
|
||||
version = "0.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "176f8why9gzbaca9nnxjqasl02qzc6g507z5w3dzkcjifnkz4mzl";
|
||||
sha256 = "09qag9lgn5ahanbcyf2rvfmsz15vazfwnl8xpn8f1iczd44b0bv0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
name = "netsurf-${libname}-${version}";
|
||||
libname = "libnsgif";
|
||||
version = "0.1.3";
|
||||
version = "0.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "1a4z45gh0fw4iybf34fig725av25h31ffk0azi0snzh4130cklnk";
|
||||
sha256 = "0jwshypgmx16xlsbx3d8njk8a5khazlplca5mxd3rdbhrlsabbly";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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}";
|
||||
libname = "libnsutils";
|
||||
version = "0.0.2";
|
||||
version = "0.0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "03p4xmd08yhj70nyj7acjccmmshs59lv4n4zsqpsn5lgkwa23lzy";
|
||||
sha256 = "09w1rixps1iiq6wirjwxmd6h87llvjzvw565rahjb3rlyhcplfqf";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -6,11 +6,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
name = "netsurf-${libname}-${version}";
|
||||
libname = "libparserutils";
|
||||
version = "0.2.3";
|
||||
version = "0.2.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.netsurf-browser.org/libs/releases/${libname}-${version}-src.tar.gz";
|
||||
sha256 = "01gzlsabgl6x0icd8758d9jqs8rrf9574bdkjainn04w3fs3znf5";
|
||||
sha256 = "1n2794y2l0c8nv8z2pxwfnbn882987ifmxjv60zdxkhcndhswarj";
|
||||
};
|
||||
|
||||
buildInputs = [ buildsystem perl ];
|
||||
|
|
|
@ -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…
Reference in New Issue