Skip to content
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
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: ca9ce9ace440
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 3e617930e58f
Choose a head ref

Commits on Dec 2, 2016

  1. qt5: more reproducible builds

    Avoid mktemp -d in sources, where pathnames can affect result.
    avnik committed Dec 2, 2016
    Copy the full SHA
    f0974e1 View commit details
  2. mkvtoolnix: 9.5.0 -> 9.6.0

    romildo committed Dec 2, 2016
    Copy the full SHA
    ae1fa72 View commit details

Commits on Dec 3, 2016

  1. Copy the full SHA
    3170266 View commit details
  2. Verified

    This commit was signed with the committer’s verified signature. The key has expired.
    grahamc Graham Christensen
    Copy the full SHA
    d5cb4d8 View commit details
  3. python/pillow: Only disable failing tests

    There's no reason to disable ALL tests just because only one particular
    test module is failing.
    
    Tested on i686-linux and x86_64-linux against these Python versions:
    
      Python 2.6: The interpreter itself doesn't build
      Python 2.7: Successful for both architectures
      Python 3.3: Successful for both architectures
      Python 3.4: Successful for both architectures
      Python 3.5: Successful for both architectures
      Python 3.6: One of the dependencies of pillow doesn't build (pytest)
    
    Tests for PyPy still fail, which is why the doCheck attribute is only
    set to false if we're building for PyPy.
    
    Signed-off-by: aszlig <aszlig@redmoonstudios.org>
    Cc: @desiderius, @goibhniu, @prikhi
    aszlig committed Dec 3, 2016

    Verified

    This commit was signed with the committer’s verified signature.
    Copy the full SHA
    6343fef View commit details
  4. vimiv: init at 0.7.2

    Packaging itself is pretty much straightforward, the tests however
    revealed a few issues, which I have fixed with a small patch that has
    been upstreamed at karlch/vimiv#32.
    
    The other sed-based patches in postPatch are mostly NixOS-specific.
    
    Signed-off-by: aszlig <aszlig@redmoonstudios.org>
    aszlig committed Dec 3, 2016

    Verified

    This commit was signed with the committer’s verified signature.
    Copy the full SHA
    a76f524 View commit details
  5. beets: Set Python version via top-level attribute

    This largely reverts commit 5993127.
    
    The main reason is that it breaks the plugins, because the mentioned
    commit didn't change the attributes for the plugins as well.
    
    But instead of just fixing the attributes when we import the plugin
    packages, let's just override pythonPackages in all-packages.nix.
    
    Right now, Beets is in transition to Python 3, so we don't need to wait
    that long until we can remove the dependency on Python 2:
    
    https://github.com/beetbox/beets/releases/tag/v1.4.1
    
    Once Python 3 support is no longer beta, we can just change this by
    changing one line only instead of several.
    
    Tested this by building beets with both external plugins.
    
    Signed-off-by: aszlig <aszlig@redmoonstudios.org>
    Cc: @FRidh
    aszlig committed Dec 3, 2016

    Verified

    This commit was signed with the committer’s verified signature.
    Copy the full SHA
    1f9cbcd View commit details
  6. tor: 0.2.8.9 -> 0.2.8.10

    Per upstream, this contains primarily stability & performance fixes.
    Notably, the relase fixes a bug that would sometimes make clients
    unusable after leaving standby mode, as well as plugging a memory leak.
    joachifm committed Dec 3, 2016

    Verified

    This commit was signed with the committer’s verified signature. The key has expired.
    joachifm Joachim F.
    Copy the full SHA
    d06bf82 View commit details
  7. Merge pull request #20873 from romildo/upd.mkvtoolnix

    mkvtoolnix: 9.5.0 -> 9.6.0
    joachifm authored Dec 3, 2016

    Unverified

    This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
    Copy the full SHA
    b2b6690 View commit details
  8. Merge pull request #20875 from romildo/upd.adapta

    adapta-gtk-theme: 3.21.3.68 -> 3.89.1.66
    joachifm authored Dec 3, 2016

    Unverified

    This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
    Copy the full SHA
    e1cd73f View commit details
  9. Copy the full SHA
    d8e2eba View commit details
  10. neovim-qt: 0.2.3 -> 0.2.4

    igsha committed Dec 3, 2016
    Copy the full SHA
    b5286f3 View commit details
  11. Merge pull request #20883 from igsha/nvim-qt

    neovim-qt: 0.2.3 -> 0.2.4
    Mic92 authored Dec 3, 2016
    Copy the full SHA
    4ce0140 View commit details
  12. Merge pull request #20876 from grahamc/ecryptfs

    ecryptfs test: use TTY output to stabilize test
    grahamc authored Dec 3, 2016
    Copy the full SHA
    d41e141 View commit details
  13. 4
    Copy the full SHA
    4162623 View commit details
  14. Merge pull request #20856 from avnik/qt5-mktemp

    qt5: more reproducible builds
    ttuegel authored Dec 3, 2016

    Unverified

    This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
    Copy the full SHA
    a6c75a7 View commit details
  15. Unverified

    The email in this signature doesn’t match the committer email.
    Copy the full SHA
    851b594 View commit details
  16. Unverified

    The email in this signature doesn’t match the committer email.
    Copy the full SHA
    53a694e View commit details
  17. Unverified

    The email in this signature doesn’t match the committer email.
    Copy the full SHA
    2c4995c View commit details
  18. Unverified

    The email in this signature doesn’t match the committer email.
    Copy the full SHA
    7b05efb View commit details
  19. Unverified

    The email in this signature doesn’t match the committer email.
    Copy the full SHA
    6a8a0b1 View commit details
  20. Merge branch 'staging'

    grahamc committed Dec 3, 2016

    Verified

    This commit was signed with the committer’s verified signature. The key has expired.
    grahamc Graham Christensen
    Copy the full SHA
    3e61793 View commit details
