From a07a40b018390b5832da6cf201c26ecfd4d1b7b3 Mon Sep 17 00:00:00 2001 From: makefu Date: Mon, 17 Aug 2020 00:46:25 +0200 Subject: ma pkgs.nsrenamer: init --- makefu/5pkgs/nsrenamer/default.nix | 3 ++ makefu/5pkgs/nsrenamer/nsrenamer.sh | 58 +++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 makefu/5pkgs/nsrenamer/default.nix create mode 100755 makefu/5pkgs/nsrenamer/nsrenamer.sh (limited to 'makefu/5pkgs') diff --git a/makefu/5pkgs/nsrenamer/default.nix b/makefu/5pkgs/nsrenamer/default.nix new file mode 100644 index 000000000..9dbd3ad4f --- /dev/null +++ b/makefu/5pkgs/nsrenamer/default.nix @@ -0,0 +1,3 @@ +{ pkgs,... }: +# TODO: dependencies: coreutils, nx_game_info, +pkgs.writeScriptBin "nsrenamer" ./nsrenamer.sh diff --git a/makefu/5pkgs/nsrenamer/nsrenamer.sh b/makefu/5pkgs/nsrenamer/nsrenamer.sh new file mode 100755 index 000000000..3d60d1ae9 --- /dev/null +++ b/makefu/5pkgs/nsrenamer/nsrenamer.sh @@ -0,0 +1,58 @@ +#!/usr/bin/env bash +set -euf +indir=$(dirname "$1") +inname=$(basename "$1") +out=$(nxgameinfo_cli "$1") +ext=${1##*.} +id=$(awk -F: '/├ Title ID:/{print $2}' <<<$out |xargs) +baseid=$(awk -F: '/Base Title ID:/{print $2}' <<<$out |xargs) +version=$(awk -F: '/├ Display Version:/{print $2}' <<<$out |xargs) +name=$(awk -F: '/Title Name/{print $2}' <<<$out |xargs) +type=$(awk -F: '/Type:/{print $2}' <<<$out | xargs) + +! test -n "$id" && echo "Title ID cannot be empty!" && exit 1 +! test -n "$type" && echo "type cannot be empty!" && exit 1 + +if test "$type" == Base;then + ! test -n "$name" && echo "Title Name cannot be empty!" && exit 1 + NAME="[$id] $name Base Game.$ext" +elif test "$type" == Update;then + ! test -n "$name" && echo "Title Name cannot be empty!" && exit 1 + ! test -n "$version" && echo "Version cannot be empty!" && exit 1 + NAME="[$id] $name Update $version.$ext" +elif test "$type" == DLC;then + dlcname=$(jq -r --arg id "$id" '.[$id].name' < ~/.switch/titles.US.en.json) + if test -n "$dlcname" ;then + NAME="[$id] $dlcname DLC.$ext" + else + ! test -n "$name" && echo "dlcname cannot be found in titles.US.en.json and $name is empty!" && exit 1 + NAME="[$id] $name DLC.$ext" + fi +else + echo "unknown type '$type'" + exit 1 +fi +newname=$indir/$NAME + +if test "$NAME" == "${inname}";then + echo "name didn't change,doing nothing" + exit 0 +fi +if test -e "$newname" ;then + echo "'$NAME' already exists, will not override" + exit 1 +fi + +if test -n "${FORCE:-}" ;then + CONFIRM=y +else + read -p "rename '$inname' to '$NAME' - [y/N]" CONFIRM +fi + +if test -n "${FORCE:-}" -o "$CONFIRM" == "y" -o "$CONFIRM" == "Y";then + mv -nv "$1" "$newname" +else + echo "bailing out" + exit 1 +fi + -- cgit v1.2.3 From 9b30bf0814bd142052c30d0184d589fede04e1cf Mon Sep 17 00:00:00 2001 From: makefu Date: Tue, 18 Aug 2020 23:26:51 +0200 Subject: ma pkgs.nsrenamer: new naming scheme --- makefu/5pkgs/nsrenamer/default.nix | 2 +- makefu/5pkgs/nsrenamer/nsrenamer.sh | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) (limited to 'makefu/5pkgs') diff --git a/makefu/5pkgs/nsrenamer/default.nix b/makefu/5pkgs/nsrenamer/default.nix index 9dbd3ad4f..16b9a4f20 100644 --- a/makefu/5pkgs/nsrenamer/default.nix +++ b/makefu/5pkgs/nsrenamer/default.nix @@ -1,3 +1,3 @@ { pkgs,... }: # TODO: dependencies: coreutils, nx_game_info, -pkgs.writeScriptBin "nsrenamer" ./nsrenamer.sh +pkgs.writeScriptBin "nsrenamer" (builtins.readFile ./nsrenamer.sh) diff --git a/makefu/5pkgs/nsrenamer/nsrenamer.sh b/makefu/5pkgs/nsrenamer/nsrenamer.sh index 3d60d1ae9..16aec3113 100755 --- a/makefu/5pkgs/nsrenamer/nsrenamer.sh +++ b/makefu/5pkgs/nsrenamer/nsrenamer.sh @@ -4,29 +4,29 @@ indir=$(dirname "$1") inname=$(basename "$1") out=$(nxgameinfo_cli "$1") ext=${1##*.} -id=$(awk -F: '/├ Title ID:/{print $2}' <<<$out |xargs) -baseid=$(awk -F: '/Base Title ID:/{print $2}' <<<$out |xargs) -version=$(awk -F: '/├ Display Version:/{print $2}' <<<$out |xargs) -name=$(awk -F: '/Title Name/{print $2}' <<<$out |xargs) -type=$(awk -F: '/Type:/{print $2}' <<<$out | xargs) +id=$(awk -F: '/├ Title ID:/{print $2}' <<<"$out" |xargs) +baseid=$(awk -F: '/Base Title ID:/{print $2}' <<<"$out" |xargs) +version=$(awk -F: '/├ Version:/{print $2}' <<<"$out" |xargs) +name=$(awk -F: '/Title Name/{print $2}' <<<"$out" | sed "s/[:']//g" | xargs ) +type=$(awk -F: '/Type:/{print $2}' <<<"$out" | xargs) ! test -n "$id" && echo "Title ID cannot be empty!" && exit 1 ! test -n "$type" && echo "type cannot be empty!" && exit 1 if test "$type" == Base;then ! test -n "$name" && echo "Title Name cannot be empty!" && exit 1 - NAME="[$id] $name Base Game.$ext" + NAME="$name [$id][v$version].$ext" elif test "$type" == Update;then ! test -n "$name" && echo "Title Name cannot be empty!" && exit 1 ! test -n "$version" && echo "Version cannot be empty!" && exit 1 - NAME="[$id] $name Update $version.$ext" + NAME="$name [UPD][$id][v$version].$ext" elif test "$type" == DLC;then - dlcname=$(jq -r --arg id "$id" '.[$id].name' < ~/.switch/titles.US.en.json) + dlcname=$(jq -r --arg id "$id" '.[$id].name' < ~/.switch/titles.US.en.json | sed "s/[:']//g") if test -n "$dlcname" ;then - NAME="[$id] $dlcname DLC.$ext" + NAME="$dlcname [DLC][$id][v$version].$ext" else ! test -n "$name" && echo "dlcname cannot be found in titles.US.en.json and $name is empty!" && exit 1 - NAME="[$id] $name DLC.$ext" + NAME="$dlcname [DLC][$id][v$version].$ext" fi else echo "unknown type '$type'" -- cgit v1.2.3 From 865f527886722416c9a65a6b31ef7cff1f3e45ca Mon Sep 17 00:00:00 2001 From: makefu Date: Wed, 2 Sep 2020 00:19:59 +0200 Subject: ma pkgs.chapter-marker: bump to latest master --- makefu/5pkgs/chapter-marker/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'makefu/5pkgs') diff --git a/makefu/5pkgs/chapter-marker/default.nix b/makefu/5pkgs/chapter-marker/default.nix index fe3e48142..5ffb63ae9 100644 --- a/makefu/5pkgs/chapter-marker/default.nix +++ b/makefu/5pkgs/chapter-marker/default.nix @@ -1,4 +1,4 @@ -{ coreutils, fetchFromGitHub, makeWrapper, xdotool, stdenv, ... }: +{ coreutils, fetchFromGitHub, makeWrapper, xclip, libnotify, stdenv, ... }: stdenv.mkDerivation rec { name = "chapter-marker-${version}"; @@ -6,8 +6,8 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "makefu"; repo = "chapter-marker"; - rev = "7602b611fb3d67fdb8a86db23220074dfa9dfa1e"; - sha256 = "0cwh650c3qhdrcvrqfzgrwpsnj4lbq64fw2sfwvnbxz94b4q36av"; + rev = "71b9bb8bc4d6fa87de6bea8f42d5486d05cf5443"; + sha256 = "13cvk24pwwyv9i21h57690s5niwkcrcvn8l24zfxwbgq0wwzw38x"; }; buildInputs = [ makeWrapper ]; @@ -16,7 +16,8 @@ stdenv.mkDerivation rec { let path = stdenv.lib.makeBinPath [ coreutils - xdotool + libnotify + xclip ]; in '' -- cgit v1.2.3 From 8bec9d2662ba65e3c65c6e416618af24a4d6832f Mon Sep 17 00:00:00 2001 From: makefu Date: Wed, 2 Sep 2020 00:43:34 +0200 Subject: ma pkgs.awesomecfg: start chapter-marks with ctrl-u, create new entry with ctrl-j --- makefu/5pkgs/awesomecfg/full.cfg | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'makefu/5pkgs') diff --git a/makefu/5pkgs/awesomecfg/full.cfg b/makefu/5pkgs/awesomecfg/full.cfg index d96b61ad6..86b401cfa 100644 --- a/makefu/5pkgs/awesomecfg/full.cfg +++ b/makefu/5pkgs/awesomecfg/full.cfg @@ -376,6 +376,12 @@ globalkeys = awful.util.table.join( awful.key({ }, "XF86AudioMute", function () awful.util.spawn("@alsaUtils@/bin/amixer -q -D default sset Master toggle", false) end), + -- chapter-marker + awful.key({ "Control" }, "u", function () awful.spawn("@chaptermarker@/bin/chapter-start") end, + {description = "start the chapter marker",}), + awful.key({ "Control" }, "j", function () awful.spawn("@chaptermarker@/bin/chapter-mark") end, + {description = "create a chapter mark",}), + -- Prompt awful.key({ modkey }, "r", function () awful.screen.focused().mypromptbox:run() end, {description = "run prompt", group = "launcher"}), @@ -492,9 +498,16 @@ awful.rules.rules = { properties = { floating = true } }, --{ rule = { class = "gimp" }, -- properties = { floating = true } }, - -- Set Firefox to always map on tags number 2 of screen 1. - -- { rule = { class = "Firefox" }, - -- properties = { tag = tags[1][2] } }, + { rule = { class = "Firefox" }, + properties = { tag = tags[3] } }, + { rule = { class = "signal-desktop" }, + properties = { tag = tags[4] } }, + { rule = { class = "telegram-desktop" }, + properties = { tag = tags[4] } }, + { rule = { class = "mutt" }, + properties = { tag = tags[5] } }, + { rule = { class = "mosh" }, + properties = { tag = tags[2] } }, } -- }}} @@ -569,7 +582,7 @@ local os = { -- {{{ autostart do - awful.spawn("urxvt", { tag = tags[1] }) -- dev shell + -- awful.spawn("urxvt", { tag = tags[1] }) -- dev shell awful.spawn("urxvt -e mosh makefu@gum.i", { tag = tags[2] }) awful.spawn("firefox", { tag = tags[3] }) awful.spawn("telegram-desktop", { tag = tags[4] }) -- cgit v1.2.3