diff options
author | sternenseemann <sternenseemann@systemli.org> | 2022-03-19 21:16:36 +0100 |
---|---|---|
committer | sternenseemann <sternenseemann@systemli.org> | 2022-03-22 20:19:30 +0100 |
commit | 9ca3bf86f4866b0c25a7b80e1a1bfff9a508972c (patch) | |
tree | b603133dd5dedb74a3c27027a3043ee62f0271cb /pkgs/sternenseemann/schmecgit | |
parent | fc54477d4ee7e537c115e82c80b85ae5bbb89307 (diff) |
pkgs/sternenseemann: drop some unused stuff
Diffstat (limited to 'pkgs/sternenseemann/schmecgit')
-rw-r--r-- | pkgs/sternenseemann/schmecgit/default.nix | 37 | ||||
-rw-r--r-- | pkgs/sternenseemann/schmecgit/main.c | 105 |
2 files changed, 0 insertions, 142 deletions
diff --git a/pkgs/sternenseemann/schmecgit/default.nix b/pkgs/sternenseemann/schmecgit/default.nix deleted file mode 100644 index 982b2c1d..00000000 --- a/pkgs/sternenseemann/schmecgit/default.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ runCommandWith -, stdenv -, lib -, lowdown -, chroma -, substituteAll -}: - -let - src = substituteAll { - src = ./main.c; - chroma = "${lib.getBin chroma}/bin/chroma"; - lowdown = "${lib.getBin lowdown}/bin/lowdown"; - }; -in - -runCommandWith { - name = "schmecgit"; - inherit stdenv; - derivationArgs.meta = { - description = "schmeck it, about and source filter for cgit"; - license = lib.licenses.gpl2Plus; - platforms = lib.platforms.unix; - }; -} '' - mkdir -p "$out/bin" - - # compile main executable - clang -o "$out/bin/schmecgit" -pedantic -Wall -Wextra -Werror -std=c99 ${src} - - # wrapper script for cgit about filter - cat > "$out/bin/schmecgit-about" <<EOF - #!${stdenv.shell} - exec "$out/bin/schmecgit" --about \$@ - EOF - chmod +x "$out/bin/schmecgit-about" -'' diff --git a/pkgs/sternenseemann/schmecgit/main.c b/pkgs/sternenseemann/schmecgit/main.c deleted file mode 100644 index 1b3b4ada..00000000 --- a/pkgs/sternenseemann/schmecgit/main.c +++ /dev/null @@ -1,105 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -#include <stdbool.h> -#include <stdio.h> -#include <string.h> -#include <strings.h> -#include <unistd.h> - -enum file_type { - PLAIN, - MARKDOWN, - HTML, - CODE -}; - -void output_xml_escaped_char(char c, FILE *out) { - switch(c) { - case '&': - fputs("&", out); - break; - case '<': - fputs("<", out); - break; - case '>': - fputs(">", out); - break; - case '\'': - fputs("'", out); - break; - case '\"': - fputs(""", out); - break; - default: - fputc(c, out); - break; - } -} - -int main(int argc, char *argv[]) { - bool about_filter; - char *file; - - if(argc == 2) { - about_filter = 0; - file = argv[1]; - } else if(argc == 3 && strcmp(argv[1], "--about") == 0) { - about_filter = 1; - file = argv[2]; - } else { - fprintf(stderr, "Usage: %s [--about] BASENAME\n", argv[0]); - return 1; - } - - char *extension = rindex(file, '.'); - enum file_type ft = PLAIN; - - if(extension != NULL) { - extension++; - - if(about_filter && (strcmp(extension, "md") == 0 || strcmp(extension, "markdown") == 0)) { - ft = MARKDOWN; - } else if(about_filter && (strcmp(extension, "html") == 0 || strcmp(extension, "htm") == 0)) { - ft = HTML; - } else if(strcmp(extension, "txt") == 0) { - ft = PLAIN; - } else { - ft = CODE; - } - } else { - if(strcmp(file, "Makefile") == 0 || strcmp(file, "Doxyfile")) { - ft = CODE; - } - } - - if(ft == PLAIN || ft == HTML) { - char c; - if(ft == PLAIN) { - fputs("<pre>", stdout); - } - - while((c = fgetc(stdin)) != EOF) { - if(ft == HTML) { - fputc(c, stdout); - } else { - output_xml_escaped_char(c, stdout); - } - } - - if(ft == PLAIN) { - fputs("</pre>", stdout); - } - } else if(ft == MARKDOWN) { - return execl("@lowdown@", "lowdown", NULL); - } else if(ft == CODE) { - return execl( - "@chroma@", "chroma", "--filename", file, - "--html", "--html-tab-width=2", "--html-only", "--html-inline-styles", - "--style=lovelace", - NULL - ); - } else { - return 1; - } - - return 0; -} |