Skip to content
This repository was archived by the owner on Apr 12, 2021. It is now read-only.
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: c6ca626b4bd6
Choose a base ref
...
head repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2ef110ae64a9
Choose a head ref

Commits on Apr 13, 2020

  1. nixos/build-vms: propagate file location

    When trying to build a VM using `nixos-build-vms` with a configuration
    that doesn't evaluate, an error "at `<unknown-file>`" is usually shown.
    
    This happens since the `build-vms.nix` creates a VM-network of
    NixOS-configurations that are attr-sets or functions and don't contain
    any file information. This patch manually adds the `_file`-attribute to
    tell the module-system which file contained broken configuration:
    
    ```
    $ cat vm.nix
    { vm.invalid-option = 1; }
    
    $ nixos-build-vms vm.nix
    error: The option `invalid-option' defined in `/home/ma27/Projects/nixpkgs/vm.nix@node-vm' does not exist.
    (use '--show-trace' to show detailed location information)
    ```
    Ma27 committed Apr 13, 2020
    Copy the full SHA
    ec6bac9 View commit details

Commits on Apr 14, 2020

  1. nixosTests.flannel: port to python, unbreak

    For reasons yet unknown, the vxlan backend doesn't work (at least inside
    the qemu networking), so this is moved to the udp backend.
    
    Note changing the backend apparently also changes the interface name,
    it's now `flannel0`, not `flannel.1`
    
    fixes #74941
    flokli committed Apr 14, 2020
    Copy the full SHA
    28ef438 View commit details

Commits on Apr 15, 2020

  1. Copy the full SHA
    0a37de9 View commit details
  2. python27Packages.autopep8: 1.5 -> 1.5.1

    r-ryantm authored and FRidh committed Apr 15, 2020
    Copy the full SHA
    7cfd736 View commit details
  3. higan: 106 -> 110

    AndersonTorres committed Apr 15, 2020
    Copy the full SHA
    1877182 View commit details
  4. Merge pull request #85162 from Ma27/build-vms-file-loc

    nixos/build-vms: propagate file location
    Ma27 authored Apr 15, 2020
    Copy the full SHA
    dca0b71 View commit details
  5. Copy the full SHA
    ccd6892 View commit details
  6. Merge pull request #85238 from ryantm/linode-cli

    linode-cli: remove deprecated perl version, init python version at 2.14.1
    ryantm authored Apr 15, 2020
    Copy the full SHA
    5b36111 View commit details
  7. ocamlPackages.fmt: 0.8.6 -> 0.8.8

    sternenseemann authored and vbgl committed Apr 15, 2020
    Copy the full SHA
    a3cd9c9 View commit details
  8. Copy the full SHA
    e16c7da View commit details
  9. ocamlPackages.notty: 0.2.1 → 0.2.2

    sternenseemann authored and vbgl committed Apr 15, 2020
    Copy the full SHA
    759cac4 View commit details
  10. Revert "[Don’t merge] Recurse into OCaml packages"

    This reverts commit e16c7da.
    vbgl committed Apr 15, 2020
    Copy the full SHA
    238bd2a View commit details
  11. Copy the full SHA
    832dc4a View commit details
  12. Copy the full SHA
    8f4bb21 View commit details
  13. Copy the full SHA
    f6e2834 View commit details
  14. Copy the full SHA
    593fd37 View commit details
  15. wpsoffice: apply Qt and GTK wrappers

    Based on the work of Ninlives.
    veprbl committed Apr 15, 2020
    Copy the full SHA
    6daab9b View commit details
  16. Copy the full SHA
    0e5aefc View commit details
  17. Copy the full SHA
    a2d16c4 View commit details
  18. Copy the full SHA
    7cc1c2c View commit details
  19. Merge pull request #85252 from flokli/nixos-flannel-fix

    nixosTests.flannel: port to python, unbreak
    flokli authored Apr 15, 2020
    Copy the full SHA
    7835641 View commit details
  20. Merge pull request #85294 from r-ryantm/auto-update/atlassian-cli

    atlassian-cli: 9.1.1 -> 9.2.0
    Ma27 authored Apr 15, 2020
    Copy the full SHA
    2ef110a View commit details
7 changes: 6 additions & 1 deletion nixos/modules/installer/tools/nixos-build-vms/build-vms.nix
Original file line number Diff line number Diff line change
@@ -3,7 +3,12 @@
, networkExpr
}:

let nodes = import networkExpr; in
let
nodes = builtins.mapAttrs (vm: module: {
_file = "${networkExpr}@node-${vm}";
imports = [ module ];
}) (import networkExpr);
in

with import ../../../../lib/testing-python.nix {
inherit system;
37 changes: 19 additions & 18 deletions nixos/tests/flannel.nix
Original file line number Diff line number Diff line change
@@ -1,20 +1,24 @@
import ./make-test.nix ({ pkgs, ...} : {
import ./make-test-python.nix ({ lib, ...} : {
name = "flannel";

meta = with pkgs.stdenv.lib.maintainers; {
meta = with lib.maintainers; {
maintainers = [ offline ];
};

nodes = let
flannelConfig = {
flannelConfig = { pkgs, ... } : {
services.flannel = {
enable = true;
backend = {
Type = "udp";
Port = 8285;
};
network = "10.1.0.0/16";
iface = "eth1";
etcd.endpoints = ["http://etcd:2379"];
};

networking.firewall.allowedUDPPorts = [ 8472 ];
networking.firewall.allowedUDPPorts = [ 8285 ];
};
in {
etcd = { ... }: {
@@ -32,25 +36,22 @@ import ./make-test.nix ({ pkgs, ...} : {
networking.firewall.allowedTCPPorts = [ 2379 ];
};

node1 = { ... }: {
require = [flannelConfig];
};

node2 = { ... }: {
require = [flannelConfig];
};
node1 = flannelConfig;
node2 = flannelConfig;
};

testScript = ''
startAll;
start_all()
$node1->waitForUnit("flannel.service");
$node2->waitForUnit("flannel.service");
node1.wait_for_unit("flannel.service")
node2.wait_for_unit("flannel.service")
my $ip1 = $node1->succeed("ip -4 addr show flannel.1 | grep -oP '(?<=inet).*(?=/)'");
my $ip2 = $node2->succeed("ip -4 addr show flannel.1 | grep -oP '(?<=inet).*(?=/)'");
node1.wait_until_succeeds("ip l show dev flannel0")
ip1 = node1.succeed("ip -4 addr show flannel0 | grep -oP '(?<=inet).*(?=/)'")
node2.wait_until_succeeds("ip l show dev flannel0")
ip2 = node2.succeed("ip -4 addr show flannel0 | grep -oP '(?<=inet).*(?=/)'")
$node1->waitUntilSucceeds("ping -c 1 $ip2");
$node2->waitUntilSucceeds("ping -c 1 $ip1");
node1.wait_until_succeeds(f"ping -c 1 {ip2}")
node2.wait_until_succeeds(f"ping -c 1 {ip1}")
'';
})
4 changes: 2 additions & 2 deletions pkgs/applications/office/atlassian-cli/default.nix
Original file line number Diff line number Diff line change
@@ -2,11 +2,11 @@

stdenv.mkDerivation rec {
pname = "atlassian-cli";
version = "9.1.1";
version = "9.2.0";

src = fetchzip {
url = "https://bobswift.atlassian.net/wiki/download/attachments/16285777/${pname}-${version}-distribution.zip";
sha256 = "0mdf4ybp0a6c816210g76lx901qwxw727ipyiph5kbdzl4jlrpgm";
sha256 = "0rdnbx3zfz3lpgka7bb8jzapkr81l2yvgsbmn8hrhva5k61xwx3d";
extraPostFetch = "chmod go-w $out";
};

161 changes: 120 additions & 41 deletions pkgs/applications/office/wpsoffice/default.nix
Original file line number Diff line number Diff line change
@@ -1,67 +1,112 @@
{ stdenv, fetchurl
, libX11, glib, xorg, fontconfig, freetype
, zlib, libpng12, libICE, libXrender, cups
, alsaLib, atk, cairo, dbus, expat
, gdk-pixbuf, gtk2-x11, lzma, pango, zotero
, sqlite, libuuid, qt5, dpkg }:
{ stdenv
, mkDerivation
, fetchurl
, autoPatchelfHook
, dpkg
, wrapGAppsHook
, wrapQtAppsHook
, alsaLib
, atk
, bzip2
, cairo
, cups
, dbus
, expat
, ffmpeg_3
, fontconfig
, freetype
, gdk-pixbuf
, glib
, gperftools
, gtk2-x11
, libpng12
, libtool
, libuuid
, libxml2
, lzma
, nspr
, nss
, openssl
, pango
, qt4
, qtbase
, sqlite
, unixODBC
, xorg
, zlib
}:

stdenv.mkDerivation rec{
pname = "wpsoffice";
version = "11.1.0.9080";
version = "11.1.0.9505";

src = fetchurl {
url = "http://wdl1.pcfg.cache.wpscdn.com/wpsdl/wpsoffice/download/linux/9080/wps-office_11.1.0.9080.XA_amd64.deb";
sha256 = "1731e9aea22ef4e558ad66b1373d863452b4f570aecf09d448ae28a821333454";
url = "http://wdl1.pcfg.cache.wpscdn.com/wpsdl/wpsoffice/download/linux/9505/wps-office_11.1.0.9505.XA_amd64.deb";
sha256 = "1bvaxwd3npw3kswk7k1p6mcbfg37x0ym4sp6xis6ykz870qivqk5";
};
unpackCmd = "dpkg -x $src .";
sourceRoot = ".";

nativeBuildInputs = [ qt5.wrapQtAppsHook dpkg ];
postUnpack = stdenv.lib.optionalString (version == "11.1.0.9505") ''
# distribution is missing libjsapiservice.so, so we should not let
# autoPatchelfHook fail on the following dead libraries
rm opt/kingsoft/wps-office/office6/{libjsetapi.so,libjswppapi.so,libjswpsapi.so}
'';

nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook wrapQtAppsHook ];

meta = {
description = "Office program originally named Kingsoft Office";
homepage = "http://wps-community.org/";
platforms = [ "i686-linux" "x86_64-linux" ];
platforms = [ "x86_64-linux" ];
hydraPlatforms = [];
license = stdenv.lib.licenses.unfreeRedistributable;
maintainers = [ stdenv.lib.maintainers.mlatus ];
};

libPath = with xorg; stdenv.lib.makeLibraryPath [
libX11
libpng12
glib
libSM
libXext
fontconfig
zlib
freetype
libICE
cups
libXrender
libxcb

buildInputs = with xorg; [
alsaLib
atk
bzip2
cairo
dbus.daemon.lib
dbus.lib
expat
fontconfig.lib
ffmpeg_3
fontconfig
freetype
gdk-pixbuf
glib
gperftools
gtk2-x11
lzma
pango
zotero
sqlite
libuuid
libICE
libSM
libX11
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXScrnSaver
libXrender
libXtst
libpng12
libtool
libuuid
libxcb
libxml2
lzma
nspr
nss
openssl
pango
qt4
qtbase
sqlite
unixODBC
zlib
];

dontPatchELF = true;
@@ -70,25 +115,59 @@ stdenv.mkDerivation rec{
# references to nix own build directory
noAuditTmpdir = true;

unvendoredLibraries = [
# Have to use parts of the vendored qt4
#"Qt"
"SDL2"
"bz2"
"avcodec"
"avdevice"
"avformat"
"avutil"
"swresample"
"swscale"
"jpeg"
"png"
# File saving breaks unless we are using vendored llvmPackages_8.libcxx
#"c++"
"ssl" "crypto"
"nspr"
"nss"
"odbc"
"tcmalloc" # gperftools
];

installPhase = ''
prefix=$out/opt/kingsoft/wps-office
mkdir -p $out
cp -r opt $out
cp -r usr/* $out
# Avoid forbidden reference error due use of patchelf
rm -r *
for lib in $unvendoredLibraries; do
rm -v "$prefix/office6/lib$lib"*.so{,.*}
done
for i in wps wpp et wpspdf; do
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--force-rpath --set-rpath "$(patchelf --print-rpath $prefix/office6/$i):${stdenv.cc.cc.lib}/lib64:${libPath}" \
$prefix/office6/$i
substituteInPlace $out/bin/$i \
--replace /opt/kingsoft/wps-office $prefix
done
for i in $out/share/applications/*;do
substituteInPlace $i \
--replace /usr/bin $out/bin \
--replace /opt/kingsoft/wps-office $prefix
--replace /usr/bin $out/bin
done
'';

runtimeLibPath = stdenv.lib.makeLibraryPath [
cups.lib
];

dontWrapQtApps = true;
dontWrapGApps = true;
postFixup = ''
for f in "$out"/bin/*; do
echo "Wrapping $f"
wrapProgram "$f" \
"''${gappsWrapperArgs[@]}" \
"''${qtWrapperArgs[@]}" \
--suffix LD_LIBRARY_PATH : "$runtimeLibPath"
done
'';
}
6 changes: 3 additions & 3 deletions pkgs/development/ocaml-modules/fmt/default.nix
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, cmdliner, seq, stdlib-shims }:

if !stdenv.lib.versionAtLeast ocaml.version "4.03"
if !stdenv.lib.versionAtLeast ocaml.version "4.05"
then throw "fmt is not available for OCaml ${ocaml.version}"
else

stdenv.mkDerivation rec {
version = "0.8.6";
version = "0.8.8";
pname = "ocaml${ocaml.version}-fmt";

src = fetchurl {
url = "https://erratique.ch/software/fmt/releases/fmt-${version}.tbz";
sha256 = "1jlw5izgvqw1adzqi87rp0383j0vj52wmacy3rqw87vxkf7a3xin";
sha256 = "1iy0rwknd302mr15328g805k210xyigxbija6fzqqfzyb43azvk4";
};

nativeBuildInputs = [ ocaml findlib ocamlbuild ];
6 changes: 3 additions & 3 deletions pkgs/development/ocaml-modules/notty/default.nix
Original file line number Diff line number Diff line change
@@ -4,19 +4,19 @@

with stdenv.lib;

if !versionAtLeast ocaml.version "4.03"
if !versionAtLeast ocaml.version "4.05"
then throw "notty is not available for OCaml ${ocaml.version}"
else

let withLwt = lwt != null; in

stdenv.mkDerivation rec {
version = "0.2.1";
version = "0.2.2";
name = "ocaml${ocaml.version}-notty-${version}";

src = fetchurl {
url = "https://github.com/pqwy/notty/releases/download/v${version}/notty-${version}.tbz";
sha256 = "0wdfmgx1mz77s7m451vy8r9i4iqwn7s7b39kpbpckf3w9417riq0";
sha256 = "1y3hx8zjri3x50nyiqal5gak1sw54gw3xssrqbj7srinvkdmrz1q";
};

buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ];
4 changes: 2 additions & 2 deletions pkgs/development/python-modules/autopep8/default.nix
Original file line number Diff line number Diff line change
@@ -2,11 +2,11 @@

buildPythonPackage rec {
pname = "autopep8";
version = "1.5";
version = "1.5.1";

src = fetchPypi {
inherit pname version;
sha256 = "0f592a0447acea0c2b0a9602be1e4e3d86db52badd2e3c84f0193bfd89fd3a43";
sha256 = "1swr8ccm3mafcm3zpbwyn22kjs39lbqmg8w41sh7yb3gskgy2syc";
};

propagatedBuildInputs = [ pycodestyle ];
49 changes: 24 additions & 25 deletions pkgs/misc/emulators/higan/0001-change-flags.diff
Original file line number Diff line number Diff line change
@@ -1,26 +1,25 @@
diff -Naur higan_v105-source.old/higan/GNUmakefile higan_v105-source.new/higan/GNUmakefile
--- higan_v105-source.old/higan/GNUmakefile 2017-10-07 01:34:22.000000000 -0300
+++ higan_v105-source.new/higan/GNUmakefile 2017-10-17 00:02:40.580957396 -0200
@@ -26,7 +26,7 @@
flags += -fopenmp
link += -fopenmp
ifeq ($(binary),application)
- flags += -march=native
+ flags +=
link += -Wl,-export-dynamic
link += -lX11 -lXext
else ifeq ($(binary),library)
diff -Naur higan_v105-source.old/nall/GNUmakefile higan_v105-source.new/nall/GNUmakefile
--- higan_v105-source.old/nall/GNUmakefile 2017-09-23 18:34:22.000000000 -0300
+++ higan_v105-source.new/nall/GNUmakefile 2017-10-17 00:03:33.568916550 -0200
@@ -40,8 +40,8 @@
objcflags := -x objective-c -std=c11
cppflags := -x c++ -std=c++14
objcppflags := -x objective-c++ -std=c++14
-flags :=
-link :=
+flags := $(CXXFLAGS)
+link := $(LDFLAGS)
diff -Naur higan-110-old/higan/GNUmakefile higan-110-new/higan/GNUmakefile
--- higan-110-old/higan/GNUmakefile 2020-04-15 11:06:00.279935557 -0300
+++ higan-110-new/higan/GNUmakefile 2020-04-15 11:08:32.982417291 -0300
@@ -11,7 +11,7 @@
include $(nall.path)/GNUmakefile

# compiler detection
ifeq ($(compiler),)
ifeq ($(platform),local)
- flags += -march=native
+ flags +=
endif

ifeq ($(platform),windows)
diff -Naur higan-110-old/nall/GNUmakefile higan-110-new/nall/GNUmakefile
--- higan-110-old/nall/GNUmakefile 2020-04-15 11:06:00.396935154 -0300
+++ higan-110-new/nall/GNUmakefile 2020-04-15 11:10:37.738011488 -0300
@@ -127,7 +127,8 @@

# linux settings
ifeq ($(platform),linux)
- options += -ldl
+ flags += $(CXXFLAGS)
+ options += $(LDFLAGS) -ldl
endif

# bsd settings
133 changes: 80 additions & 53 deletions pkgs/misc/emulators/higan/default.nix
Original file line number Diff line number Diff line change
@@ -1,108 +1,135 @@
{ stdenv, fetchurl
, p7zip, pkgconfig, libicns
{ stdenv, fetchFromGitHub
, pkgconfig
, libX11, libXv
, udev
, libGLU, libGL, SDL
, Carbon, Cocoa, OpenGL, OpenAL
, libGLU, libGL, SDL2
, libao, openal, libpulseaudio
, alsaLib
, gtk2, gtksourceview
, runtimeShell }:
, runtimeShell
# Darwin dependencies
, libicns, Carbon, Cocoa, OpenGL, OpenAL}:

with stdenv.lib;
let
inherit (stdenv.lib) optionals;
in
stdenv.mkDerivation rec {

pname = "higan";
version = "106";
sourceName = "higan_v${version}-source";
version = "110";

src = fetchurl {
urls = [ "https://download.byuu.org/${sourceName}.7z" ];
sha256 = "063dzp9wrdnbvagraxi31xg0154y2gf67rrd0mnc8h104cgzjr35";
curlOpts = "--user-agent 'Mozilla/5.0'"; # the good old user-agent trick...
src = fetchFromGitHub {
owner = "higan-emu";
repo = "higan";
rev = "v${version}";
sha256 = "11rvm53c3p2f6zk8xbyv2j51xp8zmqnch7zravhj3fk590qrjrr2";
};

patches = [ ./0001-change-flags.diff ];
postPatch = ''
sed '1i#include <cmath>' -i higan/fc/ppu/ppu.cpp
for file in icarus/GNUmakefile higan/target-tomoko/GNUmakefile; do
for file in icarus/GNUmakefile higan/target-higan/GNUmakefile; do
substituteInPlace "$file" \
--replace 'sips -s format icns data/$(name).png --out out/$(name).app/Contents/Resources/$(name).icns' \
'png2icns out/$(name).app/Contents/Resources/$(name).icns data/$(name).png'
done
'';

nativeBuildInputs = [ p7zip pkgconfig ]
++ optional stdenv.isDarwin [ libicns ];
nativeBuildInputs = [ pkgconfig ]
++ optionals stdenv.isDarwin [ libicns ];

buildInputs =
[ SDL libao ]
++ optionals stdenv.isLinux [ openal libpulseaudio udev libX11 libXv libGLU libGL gtk2 gtksourceview ]
++ optionals stdenv.isDarwin [ Carbon Cocoa OpenGL OpenAL ]
;

unpackPhase = ''
7z x $src
sourceRoot=${sourceName}
'';
buildInputs = [ SDL2 libao ]
++ optionals stdenv.isLinux [ alsaLib udev libpulseaudio openal
gtk2 gtksourceview libX11 libXv
libGLU libGL ]
++ optionals stdenv.isDarwin [ Carbon Cocoa OpenGL OpenAL ];

buildPhase = ''
make compiler=c++ -C icarus
make compiler=c++ -C higan
make compiler=c++ -C higan openmp=true target=higan
make compiler=c++ -C genius openmp=true
make compiler=c++ -C icarus openmp=true
'';

# Now the cheats file will be distributed separately
installPhase = (if !stdenv.isDarwin then ''
mkdir -p "$out"/bin "$out"/share/applications "$out"/share/pixmaps
install -m 755 icarus/out/icarus "$out"/bin/
install -m 755 higan/out/higan "$out"/bin/
install -m 644 higan/data/higan.desktop "$out"/share/applications/
install -m 644 higan/data/higan.png "$out"/share/pixmaps/higan-icon.png
install -m 644 higan/resource/logo/higan.png "$out"/share/pixmaps/higan-logo.png
'' else ''
installPhase = (if stdenv.isDarwin then ''
mkdir "$out"
mv higan/out/higan.app "$out"/
mv icarus/out/icarus.app "$out"/
mv genius/out/genius.app "$out"/
'' else ''
install -dm 755 "$out"/bin "$out"/share/applications "$out"/share/pixmaps
install -m 755 higan/out/higan -t "$out"/bin/
install -m 644 higan/target-higan/resource/higan.desktop \
-t $out/share/applications/
install -m 644 higan/target-higan/resource/higan.svg \
$out/share/pixmaps/higan-icon.svg
install -m 644 higan/target-higan/resource/higan.png \
$out/share/pixmaps/higan-icon.png
install -m 755 icarus/out/icarus -t "$out"/bin/
install -m 644 icarus/data/icarus.desktop -t $out/share/applications/
install -m 644 icarus/data/icarus.svg $out/share/pixmaps/icarus-icon.svg
install -m 644 icarus/data/icarus.png $out/share/pixmaps/icarus-icon.png
install -m 755 genius/out/genius -t "$out"/bin/
install -m 644 genius/data/genius.desktop -t $out/share/applications/
install -m 644 genius/data/genius.svg $out/share/pixmaps/genius-icon.svg
install -m 644 genius/data/genius.png $out/share/pixmaps/genius-icon.png
'') + ''
mkdir -p "$out"/share/higan
mkdir -p "$out"/share/higan "$out"/share/icarus
cp --recursive --no-dereference --preserve='links' --no-preserve='ownership' \
higan/System/ "$out"/share/higan/
cp --recursive --no-dereference --preserve='links' --no-preserve='ownership' \
higan/systems/* "$out"/share/higan/
icarus/Database icarus/Firmware $out/share/icarus/
'';

fixupPhase = let
dest = if !stdenv.isDarwin then "\\$HOME/.local/share/higan" else "\\$HOME/Library/Application Support/higan";
dest = if stdenv.isDarwin
then "\\$HOME/Library/Application Support/higan"
else "\\$HOME/higan";
in ''
# A dirty workaround, suggested by @cpages:
# we create a first-run script to populate
# the local $HOME with all the auxiliary
# stuff needed by higan at runtime
# $HOME with all the stuff needed at runtime
mkdir -p "$out"/bin
cat <<EOF > $out/bin/higan-init.sh
#!${runtimeShell}
cp --recursive --update $out/share/higan/*.sys "${dest}"/
cp --recursive --update $out/share/higan/System/ "${dest}"/
EOF
chmod +x $out/bin/higan-init.sh
'';

meta = {
description = "An open-source, cycle-accurate Nintendo multi-system emulator";
meta = with stdenv.lib; {
description = "An open-source, cycle-accurate multi-system emulator";
longDescription = ''
higan (formerly bsnes) is a multi-system game console emulator.
higan is a multi-system game console emulator. The purpose of higan is to
serve as hardware documentation in source code form: it is meant to be as
accurate and complete as possible, with code that is easy to read and
understand.
It currently supports the following systems:
- Nintendo's Famicom, Super Famicom (with subsystems:
Super Game Boy, BS-X Satellaview, Sufami Turbo);
Game Boy, Game Boy Color, Game Boy Advance;
- Sega's Master System, Game Gear, Mega Drive;
- NEC's PC Engine, SuperGrafx;
- Bandai's WonderSwan, WonderSwan Color.
- Famicom + Famicom Disk System
- Super Famicom + Super Game Boy
- Game Boy + Game Boy Color
- Game Boy Advance + Game Boy Player
- SG-1000 + SC-3000
- Master System + Game Gear
- Mega Drive + Mega CD
- PC Engine + SuperGrafx
- MSX + MSX2
- ColecoVision
- Neo Geo Pocket + Neo Geo Pocket Color
- WonderSwan + WonderSwan Color + SwanCrystal + Pocket Challenge V2
'';
homepage = "https://byuu.org/emulation/higan/";
homepage = "https://byuu.org/higan/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = with platforms; unix;
platforms = platforms.unix;
};
}
# TODO: Qt and GTK3+ support
82 changes: 55 additions & 27 deletions pkgs/tools/virtualization/linode-cli/default.nix
Original file line number Diff line number Diff line change
@@ -1,42 +1,70 @@
{ stdenv, fetchFromGitHub, perlPackages, makeWrapper}:
{ lib
, buildPythonApplication
, fetchFromGitHub
, fetchpatch
, fetchurl
, terminaltables
, colorclass
, requests
, pyyaml
, setuptools
}:

perlPackages.buildPerlPackage rec {
let

spec = fetchurl {
url = "https://developers.linode.com/api/docs/v4/openapi.yaml";
sha256 = "1l2fahdcmv7sp1qkwr5nv2vls8fypvlybwylqfzhyjmn7jqkw4hq";
};

in

buildPythonApplication rec {
pname = "linode-cli";
version = "1.4.7";
version = "2.14.1";

src = fetchFromGitHub {
owner = "linode";
repo = "cli";
rev = "v${version}";
sha256 = "1wiz067wgxi4z4rz4n9p7dlvx5z4hkl2nxpfvhikl6dri4m2nkkp";
repo = pname;
rev = version;
sha256 = "1hpdmbzs182iag471yvq3kwd1san04a58sczzbmw6vjv2kswn1c2";
};

buildInputs = [ makeWrapper ];
propagatedBuildInputs = with perlPackages; [
JSON
LWP
MozillaCA
TryTiny
WebServiceLinode
patches = [
# make enum34 depend on python version
( fetchpatch {
url = "https://github.com/linode/linode-cli/pull/184/commits/4cf55759c5da33fbc49b9ba664698875d67d4f76.patch";
sha256 = "04n9a6yh0abyyymvfzajhav6qxwvzjl2vs8jnqp3yqrma7kl0slj";
})
];

# Wrap perl scripts so they can find libraries
postInstall = ''
for n in "$out/bin"/*; do
wrapProgram "$n" --prefix PERL5LIB : "$PERL5LIB"
done
# remove need for git history
prePatch = ''
substituteInPlace setup.py \
--replace "version=get_version()," "version='${version}',"
'';

# Has no tests
doCheck = false;
propagatedBuildInputs = [
terminaltables
colorclass
requests
pyyaml
setuptools
];

# Has no "doc" or "devdoc" outputs
outputs = [ "out" ];
postConfigure = ''
python3 -m linodecli bake ${spec} --skip-config
cp data-3 linodecli/
'';

meta = with stdenv.lib; {
description = "Command-line interface to the Linode platform";
homepage = "https://github.com/linode/cli";
license = with licenses; [ artistic2 gpl2 ];
maintainers = with maintainers; [ nixy ];
# requires linode access token for unit tests, and running executable
doCheck = false;

meta = with lib; {
homepage = "https://github.com/linode/linode-cli";
description = "The Linode Command Line Interface";
license = licenses.bsd3;
maintainers = with maintainers; [ ryantm ];
};

}
4 changes: 2 additions & 2 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
@@ -22552,7 +22552,7 @@ in

worldengine-cli = python3Packages.worldengine;

wpsoffice = callPackage ../applications/office/wpsoffice {};
wpsoffice = libsForQt5.callPackage ../applications/office/wpsoffice {};

wrapFirefox = callPackage ../applications/networking/browsers/firefox/wrapper.nix { };

@@ -26299,7 +26299,7 @@ in

xib2nib = callPackage ../development/tools/xib2nib {};

linode-cli = callPackage ../tools/virtualization/linode-cli { };
linode-cli = python3Packages.callPackage ../tools/virtualization/linode-cli {};

hss = callPackage ../tools/networking/hss {};