blob: 3c267e612a685f1f635ac9eb774ea7987876b251 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
{ stdenv, fetchurl
, bundlerEnv, ruby
, alsaUtils, libnotify, which, wrapGAppsHook, gtk2
}:
stdenv.mkDerivation rec {
name = "mikutter-${version}";
version = "3.5.13";
src = fetchurl {
url = "https://mikutter.hachune.net/bin/mikutter.${version}.tar.gz";
sha256 = "2e01cd6cfe0caad663a381e5263f6d8030f0fb7cd8d4f858d320166516c7c320";
};
env = bundlerEnv {
name = "mikutter-${version}-gems";
gemdir = ./.;
inherit ruby;
};
buildInputs = [ alsaUtils libnotify which gtk2 ruby ];
nativeBuildInputs = [ wrapGAppsHook ];
postUnpack = ''
rm -rf $sourceRoot/vendor
'';
installPhase = ''
install -v -D -m644 README $out/share/doc/mikutter/README
install -v -D -m644 LICENSE $out/share/doc/mikutter/LICENSE
rm -v README LICENSE
cp -rv . $out
mkdir $out/bin/
# hack wrapGAppsHook wants a file not a symlink
mv $out/mikutter.rb $out/bin/mikutter
gappsWrapperArgs+=(
--prefix PATH : "${ruby}/bin:${alsaUtils}/bin:${libnotify}/bin"
--prefix GEM_HOME : "${env}/${env.ruby.gemPath}"
--set DISABLE_BUNDLER_SETUP 1
)
mkdir -p $out/share/mikutter $out/share/applications
ln -sv $out/core/skin $out/share/mikutter/skin
substituteAll ${./mikutter.desktop} $out/share/applications/mikutter.desktop
'';
postFixup = ''
mv $out/bin/.mikutter-wrapped $out/mikutter.rb
substituteInPlace $out/bin/mikutter \
--replace "$out/bin/.mikutter-wrapped" "$out/mikutter.rb"
'';
meta = with stdenv.lib; {
description = "An extensible Twitter client";
homepage = https://mikutter.hachune.net;
maintainers = with maintainers; [ midchildan ];
platforms = ruby.meta.platforms;
license = licenses.mit;
};
}
|