Skip to content
View tsssni's full-sized avatar
老爷爷, 我给你踩背来咯
老爷爷, 我给你踩背来咯
  • CAD&CG, Zhejiang University
  • Hangzhou, China
  • 15:03 (UTC +08:00)

Block or report tsssni

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
tsssni/README.md

plana

GIF from 五臓六腑七

tsssni.nix

{
pkgs
, lib
, config
, ...
}:
let
  cfg = config.tsssni;
in {
  options.tsssni = let
    mkBool = desc: lib.mkEnableOption ("whether tsssni is using " + desc);
  in {
    systemSupport = mkBool "current system";
    languagesSupport = mkBool "languages supported by launched treesitters";
    editorSupport = mkBool "specific code editor";
    riceSupport = mkBool "specific programs for unix ricing";
    graphicsSupport = let
      apisOptions = apiLists: lib.mapListsToAttrs apiLists (api: mkBool api);
    in {}
      ++ (apisOptions [ "vulkan" "opengl" "d3d12" "d3d11" "d3d9" "metal" ]);
  };

  config.tsssni = lib.mkIf cfg.enable (
    let
      anyPackageIn = pkgsList: list: (builtins.any (p: builtins.elem p list) pkgsList);
      anyEnabled = attrsList: (builtins.any (attrs: attrs.enable) attrsList);
    in with pkgs; {
      systemSupport = let system = stdenv.hostPlatform; in false
        || (system.isLinux && system.isx86_64)
        || (system.isDarwin && system.isAaarch64);

      languageSupport = anyPackageIn (with vimPlugins.nvim-treesitter.builtGrammars; [
        c
        cmake
        cpp
        glsl
        hlsl
        nix
      ]) config.nixvim.plugins.treesittter.grammarPackages;

      graphicsSupport = {
        vulkan = true;
        opengl = true;
        d3d12 = true;
      };

      editorSupport = config.nixvim.defaultEditor;

      riceSupport = anyEnabled (with config.programs; [  
        hyprland
        ags
      ]);
    });
}

tsssni.github-stats

Pinned Loading

  1. carol-engine carol-engine Public

    Real-time renderer based on Direct3D 12

    C++ 5

  2. tsssni.nix tsssni.nix Public

    tsssni's modules & functions & packages & system configs shared via flake

    Nix 6 1