refactor(modules): rewrite some modules; add dconf
This commit is contained in:
parent
14c7e10e8b
commit
7938019d55
15 changed files with 131 additions and 59 deletions
|
@ -4,15 +4,12 @@
|
|||
lib,
|
||||
...
|
||||
}: let
|
||||
cfg = config.alqueva.xonsh;
|
||||
attrsToPyDict = attrs: (lib.pipe attrs [
|
||||
(builtins.mapAttrs (n: v: "aliases['${n}'] = '${v}'"))
|
||||
builtins.attrValues
|
||||
(lib.concatStringsSep "\n")
|
||||
(s: s + "\n")
|
||||
]);
|
||||
cfg = config.alqueva.shells.xonsh;
|
||||
aliasesToPyDict = aliases:
|
||||
lib.concatStringsSep "\n"
|
||||
(lib.mapAttrsToList (k: v: "aliases['${k}'] = '${v}'") aliases);
|
||||
in {
|
||||
options.alqueva.xonsh = {
|
||||
options.alqueva.shells.xonsh = {
|
||||
enable = lib.mkEnableOption "xonsh";
|
||||
package = lib.mkPackageOption pkgs "xonsh" {};
|
||||
};
|
||||
|
@ -20,13 +17,14 @@ in {
|
|||
config = lib.mkIf cfg.enable {
|
||||
programs = {
|
||||
xonsh = {
|
||||
config =
|
||||
"from xonsh.xontribs import get_xontribs\n"
|
||||
+ attrsToPyDict config.environment.shellAliases
|
||||
+ ''
|
||||
for xontrib in get_xontribs():
|
||||
xontrib load @(xontrib)
|
||||
'';
|
||||
config = ''
|
||||
from xonsh.xontribs import get_xontribs
|
||||
|
||||
${aliasesToPyDict config.environment.shellAliases}
|
||||
|
||||
for xontrib in get_xontribs():
|
||||
xontrib load @(xontrib)
|
||||
'';
|
||||
inherit (cfg) package;
|
||||
enable = true;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue