mirror of
https://github.com/kmein/niveum
synced 2026-03-16 10:11:08 +01:00
feat(packages): no handpicked haskell packages, stardict
This commit is contained in:
@@ -224,7 +224,8 @@ in {
|
||||
./nix.nix
|
||||
./newsboat.nix
|
||||
./flameshot-once.nix
|
||||
./packages
|
||||
./packages.nix
|
||||
./stardict.nix
|
||||
./power-action.nix
|
||||
./printing.nix
|
||||
./openweathermap.nix
|
||||
|
||||
@@ -3,9 +3,33 @@ let
|
||||
hc = pkgs.callPackage <stockholm/tv/5pkgs/simple/hc.nix> {};
|
||||
worldradio = pkgs.callPackage <niveum/packages/worldradio.nix> {};
|
||||
menstruation = pkgs.callPackage <menstruation-backend> {};
|
||||
pandoc-doc = pkgs.callPackage <niveum/packages/man/pandoc.nix> {};
|
||||
|
||||
nixpkgs-unstable = import <nixpkgs-unstable> { config.allowUnfree = true; };
|
||||
|
||||
zoteroStyle = { name, sha256 }: {
|
||||
name = "${name}.csl";
|
||||
path = pkgs.fetchurl {
|
||||
url = "https://www.zotero.org/styles/${name}";
|
||||
inherit sha256;
|
||||
};
|
||||
};
|
||||
cslDirectory = pkgs.linkFarm "citation-styles" [
|
||||
(zoteroStyle {
|
||||
name = "chicago-author-date-de";
|
||||
sha256 = "0fz0xn46rkciblr34a7x2v60j0lbq9l3fmzi43iphph27m0czn6s";
|
||||
})
|
||||
(zoteroStyle {
|
||||
name = "din-1505-2";
|
||||
sha256 = "1pvy1b7qm13mnph7z365rrz1j082bl2y8ih73rhzd0zd6dz1jyjq";
|
||||
})
|
||||
(zoteroStyle {
|
||||
name = "apa";
|
||||
sha256 = "1878vxp0y0h05yzaghnd51n981623mxskw3lsdyzmffqhihvv111";
|
||||
})
|
||||
];
|
||||
|
||||
|
||||
astrolog = nixpkgs-unstable.astrolog.overrideAttrs (old: old // {
|
||||
installPhase = ''
|
||||
${old.installPhase}
|
||||
@@ -33,34 +57,10 @@ let
|
||||
}) {};
|
||||
|
||||
in {
|
||||
imports = [
|
||||
./writing.nix
|
||||
./python.nix
|
||||
./haskell
|
||||
{
|
||||
environment.systemPackages = let
|
||||
# nightly = pkgs.rustChannelOf {
|
||||
# date = "2019-12-27";
|
||||
# channel = "nightly";
|
||||
# };
|
||||
in with pkgs; [
|
||||
htmlTidy
|
||||
nodePackages.csslint
|
||||
nodePackages.jsonlint
|
||||
nodePackages.prettier
|
||||
nodePackages.typescript
|
||||
nodePackages.yarn
|
||||
nodejs
|
||||
nodePackages.javascript-typescript-langserver
|
||||
|
||||
tokei # count lines of code
|
||||
gnumake
|
||||
binutils # for strip, ld, ...
|
||||
# nightly.rust
|
||||
shellcheck
|
||||
];
|
||||
}
|
||||
];
|
||||
home-manager.users.me.home.file = {
|
||||
".csl".source = cslDirectory;
|
||||
".local/share/pandoc/csl".source = cslDirectory; # as of pandoc 2.11, it includes citeproc
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
# INTERNET
|
||||
@@ -70,9 +70,7 @@ in {
|
||||
w3m
|
||||
wget
|
||||
whois
|
||||
ix
|
||||
dnsutils
|
||||
# mtr # my traceroute
|
||||
# FILE MANAGERS
|
||||
ranger
|
||||
pcmanfm
|
||||
@@ -80,7 +78,6 @@ in {
|
||||
ffmpeg
|
||||
imagemagick
|
||||
exiftool
|
||||
scrot
|
||||
# ARCHIVE TOOLS
|
||||
unzip
|
||||
unrar
|
||||
@@ -106,14 +103,12 @@ in {
|
||||
xmlstarlet # xml toolkit
|
||||
manpages
|
||||
posix_man_pages
|
||||
# moreutils # for parallel, sponge, combine
|
||||
tree
|
||||
fuse_exfat # to mount windows drives
|
||||
parallel # for parallel, since moreutils shadows task spooler
|
||||
ripgrep # better grep
|
||||
rlwrap
|
||||
progress # display progress bars for pipes
|
||||
up # universal plumber (piping tool)
|
||||
# HARDWARE TOOLS
|
||||
usbutils # for lsusb
|
||||
pciutils # for lspci
|
||||
@@ -126,7 +121,7 @@ in {
|
||||
audacity
|
||||
calibre
|
||||
inkscape
|
||||
astrolog # astrolog
|
||||
astrolog
|
||||
anki # flashcards
|
||||
nixpkgs-unstable.zoom-us # video conferencing
|
||||
pdfgrep # search in pdf
|
||||
@@ -158,11 +153,8 @@ in {
|
||||
recht
|
||||
scripts.vimv
|
||||
scripts.swallow # window swallowing
|
||||
scripts.genius
|
||||
scripts.instaget
|
||||
scripts.literature-quote
|
||||
scripts.nav # json navigation
|
||||
scripts.n
|
||||
scripts.notetags
|
||||
scripts.booksplit
|
||||
scripts.dmenurandr
|
||||
@@ -192,7 +184,6 @@ in {
|
||||
nixfmt
|
||||
par
|
||||
qrencode
|
||||
wtf
|
||||
|
||||
menstruation
|
||||
|
||||
@@ -222,6 +213,53 @@ in {
|
||||
irc-announce
|
||||
git-preview
|
||||
ircaids
|
||||
|
||||
(python3.withPackages (py: [
|
||||
py.black
|
||||
# py.python-language-server
|
||||
# py.pyls-mypy
|
||||
# py.pyls-black
|
||||
# py.pyls-isort
|
||||
py.flake8
|
||||
py.pygments
|
||||
py.schema
|
||||
]))
|
||||
python3Packages.poetry
|
||||
|
||||
htmlTidy
|
||||
nodePackages.csslint
|
||||
nodePackages.jsonlint
|
||||
nodePackages.prettier
|
||||
nodePackages.typescript
|
||||
nodePackages.yarn
|
||||
nodejs
|
||||
nodePackages.javascript-typescript-langserver
|
||||
texlive.combined.scheme-full
|
||||
latexrun
|
||||
(aspellWithDicts (dict: [ dict.de dict.en dict.en-computers ]))
|
||||
# haskellPackages.pandoc-citeproc
|
||||
scripts.text2pdf
|
||||
lowdown
|
||||
glow # markdown to term
|
||||
libreoffice
|
||||
# gnumeric
|
||||
dia
|
||||
pandoc
|
||||
pandoc-doc
|
||||
# proselint
|
||||
asciidoctor
|
||||
wordnet
|
||||
tokei # count lines of code
|
||||
gnumake
|
||||
binutils # for strip, ld, ...
|
||||
# nightly.rust
|
||||
shellcheck
|
||||
];
|
||||
|
||||
|
||||
home-manager.users.me.xdg.configFile."pycodestyle".text = ''
|
||||
[pycodestyle]
|
||||
max-line-length = 110
|
||||
'';
|
||||
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
{ config, pkgs, ... }: {
|
||||
home-manager.users.me.home.file = {
|
||||
".ghc/ghci.conf".text = ''
|
||||
:set editor vim
|
||||
:def hoogle \s -> return $ ":!${pkgs.haskellPackages.hoogle}/bin/hoogle search --color -l --count=15 \"" ++ s ++ "\""
|
||||
:def doc \s -> return $ ":!${pkgs.haskellPackages.hoogle}/bin/hoogle search --color -l --info \"" ++ s ++ "\""
|
||||
:set prompt "\o033[1m%s\o033[1;34m λ\o033[0m "
|
||||
:set -Wall
|
||||
:set -XOverloadedStrings
|
||||
'';
|
||||
# :def unpl \x -> return $ ":!${pkgs.haskellPackages.pointful}/bin/pointful \"" ++ x ++ "\""
|
||||
# :def pl \x -> return $ ":!${pkgs.haskellPackages.pointfree}/bin/pointfree -v \"" ++ x ++ "\""
|
||||
".stack/config.yaml".source =
|
||||
let inherit (import <niveum/lib>) kieran;
|
||||
in (pkgs.formats.yaml {}).generate "config.yaml" {
|
||||
templates.params = {
|
||||
author-name = kieran.name;
|
||||
author-email = kieran.email;
|
||||
copyright = "Copyright: (c) 2020 ${kieran.name}";
|
||||
github-username = kieran.github;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.hoogle = {
|
||||
enable = false;
|
||||
packages = import ./packages.nix;
|
||||
port = 8091;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs;
|
||||
[
|
||||
cabal2nix
|
||||
cabal-install
|
||||
hlint
|
||||
haskellPackages.ormolu
|
||||
(haskellPackages.ghcWithHoogle (import ./packages.nix))
|
||||
] ++ map haskell.lib.justStaticExecutables [
|
||||
haskellPackages.ghcid
|
||||
haskellPackages.hasktags
|
||||
# haskellPackages.hindent
|
||||
# haskellPackages.pointfree
|
||||
# haskellPackages.pointful
|
||||
haskellPackages.hpack
|
||||
];
|
||||
}
|
||||
@@ -1,100 +0,0 @@
|
||||
haskellPackages:
|
||||
with haskellPackages; [
|
||||
HTTP
|
||||
HUnit
|
||||
MissingH
|
||||
QuickCheck
|
||||
ad
|
||||
adjunctions
|
||||
aeson
|
||||
# algebra
|
||||
ansi-terminal
|
||||
async
|
||||
attoparsec
|
||||
base-orphans
|
||||
bifunctors
|
||||
binary
|
||||
blaze-html
|
||||
blaze-markup
|
||||
brick
|
||||
bytes
|
||||
bytestring
|
||||
case-insensitive
|
||||
cassava
|
||||
cereal
|
||||
clock
|
||||
comonad
|
||||
comonad-transformers
|
||||
conduit
|
||||
conduit-extra
|
||||
constraints
|
||||
containers
|
||||
contravariant
|
||||
criterion
|
||||
data-default
|
||||
diagrams
|
||||
directory
|
||||
dlist
|
||||
either
|
||||
edit-distance
|
||||
exceptions
|
||||
extra
|
||||
filepath
|
||||
foundation
|
||||
free
|
||||
haskeline
|
||||
hedgehog
|
||||
hourglass
|
||||
hspec
|
||||
http-client
|
||||
http-conduit
|
||||
kan-extensions
|
||||
lens
|
||||
linear
|
||||
lucid
|
||||
megaparsec
|
||||
microlens
|
||||
monad-logger
|
||||
monad-memo
|
||||
mono-traversable
|
||||
mtl
|
||||
network
|
||||
parallel
|
||||
parsec
|
||||
persistent
|
||||
pipes
|
||||
pointed
|
||||
pretty
|
||||
pretty-show
|
||||
prettyprinter
|
||||
primitive
|
||||
process
|
||||
profunctors
|
||||
regex-tdfa
|
||||
safe
|
||||
scalpel
|
||||
semigroupoids
|
||||
semigroups
|
||||
servant
|
||||
servant-blaze
|
||||
servant-client
|
||||
servant-docs
|
||||
servant-server
|
||||
servant-swagger
|
||||
split
|
||||
stm
|
||||
tagsoup
|
||||
tasty
|
||||
text
|
||||
time
|
||||
transformers
|
||||
turtle
|
||||
unix-time
|
||||
unordered-containers
|
||||
vector
|
||||
void
|
||||
vty
|
||||
warp
|
||||
wreq
|
||||
yaml
|
||||
]
|
||||
@@ -1,20 +0,0 @@
|
||||
{ pkgs, ... }: {
|
||||
environment.systemPackages = [
|
||||
(pkgs.python3.withPackages (py: [
|
||||
py.black
|
||||
# py.python-language-server
|
||||
# py.pyls-mypy
|
||||
# py.pyls-black
|
||||
# py.pyls-isort
|
||||
py.flake8
|
||||
py.pygments
|
||||
py.schema
|
||||
]))
|
||||
pkgs.python3Packages.poetry
|
||||
];
|
||||
|
||||
home-manager.users.me.xdg.configFile."pycodestyle".text = ''
|
||||
[pycodestyle]
|
||||
max-line-length = 110
|
||||
'';
|
||||
}
|
||||
@@ -1,81 +0,0 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
let
|
||||
pandoc-doc = pkgs.callPackage <niveum/packages/man/pandoc.nix> {};
|
||||
|
||||
zoteroStyle = { name, sha256 }: {
|
||||
name = "${name}.csl";
|
||||
path = pkgs.fetchurl {
|
||||
url = "https://www.zotero.org/styles/${name}";
|
||||
inherit sha256;
|
||||
};
|
||||
};
|
||||
|
||||
cslDirectory = pkgs.linkFarm "citation-styles" [
|
||||
(zoteroStyle {
|
||||
name = "chicago-author-date-de";
|
||||
sha256 = "0fz0xn46rkciblr34a7x2v60j0lbq9l3fmzi43iphph27m0czn6s";
|
||||
})
|
||||
(zoteroStyle {
|
||||
name = "din-1505-2";
|
||||
sha256 = "1pvy1b7qm13mnph7z365rrz1j082bl2y8ih73rhzd0zd6dz1jyjq";
|
||||
})
|
||||
(zoteroStyle {
|
||||
name = "apa";
|
||||
sha256 = "1878vxp0y0h05yzaghnd51n981623mxskw3lsdyzmffqhihvv111";
|
||||
})
|
||||
];
|
||||
|
||||
makeStardictDataDir = dicts:
|
||||
pkgs.linkFarm "dictionaries" (map ({ name, path }: {
|
||||
name = "dic/${name}";
|
||||
inherit path;
|
||||
}) dicts);
|
||||
in {
|
||||
environment.variables.STARDICT_DATA_DIR = toString (makeStardictDataDir [
|
||||
{
|
||||
name = "gr-de";
|
||||
path = pkgs.fetchurl {
|
||||
url = "http://tovotu.de/data/stardict/pape_gr-de.zip";
|
||||
sha256 = "1d705y47b40vp0mg79vbwasw4y0i8fmnlwvf4x4ri0dkfqng9sky";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "la-de";
|
||||
path = pkgs.fetchurl {
|
||||
url = "http://tovotu.de/data/stardict/georges_lat-de.zip";
|
||||
sha256 = "12n26nzwg28wn4zwv45mv0wkgy1jh1d8p0k6haamz9601cqq7hkj";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "de-la";
|
||||
path = pkgs.fetchurl {
|
||||
url = "http://tovotu.de/data/stardict/georges_de-lat.zip";
|
||||
sha256 = "0inm6xn1lcnb851cj329n0v2vbfc1z1bxwhgsd8fnm0zxy3f3ifq";
|
||||
};
|
||||
}
|
||||
]);
|
||||
|
||||
home-manager.users.me.home.file = {
|
||||
".csl".source = cslDirectory;
|
||||
".local/share/pandoc/csl".source = cslDirectory; # as of pandoc 2.11, it includes citeproc
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
texlive.combined.scheme-full
|
||||
latexrun
|
||||
(aspellWithDicts (dict: [ dict.de dict.en dict.en-computers ]))
|
||||
# haskellPackages.pandoc-citeproc
|
||||
scripts.text2pdf
|
||||
lowdown
|
||||
glow # markdown to term
|
||||
libreoffice
|
||||
# gnumeric
|
||||
dia
|
||||
pandoc
|
||||
pandoc-doc
|
||||
# proselint
|
||||
asciidoctor
|
||||
wordnet
|
||||
# sdcv # stardict cli
|
||||
];
|
||||
}
|
||||
161
configs/stardict.nix
Normal file
161
configs/stardict.nix
Normal file
@@ -0,0 +1,161 @@
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
classicsDictionaries = {
|
||||
Pape = "${pkgs.fetchzip {
|
||||
url = "http://chaerephon.e-monsite.com/medias/files/pape.zip";
|
||||
sha256 = "0cm1z35bc47lx3709f4042kvd2zqkcqmn8q9fcw9dflikl6kgbij";
|
||||
stripRoot = false;
|
||||
}}/Pape";
|
||||
Woodhouse = pkgs.fetchzip {
|
||||
url = "https://c.krebsco.de/Woodhouse.zip";
|
||||
sha256 = "1dvnc2679yb048q2f3hr2h34acvhan0n3iir6h9ajlrdzz48mlkq";
|
||||
stripRoot = false;
|
||||
};
|
||||
LSJ = pkgs.fetchzip {
|
||||
url = "https://github.com/nikita-moor/latin-dictionary/releases/download/2020-02-14/LiddellScott1940-stardict.zip";
|
||||
sha256 = "13rprgd9jvnhxk9735c91xr6ywr0j5jiwkjnpm3qpvy93isyjbys";
|
||||
};
|
||||
GreekMorphology = pkgs.fetchzip {
|
||||
url = "https://github.com/latin-dict/Morphologia-Graeca/releases/download/v0.5/morphology-mobile-goldendict.oxia.zip";
|
||||
sha256 = "0m75cppjjjmvv18cs7yh9f4p7ckqzxfznnndgkiw3yrfd50k8p96";
|
||||
};
|
||||
Frisk = pkgs.fetchzip {
|
||||
url = "https://github.com/latin-dict/Frisk1960/releases/download/v1.1/Frisk1960-stardict.zip";
|
||||
sha256 = "1rk5a3n3fpfdcmg4bc5945m88s6ldxql8cjn4jqs33rgklh7n046";
|
||||
};
|
||||
Georges-Lat-De = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/de/stardict-georges_lat-de-2.4.2.tar.bz2";
|
||||
sha256 = "0n9jkr17q8amldw7ndy3ji6nnadjfmxl4v8clqqicbdfd1w44yj2";
|
||||
};
|
||||
Georges-De-Lat = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/de/stardict-georges_de-lat-2.4.2.tar.bz2";
|
||||
sha256 = "023n55fcbx0jm92198am600h9pv4n3iymkz2ixqn2ka4fj6dhw9g";
|
||||
};
|
||||
SmithBiographyMythology = pkgs.fetchzip {
|
||||
url = "https://github.com/latin-dict/Smith1873/releases/download/v1.0/Smith1873-stardict.zip";
|
||||
sha256 = "01h5fxacp2m60xir8kzslkfy772vs3vmz07zhdwfhcwdaxif2af2";
|
||||
};
|
||||
SmithAntiquities = pkgs.fetchzip {
|
||||
url = "https://github.com/latin-dict/Smith1890/releases/download/v1.0/Smith1890-stardict.zip";
|
||||
sha256 = "0vpsv62p2lrzmgys4d1swpnc6lqhdi7rxwkj2ngy3lz5dk3fysyb";
|
||||
};
|
||||
LewisShort = pkgs.fetchzip {
|
||||
url = "https://github.com/latin-dict/LewisShort1879/releases/download/v1.3/LewisShort1879-stardict.zip";
|
||||
sha256 = "1y3ans47iv8bzzb1paimdqvcid8ms04ikjbqy3iw077i2js3qbjk";
|
||||
};
|
||||
DoederleinSynonymes = pkgs.fetchzip {
|
||||
url = "https://github.com/latin-dict/Doederlein1874/releases/download/v1.1/Doederlein1875-stardict.zip";
|
||||
sha256 = "0mhik7gjxl8ncr9g5z2l4pfk60k1c5n0gc1w0cnp2x1v6lqvb57h";
|
||||
};
|
||||
};
|
||||
|
||||
englishGermanDictionaries = {
|
||||
Etymonline = pkgs.fetchzip {
|
||||
url = "http://tovotu.de/data/stardict/etymonline.zip";
|
||||
sha256 = "1bjja3n3layfd08xa1r0a6375dxh5zi6hlv7chkhgnx800cx7hxn";
|
||||
};
|
||||
Roget = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/bigdict/stardict-Roget_s_II_The_New_Thesaurus_3th_Ed-2.4.2.tar.bz2";
|
||||
sha256 = "1szyny9497bpyyccf9l5kr3bnw0wvl4cnsd0n1zscxpyzlsrqqbz";
|
||||
};
|
||||
OED1 = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/bigdict/stardict-Oxford_English_Dictionary_2nd_Ed._P1-2.4.2.tar.bz2";
|
||||
sha256 = "0i5vv1rv44yfwyf9bfbdrb9brzhhpvz2jnh39fv8hh107nkv2vcf";
|
||||
};
|
||||
OED2 = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/bigdict/stardict-Oxford_English_Dictionary_2nd_Ed._P2-2.4.2.tar.bz2";
|
||||
sha256 = "1pk234pbq4pk55d8sjk0pp9j5sajm82f8804kf2xm2x5p387q1rg";
|
||||
};
|
||||
JargonFile = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/dict.org/stardict-dictd-jargon-2.4.2.tar.bz2";
|
||||
sha256 = "096phar9qpmm0fnaqv5nz8x9lpxwnfj78g4vjfcfyd7kqp7iqla4";
|
||||
};
|
||||
Oxford-Collocations = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/bigdict/stardict-Oxford_Collocations_Dictionary_2nd_Ed-2.4.2.tar.bz2";
|
||||
sha256 = "1zkfs0zxkcn21z2lhcabrs77v4ma9hpv7qm119hpyi1d8ajcw07q";
|
||||
};
|
||||
Langenscheidt-Deu-En = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/babylon/german/stardict-Handw_rterbuch_Deutsch_Englisc-2.4.2.tar.bz2";
|
||||
sha256 = "12q9i5azq7ylyrpb6jqbaf1rxalc3kzcwjvbinvb0yabdxb80y30";
|
||||
};
|
||||
Langenscheidt-En-Deu = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/babylon/german/stardict-Handw_rterbuch_Englisch_Deutsc-2.4.2.tar.bz2";
|
||||
sha256 = "087b05h155j5ldshfgx91pz81h6ijq2zaqjirg7ma8ig3l96zb59";
|
||||
};
|
||||
Duden_Das_Fremdworterbuch = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/babylon/german/stardict-Duden_Das_Fremdworterbuch-2.4.2.tar.bz2";
|
||||
sha256 = "1zrcay54ccl031s6dvjwsah5slhanmjab87d81rxlcy8fx0xd8wq";
|
||||
};
|
||||
Duden_De_De = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/babylon/german/stardict-Duden_De_De-2.4.2.tar.bz2";
|
||||
sha256 = "1fhay04w5aaj83axfmla2ql34nb60gb05dgv0k94ig7p8x4yxxlf";
|
||||
};
|
||||
# Duden_Rechtschreibung = builtins.fetchTarball {
|
||||
# url = "http://download.huzheng.org/babylon/german/stardict-Duden_Rechtschreibung-2.4.2.tar.bz2";
|
||||
# sha256 = "0xiprb45s88w62rn8rlbjrsagbiliay9hszsiy20glwabf6zsfji";
|
||||
# };
|
||||
Duden_Synonym = builtins.fetchTarball {
|
||||
url = "http://download.huzheng.org/babylon/german/stardict-Duden_Synonym-2.4.2.tar.bz2";
|
||||
sha256 = "0cx086zvb86bmz7i8vnsch4cj4fb0cp165g4hig4982zakj6f2jd";
|
||||
};
|
||||
# Duden = builtins.fetchTarball {
|
||||
# url = "http://download.huzheng.org/de/stardict-duden-2.4.2.tar.bz2";
|
||||
# sha256 = "049i4ynfqqxykv1nlkyks94mvn14s22qdax5gg7hx1ks5y4xw64j";
|
||||
# };
|
||||
# ConciseOED = builtins.fetchTarball {
|
||||
# url = "http://download.huzheng.org/bigdict/stardict-Concise_Oxford_English_Dictionary-2.4.2.tar.bz2";
|
||||
# sha256 = "19kpcxbhqzpmhi94mp48nalgmsh6s7rsx1gb4kwkhirp2pbjcyl7";
|
||||
# };
|
||||
# FreeOnlineDictionaryOfComputing = builtins.fetchTarball {
|
||||
# url = "http://download.huzheng.org/dict.org/stardict-dictd_www.dict.org_foldoc-2.4.2.tar.bz2";
|
||||
# sha256 = "1lw2i8dzxpx929cpgvv0x366dnh4drr10wzqmrhcd0kvwglqawgm";
|
||||
# };
|
||||
};
|
||||
|
||||
sanskritDictionaries = {
|
||||
BoehtlingkRoth = pkgs.fetchzip {
|
||||
url = "https://c.krebsco.de/Bohtlingk-and-Roth-Grosses-Petersburger-Worterbuch.zip";
|
||||
sha256 = "13414a8rgd7hd5ffar6nl68nk3ys60wjkgb7m11hp0ahaasmf6ly";
|
||||
stripRoot = false;
|
||||
};
|
||||
MonierWilliams = pkgs.fetchzip {
|
||||
url = "https://c.krebsco.de/mw-cologne.zip";
|
||||
sha256 = "0p99ybxwxmmd94hf035hvm2hhnfy84av7qq79xf28bh2rbx6s9ng";
|
||||
stripRoot = false;
|
||||
};
|
||||
MonierWilliamsEnglish = pkgs.fetchzip {
|
||||
url = "https://c.krebsco.de/mw-english-sanskrit.zip";
|
||||
sha256 = "09a61hhii4b1m2fkrlh4rm2xnlgwrllh84iypbc6wyj00w9jkl3x";
|
||||
stripRoot = false;
|
||||
};
|
||||
};
|
||||
makeStardictDataDir = dicts: pkgs.linkFarm "dictionaries" (lib.mapAttrsToList (name: path: { inherit name path; }) dicts);
|
||||
in
|
||||
{
|
||||
# https://github.com/latin-dict/Georges1910/releases/download/v1.0/Georges1910-stardict.zip
|
||||
# https://github.com/nikita-moor/latin-dictionary/releases/download/2020-02-14/LiddellScott1940-stardict.zip
|
||||
# http://download.huzheng.org/bigdict/stardict-Cambridge_Dictionary_of_American_Idioms-2.4.2.tar.bz2
|
||||
# http://download.huzheng.org/bigdict/stardict-Concise_Oxford_Thesaurus_2nd_Ed-2.4.2.tar.bz2
|
||||
# http://download.huzheng.org/bigdict/stardict-Urban_Dictionary_P1-2.4.2.tar.bz2
|
||||
# http://download.huzheng.org/bigdict/stardict-Urban_Dictionary_P2-2.4.2.tar.bz2
|
||||
environment.etc.stardict.source = toString (makeStardictDataDir (classicsDictionaries // sanskritDictionaries // englishGermanDictionaries));
|
||||
|
||||
environment.variables = {
|
||||
SDCV_PAGER = "${pkgs.w3m}/bin/w3m -T text/html -dump";
|
||||
};
|
||||
|
||||
|
||||
home-manager.users.me = {
|
||||
home.file.".goldendict/config".text = import <niveum/lib/goldendict-config.nix> {
|
||||
path = "/etc/stardict";
|
||||
inherit pkgs;
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.goldendict
|
||||
(pkgs.writers.writeDashBin "sd-classics" ''${pkgs.sdcv}/bin/sdcv --data-dir ${makeStardictDataDir classicsDictionaries} "$@"'')
|
||||
(pkgs.writers.writeDashBin "sd-sanskrit" ''${pkgs.sdcv}/bin/sdcv --data-dir ${makeStardictDataDir sanskritDictionaries} "$@"'')
|
||||
(pkgs.writers.writeDashBin "sd" ''${pkgs.sdcv}/bin/sdcv --data-dir ${makeStardictDataDir englishGermanDictionaries} "$@"'')
|
||||
];
|
||||
}
|
||||
179
lib/goldendict-config.nix
Normal file
179
lib/goldendict-config.nix
Normal file
@@ -0,0 +1,179 @@
|
||||
{pkgs, path}: ''
|
||||
<config>
|
||||
<paths>
|
||||
<path recursive="1">${path}</path>
|
||||
</paths>
|
||||
<sounddirs/>
|
||||
<dictionaryOrder name="" id="0">
|
||||
<mutedDictionaries/>
|
||||
</dictionaryOrder>
|
||||
<inactiveDictionaries name="" id="0">
|
||||
<mutedDictionaries/>
|
||||
</inactiveDictionaries>
|
||||
<groups nextId="1"/>
|
||||
<hunspell dictionariesPath=""/>
|
||||
<transliteration>
|
||||
<enableRussianTransliteration>0</enableRussianTransliteration>
|
||||
<enableGermanTransliteration>0</enableGermanTransliteration>
|
||||
<enableGreekTransliteration>0</enableGreekTransliteration>
|
||||
<enableBelarusianTransliteration>0</enableBelarusianTransliteration>
|
||||
<chinese>
|
||||
<enable>0</enable>
|
||||
<enableSCToTWConversion>1</enableSCToTWConversion>
|
||||
<enableSCToHKConversion>1</enableSCToHKConversion>
|
||||
<enableTCToSCConversion>1</enableTCToSCConversion>
|
||||
</chinese>
|
||||
<romaji>
|
||||
<enable>0</enable>
|
||||
<enableHepburn>1</enableHepburn>
|
||||
<enableNihonShiki>0</enableNihonShiki>
|
||||
<enableKunreiShiki>0</enableKunreiShiki>
|
||||
<enableHiragana>1</enableHiragana>
|
||||
<enableKatakana>1</enableKatakana>
|
||||
</romaji>
|
||||
</transliteration>
|
||||
<forvo>
|
||||
<enable>0</enable>
|
||||
<apiKey></apiKey>
|
||||
<languageCodes></languageCodes>
|
||||
</forvo>
|
||||
<mediawikis>
|
||||
<mediawiki enabled="0" name="English Wikipedia" icon="" id="ae6f89aac7151829681b85f035d54e48" url="https://en.wikipedia.org/w"/>
|
||||
<mediawiki enabled="0" name="English Wiktionary" icon="" id="affcf9678e7bfe701c9b071f97eccba3" url="https://en.wiktionary.org/w"/>
|
||||
<mediawiki enabled="0" name="German Wikipedia" icon="" id="a8a66331a1242ca2aeb0b4aed361c41d" url="https://de.wikipedia.org/w"/>
|
||||
<mediawiki enabled="0" name="German Wiktionary" icon="" id="21c64bca5ec10ba17ff19f3066bc962a" url="https://de.wiktionary.org/w"/>
|
||||
</mediawikis>
|
||||
<websites>
|
||||
<website enabled="0" name="Google En-En (Oxford)" icon="" id="b88cb2898e634c6638df618528284c2d" url="https://www.google.com/search?q=define:%GDWORD%&hl=en" inside_iframe="1"/>
|
||||
<website enabled="0" name="Urban Dictionary" icon="" id="f376365a0de651fd7505e7e5e683aa45" url="https://www.urbandictionary.com/define.php?term=%GDWORD%" inside_iframe="1"/>
|
||||
<website enabled="0" name="Multitran (En)" icon="" id="324ca0306187df7511b26d3847f4b07c" url="https://multitran.ru/c/m.exe?CL=1&l1=1&s=%GD1251%" inside_iframe="1"/>
|
||||
<website enabled="0" name="Lingvo (En-Ru)" icon="" id="924db471b105299c82892067c0f10787" url="http://lingvopro.abbyyonline.com/en/Search/en-ru/%GDWORD%" inside_iframe="1"/>
|
||||
<website enabled="0" name="Michaelis (Pt-En)" icon="" id="087a6d65615fb047f4c80eef0a9465db" url="http://michaelis.uol.com.br/moderno/ingles/index.php?lingua=portugues-ingles&palavra=%GDISO1%" inside_iframe="1"/>
|
||||
</websites>
|
||||
<dictservers/>
|
||||
<programs>
|
||||
<program enabled="0" name="Espeak" icon="" id="2cf8b3a60f27e1ac812de0b57c148340" commandLine="${pkgs.espeak}/bin/espeak %GDWORD%" type="0"/>
|
||||
<program enabled="0" name="Manpages" icon="" id="4f898f7582596cea518c6b0bfdceb8b3" commandLine="${pkgs.man_db}/bin/man -a --html=/bin/cat %GDWORD%" type="2"/>
|
||||
</programs>
|
||||
<voiceEngines/>
|
||||
<mutedDictionaries/>
|
||||
<popupMutedDictionaries>
|
||||
<mutedDictionary>ae6f89aac7151829681b85f035d54e48</mutedDictionary>
|
||||
</popupMutedDictionaries>
|
||||
<preferences>
|
||||
<interfaceLanguage></interfaceLanguage>
|
||||
<helpLanguage></helpLanguage>
|
||||
<displayStyle>modern</displayStyle>
|
||||
<newTabsOpenAfterCurrentOne>0</newTabsOpenAfterCurrentOne>
|
||||
<newTabsOpenInBackground>1</newTabsOpenInBackground>
|
||||
<hideSingleTab>0</hideSingleTab>
|
||||
<mruTabOrder>0</mruTabOrder>
|
||||
<hideMenubar>0</hideMenubar>
|
||||
<enableTrayIcon>0</enableTrayIcon>
|
||||
<startToTray>0</startToTray>
|
||||
<closeToTray>0</closeToTray>
|
||||
<autoStart>0</autoStart>
|
||||
<doubleClickTranslates>1</doubleClickTranslates>
|
||||
<selectWordBySingleClick>0</selectWordBySingleClick>
|
||||
<escKeyHidesMainWindow>0</escKeyHidesMainWindow>
|
||||
<zoomFactor>1</zoomFactor>
|
||||
<helpZoomFactor>1</helpZoomFactor>
|
||||
<wordsZoomLevel>0</wordsZoomLevel>
|
||||
<enableMainWindowHotkey>1</enableMainWindowHotkey>
|
||||
<mainWindowHotkey>Ctrl+F11, Ctrl+F11</mainWindowHotkey>
|
||||
<enableClipboardHotkey>1</enableClipboardHotkey>
|
||||
<clipboardHotkey>Ctrl+C, Ctrl+C</clipboardHotkey>
|
||||
<enableScanPopup>1</enableScanPopup>
|
||||
<startWithScanPopupOn>0</startWithScanPopupOn>
|
||||
<enableScanPopupModifiers>0</enableScanPopupModifiers>
|
||||
<scanPopupModifiers>0</scanPopupModifiers>
|
||||
<scanPopupAltMode>0</scanPopupAltMode>
|
||||
<scanPopupAltModeSecs>3</scanPopupAltModeSecs>
|
||||
<ignoreOwnClipboardChanges>0</ignoreOwnClipboardChanges>
|
||||
<scanToMainWindow>0</scanToMainWindow>
|
||||
<ignoreDiacritics>0</ignoreDiacritics>
|
||||
<showScanFlag>0</showScanFlag>
|
||||
<scanPopupUseUIAutomation>1</scanPopupUseUIAutomation>
|
||||
<scanPopupUseIAccessibleEx>1</scanPopupUseIAccessibleEx>
|
||||
<scanPopupUseGDMessage>1</scanPopupUseGDMessage>
|
||||
<scanPopupUnpinnedWindowFlags>0</scanPopupUnpinnedWindowFlags>
|
||||
<scanPopupUnpinnedBypassWMHint>0</scanPopupUnpinnedBypassWMHint>
|
||||
<pronounceOnLoadMain>0</pronounceOnLoadMain>
|
||||
<pronounceOnLoadPopup>0</pronounceOnLoadPopup>
|
||||
<useInternalPlayer>1</useInternalPlayer>
|
||||
<internalPlayerBackend>FFmpeg+libao</internalPlayerBackend>
|
||||
<audioPlaybackProgram>mplayer</audioPlaybackProgram>
|
||||
<alwaysOnTop>1</alwaysOnTop>
|
||||
<searchInDock>1</searchInDock>
|
||||
<historyStoreInterval>0</historyStoreInterval>
|
||||
<favoritesStoreInterval>0</favoritesStoreInterval>
|
||||
<confirmFavoritesDeletion>1</confirmFavoritesDeletion>
|
||||
<proxyserver enabled="0" useSystemProxy="0">
|
||||
<type>0</type>
|
||||
<host></host>
|
||||
<port>3128</port>
|
||||
<user></user>
|
||||
<password></password>
|
||||
<systemProxyUser></systemProxyUser>
|
||||
<systemProxyPassword></systemProxyPassword>
|
||||
</proxyserver>
|
||||
<disallowContentFromOtherSites>0</disallowContentFromOtherSites>
|
||||
<enableWebPlugins>0</enableWebPlugins>
|
||||
<hideGoldenDictHeader>0</hideGoldenDictHeader>
|
||||
<maxNetworkCacheSize>50</maxNetworkCacheSize>
|
||||
<clearNetworkCacheOnExit>1</clearNetworkCacheOnExit>
|
||||
<maxStringsInHistory>500</maxStringsInHistory>
|
||||
<storeHistory>1</storeHistory>
|
||||
<alwaysExpandOptionalParts>0</alwaysExpandOptionalParts>
|
||||
<addonStyle></addonStyle>
|
||||
<collapseBigArticles>0</collapseBigArticles>
|
||||
<articleSizeLimit>2000</articleSizeLimit>
|
||||
<limitInputPhraseLength>0</limitInputPhraseLength>
|
||||
<inputPhraseLengthLimit>1000</inputPhraseLengthLimit>
|
||||
<maxDictionaryRefsInContextMenu>20</maxDictionaryRefsInContextMenu>
|
||||
<trackClipboardChanges>0</trackClipboardChanges>
|
||||
<synonymSearchEnabled>1</synonymSearchEnabled>
|
||||
<fullTextSearch>
|
||||
<searchMode>0</searchMode>
|
||||
<matchCase>0</matchCase>
|
||||
<maxArticlesPerDictionary>100</maxArticlesPerDictionary>
|
||||
<maxDistanceBetweenWords>2</maxDistanceBetweenWords>
|
||||
<useMaxArticlesPerDictionary>0</useMaxArticlesPerDictionary>
|
||||
<useMaxDistanceBetweenWords>1</useMaxDistanceBetweenWords>
|
||||
<dialogGeometry></dialogGeometry>
|
||||
<disabledTypes></disabledTypes>
|
||||
<enabled>1</enabled>
|
||||
<ignoreWordsOrder>0</ignoreWordsOrder>
|
||||
<ignoreDiacritics>0</ignoreDiacritics>
|
||||
<maxDictionarySize>0</maxDictionarySize>
|
||||
</fullTextSearch>
|
||||
</preferences>
|
||||
<lastMainGroupId>0</lastMainGroupId>
|
||||
<lastPopupGroupId>0</lastPopupGroupId>
|
||||
<popupWindowState>AAAA/wAAAAH9AAAAAAAAAg0AAAGTAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAQAAAAEAAAAaAGQAaQBjAHQAaQBvAG4AYQByAHkAQgBhAHIDAAAAAP////8AAAAAAAAAAA==</popupWindowState>
|
||||
<popupWindowGeometry>AdnQywADAAAAAAC6AAABEgAAAuYAAAKkAAAAugAAARIAAALmAAACpAAAAAAAAAAABVYAAAC6AAABEgAAAuYAAAKk</popupWindowGeometry>
|
||||
<pinPopupWindow>0</pinPopupWindow>
|
||||
<popupWindowAlwaysOnTop>0</popupWindowAlwaysOnTop>
|
||||
<mainWindowState>AAAA/wAAAAH9AAAAAgAAAAAAAADMAAAC0PwCAAAAAfsAAAAUAHMAZQBhAHIAYwBoAFAAYQBuAGUBAAAAFAAAAtAAAAB9AP///wAAAAEAAADMAAAC0PwCAAAAA/sAAAASAGQAaQBjAHQAcwBQAGEAbgBlAQAAABQAAAFvAAAAYQD////7AAAAGgBmAGEAdgBvAHIAaQB0AGUAcwBQAGEAbgBlAAAAABQAAALQAAAAYQD////7AAAAFgBoAGkAcwB0AG8AcgB5AFAAYQBuAGUBAAABhAAAAWAAAABhAP///wAAA7QAAALQAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAIAAAAUAG4AYQB2AFQAbwBvAGwAYgBhAHIAAAAAAP////8AAAAAAAAAAAAAABoAZABpAGMAdABpAG8AbgBhAHIAeQBCAGEAcgAAAAAA/////wAAAAAAAAAA</mainWindowState>
|
||||
<mainWindowGeometry>AdnQywADAAAAAAAEAAAAGAAABVEAAAL7AAAABAAAABgAAAVRAAAC+wAAAAAAAAAABVYAAAAEAAAAGAAABVEAAAL7</mainWindowGeometry>
|
||||
<helpWindowGeometry>AdnQywADAAAAAAF3AAAAgwAAA9AAAAJGAAABeAAAAIQAAAPPAAACRQAAAAAAAAAABVYAAAF4AAAAhAAAA88AAAJF</helpWindowGeometry>
|
||||
<helpSplitterState>AAAA/wAAAAEAAAACAAABBAAABAAB/////wEAAAABAA==</helpSplitterState>
|
||||
<dictInfoGeometry>AdnQywADAAAAAAF1AAAAmgAAA84AAAIrAAABdgAAAJsAAAPNAAACKgAAAAAAAAAABVYAAAF2AAAAmwAAA80AAAIq</dictInfoGeometry>
|
||||
<inspectorGeometry></inspectorGeometry>
|
||||
<timeForNewReleaseCheck></timeForNewReleaseCheck>
|
||||
<skippedRelease></skippedRelease>
|
||||
<showingDictBarNames>1</showingDictBarNames>
|
||||
<usingSmallIconsInToolbars>1</usingSmallIconsInToolbars>
|
||||
<editDictionaryCommandLine></editDictionaryCommandLine>
|
||||
<maxPictureWidth>0</maxPictureWidth>
|
||||
<maxHeadwordSize>256</maxHeadwordSize>
|
||||
<maxHeadwordsToExpand>0</maxHeadwordsToExpand>
|
||||
<headwordsDialog>
|
||||
<searchMode>0</searchMode>
|
||||
<matchCase>0</matchCase>
|
||||
<autoApply>0</autoApply>
|
||||
<headwordsExportPath></headwordsExportPath>
|
||||
<headwordsDialogGeometry></headwordsDialogGeometry>
|
||||
</headwordsDialog>
|
||||
</config>
|
||||
''
|
||||
Reference in New Issue
Block a user