tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
kbd: split keymaps into kbdKeymaps
Nikolay Amiantov
9 years ago
c89843b6
6c11d9dd
+39
-18
4 changed files
expand all
collapse all
unified
split
nixos
modules
config
i18n.nix
pkgs
os-specific
linux
kbd
default.nix
keymaps.nix
top-level
all-packages.nix
+1
-1
nixos/modules/config/i18n.nix
···
43
43
44
44
consolePackages = mkOption {
45
45
type = types.listOf types.package;
46
46
-
default = [];
46
46
+
default = with pkgs.kbdKeymaps; [ dvp neo ];
47
47
description = ''
48
48
List of additional packages that provide console fonts, keymaps and
49
49
other resources.
+1
-17
pkgs/os-specific/linux/kbd/default.nix
···
9
9
sha256 = "0ppv953gn2zylcagr4z6zg5y2x93dxrml29plypg6xgbq3hrv2bs";
10
10
};
11
11
12
12
-
/* Get the dvorak programmer keymap (present in X but not in kbd) */
13
13
-
dvpSrc = fetchurl {
14
14
-
url = "http://kaufmann.no/downloads/linux/dvp-1_2_1.map.gz";
15
15
-
sha256 = "0e859211cfe16a18a3b9cbf2ca3e280a23a79b4e40b60d8d01d0fde7336b6d50";
16
16
-
};
17
17
-
18
18
-
neoSrc = fetchurl {
19
19
-
name = "neo.map";
20
20
-
url = "https://svn.neo-layout.org/linux/console/neo.map?r=2455";
21
21
-
sha256 = "1wlgp09wq84hml60hi4ls6d4zna7vhycyg40iipyh1279i91hsx7";
22
22
-
};
23
23
-
24
12
configureFlags = [
25
13
"--enable-optional-progs"
26
14
"--enable-libkeymap"
···
31
19
32
20
postPatch =
33
21
''
34
34
-
mkdir -p data/keymaps/i386/neo
35
35
-
cat "$neoSrc" > data/keymaps/i386/neo/neo.map
22
22
+
# Add Neo keymap subdirectory
36
23
sed -i -e 's,^KEYMAPSUBDIRS *= *,&i386/neo ,' data/Makefile.am
37
37
-
38
38
-
# Add the dvp keyboard in the dvorak folder
39
39
-
${gzip}/bin/gzip -c -d ${dvpSrc} > data/keymaps/i386/dvorak/dvp.map
40
24
41
25
# Fix the path to gzip/bzip2.
42
26
substituteInPlace src/libkeymap/findfile.c \
+35
pkgs/os-specific/linux/kbd/keymaps.nix
···
1
1
+
{ stdenv, lib, fetchurl, gzip }:
2
2
+
3
3
+
{
4
4
+
dvp = stdenv.mkDerivation rec {
5
5
+
name = "dvp-${version}";
6
6
+
version = "1.2.1";
7
7
+
8
8
+
src = fetchurl {
9
9
+
url = "http://kaufmann.no/downloads/linux/dvp-${lib.replaceStrings ["."] ["_"] version}.map.gz";
10
10
+
sha256 = "0e859211cfe16a18a3b9cbf2ca3e280a23a79b4e40b60d8d01d0fde7336b6d50";
11
11
+
};
12
12
+
13
13
+
nativeBuildInputs = [ gzip ];
14
14
+
15
15
+
buildCommand = ''
16
16
+
mkdir -p $out/share/keymaps/i386/dvorak
17
17
+
gzip -c -d $src > $out/share/keymaps/i386/dvorak/dvp.map
18
18
+
'';
19
19
+
};
20
20
+
21
21
+
neo = stdenv.mkDerivation rec {
22
22
+
name = "neo-${version}";
23
23
+
version = "2476";
24
24
+
25
25
+
src = fetchurl {
26
26
+
name = "neo.map";
27
27
+
url = "https://svn.neo-layout.org/linux/console/neo.map?r=${version}";
28
28
+
sha256 = "19mfrd31vzpsjiwc7pshxm0b0sz5dd17xrz6k079cy4im1vf0r4g";
29
29
+
};
30
30
+
31
31
+
buildCommand = ''
32
32
+
install -D $src $out/share/keymaps/i386/neo/neo.map
33
33
+
'';
34
34
+
};
35
35
+
}
+2
pkgs/top-level/all-packages.nix
···
10723
10723
10724
10724
kbd = callPackage ../os-specific/linux/kbd { };
10725
10725
10726
10726
+
kbdKeymaps = callPackage ../os-specific/linux/kbd/keymaps.nix { };
10727
10727
+
10726
10728
kbdlight = callPackage ../os-specific/linux/kbdlight { };
10727
10729
10728
10730
kmscon = callPackage ../os-specific/linux/kmscon { };