Showing with 299 additions and 580 deletions.
  1. +12 −9 nixos/tests/ecryptfs.nix
  2. +2 −2 pkgs/applications/editors/neovim/qt.nix
  3. +74 −0 pkgs/applications/graphics/vimiv/default.nix
  4. +128 −0 pkgs/applications/graphics/vimiv/fixes.patch
  5. +2 −2 pkgs/applications/video/mkvtoolnix/default.nix
  6. +0 −3 pkgs/development/haskell-modules/configuration-common.nix
  7. +10 −3 pkgs/development/libraries/qt-5/5.5/default.nix
  8. +1 −1 pkgs/development/libraries/qt-5/5.5/qtbase/default.nix
  9. +10 −3 pkgs/development/libraries/qt-5/5.6/default.nix
  10. +0 −36 pkgs/development/libraries/qt-5/5.6/make-qt-wrapper.sh
  11. +0 −42 pkgs/development/libraries/qt-5/5.6/qmake-hook.sh
  12. +1 −1 pkgs/development/libraries/qt-5/5.6/qtbase/default.nix
  13. +0 −166 pkgs/development/libraries/qt-5/5.6/qtbase/setup-hook.sh
  14. +0 −2 pkgs/development/libraries/qt-5/5.6/setup-hook.sh
  15. +3 −3 pkgs/development/libraries/qt-5/5.7/default.nix
  16. +0 −36 pkgs/development/libraries/qt-5/5.7/make-qt-wrapper.sh
  17. +0 −42 pkgs/development/libraries/qt-5/5.7/qmake-hook.sh
  18. +1 −1 pkgs/development/libraries/qt-5/5.7/qtbase/default.nix
  19. +0 −166 pkgs/development/libraries/qt-5/5.7/qtbase/setup-hook.sh
  20. +0 −2 pkgs/development/libraries/qt-5/5.7/setup-hook.sh
  21. 0 pkgs/development/libraries/qt-5/{5.5 → }/make-qt-wrapper.sh
  22. 0 pkgs/development/libraries/qt-5/{5.5 → }/qmake-hook.sh
  23. +1 −1 pkgs/development/libraries/qt-5/{5.5/qtbase/setup-hook.sh → qtbase-setup-hook.sh}
  24. 0 pkgs/development/libraries/qt-5/{5.5/setup-hook.sh → qtsubmodule-setup-hook.sh}
  25. +0 −15 pkgs/development/python-modules/cython_test.patch
  26. +8 −6 pkgs/misc/themes/adapta/default.nix
  27. +27 −27 pkgs/tools/audio/beets/default.nix
  28. +2 −2 pkgs/tools/security/tor/default.nix
  29. +7 −1 pkgs/top-level/all-packages.nix
  30. +10 −8 pkgs/top-level/python-packages.nix
