diff options
Diffstat (limited to 'makefu')
29 files changed, 286 insertions, 49 deletions
diff --git a/makefu/0tests/data/secrets/ebk-notify.yml b/makefu/0tests/data/secrets/ebk-notify.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/makefu/0tests/data/secrets/ebk-notify.yml diff --git a/makefu/1systems/gum/config.nix b/makefu/1systems/gum/config.nix index 8603d7696..5639691e2 100644 --- a/makefu/1systems/gum/config.nix +++ b/makefu/1systems/gum/config.nix @@ -108,7 +108,6 @@ in { ## network <stockholm/makefu/2configs/vpn/openvpn-server.nix> # <stockholm/makefu/2configs/vpn/vpnws/server.nix> - <stockholm/makefu/2configs/dnscrypt/server.nix> <stockholm/makefu/2configs/binary-cache/server.nix> <stockholm/makefu/2configs/backup/server.nix> <stockholm/makefu/2configs/iodined.nix> @@ -137,6 +136,7 @@ in { <stockholm/makefu/2configs/deployment/owncloud.nix> <stockholm/makefu/2configs/deployment/board.euer.krebsco.de.nix> <stockholm/makefu/2configs/deployment/rss.euer.krebsco.de.nix> + <stockholm/makefu/2configs/deployment/feed.euer.krebsco.de> <stockholm/makefu/2configs/deployment/boot-euer.nix> <stockholm/makefu/2configs/deployment/gecloudpad> <stockholm/makefu/2configs/deployment/docker/archiveteam-warrior.nix> diff --git a/makefu/1systems/x/config.nix b/makefu/1systems/x/config.nix index 4c479875e..ea92e3485 100644 --- a/makefu/1systems/x/config.nix +++ b/makefu/1systems/x/config.nix @@ -162,7 +162,11 @@ krebs.tinc.retiolum.connectTo = [ "omo" "prism" "nextgum" "wbob" ]; # hard dependency because otherwise the device will not be unlocked - boot.initrd.luks.devices = [ { name = "luksroot"; device = "/dev/sda2"; allowDiscards=true; }]; + boot.initrd.luks.devices.luksroot = + { + device = "/dev/sda2"; + allowDiscards = true; + }; # avoid full boot dir boot.loader.grub.configurationLimit = 3; diff --git a/makefu/2configs/default.nix b/makefu/2configs/default.nix index 0cbb5efe7..0219e9bb7 100644 --- a/makefu/2configs/default.nix +++ b/makefu/2configs/default.nix @@ -30,7 +30,7 @@ with import <stockholm/lib>; }; nix.trustedUsers = [ config.krebs.build.user.name ]; - boot.kernelPackages = lib.mkDefault pkgs.linuxPackages_latest; + boot.kernelPackages = lib.mkDefault pkgs.linuxPackages; nixpkgs.config.allowUnfreePredicate = pkg: packageName pkg == "unrar"; @@ -85,4 +85,8 @@ with import <stockholm/lib>; RuntimeMaxUse=128M ''; environment.pathsToLink = [ "/share" ]; + security.acme = { + email = "letsencrypt@syntax-fehler.de"; + acceptTerms = true; + }; } diff --git a/makefu/2configs/deployment/feed.euer.krebsco.de/default.nix b/makefu/2configs/deployment/feed.euer.krebsco.de/default.nix new file mode 100644 index 000000000..de072092b --- /dev/null +++ b/makefu/2configs/deployment/feed.euer.krebsco.de/default.nix @@ -0,0 +1,52 @@ +{ config, lib, pkgs, ... }: +let + filter-file = ./filter.yml; + pkg = with pkgs.python3Packages;buildPythonPackage rec { + version = "d16ce227dc68c9f60f6dd06e6835bab7cdfdf61b"; + pname = "ebk-notify"; + propagatedBuildInputs = [ + docopt + pyyaml + requests + beautifulsoup4 + dateutil + feedgen + ]; + src = pkgs.fetchgit { + url = "http://cgit.euer.krebsco.de/ebk-notify"; + rev = version; + sha256 = "15dlhp17alm01fw7mzdyh2z9zwz8psrs489lxs3hgg1p5wa0kzsp"; + }; + }; + domain = "feed.euer.krebsco.de"; + path = "/var/www/feed.euer.krebsco.de"; +in +{ + systemd.tmpfiles.rules = [ + "d ${path} nginx nogroup - -" + ]; + krebs.secret.files.ebknotify = { + path = "/etc/ebk-notify.yml"; + owner.name = "nginx"; + source-path = "${<secrets/ebk-notify.yml>}"; + }; + systemd.services.ebk-notify = { + startAt = "*:0/10"; + serviceConfig = { + User = "nginx"; # TODO better permission setting + # PrivateTmp = true; + ExecStart = "${pkg}/bin/ebk-notify --atom --outdir ${path} --config /etc/ebk-notify.yml --cache /tmp/ebk-cache.json --filter ${filter-file} --wait 30"; + }; + }; + systemd.timers.ebk-notify.timerConfig.RandomizedDelaySec = "120"; + services.nginx = { + virtualHosts."${domain}" = { + forceSSL = true; + enableACME = true; + locations."/" = { + root = path; + index = "root.atom"; + }; + }; + }; +} diff --git a/makefu/2configs/deployment/feed.euer.krebsco.de/filter.yml b/makefu/2configs/deployment/feed.euer.krebsco.de/filter.yml new file mode 100644 index 000000000..50058f32b --- /dev/null +++ b/makefu/2configs/deployment/feed.euer.krebsco.de/filter.yml @@ -0,0 +1,44 @@ +- name: Free Stuff by Category + zipcode: 70378 + distance: 2 + categoryId: 192 +- name: Kies + zipcode: 70378 + q: grobkies + distance: 2 +- name: pflanzkübel + zipcode: 70378 + q: Pflanzkübel + distance: 3 +- name: Ikea Samla + zipcode: 70378 + q: samla + distance: 5 +- name: Duplo + zipcode: 70378 + q: Duplo + distance: 10 +- name: Baby Gummistiefel + zipcode: 70378 + q: Gummistiefel + distance: 5 +- name: Werkbank + zipcode: 70378 + q: Werkbank + distance: 5 +- name: Stirnthermometer + zipcode: 70378 + q: Stirnthermometer + distance: 5 +- name: Ohrthermometer + zipcode: 70378 + q: Ohrthermometer + distance: 5 +- name: Fieberthermometer + zipcode: 70378 + q: Fieberthermometer + distance: 5 +- name: Einhell + zipcode: 70378 + q: Einhell + distance: 5 diff --git a/makefu/2configs/deployment/owncloud.nix b/makefu/2configs/deployment/owncloud.nix index ed3155efc..1cfda6fc5 100644 --- a/makefu/2configs/deployment/owncloud.nix +++ b/makefu/2configs/deployment/owncloud.nix @@ -15,6 +15,7 @@ with lib; let # TODO: copy-paste from lass/2/websites/util.nix + nextcloud = pkgs.nextcloud18; serveCloud = domains: let domain = head domains; @@ -23,9 +24,9 @@ let in { system.activationScripts."prepare-nextcloud-${domain}" = '' if test ! -e ${root} ;then - echo "copying latest ${pkgs.nextcloud.name} release to ${root}" + echo "copying latest ${nextcloud.name} release to ${root}" mkdir -p $(dirname "${root}") - cp -r ${pkgs.nextcloud} "${root}" + cp -r ${nextcloud} "${root}" chown -R nginx:nginx "${root}" chmod 770 "${root}" fi diff --git a/makefu/2configs/editor/vim.nix b/makefu/2configs/editor/vim.nix index 52ccd0ddd..3954dc0f3 100644 --- a/makefu/2configs/editor/vim.nix +++ b/makefu/2configs/editor/vim.nix @@ -22,7 +22,8 @@ in { vimrcConfig.vam.knownPlugins = pkgs.vimPlugins // customPlugins; vimrcConfig.vam.pluginDictionaries = [ { names = [ "undotree" - "YouCompleteMe" "UltiSnips" + "YouCompleteMe" + #"UltiSnips" "vim-better-whitespace" ]; } # vim-nix handles indentation better but does not perform sanity { names = [ "vim-addon-nix" ]; ft_regex = "^nix\$"; } diff --git a/makefu/2configs/git/cgit-retiolum.nix b/makefu/2configs/git/cgit-retiolum.nix index 2a6e41ad8..639994674 100644 --- a/makefu/2configs/git/cgit-retiolum.nix +++ b/makefu/2configs/git/cgit-retiolum.nix @@ -18,6 +18,7 @@ let yacos-backend = { cgit.desc = "Yet Another Check-Out System"; }; + ebk-notify.cgit.desc = "Ebay Kleinanzeigen Notify"; }; krebs-repos = mapAttrs make-krebs-repo { diff --git a/makefu/2configs/gui/base.nix b/makefu/2configs/gui/base.nix index 5b46c7e2d..9c1d560a0 100644 --- a/makefu/2configs/gui/base.nix +++ b/makefu/2configs/gui/base.nix @@ -29,24 +29,21 @@ in awesome.enable = true; awesome.noArgb = true; awesome.luaModules = [ pkgs.luaPackages.vicious ]; - default = "awesome"; }; - - displayManager.auto.enable = true; - displayManager.auto.user = mainUser; + displayManager.defaultSession = lib.mkDefault "none+awesome"; + displayManager.lightdm = { enable = true; autoLogin.enable = true; autoLogin.user = mainUser; }; desktopManager.xterm.enable = false; }; environment.systemPackages = [ pkgs.gnome3.defaultIconTheme ]; # lid switch is handled via button presses services.logind.lidSwitch = lib.mkDefault "ignore"; makefu.awesome.enable = true; - i18n.consoleFont = "Lat2-Terminus16"; + console.font = "Lat2-Terminus16"; fonts = { - enableCoreFonts = true; enableFontDir = true; enableGhostscriptFonts = true; - fonts = [ pkgs.terminus_font ]; + fonts = [ pkgs.terminus_font pkgs.corefonts ]; }; users.users.${mainUser} = { diff --git a/makefu/2configs/gui/urxvtd.nix b/makefu/2configs/gui/urxvtd.nix index 286b87ab3..cb6c25840 100644 --- a/makefu/2configs/gui/urxvtd.nix +++ b/makefu/2configs/gui/urxvtd.nix @@ -10,7 +10,7 @@ in { serviceConfig = { SyslogIdentifier = "urxvtd"; ExecReload = "${pkgs.coreutils}/bin/echo NOP"; - ExecStart = "${pkgs.rxvt_unicode_with-plugins}/bin/urxvtd"; + ExecStart = "${pkgs.rxvt_unicode-with-plugins}/bin/urxvtd"; Restart = "always"; RestartSec = "2s"; StartLimitBurst = 0; diff --git a/makefu/2configs/gui/wbob-kiosk.nix b/makefu/2configs/gui/wbob-kiosk.nix index 6da1a37e7..1a5e6d04f 100644 --- a/makefu/2configs/gui/wbob-kiosk.nix +++ b/makefu/2configs/gui/wbob-kiosk.nix @@ -12,16 +12,15 @@ windowManager = lib.mkForce { awesome.enable = false; - default = "none"; }; desktopManager.xfce = { - extraSessionCommands = '' + enable = true; + }; + displayManager.defaultSession = "xfce"; + displayManager.sessionCommands = '' ${pkgs.xlibs.xset}/bin/xset -display :0 s off -dpms ${pkgs.xlibs.xrandr}/bin/xrandr --output HDMI2 --right-of HDMI1 ''; - enable = true; - }; - # xrandrHeads = [ "HDMI1" "HDMI2" ]; # prevent screen from turning off, disable dpms }; diff --git a/makefu/2configs/ham/androidtv/adbshell.nix b/makefu/2configs/ham/androidtv/adbshell.nix index f5b96c859..0fadeeb05 100644 --- a/makefu/2configs/ham/androidtv/adbshell.nix +++ b/makefu/2configs/ham/androidtv/adbshell.nix @@ -9,11 +9,11 @@ buildPythonPackage rec { pname = "adb_shell"; - version = "0.0.8"; + version = "0.1.1"; src = fetchPypi { inherit pname version; - sha256 = "01f9jinhfyjldg9793gz2i7gcd9xyx0a62r7a5ijssklcnn2rwnm"; + sha256 = "0a4mjrnw2lrhsakb1vjb5l6m3cr1ii7fibs7020nwv08cyx6pq6q"; }; propagatedBuildInputs = [ diff --git a/makefu/2configs/ham/androidtv/default.nix b/makefu/2configs/ham/androidtv/default.nix index 8f3bdc1f3..b7d397db4 100644 --- a/makefu/2configs/ham/androidtv/default.nix +++ b/makefu/2configs/ham/androidtv/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "androidtv"; - version = "0.0.34"; + version = "0.0.38"; src = fetchPypi { inherit pname version; - sha256 = "13078i2a9hglpv4ldycph5n5485np21vs6z2qn830hybmx8kfxsw"; + sha256 = "0ri1fnc63zashc667w2mlpb0c7ri3x6wnhnf54klb89v73pdnb8k"; }; propagatedBuildInputs = [ diff --git a/makefu/2configs/ham/androidtv/purepythonadb.nix b/makefu/2configs/ham/androidtv/purepythonadb.nix index d4e763b70..c9b1ff5e8 100644 --- a/makefu/2configs/ham/androidtv/purepythonadb.nix +++ b/makefu/2configs/ham/androidtv/purepythonadb.nix @@ -5,11 +5,11 @@ buildPythonPackage rec { pname = "pure-python-adb"; - version = "0.2.3.dev0"; + version = "0.2.2.dev0"; src = fetchPypi { inherit pname version; - sha256 = "88e5a4578435197799aa368fb1a5d87fe43e02a888cb7e85c2ad66173b383c89"; + sha256 = "1xigv6c8xyb4g852nr3smz0137rnp81jvlikza071y7rc6pdzwza"; }; meta = with lib; { @@ -18,4 +18,4 @@ buildPythonPackage rec { license = licenses.mit; # maintainers = [ maintainers. ]; }; -}
\ No newline at end of file +} diff --git a/makefu/2configs/ham/default.nix b/makefu/2configs/ham/default.nix index 53723299c..ddcf65b5a 100644 --- a/makefu/2configs/ham/default.nix +++ b/makefu/2configs/ham/default.nix @@ -14,6 +14,7 @@ let #flurlicht = import ./multi/flurlicht.nix; kurzzeitwecker = import ./multi/kurzzeitwecker.nix; firetv_restart = import ./multi/firetv_restart.nix; + the_playlist = import ./multi/the_playlist.nix; # switch # automation # binary_sensor @@ -49,6 +50,8 @@ in { logger = { default = "info"; }; + rest_command = {} + // the_playlist.rest_command; tts = [ { platform = "google_translate"; language = "de"; @@ -131,6 +134,7 @@ in { # https://www.home-assistant.io/cookbook/automation_for_rainy_days/ ] ++ ((import ./sensor/outside.nix) {inherit lib;}) + ++ the_playlist.sensor ++ zigbee.sensor ; frontend = { }; # light = flurlicht.light; @@ -140,6 +144,7 @@ in { ++ (import ./automation/firetv_restart.nix) ++ kurzzeitwecker.automation #++ flurlicht.automation + ++ the_playlist.automation ++ zigbee.automation; script = { } diff --git a/makefu/2configs/ham/multi/the_playlist.nix b/makefu/2configs/ham/multi/the_playlist.nix new file mode 100644 index 000000000..ad090938c --- /dev/null +++ b/makefu/2configs/ham/multi/the_playlist.nix @@ -0,0 +1,83 @@ +# Inputs: +# binary_sensor.playlist_button_good +# binary_sensor.playlist_button_bad + +# outputs +# rest_command +# automation +# sensor +{ + rest_command = { + good_song = { + url = "http://prism.r:8001/good"; + method = "POST"; + }; + bad_song = { + url = "http://prism.r:8001/skip"; + method = "POST"; + }; + }; + automation = [ + { + alias = "playlist song publish"; + trigger = { + #platform = "event"; + #event_data.entity_id = "sensor.the_playlist_song"; + platform = "state"; + entity_id = "sensor.the_playlist_song"; + }; + action = { + service = "mqtt.publish"; + data = { + topic = "/ham/the_playlist/song"; + payload_template = "{{ states.sensor.the_playlist_song.state }}"; + }; + }; + } + { + alias = "playlist upvote on button"; + trigger = { + platform = "state"; + entity_id = "binary_sensor.playlist_button_good"; + from = "off"; + to = "on"; + }; + action.service = "rest_command.good_song"; + } + { + alias = "playlist downvote on button"; + trigger = { + platform = "state"; + entity_id = "binary_sensor.playlist_button_bad"; + from = "off"; + to = "on"; + }; + action.service = "rest_command.bad_song"; + } + ]; + sensor = [ + { platform = "rest"; + name = "pl"; + resource = "http://prism.r:8001/current"; + scan_interval = 30; + value_template = "1"; + json_attributes = [ "name" "filename" "youtube" ]; + } + { platform = "template"; + sensors = { + the_playlist_song = { + friendly_name = "Current Song"; + value_template = ''{{ states.sensor.pl.attributes['name'] }}''; + }; + the_playlist_url = { + friendly_name = "Song Youtube URL"; + value_template = ''{{ states.sensor.pl.attributes['youtube'] }}''; + }; + the_playlist_filename = { + friendly_name = "Song Filename"; + value_template = ''{{ states.sensor.pl.attributes['filename'] }}''; + }; + }; + } + ]; +} diff --git a/makefu/2configs/home-manager/cli.nix b/makefu/2configs/home-manager/cli.nix index 6b5d26111..5d5673b81 100644 --- a/makefu/2configs/home-manager/cli.nix +++ b/makefu/2configs/home-manager/cli.nix @@ -1,15 +1,6 @@ {pkgs, ... }: { imports = [ ./zsh.nix ]; home-manager.users.makefu = { - services.gpg-agent = { - enable = true; - defaultCacheTtl = 900; - maxCacheTtl = 7200; - defaultCacheTtlSsh = 3600; - maxCacheTtlSsh = 86400; - enableSshSupport = true; - enableScDaemon = true; - }; programs.direnv = { stdlib = '' use_nix() { diff --git a/makefu/2configs/home-manager/desktop.nix b/makefu/2configs/home-manager/desktop.nix index 406f7f0d1..cf20af1b1 100644 --- a/makefu/2configs/home-manager/desktop.nix +++ b/makefu/2configs/home-manager/desktop.nix @@ -7,7 +7,6 @@ programs.browserpass = { browsers = [ "firefox" ] ; enable = true; }; programs.firefox = { enable = true; - enableIcedTea = true; }; programs.obs-studio.enable = true; xdg.enable = true; diff --git a/makefu/2configs/home-manager/zsh.nix b/makefu/2configs/home-manager/zsh.nix index 4cd9becc7..f972e98b4 100644 --- a/makefu/2configs/home-manager/zsh.nix +++ b/makefu/2configs/home-manager/zsh.nix @@ -1,5 +1,12 @@ { pkgs, ... }: { + programs = { + ssh.startAgent = false; + gnupg.agent = { + enable = true; + enableSSHSupport = true; + }; + }; imports = [ { #direnv home-manager.users.makefu.home.packages = [ pkgs.direnv pkgs.nur.repos.kalbasit.nixify ]; @@ -8,7 +15,8 @@ { # bat home-manager.users.makefu.home.packages = [ pkgs.bat ]; home-manager.users.makefu.programs.zsh.shellAliases = { - cat = "bat"; + cat = "bat --style=header,snip"; + mirage = "sxiv"; # only available when tools/extra-gui is in use catn = "${pkgs.coreutils}/bin/cat"; ncat = "${pkgs.coreutils}/bin/cat"; }; @@ -53,8 +61,6 @@ setopt HIST_IGNORE_SPACE setopt HIST_FIND_NO_DUPS - unset SSH_AGENT_PID - export SSH_AUTH_SOCK="/run/user/$UID/gnupg/S.gpg-agent.ssh" compdef _pass brain zstyle ':completion::complete:brain::' prefix "$HOME/brain" compdef _pass secrets diff --git a/makefu/2configs/hw/bluetooth.nix b/makefu/2configs/hw/bluetooth.nix index e6a534b7b..411121556 100644 --- a/makefu/2configs/hw/bluetooth.nix +++ b/makefu/2configs/hw/bluetooth.nix @@ -33,11 +33,7 @@ hardware.bluetooth = { enable = true; powerOnBoot = false; - - extraConfig = '' - [general] - Enable=Source,Sink,Media,Socket - ''; + config.general.Enable = "Source,Sink,Media,Socket"; }; services.dbus.packages = [ pkgs.blueman ]; } diff --git a/makefu/2configs/minimal.nix b/makefu/2configs/minimal.nix index ad4c128ec..78a9dcfa6 100644 --- a/makefu/2configs/minimal.nix +++ b/makefu/2configs/minimal.nix @@ -69,9 +69,9 @@ # the only locale you will ever need i18n = { - consoleKeyMap = "us"; defaultLocale = "en_US.UTF-8"; }; + console.keyMap = "us"; # suppress chrome autit event messages security.audit.rules = [ "-a task,never" ]; diff --git a/makefu/2configs/nur.nix b/makefu/2configs/nur.nix index 891144957..65cf836c4 100644 --- a/makefu/2configs/nur.nix +++ b/makefu/2configs/nur.nix @@ -1,8 +1,8 @@ { pkgs, ... }:{ nixpkgs.config.packageOverrides = pkgs: { nur = import (builtins.fetchTarball { - url = "https://github.com/nix-community/NUR/archive/7bfd0117b359d0f72d086ff7e1f0ba3aeaf8d91e.tar.gz"; - sha256 = "0gb2np1r2m9kkz1s374gxdqrwhkzx48iircy00y6mjr7h14rhyxk"; + url = "https://github.com/nix-community/NUR/archive/b7f7e072b3fa56aa0d86dfe3689cb13f0615bbbe.tar.gz"; + sha256 = "0slxxg3r460aa1rc83j0rklmr0i1hyzfbjy0kn30fyh1l3lqb22m"; } ){ inherit pkgs; diff --git a/makefu/2configs/share/omo.nix b/makefu/2configs/share/omo.nix index ed5066787..929e5c601 100644 --- a/makefu/2configs/share/omo.nix +++ b/makefu/2configs/share/omo.nix @@ -42,6 +42,18 @@ in { browseable = "yes"; "guest ok" = "yes"; }; + anime = { + path = "/media/cryptX/anime"; + "read only" = "yes"; + browseable = "yes"; + "guest ok" = "yes"; + }; + serien = { + path = "/media/cryptX/series"; + "read only" = "yes"; + browseable = "yes"; + "guest ok" = "yes"; + }; crypX-games = { path = "/media/cryptX/games"; "read only" = "yes"; diff --git a/makefu/2configs/tools/dev.nix b/makefu/2configs/tools/dev.nix index 43892ed2c..f184b5be5 100644 --- a/makefu/2configs/tools/dev.nix +++ b/makefu/2configs/tools/dev.nix @@ -21,6 +21,7 @@ brain whatsupnix nixpkgs-pytools + hydra-check # git-related git-preview tig diff --git a/makefu/2configs/tools/extra-gui.nix b/makefu/2configs/tools/extra-gui.nix index 7c01104a0..49b36a5d7 100644 --- a/makefu/2configs/tools/extra-gui.nix +++ b/makefu/2configs/tools/extra-gui.nix @@ -4,7 +4,7 @@ users.users.makefu.packages = with pkgs;[ # media gimp - mirage + # mirage - last time available in 19.09 inkscape libreoffice # skype diff --git a/makefu/2configs/tools/studio.nix b/makefu/2configs/tools/studio.nix index 2c8ca399d..0998a695e 100644 --- a/makefu/2configs/tools/studio.nix +++ b/makefu/2configs/tools/studio.nix @@ -1,6 +1,9 @@ { pkgs, ... }: { + nixpkgs.config.permittedInsecurePackages = [ + "openssl-1.0.2u" # required for studio-link + ]; users.users.makefu.packages = with pkgs; [ obs-studio studio-link diff --git a/makefu/5pkgs/tinymediamanager/default.nix b/makefu/5pkgs/tinymediamanager/default.nix new file mode 100644 index 000000000..64d00e3a1 --- /dev/null +++ b/makefu/5pkgs/tinymediamanager/default.nix @@ -0,0 +1,38 @@ +{ stdenv, lib, pkgs, fetchurl,libmediainfo,libzen,jre }: +let + tmm-bin = pkgs.writers.writeDash "tinymediamanager" '' + TMMDIR=$(dirname $(readlink -f $0))/../lib/tmm + tmp=$(mktemp -d) # workaround for unwriteable base directory + trap 'rm -rf $tmp' INT TERM EXIT + cd "$tmp" + LD_LIBRARY_PATH=${lib.makeLibraryPath [ libmediainfo libzen ]} \ + ${jre}/bin/java \ + -Dappbase=https://www.tinymediamanager.org/ \ + -Dtmm.contentfolder=$HOME/.config/tmm \ + -classpath "$TMMDIR/tmm.jar:$TMMDIR/lib/*" \ + org.tinymediamanager.TinyMediaManager $@ + ''; +in +stdenv.mkDerivation rec { + pname = "tinymediamanager"; + version = "3.1.5"; + + src = fetchurl { + url = "http://release.tinymediamanager.org/v3/dist/tmm_${version}_linux.tar.gz"; + sha256 = "01nlbkiwvw1cdwrxpdvkkc6g5zrjig22hxbyv1i44ay4wi6vmcax"; + }; + sourceRoot = "."; + + phases = [ "unpackPhase" "installPhase" ]; + installPhase = '' + install -D ${tmm-bin} $out/bin/tinymediamanager + install -d $out/lib + cp -r . $out/lib/tmm + ''; + + meta = { + homepage = http://users.eastlink.ca/~doiron/bin2iso/ ; + description = "converts bin+cue to iso"; + license = lib.licenses.gpl3; + }; +} diff --git a/makefu/krops.nix b/makefu/krops.nix index 13a228d9d..bf2a7a19a 100644 --- a/makefu/krops.nix +++ b/makefu/krops.nix @@ -77,7 +77,7 @@ (lib.mkIf ( host-src.home-manager ) { |