My nixos configuration
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

chore: remove python

-71
-1
home/modules/default.nix
··· 6 6 7 7 "languages" = import ./languages inputs; 8 8 "languages/nix" = import ./languages/nix inputs; 9 - "languages/python" = import ./languages/python inputs; 10 9 "languages/rust" = import ./languages/rust inputs; 11 10 "languages/tex" = import ./languages/tex inputs; 12 11 "languages/terraform" = import ./languages/terraform inputs;
-70
home/modules/languages/python/default.nix
··· 1 - _: { 2 - config, 3 - lib, 4 - pkgs, 5 - ... 6 - }: let 7 - cfg = config.languages.python; 8 - pyls = "${pkgs.python310Packages.python-lsp-server}/bin/pylsp"; 9 - mspyls = "${pkgs.python-language-server}/bin/python-language-server"; 10 - 11 - lsBin = 12 - if cfg.useMS 13 - then mspyls 14 - else pyls; 15 - 16 - lsHook = 17 - if cfg.useMS 18 - then "(add-hook 'python-mode-hook (lambda () (require 'lsp-python-ms) (lsp)))" 19 - else ""; 20 - lsExec = 21 - if cfg.useMS 22 - then ''(setq lsp-python-ms-executable "${lsBin}")'' 23 - else ''(setq lsp-pyls-server-command '("${lsBin}"))''; 24 - in { 25 - options.languages.python = { 26 - enable = lib.mkEnableOption "Enable support for python language"; 27 - useMS = lib.mkEnableOption "Use MS language server rather than palantirs"; 28 - }; 29 - 30 - config = lib.mkIf cfg.enable { 31 - programs.emacs.lsp-mode = { 32 - enable = true; 33 - languages = 34 - if cfg.useMS 35 - then [] 36 - else ["python"]; 37 - }; 38 - 39 - programs.emacs.localPackages."init-python" = { 40 - tag = "Setup and prepare the python language modes"; 41 - comments = []; 42 - requires = []; 43 - packageRequires = ep: 44 - [ 45 - ep.lsp-pyright 46 - ep.python-docstring 47 - (config.programs.emacs.localPackages."init-lsp".packageRequires ep) 48 - ] 49 - ++ ( 50 - if cfg.useMS 51 - then [ep.lsp-python-ms] 52 - else [] 53 - ); 54 - code = '' 55 - ${lsHook} 56 - 57 - ${lsExec} 58 - 59 - (add-hook 'python-mode-hook 60 - (lambda () 61 - (require 'lsp-pyright) 62 - (subword-mode) 63 - (company-mode) 64 - (flycheck-mode) 65 - (python-docstring-mode) 66 - (lsp))) 67 - ''; 68 - }; 69 - }; 70 - }