21 changes: 12 additions & 9 deletions nixos/tests/ecryptfs.nix
Original file line number Diff line number Diff line change
@@ -21,13 +21,13 @@ import ./make-test.nix ({ pkgs, ... }:
$machine->log("ecryptfs-migrate-home said: $out");
# Log alice in (ecryptfs passwhrase is wrapped during first login)
$machine->sleep(2); # urgh: wait for username prompt
$machine->waitUntilTTYMatches(1, "login: ");
$machine->sendChars("alice\n");
$machine->sleep(1);
$machine->waitUntilTTYMatches(1, "Password: ");
$machine->sendChars("foobar\n");
$machine->sleep(2);
$machine->waitUntilTTYMatches(1, "alice\@machine");
$machine->sendChars("logout\n");
$machine->sleep(2);
$machine->waitUntilTTYMatches(1, "login: ");
# Why do I need to do this??
$machine->succeed("su alice -c ecryptfs-umount-private || true");
@@ -39,18 +39,19 @@ import ./make-test.nix ({ pkgs, ... }:
$machine->log("keyctl unlink said: " . $out);
# Log alice again
$machine->waitUntilTTYMatches(1, "login: ");
$machine->sendChars("alice\n");
$machine->sleep(1);
$machine->waitUntilTTYMatches(1, "Password: ");
$machine->sendChars("foobar\n");
$machine->sleep(2);
$machine->waitUntilTTYMatches(1, "alice\@machine");
# Create some files in encrypted home
$machine->succeed("su alice -c 'touch ~alice/a'");
$machine->succeed("su alice -c 'echo c > ~alice/b'");
# Logout
$machine->sendChars("logout\n");
$machine->sleep(2);
$machine->waitUntilTTYMatches(1, "login: ");
# Why do I need to do this??
$machine->succeed("su alice -c ecryptfs-umount-private || true");
@@ -62,10 +63,11 @@ import ./make-test.nix ({ pkgs, ... }:
$machine->succeed("su alice -c 'test \! -f ~alice/b'");
# Log alice once more
$machine->waitUntilTTYMatches(1, "login: ");
$machine->sendChars("alice\n");
$machine->sleep(1);
$machine->waitUntilTTYMatches(1, "Password: ");
$machine->sendChars("foobar\n");
$machine->sleep(2);
$machine->waitUntilTTYMatches(1, "alice\@machine");
# Check that the files are there
$machine->sleep(1);
@@ -77,5 +79,6 @@ import ./make-test.nix ({ pkgs, ... }:
$machine->succeed("su alice -c 'ls -lh ~alice/'");
$machine->sendChars("logout\n");
$machine->waitUntilTTYMatches(1, "login: ");
'';
})
4 changes: 2 additions & 2 deletions pkgs/applications/editors/neovim/qt.nix
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@
}:

let # not very usable ATM
version = "0.2.3";
version = "0.2.4";
in
stdenv.mkDerivation {
name = "neovim-qt-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
owner = "equalsraf";
repo = "neovim-qt";
rev = "v${version}";
sha256 = "0ichqph7nfw3934jf0sp81bqd376xna3f899cc2xg88alb4f16dv";
sha256 = "0yf9wwkl0lbbj3vyf8hxnlsk7jhk5ggivszyqxply69dbar9ww59";
};

# It tries to download libmsgpack; let's use ours.
74 changes: 74 additions & 0 deletions pkgs/applications/graphics/vimiv/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
{ lib, python3Packages, fetchFromGitHub, imagemagick, librsvg, gtk3, jhead
, hicolor_icon_theme, defaultIconTheme

# Test requirements
, dbus, xvfb_run, xdotool
}:

python3Packages.buildPythonApplication rec {
name = "vimiv";
version = "0.7.2";

src = fetchFromGitHub {
owner = "karlch";
repo = "vimiv";
rev = "v${version}";
sha256 = "1g97ms84xk4ci4crq9wdc3744jnrqkq2qz9sg69lhm9sr5f68bw4";
};

testimages = fetchFromGitHub {
owner = "karlch";
repo = "vimiv";
rev = "6f4d1372b27f2065c56eafdb521d230d9bb8f4e2";
sha256 = "0a3aybzpms0381dz9japhm4c7j5klhmw91prcac6zaww6x34nmxb";
};

patches = [ ./fixes.patch ];

postPatch = ''
patchShebangs scripts/install_icons.sh
sed -i -e 's,/usr,,g' -e '/setup\.py/d' Makefile scripts/install_icons.sh
sed -i \
-e 's,/etc/vimiv/\(vimivrc\|keys\.conf\),'"$out"'&,g' \
man/* vimiv/parser.py
sed -i \
-e 's!"mogrify"!"${imagemagick}/bin/mogrify"!g' \
-e '/cmd *=/s!"jhead"!"${jhead}/bin/jhead"!g' \
vimiv/imageactions.py
'';

checkInputs = [ python3Packages.nose dbus.daemon xvfb_run xdotool ];
buildInputs = [ hicolor_icon_theme defaultIconTheme librsvg ];
propagatedBuildInputs = with python3Packages; [ pillow pygobject3 gtk3 ];

makeWrapperArgs = [
"--prefix GI_TYPELIB_PATH : \"$GI_TYPELIB_PATH\""
"--suffix XDG_DATA_DIRS : \"$XDG_ICON_DIRS:$out/share\""
"--set GDK_PIXBUF_MODULE_FILE \"$GDK_PIXBUF_MODULE_FILE\""
];

postCheck = ''
# Some tests assume that the directory only contains one vimiv directory
rm -rf vimiv.egg-info vimiv.desktop
# Re-use the wrapper args from the main program
makeWrapper "$SHELL" run-tests $makeWrapperArgs
cp -Rd --no-preserve=mode "$testimages/testimages" vimiv/testimages
HOME="$(mktemp -d)" PATH="$out/bin:$PATH" \
xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
--config-file=${dbus.daemon}/share/dbus-1/session.conf \
./run-tests -c 'python tests/main_test.py && nosetests -vx'
'';

postInstall = "make DESTDIR=\"$out\" install";

meta = {
homepage = "https://github.com/karlch/vimiv";
description = "An image viewer with Vim-like keybindings";
license = lib.licenses.mit;
platforms = lib.platforms.linux;
};
}
128 changes: 128 additions & 0 deletions pkgs/applications/graphics/vimiv/fixes.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
Patch submitted upstream at https://github.com/karlch/vimiv/pull/32

diff --git a/tests/main_test.py b/tests/main_test.py
index a1870e7..2edc86d 100644
--- a/tests/main_test.py
+++ b/tests/main_test.py
@@ -15,7 +15,7 @@ class MainTest(TestCase):

def test_main_until_quit(self):
"""Run through vimiv main once."""
- v_main.main(True)
+ v_main.main([], True)


if __name__ == '__main__':
diff --git a/vimiv/helpers.py b/vimiv/helpers.py
index 22f0115..bfaf016 100644
--- a/vimiv/helpers.py
+++ b/vimiv/helpers.py
@@ -3,7 +3,6 @@
"""Wrappers around standard library functions used in vimiv."""

import os
-from subprocess import Popen, PIPE
from gi import require_version
require_version('Gtk', '3.0')
from gi.repository import Gtk
@@ -20,17 +19,17 @@ scrolltypes["K"] = (Gtk.ScrollType.START, False)
scrolltypes["L"] = (Gtk.ScrollType.END, True)

# A list of all external commands
-external_commands = []
-try:
- p = Popen('echo $PATH | tr \':\' \'\n\' | xargs -n 1 ls -1',
- stdout=PIPE, stderr=PIPE, shell=True)
- out, err = p.communicate()
- out = out.decode('utf-8').split()
- for cmd in sorted(list(set(out))):
- external_commands.append("!" + cmd)
-except:
- external_commands = []
-external_commands = tuple(external_commands)
+pathenv = os.environ.get('PATH')
+if pathenv is not None:
+ executables = set()
+ for path in pathenv.split(':'):
+ try:
+ executables |= set(["!" + e for e in os.listdir(path)])
+ except OSError:
+ continue
+ external_commands = tuple(sorted(list(executables)))
+else:
+ external_commands = ()


def listdir_wrapper(path, show_hidden=False):
diff --git a/vimiv/imageactions.py b/vimiv/imageactions.py
index d92eb73..b9bc986 100644
--- a/vimiv/imageactions.py
+++ b/vimiv/imageactions.py
@@ -157,8 +157,8 @@ class Thumbnails:
# Correct name
thumb_ext = ".thumbnail_%dx%d" % (self.thumbsize[0],
self.thumbsize[1])
- outfile_ext = infile.split(".")[0] + thumb_ext + ".png"
- outfile_base = os.path.basename(outfile_ext)
+ infile_base = os.path.basename(infile)
+ outfile_base = infile_base.split(".")[0] + thumb_ext + ".png"
outfile = os.path.join(self.directory, outfile_base)
# Only if they aren't cached already
if outfile_base not in self.thumbnails:
diff --git a/vimiv/main.py b/vimiv/main.py
index a0e38cf..39f7407 100644
--- a/vimiv/main.py
+++ b/vimiv/main.py
@@ -27,7 +27,7 @@ from vimiv.mark import Mark
from vimiv.information import Information


-def main(running_tests=False):
+def main(arguments, running_tests=False):
"""Starting point for vimiv.

Args:
@@ -36,7 +36,7 @@ def main(running_tests=False):
parser = get_args()
parse_dirs()
settings = parse_config()
- settings = parse_args(parser, settings)
+ settings = parse_args(parser, settings, arguments)

args = settings["GENERAL"]["paths"]

diff --git a/vimiv/parser.py b/vimiv/parser.py
index 874a538..9d5afce 100644
--- a/vimiv/parser.py
+++ b/vimiv/parser.py
@@ -56,7 +56,7 @@ def get_args():
return parser


-def parse_args(parser, settings, arguments=None):
+def parse_args(parser, settings, arguments):
"""Parse the arguments and return the modified settings.

Args:
@@ -66,10 +66,7 @@ def parse_args(parser, settings, arguments=None):

Return: Modified settings after parsing the arguments.
"""
- if arguments:
- args = parser.parse_args(arguments)
- else:
- args = parser.parse_args()
+ args = parser.parse_args(arguments)
if args.show_version:
information = Information()
print(information.get_version())
diff --git a/vimiv/vimiv b/vimiv/vimiv
index 5497e08..57f34f1 100755
--- a/vimiv/vimiv
+++ b/vimiv/vimiv
@@ -5,4 +5,4 @@ import sys
import vimiv

if __name__ == '__main__':
- sys.exit(vimiv.main.main())
+ sys.exit(vimiv.main.main(sys.argv))
4 changes: 2 additions & 2 deletions pkgs/applications/video/mkvtoolnix/default.nix
Original file line number Diff line number Diff line change
@@ -10,13 +10,13 @@ with stdenv.lib;

stdenv.mkDerivation rec {
name = "mkvtoolnix-${version}";
version = "9.5.0";
version = "9.6.0";

src = fetchFromGitHub {
owner = "mbunkus";
repo = "mkvtoolnix";
rev = "release-${version}";
sha256 = "1v6rqlb5srhwzad45b50pvfbi1c9n719ihi54hzbkzklj7h4s70h";
sha256 = "14v6iclzkqxibzcdxr65bb5frmnsjyyly0d3lwv1gg7g1mkcw3jd";
};

nativeBuildInputs = [ pkgconfig autoconf automake gettext ruby ];
3 changes: 0 additions & 3 deletions pkgs/development/haskell-modules/configuration-common.nix
Original file line number Diff line number Diff line change
@@ -507,9 +507,6 @@ self: super: {
# https://github.com/vincenthz/hs-crypto-pubkey/issues/20
crypto-pubkey = dontCheck super.crypto-pubkey;

# https://github.com/Gabriel439/Haskell-Turtle-Library/issues/1
turtle = dontCheck super.turtle;

# https://github.com/Philonous/xml-picklers/issues/5
xml-picklers = dontCheck super.xml-picklers;

13 changes: 10 additions & 3 deletions pkgs/development/libraries/qt-5/5.5/default.nix
Original file line number Diff line number Diff line change
@@ -49,7 +49,7 @@ let
outputs = args.outputs or [ "out" "dev" ];
setOutputFlags = args.setOutputFlags or false;

setupHook = ./setup-hook.sh;
setupHook = ../qtsubmodule-setup-hook.sh;

enableParallelBuilding = args.enableParallelBuilding or true;

@@ -112,8 +112,15 @@ let
qtxmlpatterns
];

makeQtWrapper = makeSetupHook { deps = [ makeWrapper ]; } ./make-qt-wrapper.sh;
qmakeHook = makeSetupHook { substitutions = { qt_dev = qtbase.dev; lndir = pkgs.xorg.lndir; }; } ./qmake-hook.sh;
makeQtWrapper =
makeSetupHook
{ deps = [ makeWrapper ]; }
../make-qt-wrapper.sh;

qmakeHook =
makeSetupHook
{ deps = [ self.qtbase.dev ]; }
../qmake-hook.sh;

};

2 changes: 1 addition & 1 deletion pkgs/development/libraries/qt-5/5.5/qtbase/default.nix
Original file line number Diff line number Diff line change
@@ -272,7 +272,7 @@ stdenv.mkDerivation {
'';

inherit lndir;
setupHook = ./setup-hook.sh;
setupHook = ../../qtbase-setup-hook.sh;

enableParallelBuilding = true;

13 changes: 10 additions & 3 deletions pkgs/development/libraries/qt-5/5.6/default.nix
Original file line number Diff line number Diff line change
@@ -50,7 +50,7 @@ let
outputs = args.outputs or [ "out" "dev" ];
setOutputFlags = args.setOutputFlags or false;

setupHook = ./setup-hook.sh;
setupHook = ../qtsubmodule-setup-hook.sh;

enableParallelBuilding = args.enableParallelBuilding or true;

@@ -109,8 +109,15 @@ let
qtwebchannel qtwebengine qtwebsockets qtx11extras qtxmlpatterns
];

makeQtWrapper = makeSetupHook { deps = [ makeWrapper ]; } ./make-qt-wrapper.sh;
qmakeHook = makeSetupHook { deps = [ self.qtbase.dev ]; } ./qmake-hook.sh;
makeQtWrapper =
makeSetupHook
{ deps = [ makeWrapper ]; }
../make-qt-wrapper.sh;

qmakeHook =
makeSetupHook
{ deps = [ self.qtbase.dev ]; }
../qmake-hook.sh;

};

Loading