From 6bf6c826980ea718b430ba069176cfea09587972 Mon Sep 17 00:00:00 2001 From: rycee Date: Sat, 9 Dec 2023 08:36:28 +0000 Subject: [PATCH] deploy: 7db6291d95693374d408f4877c265ec7481f222b --- highlight.load.js | 35 - highlight.min.js | 340 - highlightjs/LICENSE | 29 + highlightjs/highlight-style.css | 8 + highlightjs/highlight.pack.js | 345 + highlightjs/loader.js | 6 + highlightjs/mono-blue.css | 56 + .../tomorrow-night.min.css | 0 images/callouts/1.svg | 15 - images/callouts/10.svg | 18 - images/callouts/11.svg | 16 - images/callouts/12.svg | 18 - images/callouts/13.svg | 20 - images/callouts/14.svg | 17 - images/callouts/15.svg | 19 - images/callouts/16.svg | 20 - images/callouts/17.svg | 17 - images/callouts/18.svg | 21 - images/callouts/19.svg | 20 - images/callouts/2.svg | 17 - images/callouts/20.svg | 20 - images/callouts/21.svg | 18 - images/callouts/22.svg | 20 - images/callouts/23.svg | 22 - images/callouts/24.svg | 19 - images/callouts/25.svg | 21 - images/callouts/26.svg | 22 - images/callouts/27.svg | 19 - images/callouts/28.svg | 23 - images/callouts/29.svg | 22 - images/callouts/3.svg | 19 - images/callouts/30.svg | 22 - images/callouts/4.svg | 16 - images/callouts/5.svg | 18 - images/callouts/6.svg | 19 - images/callouts/7.svg | 16 - images/callouts/8.svg | 20 - images/callouts/9.svg | 19 - index.html | 673 - index.xhtml | 964 + nix-darwin-options.html | 264 +- nixos-options.html | 264 +- options.html | 84415 +++++++++++++--- release-notes.html | 469 - style.css | 7 - tomorrow.min.css | 7 - tools.html | 322 - 47 files changed, 73598 insertions(+), 15179 deletions(-) delete mode 100644 highlight.load.js delete mode 100644 highlight.min.js create mode 100644 highlightjs/LICENSE create mode 100644 highlightjs/highlight-style.css create mode 100644 highlightjs/highlight.pack.js create mode 100644 highlightjs/loader.js create mode 100644 highlightjs/mono-blue.css rename tomorrow-night.min.css => highlightjs/tomorrow-night.min.css (100%) delete mode 100644 images/callouts/1.svg delete mode 100644 images/callouts/10.svg delete mode 100644 images/callouts/11.svg delete mode 100644 images/callouts/12.svg delete mode 100644 images/callouts/13.svg delete mode 100644 images/callouts/14.svg delete mode 100644 images/callouts/15.svg delete mode 100644 images/callouts/16.svg delete mode 100644 images/callouts/17.svg delete mode 100644 images/callouts/18.svg delete mode 100644 images/callouts/19.svg delete mode 100644 images/callouts/2.svg delete mode 100644 images/callouts/20.svg delete mode 100644 images/callouts/21.svg delete mode 100644 images/callouts/22.svg delete mode 100644 images/callouts/23.svg delete mode 100644 images/callouts/24.svg delete mode 100644 images/callouts/25.svg delete mode 100644 images/callouts/26.svg delete mode 100644 images/callouts/27.svg delete mode 100644 images/callouts/28.svg delete mode 100644 images/callouts/29.svg delete mode 100644 images/callouts/3.svg delete mode 100644 images/callouts/30.svg delete mode 100644 images/callouts/4.svg delete mode 100644 images/callouts/5.svg delete mode 100644 images/callouts/6.svg delete mode 100644 images/callouts/7.svg delete mode 100644 images/callouts/8.svg delete mode 100644 images/callouts/9.svg delete mode 100644 index.html create mode 100644 index.xhtml delete mode 100644 release-notes.html delete mode 100644 style.css delete mode 100644 tomorrow.min.css delete mode 100644 tools.html diff --git a/highlight.load.js b/highlight.load.js deleted file mode 100644 index d83e168e..00000000 --- a/highlight.load.js +++ /dev/null @@ -1,35 +0,0 @@ -/* This file is NOT part of highlight.js */ - -class PreserveCallouts { - - constructor(options) { - self.callouts = []; - /* Using OBJECT REPLACEMENT CHARACTER as a marker of where the callout - should be inserted. We hope that this won't cause conflicts. */ - self.marker = '\u{FFFC}'; - } - - 'before:highlightElement'({el, language}) { - const re = /<\/a>\d+<\/span>/g; - const array = [...el.innerHTML.matchAll(re)]; - if (array.length > 0) { - self.callouts = array; - el.innerHTML = el.innerHTML.replaceAll(re, self.marker); - } - } - - 'after:highlightElement'({ el, result, text }) { - if (self.callouts.length > 0) { - el.innerHTML = el.innerHTML.replaceAll( - self.marker, (str) => self.callouts.shift()); - } - } -} - -document.addEventListener('DOMContentLoaded', (event) => { - hljs.addPlugin(new PreserveCallouts()); - - document.querySelectorAll('pre.programlisting, pre.screen').forEach((el) => { - hljs.highlightElement(el); - }); -}); diff --git a/highlight.min.js b/highlight.min.js deleted file mode 100644 index bcd65564..00000000 --- a/highlight.min.js +++ /dev/null @@ -1,340 +0,0 @@ -/*! - Highlight.js v11.7.0 (git: 82688fad18) - (c) 2006-2022 undefined and other contributors - License: BSD-3-Clause - */ -var hljs=function(){"use strict";var e={exports:{}};function t(e){ -return e instanceof Map?e.clear=e.delete=e.set=()=>{ -throw Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=()=>{ -throw Error("set is read-only") -}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach((n=>{var i=e[n] -;"object"!=typeof i||Object.isFrozen(i)||t(i)})),e} -e.exports=t,e.exports.default=t;class n{constructor(e){ -void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} -ignoreMatch(){this.isMatchIgnored=!0}}function i(e){ -return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") -}function r(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] -;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n} -const s=e=>!!e.scope||e.sublanguage&&e.language;class o{constructor(e,t){ -this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ -this.buffer+=i(e)}openNode(e){if(!s(e))return;let t="" -;t=e.sublanguage?"language-"+e.language:((e,{prefix:t})=>{if(e.includes(".")){ -const n=e.split(".") -;return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ") -}return`${t}${e}`})(e.scope,{prefix:this.classPrefix}),this.span(t)} -closeNode(e){s(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ -this.buffer+=``}}const a=(e={})=>{const t={children:[]} -;return Object.assign(t,e),t};class c{constructor(){ -this.rootNode=a(),this.stack=[this.rootNode]}get top(){ -return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ -this.top.children.push(e)}openNode(e){const t=a({scope:e}) -;this.add(t),this.stack.push(t)}closeNode(){ -if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ -for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} -walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ -return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), -t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ -"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ -c._collapse(e)})))}}class l extends c{constructor(e){super(),this.options=e} -addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())} -addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root -;n.sublanguage=!0,n.language=t,this.add(n)}toHTML(){ -return new o(this,this.options).value()}finalize(){return!0}}function g(e){ -return e?"string"==typeof e?e:e.source:null}function d(e){return p("(?=",e,")")} -function u(e){return p("(?:",e,")*")}function h(e){return p("(?:",e,")?")} -function p(...e){return e.map((e=>g(e))).join("")}function f(...e){const t=(e=>{ -const t=e[e.length-1] -;return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{} -})(e);return"("+(t.capture?"":"?:")+e.map((e=>g(e))).join("|")+")"} -function b(e){return RegExp(e.toString()+"|").exec("").length-1} -const m=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ -;function E(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n -;let i=g(e),r="";for(;i.length>0;){const e=m.exec(i);if(!e){r+=i;break} -r+=i.substring(0,e.index), -i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?r+="\\"+(Number(e[1])+t):(r+=e[0], -"("===e[0]&&n++)}return r})).map((e=>`(${e})`)).join(t)} -const x="[a-zA-Z]\\w*",w="[a-zA-Z_]\\w*",y="\\b\\d+(\\.\\d+)?",_="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",O="\\b(0b[01]+)",v={ -begin:"\\\\[\\s\\S]",relevance:0},N={scope:"string",begin:"'",end:"'", -illegal:"\\n",contains:[v]},k={scope:"string",begin:'"',end:'"',illegal:"\\n", -contains:[v]},M=(e,t,n={})=>{const i=r({scope:"comment",begin:e,end:t, -contains:[]},n);i.contains.push({scope:"doctag", -begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", -end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) -;const s=f("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) -;return i.contains.push({begin:p(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i -},S=M("//","$"),R=M("/\\*","\\*/"),j=M("#","$");var A=Object.freeze({ -__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:x,UNDERSCORE_IDENT_RE:w, -NUMBER_RE:y,C_NUMBER_RE:_,BINARY_NUMBER_RE:O, -RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", -SHEBANG:(e={})=>{const t=/^#![ ]*\// -;return e.binary&&(e.begin=p(t,/.*\b/,e.binary,/\b.*/)),r({scope:"meta",begin:t, -end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)}, -BACKSLASH_ESCAPE:v,APOS_STRING_MODE:N,QUOTE_STRING_MODE:k,PHRASAL_WORDS_MODE:{ -begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ -},COMMENT:M,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:R,HASH_COMMENT_MODE:j, -NUMBER_MODE:{scope:"number",begin:y,relevance:0},C_NUMBER_MODE:{scope:"number", -begin:_,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:O,relevance:0}, -REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//, -end:/\/[gimuy]*/,illegal:/\n/,contains:[v,{begin:/\[/,end:/\]/,relevance:0, -contains:[v]}]}]},TITLE_MODE:{scope:"title",begin:x,relevance:0}, -UNDERSCORE_TITLE_MODE:{scope:"title",begin:w,relevance:0},METHOD_GUARD:{ -begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ -"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ -t.data._beginMatch!==e[1]&&t.ignoreMatch()}})});function I(e,t){ -"."===e.input[e.index-1]&&t.ignoreMatch()}function T(e,t){ -void 0!==e.className&&(e.scope=e.className,delete e.className)}function L(e,t){ -t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", -e.__beforeBegin=I,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, -void 0===e.relevance&&(e.relevance=0))}function B(e,t){ -Array.isArray(e.illegal)&&(e.illegal=f(...e.illegal))}function D(e,t){ -if(e.match){ -if(e.begin||e.end)throw Error("begin & end are not supported with match") -;e.begin=e.match,delete e.match}}function H(e,t){ -void 0===e.relevance&&(e.relevance=1)}const P=(e,t)=>{if(!e.beforeMatch)return -;if(e.starts)throw Error("beforeMatch cannot be used with starts") -;const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t] -})),e.keywords=n.keywords,e.begin=p(n.beforeMatch,d(n.begin)),e.starts={ -relevance:0,contains:[Object.assign(n,{endsParent:!0})] -},e.relevance=0,delete n.beforeMatch -},C=["of","and","for","in","not","or","if","then","parent","list","value"] -;function $(e,t,n="keyword"){const i=Object.create(null) -;return"string"==typeof e?r(n,e.split(" ")):Array.isArray(e)?r(n,e):Object.keys(e).forEach((n=>{ -Object.assign(i,$(e[n],t,n))})),i;function r(e,n){ -t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|") -;i[n[0]]=[e,U(n[0],n[1])]}))}}function U(e,t){ -return t?Number(t):(e=>C.includes(e.toLowerCase()))(e)?0:1}const z={},K=e=>{ -console.error(e)},W=(e,...t)=>{console.log("WARN: "+e,...t)},X=(e,t)=>{ -z[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),z[`${e}/${t}`]=!0) -},G=Error();function Z(e,t,{key:n}){let i=0;const r=e[n],s={},o={} -;for(let e=1;e<=t.length;e++)o[e+i]=r[e],s[e+i]=!0,i+=b(t[e-1]) -;e[n]=o,e[n]._emit=s,e[n]._multi=!0}function F(e){(e=>{ -e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, -delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ -_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope -}),(e=>{if(Array.isArray(e.begin)){ -if(e.skip||e.excludeBegin||e.returnBegin)throw K("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), -G -;if("object"!=typeof e.beginScope||null===e.beginScope)throw K("beginScope must be object"), -G;Z(e,e.begin,{key:"beginScope"}),e.begin=E(e.begin,{joinWith:""})}})(e),(e=>{ -if(Array.isArray(e.end)){ -if(e.skip||e.excludeEnd||e.returnEnd)throw K("skip, excludeEnd, returnEnd not compatible with endScope: {}"), -G -;if("object"!=typeof e.endScope||null===e.endScope)throw K("endScope must be object"), -G;Z(e,e.end,{key:"endScope"}),e.end=E(e.end,{joinWith:""})}})(e)}function V(e){ -function t(t,n){ -return RegExp(g(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":"")) -}class n{constructor(){ -this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} -addRule(e,t){ -t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), -this.matchAt+=b(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) -;const e=this.regexes.map((e=>e[1]));this.matcherRe=t(E(e,{joinWith:"|" -}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex -;const t=this.matcherRe.exec(e);if(!t)return null -;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n] -;return t.splice(0,n),Object.assign(t,i)}}class i{constructor(){ -this.rules=[],this.multiRegexes=[], -this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ -if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n -;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), -t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ -return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ -this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ -const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex -;let n=t.exec(e) -;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ -const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} -return n&&(this.regexIndex+=n.position+1, -this.regexIndex===this.count&&this.considerAll()),n}} -if(e.compilerExtensions||(e.compilerExtensions=[]), -e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") -;return e.classNameAliases=r(e.classNameAliases||{}),function n(s,o){const a=s -;if(s.isCompiled)return a -;[T,D,F,P].forEach((e=>e(s,o))),e.compilerExtensions.forEach((e=>e(s,o))), -s.__beforeBegin=null,[L,B,H].forEach((e=>e(s,o))),s.isCompiled=!0;let c=null -;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords), -c=s.keywords.$pattern, -delete s.keywords.$pattern),c=c||/\w+/,s.keywords&&(s.keywords=$(s.keywords,e.case_insensitive)), -a.keywordPatternRe=t(c,!0), -o&&(s.begin||(s.begin=/\B|\b/),a.beginRe=t(a.begin),s.end||s.endsWithParent||(s.end=/\B|\b/), -s.end&&(a.endRe=t(a.end)), -a.terminatorEnd=g(a.end)||"",s.endsWithParent&&o.terminatorEnd&&(a.terminatorEnd+=(s.end?"|":"")+o.terminatorEnd)), -s.illegal&&(a.illegalRe=t(s.illegal)), -s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>r(e,{ -variants:null},t)))),e.cachedVariants?e.cachedVariants:q(e)?r(e,{ -starts:e.starts?r(e.starts):null -}):Object.isFrozen(e)?r(e):e))("self"===e?s:e)))),s.contains.forEach((e=>{n(e,a) -})),s.starts&&n(s.starts,o),a.matcher=(e=>{const t=new i -;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" -}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" -}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(a),a}(e)}function q(e){ -return!!e&&(e.endsWithParent||q(e.starts))}class J extends Error{ -constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}} -const Y=i,Q=r,ee=Symbol("nomatch");var te=(t=>{ -const i=Object.create(null),r=Object.create(null),s=[];let o=!0 -;const a="Could not find the language '{}', did you forget to load/include a language module?",c={ -disableAutodetect:!0,name:"Plain text",contains:[]};let g={ -ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, -languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", -cssSelector:"pre code",languages:null,__emitter:l};function b(e){ -return g.noHighlightRe.test(e)}function m(e,t,n){let i="",r="" -;"object"==typeof t?(i=e, -n=t.ignoreIllegals,r=t.language):(X("10.7.0","highlight(lang, code, ...args) has been deprecated."), -X("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), -r=e,i=t),void 0===n&&(n=!0);const s={code:i,language:r};k("before:highlight",s) -;const o=s.result?s.result:E(s.language,s.code,n) -;return o.code=s.code,k("after:highlight",o),o}function E(e,t,r,s){ -const c=Object.create(null);function l(){if(!N.keywords)return void M.addText(S) -;let e=0;N.keywordPatternRe.lastIndex=0;let t=N.keywordPatternRe.exec(S),n="" -;for(;t;){n+=S.substring(e,t.index) -;const r=y.case_insensitive?t[0].toLowerCase():t[0],s=(i=r,N.keywords[i]);if(s){ -const[e,i]=s -;if(M.addText(n),n="",c[r]=(c[r]||0)+1,c[r]<=7&&(R+=i),e.startsWith("_"))n+=t[0];else{ -const n=y.classNameAliases[e]||e;M.addKeyword(t[0],n)}}else n+=t[0] -;e=N.keywordPatternRe.lastIndex,t=N.keywordPatternRe.exec(S)}var i -;n+=S.substring(e),M.addText(n)}function d(){null!=N.subLanguage?(()=>{ -if(""===S)return;let e=null;if("string"==typeof N.subLanguage){ -if(!i[N.subLanguage])return void M.addText(S) -;e=E(N.subLanguage,S,!0,k[N.subLanguage]),k[N.subLanguage]=e._top -}else e=x(S,N.subLanguage.length?N.subLanguage:null) -;N.relevance>0&&(R+=e.relevance),M.addSublanguage(e._emitter,e.language) -})():l(),S=""}function u(e,t){let n=1;const i=t.length-1;for(;n<=i;){ -if(!e._emit[n]){n++;continue}const i=y.classNameAliases[e[n]]||e[n],r=t[n] -;i?M.addKeyword(r,i):(S=r,l(),S=""),n++}}function h(e,t){ -return e.scope&&"string"==typeof e.scope&&M.openNode(y.classNameAliases[e.scope]||e.scope), -e.beginScope&&(e.beginScope._wrap?(M.addKeyword(S,y.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), -S=""):e.beginScope._multi&&(u(e.beginScope,t),S="")),N=Object.create(e,{parent:{ -value:N}}),N}function p(e,t,i){let r=((e,t)=>{const n=e&&e.exec(t) -;return n&&0===n.index})(e.endRe,i);if(r){if(e["on:end"]){const i=new n(e) -;e["on:end"](t,i),i.isMatchIgnored&&(r=!1)}if(r){ -for(;e.endsParent&&e.parent;)e=e.parent;return e}} -if(e.endsWithParent)return p(e.parent,t,i)}function f(e){ -return 0===N.matcher.regexIndex?(S+=e[0],1):(I=!0,0)}function b(e){ -const n=e[0],i=t.substring(e.index),r=p(N,e,i);if(!r)return ee;const s=N -;N.endScope&&N.endScope._wrap?(d(), -M.addKeyword(n,N.endScope._wrap)):N.endScope&&N.endScope._multi?(d(), -u(N.endScope,e)):s.skip?S+=n:(s.returnEnd||s.excludeEnd||(S+=n), -d(),s.excludeEnd&&(S=n));do{ -N.scope&&M.closeNode(),N.skip||N.subLanguage||(R+=N.relevance),N=N.parent -}while(N!==r.parent);return r.starts&&h(r.starts,e),s.returnEnd?0:n.length} -let m={};function w(i,s){const a=s&&s[0];if(S+=i,null==a)return d(),0 -;if("begin"===m.type&&"end"===s.type&&m.index===s.index&&""===a){ -if(S+=t.slice(s.index,s.index+1),!o){const t=Error(`0 width match regex (${e})`) -;throw t.languageName=e,t.badRule=m.rule,t}return 1} -if(m=s,"begin"===s.type)return(e=>{ -const t=e[0],i=e.rule,r=new n(i),s=[i.__beforeBegin,i["on:begin"]] -;for(const n of s)if(n&&(n(e,r),r.isMatchIgnored))return f(t) -;return i.skip?S+=t:(i.excludeBegin&&(S+=t), -d(),i.returnBegin||i.excludeBegin||(S=t)),h(i,e),i.returnBegin?0:t.length})(s) -;if("illegal"===s.type&&!r){ -const e=Error('Illegal lexeme "'+a+'" for mode "'+(N.scope||"")+'"') -;throw e.mode=N,e}if("end"===s.type){const e=b(s);if(e!==ee)return e} -if("illegal"===s.type&&""===a)return 1 -;if(A>1e5&&A>3*s.index)throw Error("potential infinite loop, way more iterations than matches") -;return S+=a,a.length}const y=O(e) -;if(!y)throw K(a.replace("{}",e)),Error('Unknown language: "'+e+'"') -;const _=V(y);let v="",N=s||_;const k={},M=new g.__emitter(g);(()=>{const e=[] -;for(let t=N;t!==y;t=t.parent)t.scope&&e.unshift(t.scope) -;e.forEach((e=>M.openNode(e)))})();let S="",R=0,j=0,A=0,I=!1;try{ -for(N.matcher.considerAll();;){ -A++,I?I=!1:N.matcher.considerAll(),N.matcher.lastIndex=j -;const e=N.matcher.exec(t);if(!e)break;const n=w(t.substring(j,e.index),e) -;j=e.index+n} -return w(t.substring(j)),M.closeAllNodes(),M.finalize(),v=M.toHTML(),{ -language:e,value:v,relevance:R,illegal:!1,_emitter:M,_top:N}}catch(n){ -if(n.message&&n.message.includes("Illegal"))return{language:e,value:Y(t), -illegal:!0,relevance:0,_illegalBy:{message:n.message,index:j, -context:t.slice(j-100,j+100),mode:n.mode,resultSoFar:v},_emitter:M};if(o)return{ -language:e,value:Y(t),illegal:!1,relevance:0,errorRaised:n,_emitter:M,_top:N} -;throw n}}function x(e,t){t=t||g.languages||Object.keys(i);const n=(e=>{ -const t={value:Y(e),illegal:!1,relevance:0,_top:c,_emitter:new g.__emitter(g)} -;return t._emitter.addText(e),t})(e),r=t.filter(O).filter(N).map((t=>E(t,e,!1))) -;r.unshift(n);const s=r.sort(((e,t)=>{ -if(e.relevance!==t.relevance)return t.relevance-e.relevance -;if(e.language&&t.language){if(O(e.language).supersetOf===t.language)return 1 -;if(O(t.language).supersetOf===e.language)return-1}return 0})),[o,a]=s,l=o -;return l.secondBest=a,l}function w(e){let t=null;const n=(e=>{ -let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"" -;const n=g.languageDetectRe.exec(t);if(n){const t=O(n[1]) -;return t||(W(a.replace("{}",n[1])), -W("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"} -return t.split(/\s+/).find((e=>b(e)||O(e)))})(e);if(b(n))return -;if(k("before:highlightElement",{el:e,language:n -}),e.children.length>0&&(g.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), -console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), -console.warn("The element with unescaped HTML:"), -console.warn(e)),g.throwUnescapedHTML))throw new J("One of your code blocks includes unescaped HTML.",e.innerHTML) -;t=e;const i=t.textContent,s=n?m(i,{language:n,ignoreIllegals:!0}):x(i) -;e.innerHTML=s.value,((e,t,n)=>{const i=t&&r[t]||n -;e.classList.add("hljs"),e.classList.add("language-"+i) -})(e,n,s.language),e.result={language:s.language,re:s.relevance, -relevance:s.relevance},s.secondBest&&(e.secondBest={ -language:s.secondBest.language,relevance:s.secondBest.relevance -}),k("after:highlightElement",{el:e,result:s,text:i})}let y=!1;function _(){ -"loading"!==document.readyState?document.querySelectorAll(g.cssSelector).forEach(w):y=!0 -}function O(e){return e=(e||"").toLowerCase(),i[e]||i[r[e]]} -function v(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ -r[e.toLowerCase()]=t}))}function N(e){const t=O(e) -;return t&&!t.disableAutodetect}function k(e,t){const n=e;s.forEach((e=>{ -e[n]&&e[n](t)}))} -"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ -y&&_()}),!1),Object.assign(t,{highlight:m,highlightAuto:x,highlightAll:_, -highlightElement:w, -highlightBlock:e=>(X("10.7.0","highlightBlock will be removed entirely in v12.0"), -X("10.7.0","Please use highlightElement now."),w(e)),configure:e=>{g=Q(g,e)}, -initHighlighting:()=>{ -_(),X("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, -initHighlightingOnLoad:()=>{ -_(),X("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") -},registerLanguage:(e,n)=>{let r=null;try{r=n(t)}catch(t){ -if(K("Language definition for '{}' could not be registered.".replace("{}",e)), -!o)throw t;K(t),r=c} -r.name||(r.name=e),i[e]=r,r.rawDefinition=n.bind(null,t),r.aliases&&v(r.aliases,{ -languageName:e})},unregisterLanguage:e=>{delete i[e] -;for(const t of Object.keys(r))r[t]===e&&delete r[t]}, -listLanguages:()=>Object.keys(i),getLanguage:O,registerAliases:v, -autoDetection:N,inherit:Q,addPlugin:e=>{(e=>{ -e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{ -e["before:highlightBlock"](Object.assign({block:t.el},t)) -}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{ -e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),s.push(e)} -}),t.debugMode=()=>{o=!1},t.safeMode=()=>{o=!0 -},t.versionString="11.7.0",t.regex={concat:p,lookahead:d,either:f,optional:h, -anyNumberOfTimes:u};for(const t in A)"object"==typeof A[t]&&e.exports(A[t]) -;return Object.assign(t,A),t})({});return te}() -;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);/*! `bash` grammar compiled for Highlight.js 11.7.0 */ -(()=>{var e=(()=>{"use strict";return e=>{const s=e.regex,t={},n={begin:/\$\{/, -end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{ -className:"variable",variants:[{ -begin:s.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});const a={ -className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},i={ -begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, -end:/(\w+)/,className:"string"})]}},c={className:"string",begin:/"/,end:/"/, -contains:[e.BACKSLASH_ESCAPE,t,a]};a.contains.push(c);const o={begin:/\$?\(\(/, -end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] -},r=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 -}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, -contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ -name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, -keyword:["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"], -literal:["true","false"], -built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] -},contains:[r,e.SHEBANG(),l,o,e.HASH_COMMENT_MODE,i,{match:/(\/[a-z._-]+)+/},c,{ -className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},t]}}})() -;hljs.registerLanguage("bash",e)})();/*! `shell` grammar compiled for Highlight.js 11.7.0 */ -(()=>{var s=(()=>{"use strict";return s=>({name:"Shell Session", -aliases:["console","shellsession"],contains:[{className:"meta.prompt", -begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, -subLanguage:"bash"}}]})})();hljs.registerLanguage("shell",s)})();/*! `nix` grammar compiled for Highlight.js 11.7.0 */ -(()=>{var e=(()=>{"use strict";return e=>{const n={ -keyword:["rec","with","let","in","inherit","assert","if","else","then"], -literal:["true","false","or","and","null"], -built_in:["import","abort","baseNameOf","dirOf","isNull","builtins","map","removeAttrs","throw","toString","derivation"] -},s={className:"subst",begin:/\$\{/,end:/\}/,keywords:n},a={className:"string", -contains:[{className:"char.escape",begin:/''\$/},s],variants:[{begin:"''", -end:"''"},{begin:'"',end:'"'}] -},i=[e.NUMBER_MODE,e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{ -begin:/[a-zA-Z0-9-_]+(\s*=)/,returnBegin:!0,relevance:0,contains:[{ -className:"attr",begin:/\S+/,relevance:.2}]}];return s.contains=i,{name:"Nix", -aliases:["nixos"],keywords:n,contains:i}}})();hljs.registerLanguage("nix",e) -})(); \ No newline at end of file diff --git a/highlightjs/LICENSE b/highlightjs/LICENSE new file mode 100644 index 00000000..2250cc7e --- /dev/null +++ b/highlightjs/LICENSE @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2006, Ivan Sagalaev. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/highlightjs/highlight-style.css b/highlightjs/highlight-style.css new file mode 100644 index 00000000..0b360281 --- /dev/null +++ b/highlightjs/highlight-style.css @@ -0,0 +1,8 @@ +pre { + padding: 0; +} + +pre code.hljs { + border: none; + margin: 0; +} diff --git a/highlightjs/highlight.pack.js b/highlightjs/highlight.pack.js new file mode 100644 index 00000000..b8008d36 --- /dev/null +++ b/highlightjs/highlight.pack.js @@ -0,0 +1,345 @@ +/*! + Highlight.js v11.9.0 (git: b7ec4bfafc) + (c) 2006-2023 undefined and other contributors + License: BSD-3-Clause + */ +var hljs=function(){"use strict";function e(t){ +return t instanceof Map?t.clear=t.delete=t.set=()=>{ +throw Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((n=>{ +const i=t[n],s=typeof i;"object"!==s&&"function"!==s||Object.isFrozen(i)||e(i) +})),t}class t{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function n(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function i(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] +;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n}const s=e=>!!e.scope +;class o{constructor(e,t){ +this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ +this.buffer+=n(e)}openNode(e){if(!s(e))return;const t=((e,{prefix:t})=>{ +if(e.startsWith("language:"))return e.replace("language:","language-") +;if(e.includes(".")){const n=e.split(".") +;return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ") +}return`${t}${e}`})(e.scope,{prefix:this.classPrefix});this.span(t)} +closeNode(e){s(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}const r=(e={})=>{const t={children:[]} +;return Object.assign(t,e),t};class a{constructor(){ +this.rootNode=r(),this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const t=r({scope:e}) +;this.add(t),this.stack.push(t)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ +return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), +t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +a._collapse(e)})))}}class c extends a{constructor(e){super(),this.options=e} +addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){ +this.closeNode()}__addSublanguage(e,t){const n=e.root +;t&&(n.scope="language:"+t),this.add(n)}toHTML(){ +return new o(this,this.options).value()}finalize(){ +return this.closeAllNodes(),!0}}function l(e){ +return e?"string"==typeof e?e:e.source:null}function g(e){return h("(?=",e,")")} +function u(e){return h("(?:",e,")*")}function d(e){return h("(?:",e,")?")} +function h(...e){return e.map((e=>l(e))).join("")}function f(...e){const t=(e=>{ +const t=e[e.length-1] +;return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{} +})(e);return"("+(t.capture?"":"?:")+e.map((e=>l(e))).join("|")+")"} +function p(e){return RegExp(e.toString()+"|").exec("").length-1} +const b=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ +;function m(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n +;let i=l(e),s="";for(;i.length>0;){const e=b.exec(i);if(!e){s+=i;break} +s+=i.substring(0,e.index), +i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?s+="\\"+(Number(e[1])+t):(s+=e[0], +"("===e[0]&&n++)}return s})).map((e=>`(${e})`)).join(t)} +const E="[a-zA-Z]\\w*",x="[a-zA-Z_]\\w*",w="\\b\\d+(\\.\\d+)?",y="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",_="\\b(0b[01]+)",O={ +begin:"\\\\[\\s\\S]",relevance:0},v={scope:"string",begin:"'",end:"'", +illegal:"\\n",contains:[O]},k={scope:"string",begin:'"',end:'"',illegal:"\\n", +contains:[O]},N=(e,t,n={})=>{const s=i({scope:"comment",begin:e,end:t, +contains:[]},n);s.contains.push({scope:"doctag", +begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", +end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) +;const o=f("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) +;return s.contains.push({begin:h(/[ ]+/,"(",o,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),s +},S=N("//","$"),M=N("/\\*","\\*/"),R=N("#","$");var j=Object.freeze({ +__proto__:null,APOS_STRING_MODE:v,BACKSLASH_ESCAPE:O,BINARY_NUMBER_MODE:{ +scope:"number",begin:_,relevance:0},BINARY_NUMBER_RE:_,COMMENT:N, +C_BLOCK_COMMENT_MODE:M,C_LINE_COMMENT_MODE:S,C_NUMBER_MODE:{scope:"number", +begin:y,relevance:0},C_NUMBER_RE:y,END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ +t.data._beginMatch!==e[1]&&t.ignoreMatch()}}),HASH_COMMENT_MODE:R,IDENT_RE:E, +MATCH_NOTHING_RE:/\b\B/,METHOD_GUARD:{begin:"\\.\\s*"+x,relevance:0}, +NUMBER_MODE:{scope:"number",begin:w,relevance:0},NUMBER_RE:w, +PHRASAL_WORDS_MODE:{ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},QUOTE_STRING_MODE:k,REGEXP_MODE:{scope:"regexp",begin:/\/(?=[^/\n]*\/)/, +end:/\/[gimuy]*/,contains:[O,{begin:/\[/,end:/\]/,relevance:0,contains:[O]}]}, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const t=/^#![ ]*\// +;return e.binary&&(e.begin=h(t,/.*\b/,e.binary,/\b.*/)),i({scope:"meta",begin:t, +end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)}, +TITLE_MODE:{scope:"title",begin:E,relevance:0},UNDERSCORE_IDENT_RE:x, +UNDERSCORE_TITLE_MODE:{scope:"title",begin:x,relevance:0}});function A(e,t){ +"."===e.input[e.index-1]&&t.ignoreMatch()}function I(e,t){ +void 0!==e.className&&(e.scope=e.className,delete e.className)}function T(e,t){ +t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=A,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function L(e,t){ +Array.isArray(e.illegal)&&(e.illegal=f(...e.illegal))}function B(e,t){ +if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function P(e,t){ +void 0===e.relevance&&(e.relevance=1)}const D=(e,t)=>{if(!e.beforeMatch)return +;if(e.starts)throw Error("beforeMatch cannot be used with starts") +;const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t] +})),e.keywords=n.keywords,e.begin=h(n.beforeMatch,g(n.begin)),e.starts={ +relevance:0,contains:[Object.assign(n,{endsParent:!0})] +},e.relevance=0,delete n.beforeMatch +},H=["of","and","for","in","not","or","if","then","parent","list","value"],C="keyword" +;function $(e,t,n=C){const i=Object.create(null) +;return"string"==typeof e?s(n,e.split(" ")):Array.isArray(e)?s(n,e):Object.keys(e).forEach((n=>{ +Object.assign(i,$(e[n],t,n))})),i;function s(e,n){ +t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|") +;i[n[0]]=[e,U(n[0],n[1])]}))}}function U(e,t){ +return t?Number(t):(e=>H.includes(e.toLowerCase()))(e)?0:1}const z={},W=e=>{ +console.error(e)},X=(e,...t)=>{console.log("WARN: "+e,...t)},G=(e,t)=>{ +z[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),z[`${e}/${t}`]=!0) +},K=Error();function F(e,t,{key:n}){let i=0;const s=e[n],o={},r={} +;for(let e=1;e<=t.length;e++)r[e+i]=s[e],o[e+i]=!0,i+=p(t[e-1]) +;e[n]=r,e[n]._emit=o,e[n]._multi=!0}function Z(e){(e=>{ +e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, +delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ +_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope +}),(e=>{if(Array.isArray(e.begin)){ +if(e.skip||e.excludeBegin||e.returnBegin)throw W("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), +K +;if("object"!=typeof e.beginScope||null===e.beginScope)throw W("beginScope must be object"), +K;F(e,e.begin,{key:"beginScope"}),e.begin=m(e.begin,{joinWith:""})}})(e),(e=>{ +if(Array.isArray(e.end)){ +if(e.skip||e.excludeEnd||e.returnEnd)throw W("skip, excludeEnd, returnEnd not compatible with endScope: {}"), +K +;if("object"!=typeof e.endScope||null===e.endScope)throw W("endScope must be object"), +K;F(e,e.end,{key:"endScope"}),e.end=m(e.end,{joinWith:""})}})(e)}function V(e){ +function t(t,n){ +return RegExp(l(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":"")) +}class n{constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,t){ +t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), +this.matchAt+=p(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=t(m(e,{joinWith:"|" +}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex +;const t=this.matcherRe.exec(e);if(!t)return null +;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n] +;return t.splice(0,n),Object.assign(t,i)}}class s{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n +;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), +t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ +this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ +const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex +;let n=t.exec(e) +;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ +const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} +return n&&(this.regexIndex+=n.position+1, +this.regexIndex===this.count&&this.considerAll()),n}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=i(e.classNameAliases||{}),function n(o,r){const a=o +;if(o.isCompiled)return a +;[I,B,Z,D].forEach((e=>e(o,r))),e.compilerExtensions.forEach((e=>e(o,r))), +o.__beforeBegin=null,[T,L,P].forEach((e=>e(o,r))),o.isCompiled=!0;let c=null +;return"object"==typeof o.keywords&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords), +c=o.keywords.$pattern, +delete o.keywords.$pattern),c=c||/\w+/,o.keywords&&(o.keywords=$(o.keywords,e.case_insensitive)), +a.keywordPatternRe=t(c,!0), +r&&(o.begin||(o.begin=/\B|\b/),a.beginRe=t(a.begin),o.end||o.endsWithParent||(o.end=/\B|\b/), +o.end&&(a.endRe=t(a.end)), +a.terminatorEnd=l(a.end)||"",o.endsWithParent&&r.terminatorEnd&&(a.terminatorEnd+=(o.end?"|":"")+r.terminatorEnd)), +o.illegal&&(a.illegalRe=t(o.illegal)), +o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>i(e,{ +variants:null},t)))),e.cachedVariants?e.cachedVariants:q(e)?i(e,{ +starts:e.starts?i(e.starts):null +}):Object.isFrozen(e)?i(e):e))("self"===e?o:e)))),o.contains.forEach((e=>{n(e,a) +})),o.starts&&n(o.starts,r),a.matcher=(e=>{const t=new s +;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(a),a}(e)}function q(e){ +return!!e&&(e.endsWithParent||q(e.starts))}class J extends Error{ +constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}} +const Y=n,Q=i,ee=Symbol("nomatch"),te=n=>{ +const i=Object.create(null),s=Object.create(null),o=[];let r=!0 +;const a="Could not find the language '{}', did you forget to load/include a language module?",l={ +disableAutodetect:!0,name:"Plain text",contains:[]};let p={ +ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +cssSelector:"pre code",languages:null,__emitter:c};function b(e){ +return p.noHighlightRe.test(e)}function m(e,t,n){let i="",s="" +;"object"==typeof t?(i=e, +n=t.ignoreIllegals,s=t.language):(G("10.7.0","highlight(lang, code, ...args) has been deprecated."), +G("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +s=e,i=t),void 0===n&&(n=!0);const o={code:i,language:s};N("before:highlight",o) +;const r=o.result?o.result:E(o.language,o.code,n) +;return r.code=o.code,N("after:highlight",r),r}function E(e,n,s,o){ +const c=Object.create(null);function l(){if(!N.keywords)return void M.addText(R) +;let e=0;N.keywordPatternRe.lastIndex=0;let t=N.keywordPatternRe.exec(R),n="" +;for(;t;){n+=R.substring(e,t.index) +;const s=_.case_insensitive?t[0].toLowerCase():t[0],o=(i=s,N.keywords[i]);if(o){ +const[e,i]=o +;if(M.addText(n),n="",c[s]=(c[s]||0)+1,c[s]<=7&&(j+=i),e.startsWith("_"))n+=t[0];else{ +const n=_.classNameAliases[e]||e;u(t[0],n)}}else n+=t[0] +;e=N.keywordPatternRe.lastIndex,t=N.keywordPatternRe.exec(R)}var i +;n+=R.substring(e),M.addText(n)}function g(){null!=N.subLanguage?(()=>{ +if(""===R)return;let e=null;if("string"==typeof N.subLanguage){ +if(!i[N.subLanguage])return void M.addText(R) +;e=E(N.subLanguage,R,!0,S[N.subLanguage]),S[N.subLanguage]=e._top +}else e=x(R,N.subLanguage.length?N.subLanguage:null) +;N.relevance>0&&(j+=e.relevance),M.__addSublanguage(e._emitter,e.language) +})():l(),R=""}function u(e,t){ +""!==e&&(M.startScope(t),M.addText(e),M.endScope())}function d(e,t){let n=1 +;const i=t.length-1;for(;n<=i;){if(!e._emit[n]){n++;continue} +const i=_.classNameAliases[e[n]]||e[n],s=t[n];i?u(s,i):(R=s,l(),R=""),n++}} +function h(e,t){ +return e.scope&&"string"==typeof e.scope&&M.openNode(_.classNameAliases[e.scope]||e.scope), +e.beginScope&&(e.beginScope._wrap?(u(R,_.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), +R=""):e.beginScope._multi&&(d(e.beginScope,t),R="")),N=Object.create(e,{parent:{ +value:N}}),N}function f(e,n,i){let s=((e,t)=>{const n=e&&e.exec(t) +;return n&&0===n.index})(e.endRe,i);if(s){if(e["on:end"]){const i=new t(e) +;e["on:end"](n,i),i.isMatchIgnored&&(s=!1)}if(s){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return f(e.parent,n,i)}function b(e){ +return 0===N.matcher.regexIndex?(R+=e[0],1):(T=!0,0)}function m(e){ +const t=e[0],i=n.substring(e.index),s=f(N,e,i);if(!s)return ee;const o=N +;N.endScope&&N.endScope._wrap?(g(), +u(t,N.endScope._wrap)):N.endScope&&N.endScope._multi?(g(), +d(N.endScope,e)):o.skip?R+=t:(o.returnEnd||o.excludeEnd||(R+=t), +g(),o.excludeEnd&&(R=t));do{ +N.scope&&M.closeNode(),N.skip||N.subLanguage||(j+=N.relevance),N=N.parent +}while(N!==s.parent);return s.starts&&h(s.starts,e),o.returnEnd?0:t.length} +let w={};function y(i,o){const a=o&&o[0];if(R+=i,null==a)return g(),0 +;if("begin"===w.type&&"end"===o.type&&w.index===o.index&&""===a){ +if(R+=n.slice(o.index,o.index+1),!r){const t=Error(`0 width match regex (${e})`) +;throw t.languageName=e,t.badRule=w.rule,t}return 1} +if(w=o,"begin"===o.type)return(e=>{ +const n=e[0],i=e.rule,s=new t(i),o=[i.__beforeBegin,i["on:begin"]] +;for(const t of o)if(t&&(t(e,s),s.isMatchIgnored))return b(n) +;return i.skip?R+=n:(i.excludeBegin&&(R+=n), +g(),i.returnBegin||i.excludeBegin||(R=n)),h(i,e),i.returnBegin?0:n.length})(o) +;if("illegal"===o.type&&!s){ +const e=Error('Illegal lexeme "'+a+'" for mode "'+(N.scope||"")+'"') +;throw e.mode=N,e}if("end"===o.type){const e=m(o);if(e!==ee)return e} +if("illegal"===o.type&&""===a)return 1 +;if(I>1e5&&I>3*o.index)throw Error("potential infinite loop, way more iterations than matches") +;return R+=a,a.length}const _=O(e) +;if(!_)throw W(a.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const v=V(_);let k="",N=o||v;const S={},M=new p.__emitter(p);(()=>{const e=[] +;for(let t=N;t!==_;t=t.parent)t.scope&&e.unshift(t.scope) +;e.forEach((e=>M.openNode(e)))})();let R="",j=0,A=0,I=0,T=!1;try{ +if(_.__emitTokens)_.__emitTokens(n,M);else{for(N.matcher.considerAll();;){ +I++,T?T=!1:N.matcher.considerAll(),N.matcher.lastIndex=A +;const e=N.matcher.exec(n);if(!e)break;const t=y(n.substring(A,e.index),e) +;A=e.index+t}y(n.substring(A))}return M.finalize(),k=M.toHTML(),{language:e, +value:k,relevance:j,illegal:!1,_emitter:M,_top:N}}catch(t){ +if(t.message&&t.message.includes("Illegal"))return{language:e,value:Y(n), +illegal:!0,relevance:0,_illegalBy:{message:t.message,index:A, +context:n.slice(A-100,A+100),mode:t.mode,resultSoFar:k},_emitter:M};if(r)return{ +language:e,value:Y(n),illegal:!1,relevance:0,errorRaised:t,_emitter:M,_top:N} +;throw t}}function x(e,t){t=t||p.languages||Object.keys(i);const n=(e=>{ +const t={value:Y(e),illegal:!1,relevance:0,_top:l,_emitter:new p.__emitter(p)} +;return t._emitter.addText(e),t})(e),s=t.filter(O).filter(k).map((t=>E(t,e,!1))) +;s.unshift(n);const o=s.sort(((e,t)=>{ +if(e.relevance!==t.relevance)return t.relevance-e.relevance +;if(e.language&&t.language){if(O(e.language).supersetOf===t.language)return 1 +;if(O(t.language).supersetOf===e.language)return-1}return 0})),[r,a]=o,c=r +;return c.secondBest=a,c}function w(e){let t=null;const n=(e=>{ +let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"" +;const n=p.languageDetectRe.exec(t);if(n){const t=O(n[1]) +;return t||(X(a.replace("{}",n[1])), +X("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"} +return t.split(/\s+/).find((e=>b(e)||O(e)))})(e);if(b(n))return +;if(N("before:highlightElement",{el:e,language:n +}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e) +;if(e.children.length>0&&(p.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), +console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), +console.warn("The element with unescaped HTML:"), +console.warn(e)),p.throwUnescapedHTML))throw new J("One of your code blocks includes unescaped HTML.",e.innerHTML) +;t=e;const i=t.textContent,o=n?m(i,{language:n,ignoreIllegals:!0}):x(i) +;e.innerHTML=o.value,e.dataset.highlighted="yes",((e,t,n)=>{const i=t&&s[t]||n +;e.classList.add("hljs"),e.classList.add("language-"+i) +})(e,n,o.language),e.result={language:o.language,re:o.relevance, +relevance:o.relevance},o.secondBest&&(e.secondBest={ +language:o.secondBest.language,relevance:o.secondBest.relevance +}),N("after:highlightElement",{el:e,result:o,text:i})}let y=!1;function _(){ +"loading"!==document.readyState?document.querySelectorAll(p.cssSelector).forEach(w):y=!0 +}function O(e){return e=(e||"").toLowerCase(),i[e]||i[s[e]]} +function v(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +s[e.toLowerCase()]=t}))}function k(e){const t=O(e) +;return t&&!t.disableAutodetect}function N(e,t){const n=e;o.forEach((e=>{ +e[n]&&e[n](t)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +y&&_()}),!1),Object.assign(n,{highlight:m,highlightAuto:x,highlightAll:_, +highlightElement:w, +highlightBlock:e=>(G("10.7.0","highlightBlock will be removed entirely in v12.0"), +G("10.7.0","Please use highlightElement now."),w(e)),configure:e=>{p=Q(p,e)}, +initHighlighting:()=>{ +_(),G("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, +initHighlightingOnLoad:()=>{ +_(),G("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") +},registerLanguage:(e,t)=>{let s=null;try{s=t(n)}catch(t){ +if(W("Language definition for '{}' could not be registered.".replace("{}",e)), +!r)throw t;W(t),s=l} +s.name||(s.name=e),i[e]=s,s.rawDefinition=t.bind(null,n),s.aliases&&v(s.aliases,{ +languageName:e})},unregisterLanguage:e=>{delete i[e] +;for(const t of Object.keys(s))s[t]===e&&delete s[t]}, +listLanguages:()=>Object.keys(i),getLanguage:O,registerAliases:v, +autoDetection:k,inherit:Q,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{ +e["before:highlightBlock"](Object.assign({block:t.el},t)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{ +e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),o.push(e)}, +removePlugin:e=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}),n.debugMode=()=>{ +r=!1},n.safeMode=()=>{r=!0},n.versionString="11.9.0",n.regex={concat:h, +lookahead:g,either:f,optional:d,anyNumberOfTimes:u} +;for(const t in j)"object"==typeof j[t]&&e(j[t]);return Object.assign(n,j),n +},ne=te({});return ne.newInstance=()=>te({}),ne}() +;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);/*! `bash` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const s=e.regex,t={},n={begin:/\$\{/, +end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{ +className:"variable",variants:[{ +begin:s.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});const a={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE] +},i=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),c={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},o={className:"string",begin:/"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,t,a]};a.contains.push(o);const r={begin:/\$?\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] +},l=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),m={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, +keyword:["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"], +literal:["true","false"], +built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] +},contains:[l,e.SHEBANG(),m,r,i,c,{match:/(\/[a-z._-]+)+/},o,{match:/\\"/},{ +className:"string",begin:/'/,end:/'/},{match:/\\'/},t]}}})() +;hljs.registerLanguage("bash",e)})();/*! `nix` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +keyword:["rec","with","let","in","inherit","assert","if","else","then"], +literal:["true","false","or","and","null"], +built_in:["import","abort","baseNameOf","dirOf","isNull","builtins","map","removeAttrs","throw","toString","derivation"] +},s={className:"subst",begin:/\$\{/,end:/\}/,keywords:n},a={className:"string", +contains:[{className:"char.escape",begin:/''\$/},s],variants:[{begin:"''", +end:"''"},{begin:'"',end:'"'}] +},i=[e.NUMBER_MODE,e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{ +begin:/[a-zA-Z0-9-_]+(\s*=)/,returnBegin:!0,relevance:0,contains:[{ +className:"attr",begin:/\S+/,relevance:.2}]}];return s.contains=i,{name:"Nix", +aliases:["nixos"],keywords:n,contains:i}}})();hljs.registerLanguage("nix",e) +})();/*! `shell` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var s=(()=>{"use strict";return s=>({name:"Shell Session", +aliases:["console","shellsession"],contains:[{className:"meta.prompt", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]})})();hljs.registerLanguage("shell",s)})(); \ No newline at end of file diff --git a/highlightjs/loader.js b/highlightjs/loader.js new file mode 100644 index 00000000..cf0fdac5 --- /dev/null +++ b/highlightjs/loader.js @@ -0,0 +1,6 @@ +/* This file is NOT part of highlight.js */ +document.addEventListener('DOMContentLoaded', (event) => { + document.querySelectorAll('.programlisting, .screen').forEach((element) => { + hljs.highlightElement(element); + }); +}); diff --git a/highlightjs/mono-blue.css b/highlightjs/mono-blue.css new file mode 100644 index 00000000..bc9bceae --- /dev/null +++ b/highlightjs/mono-blue.css @@ -0,0 +1,56 @@ +pre code.hljs { + display: block; + overflow-x: auto; + padding: 1em +} +code.hljs { + padding: 3px 5px +} +/* + Five-color theme from a single blue hue. +*/ +.hljs { + background: #eaeef3; + color: #00193a +} +.hljs-keyword, +.hljs-selector-tag, +.hljs-title, +.hljs-section, +.hljs-doctag, +.hljs-name, +.hljs-strong { + font-weight: bold +} +.hljs-comment { + color: #738191 +} +.hljs-string, +.hljs-title, +.hljs-section, +.hljs-built_in, +.hljs-literal, +.hljs-type, +.hljs-addition, +.hljs-tag, +.hljs-quote, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class { + color: #0048ab +} +.hljs-meta, +.hljs-subst, +.hljs-symbol, +.hljs-regexp, +.hljs-attribute, +.hljs-deletion, +.hljs-variable, +.hljs-template-variable, +.hljs-link, +.hljs-bullet { + color: #4c81c9 +} +.hljs-emphasis { + font-style: italic +} \ No newline at end of file diff --git a/tomorrow-night.min.css b/highlightjs/tomorrow-night.min.css similarity index 100% rename from tomorrow-night.min.css rename to highlightjs/tomorrow-night.min.css diff --git a/images/callouts/1.svg b/images/callouts/1.svg deleted file mode 100644 index e2e87dc5..00000000 --- a/images/callouts/1.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/10.svg b/images/callouts/10.svg deleted file mode 100644 index 4740f587..00000000 --- a/images/callouts/10.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/11.svg b/images/callouts/11.svg deleted file mode 100644 index 09a0b2cf..00000000 --- a/images/callouts/11.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/12.svg b/images/callouts/12.svg deleted file mode 100644 index 9794044c..00000000 --- a/images/callouts/12.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/13.svg b/images/callouts/13.svg deleted file mode 100644 index 64268bb4..00000000 --- a/images/callouts/13.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/14.svg b/images/callouts/14.svg deleted file mode 100644 index 469aa974..00000000 --- a/images/callouts/14.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/15.svg b/images/callouts/15.svg deleted file mode 100644 index 8202233e..00000000 --- a/images/callouts/15.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/16.svg b/images/callouts/16.svg deleted file mode 100644 index 01d6bf81..00000000 --- a/images/callouts/16.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/17.svg b/images/callouts/17.svg deleted file mode 100644 index 0a04c556..00000000 --- a/images/callouts/17.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/18.svg b/images/callouts/18.svg deleted file mode 100644 index 1cb891b3..00000000 --- a/images/callouts/18.svg +++ /dev/null @@ -1,21 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/19.svg b/images/callouts/19.svg deleted file mode 100644 index e6fbb179..00000000 --- a/images/callouts/19.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/2.svg b/images/callouts/2.svg deleted file mode 100644 index 07d03395..00000000 --- a/images/callouts/2.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/20.svg b/images/callouts/20.svg deleted file mode 100644 index ccbfd403..00000000 --- a/images/callouts/20.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/21.svg b/images/callouts/21.svg deleted file mode 100644 index 93ec53fd..00000000 --- a/images/callouts/21.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/22.svg b/images/callouts/22.svg deleted file mode 100644 index f48c5f3f..00000000 --- a/images/callouts/22.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/23.svg b/images/callouts/23.svg deleted file mode 100644 index 66242129..00000000 --- a/images/callouts/23.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/24.svg b/images/callouts/24.svg deleted file mode 100644 index a3d55253..00000000 --- a/images/callouts/24.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/25.svg b/images/callouts/25.svg deleted file mode 100644 index 56614a97..00000000 --- a/images/callouts/25.svg +++ /dev/null @@ -1,21 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/26.svg b/images/callouts/26.svg deleted file mode 100644 index 56faeaca..00000000 --- a/images/callouts/26.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/27.svg b/images/callouts/27.svg deleted file mode 100644 index a75c8121..00000000 --- a/images/callouts/27.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/28.svg b/images/callouts/28.svg deleted file mode 100644 index 7f8cf1a3..00000000 --- a/images/callouts/28.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/29.svg b/images/callouts/29.svg deleted file mode 100644 index cb63adf1..00000000 --- a/images/callouts/29.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/3.svg b/images/callouts/3.svg deleted file mode 100644 index 918be806..00000000 --- a/images/callouts/3.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/30.svg b/images/callouts/30.svg deleted file mode 100644 index dc43ba1e..00000000 --- a/images/callouts/30.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - -]> - - - - - - - - - diff --git a/images/callouts/4.svg b/images/callouts/4.svg deleted file mode 100644 index 8eb6a53b..00000000 --- a/images/callouts/4.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/5.svg b/images/callouts/5.svg deleted file mode 100644 index ca7a9f22..00000000 --- a/images/callouts/5.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/6.svg b/images/callouts/6.svg deleted file mode 100644 index 783a0b9d..00000000 --- a/images/callouts/6.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/7.svg b/images/callouts/7.svg deleted file mode 100644 index 59b3714b..00000000 --- a/images/callouts/7.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/8.svg b/images/callouts/8.svg deleted file mode 100644 index c1803a3c..00000000 --- a/images/callouts/8.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/images/callouts/9.svg b/images/callouts/9.svg deleted file mode 100644 index bc149d3c..00000000 --- a/images/callouts/9.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - -]> - - - - - - - - diff --git a/index.html b/index.html deleted file mode 100644 index 11618998..00000000 --- a/index.html +++ /dev/null @@ -1,673 +0,0 @@ - -Home Manager Manual

Home Manager Manual


Preface
1. Installing Home Manager
1.1. Standalone installation
1.2. NixOS module
1.3. nix-darwin module
2. Using Home Manager
2.1. Configuration Example
2.2. Rollbacks
2.3. Keeping your ~ safe from harm
2.4. Graphical services
2.5. Updating
3. Nix Flakes
3.1. Prerequisites
3.2. Standalone setup
3.3. NixOS module
3.4. nix-darwin module
4. Writing Home Manager Modules
4.1. Option Types
5. Contributing
5.1. Getting started
5.2. Guidelines
5.2.1. Maintain backward compatibility
5.2.2. Keep forward compatibility in mind
5.2.3. Add only valuable options
5.2.4. Add relevant tests
5.2.5. Add relevant documentation
5.2.6. Add yourself as a module maintainer
5.2.7. Format your code
5.2.8. Format your commit messages
5.2.9. Format your news entries
5.2.10. Use conditional modules and news
5.2.11. Mind the license
5.3. Commits
5.4. Code Style
5.5. News
5.6. Tests
6. Third-Party Tools and Extensions
6.1. Module Collections
7. Frequently Asked Questions (FAQ)
7.1. Why is there a collision error when switching generation?
7.2. Why are the session variables not set?
7.3. How to set up a configuration for multiple users/machines?
7.4. Why do I get an error message about ca.desrt.dconf or dconf.service?
7.5. How do I install packages from Nixpkgs unstable?
7.6. How do I override the package used by a module?
A. Configuration Options
B. NixOS Module Options
C. nix-darwin Module Options
D. Tools
home-manager - — reconfigure a user environment
E. Release Notes
E.1. Release 24.05
E.1.1. Highlights
E.1.2. State Version Changes
E.2. Release 23.11
E.2.1. Highlights
E.2.2. State Version Changes
E.3. Release 23.05
E.3.1. Highlights
E.3.2. State Version Changes
E.4. Release 22.11
E.4.1. Highlights
E.4.2. State Version Changes
E.5. Release 22.05
E.5.1. Highlights
E.5.2. State Version Changes
E.6. Release 21.11
E.6.1. Highlights
E.6.2. State Version Changes
E.7. Release 21.05
E.7.1. Highlights
E.7.2. State Version Changes
E.8. Release 20.09
E.8.1. Highlights
E.8.2. State Version Changes
E.9. Release 20.03
E.9.1. Highlights
E.9.2. State Version Changes
E.10. Release 19.09
E.10.1. Highlights
E.10.2. State Version Changes
E.11. Release 19.03
E.11.1. Highlights
E.11.2. State Version Changes
E.12. Release 18.09

Preface

- This manual will eventually describe how to install, use, and extend Home - Manager. -

- If you encounter problems then please reach out on the IRC channel - #home-manager - hosted by OFTC. - There is also a Matrix room, - which is bridged to the IRC channel. - If your problem is caused by a bug in Home Manager then it should - be reported on the - Home Manager issue tracker. -

Note

- Commands prefixed with $ sudo have to be run as root, either - requiring to login as root user or temporarily switching to it using - sudo for example. -

Chapter 1. Installing Home Manager

Home Manager can be used in three primary ways:

  1. -Using the standalone home-manager tool. For platforms other than -NixOS and Darwin, this is the only available choice. It is also -recommended for people on NixOS or Darwin that want to manage their -home directory independently of the system as a whole. See -Section 1.1, “Standalone installation” for instructions on how to perform this -installation. -
  2. -As a module within a NixOS system configuration. This allows the -user profiles to be built together with the system when running -nixos-rebuild. See Section 1.2, “NixOS module” for a description of -this setup. -
  3. -As a module within a nix-darwin system configuration. -This allows the user profiles to be built together with the system -when running darwin-rebuild. See Section 1.3, “nix-darwin module” -for a description of this setup. -

Note

In this chapter we describe how to install Home Manager in the -standard way using channels. If you prefer to use -Nix Flakes then please see the instructions in -Chapter 3, Nix Flakes.

1.1. Standalone installation

  1. -Make sure you have a working Nix installation. Specifically, make -sure that your user is able to build and install Nix packages. For -example, you should be able to successfully run a command like -nix-instantiate '<nixpkgs>' -A hello without having to switch to the -root user. For a multi-user install of Nix this means that your user -must be covered by the allowed-users Nix -option. On NixOS you can control this option using the -nix.settings.allowed-users system option. -
  2. -Add the appropriate Home Manager channel. If you are following -Nixpkgs master or an unstable channel you can run -

    $ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
    -$ nix-channel --update

    and if you follow a Nixpkgs version 23.11 channel you can run

    $ nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager
    -$ nix-channel --update
  3. -Run the Home Manager installation command and create the first Home -Manager generation: -

    $ nix-shell '<home-manager>' -A install

    Once finished, Home Manager should be active and available in your -user environment.

  4. -If you do not plan on having Home Manager manage your shell -configuration then you must source the -

    $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh

    file in your shell configuration. Alternatively source

    /etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh

    when managing home configuration together with system configuration.

    This file can be sourced directly by POSIX.2-like shells such as -Bash or Z shell. Fish users can use utilities -such as foreign-env or babelfish.

    For example, if you use Bash then add

    . "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"

    to your ~/.profile file.

If instead of using channels you want to run Home Manager from a Git -checkout of the repository then you can use the -programs.home-manager.path option to specify the absolute path -to the repository.

Once installed you can see Chapter 2, Using Home Manager for a more detailed -description of Home Manager and how to use it.

1.2. NixOS module

Home Manager provides a NixOS module that allows you to prepare user -environments directly from the system configuration file, which often -is more convenient than using the home-manager tool. It also opens -up additional possibilities, for example, to automatically configure -user environments in NixOS declarative containers or on systems -deployed through NixOps.

To make the NixOS module available for use you must import it into -your system configuration. This is most conveniently done by adding a -Home Manager channel to the root user. For example, if you are -following Nixpkgs master or an unstable channel, you can run

$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
-$ sudo nix-channel --update

and if you follow a Nixpkgs version 23.11 channel, you can run

$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager
-$ sudo nix-channel --update

It is then possible to add

imports = [ <home-manager/nixos> ];

to your system configuration.nix file, which will introduce a new -NixOS option called home-manager.users whose type is an attribute -set that maps user names to Home Manager configurations.

For example, a NixOS configuration may include the lines

users.users.eve.isNormalUser = true;
-home-manager.users.eve = { pkgs, ... }: {
-  home.packages = [ pkgs.atool pkgs.httpie ];
-  programs.bash.enable = true;
-
-  # The state version is required and should stay at the version you
-  # originally installed.
-  home.stateVersion = "23.11";
-};

and after a sudo nixos-rebuild switch the user eve’s environment should -include a basic Bash configuration and the packages atool and httpie.

Note

If nixos-rebuild switch does not result in the environment you expect, -you can take a look at the output of the Home Manager activation script output using

$ systemctl status "home-manager-$USER.service"

If you do not plan on having Home Manager manage your shell -configuration then you must add either

. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"

or

. "/etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh"

to your shell configuration, depending on whether -home-manager.useUserPackages is enabled. This file can -be sourced directly by POSIX.2-like shells such as Bash or -Z shell. Fish users can use utilities such as -foreign-env or babelfish.

Note

By default packages will be installed to $HOME/.nix-profile but they -can be installed to /etc/profiles if

home-manager.useUserPackages = true;

is added to the system configuration. This is necessary if, for -example, you wish to use nixos-rebuild build-vm. This option may -become the default value in the future.

Note

By default, Home Manager uses a private pkgs instance that is -configured via the home-manager.users.<name>.nixpkgs options. To -instead use the global pkgs that is configured via the system level -nixpkgs options, set

home-manager.useGlobalPkgs = true;

This saves an extra Nixpkgs evaluation, adds consistency, and removes -the dependency on NIX_PATH, which is otherwise used for importing -Nixpkgs.

Note

Home Manager will pass osConfig as a module argument to any modules -you create. This contains the system’s NixOS configuration.

{ lib, pkgs, osConfig, ... }:

Once installed you can see Chapter 2, Using Home Manager for a more detailed -description of Home Manager and how to use it.

1.3. nix-darwin module

Home Manager provides a module that allows you to prepare user -environments directly from the nix-darwin configuration -file, which often is more convenient than using the home-manager -tool.

To make the NixOS module available for use you must import it into -your system configuration. This is most conveniently done by adding a -Home Manager channel. For example, if you are following Nixpkgs master -or an unstable channel, you can run

$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
-$ nix-channel --update

and if you follow a Nixpkgs version 23.11 channel, you can run

$ nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager
-$ nix-channel --update

It is then possible to add

imports = [ <home-manager/nix-darwin> ];

to your nix-darwin configuration.nix file, which will introduce a -new NixOS option called home-manager whose type is an attribute set -that maps user names to Home Manager configurations.

For example, a nix-darwin configuration may include the lines

users.users.eve = {
-  name = "eve";
-  home = "/Users/eve";
-}
-home-manager.users.eve = { pkgs, ... }: {
-  home.packages = [ pkgs.atool pkgs.httpie ];
-  programs.bash.enable = true;
-
-  # The state version is required and should stay at the version you
-  # originally installed.
-  home.stateVersion = "23.11";
-};

and after a darwin-rebuild switch the user eve’s environment -should include a basic Bash configuration and the packages atool and -httpie.

If you do not plan on having Home Manager manage your shell -configuration then you must add either

. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"

or

. "/etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh"

to your shell configuration, depending on whether -home-manager.useUserPackages is enabled. This file -can be sourced directly by POSIX.2-like shells such as Bash or -Z shell. Fish users can use utilities such as -foreign-env or babelfish.

Note

By default user packages will not be ignored in favor of -environment.systemPackages, but they will be installed to -/etc/profiles/per-user/$USERNAME if

home-manager.useUserPackages = true;

is added to the nix-darwin configuration. This option may become the -default value in the future.

Note

By default, Home Manager uses a private pkgs instance that is -configured via the home-manager.users.<name>.nixpkgs options. To -instead use the global pkgs that is configured via the system level -nixpkgs options, set

home-manager.useGlobalPkgs = true;

This saves an extra Nixpkgs evaluation, adds consistency, and removes -the dependency on NIX_PATH, which is otherwise used for importing -Nixpkgs.

Note

Home Manager will pass osConfig as a module argument to any modules -you create. This contains the system’s nix-darwin configuration.

{ lib, pkgs, osConfig, ... }:

Once installed you can see Chapter 2, Using Home Manager for a more detailed -description of Home Manager and how to use it.

Chapter 2. Using Home Manager

Your use of Home Manager is centered around the configuration file, -which is typically found at ~/.config/home-manager/home.nix in the standard installation -or ~/.config/home-manager/flake.nix in a Nix flake based installation.

Note

The default configuration used to be placed in ~/.config/nixpkgs¸ -so you may see references to that elsewhere. -The old directory still works but Home Manager will print a warning message when used.

This configuration file can be built and activated.

Building a configuration produces a directory in the Nix store that contains all files and programs that should be available in your home directory and Nix user profile, respectively. The build step also checks that the configuration is valid and it will fail with an error if you, for example, assign a value to an option that does not exist or assign a value of the wrong type. Some modules also have custom assertions that perform more detailed, module specific, checks.

Concretely, if your configuration contains

programs.emacs.enable = "yes";

then building it, for example using home-manager build, will result in an error message saying something like

$ home-manager build
-error: A definition for option `programs.emacs.enable' is not of type `boolean'. Definition values:
-- In `/home/jdoe/.config/home-manager/home.nix': "yes"
-(use '--show-trace' to show detailed location information)

The message indicates that you must provide a Boolean value for this option, that is, either true or false. The documentation of each option will state the expected type, for programs.emacs.enable you will see “Type: boolean”. You there also find information about the default value and a description of the option. You can find the complete option documentation in Appendix A, Configuration Options or directly in the terminal by running

man home-configuration.nix

Once a configuration is successfully built, it can be activated. The activation performs the steps necessary to make the files, programs, and services available in your user environment. The home-manager switch command performs a combined build and activation.

2.1. Configuration Example

A fresh install of Home Manager will generate a minimal ~/.config/home-manager/home.nix file containing something like

{ config, pkgs, ... }:
-
-{
-  # Home Manager needs a bit of information about you and the
-  # paths it should manage.
-  home.username = "jdoe";
-  home.homeDirectory = "/home/jdoe";
-
-  # This value determines the Home Manager release that your
-  # configuration is compatible with. This helps avoid breakage
-  # when a new Home Manager release introduces backwards
-  # incompatible changes.
-  #
-  # You can update Home Manager without changing this value. See
-  # the Home Manager release notes for a list of state version
-  # changes in each release.
-  home.stateVersion = "23.11";
-
-  # Let Home Manager install and manage itself.
-  programs.home-manager.enable = true;
-}

You can use this as a base for your further configurations.

Note

If you are not very familiar with the Nix language and NixOS modules then it is encouraged to start with small and simple changes. As you learn you can gradually grow the configuration with confidence.

As an example, let us expand the initial configuration file to also install the htop and fortune packages, install Emacs with a few extra packages available, and enable the user gpg-agent service.

To satisfy the above setup we should elaborate the home.nix file as follows:

{ config, pkgs, ... }:
-
-{
-  # Home Manager needs a bit of information about you and the
-  # paths it should manage.
-  home.username = "jdoe";
-  home.homeDirectory = "/home/jdoe";
-
-  # Packages that should be installed to the user profile.
-  home.packages = [                               1
-    pkgs.htop
-    pkgs.fortune
-  ];
-
-  # This value determines the Home Manager release that your
-  # configuration is compatible with. This helps avoid breakage
-  # when a new Home Manager release introduces backwards
-  # incompatible changes.
-  #
-  # You can update Home Manager without changing this value. See
-  # the Home Manager release notes for a list of state version
-  # changes in each release.
-  home.stateVersion = "23.11";
-
-  # Let Home Manager install and manage itself.
-  programs.home-manager.enable = true;
-
-  programs.emacs = {                              2
-    enable = true;
-    extraPackages = epkgs: [
-      epkgs.nix-mode
-      epkgs.magit
-    ];
-  };
-
-  services.gpg-agent = {                          3
-    enable = true;
-    defaultCacheTtl = 1800;
-    enableSshSupport = true;
-  };
-}

1

-Nixpkgs packages can be installed to the user profile using home.packages. -

2

-The option names of a program module typically start with programs.<package name>. -

3

-Similarly, for a service module, the names start with services.<package name>. Note in some cases a package has both programs and service options – Emacs is such an example. -

To activate this configuration you can run

home-manager switch

or if you are not feeling so lucky,

home-manager build

which will create a result link to a directory containing an -activation script and the generated home directory files.

2.2. Rollbacks

While the home-manager tool does not explicitly support rollbacks at the moment it is relatively easy to perform one manually. The steps to do so are

  1. -Run home-manager generations to determine which generation you wish to rollback to: -

    $ home-manager generations
    -2018-01-04 11:56 : id 765 -> /nix/store/kahm1rxk77mnvd2l8pfvd4jkkffk5ijk-home-manager-generation
    -2018-01-03 10:29 : id 764 -> /nix/store/2wsmsliqr5yynqkdyjzb1y57pr5q2lsj-home-manager-generation
    -2018-01-01 12:21 : id 763 -> /nix/store/mv960kl9chn2lal5q8lnqdp1ygxngcd1-home-manager-generation
    -2017-12-29 21:03 : id 762 -> /nix/store/6c0k1r03fxckql4vgqcn9ccb616ynb94-home-manager-generation
    -2017-12-25 18:51 : id 761 -> /nix/store/czc5y6vi1rvnkfv83cs3rn84jarcgsgh-home-manager-generation
    -…
  2. -Copy the Nix store path of the generation you chose, e.g., -

    /nix/store/mv960kl9chn2lal5q8lnqdp1ygxngcd1-home-manager-generation

    for generation 763.

  3. -Run the activate script inside the copied store path: -

    $ /nix/store/mv960kl9chn2lal5q8lnqdp1ygxngcd1-home-manager-generation/activate
    -Starting home manager activation
    -…

2.3. Keeping your ~ safe from harm

To configure programs and services Home Manager must write various things to your home directory. To prevent overwriting any existing files when switching to a new generation, Home Manager will attempt to detect collisions between existing files and generated files. If any such collision is detected the activation will terminate before changing anything on your computer.

For example, suppose you have a wonderful, painstakingly created ~/.config/git/config and add

{
-  # …
-
-  programs.git = {
-    enable = true;
-    userName = "Jane Doe";
-    userEmail = "jane.doe@example.org";
-  };
-
-  # …
-}

to your configuration. Attempting to switch to the generation will then result in

$ home-manager switch
-…
-Activating checkLinkTargets
-Existing file '/home/jdoe/.config/git/config' is in the way
-Please move the above files and try again

2.4. Graphical services

Home Manager includes a number of services intended to run in a graphical session, for example xscreensaver and dunst. Unfortunately, such services will not be started automatically unless you let Home Manager start your X session. That is, you have something like

{
-  # …
-
-  services.xserver.enable = true;
-
-  # …
-}

in your system configuration and

{
-  # …
-
-  xsession.enable = true;
-  xsession.windowManager.command = "…";
-
-  # …
-}

in your Home Manager configuration.

2.5. Updating

If you have installed Home Manager using the Nix channel method -then updating Home Manager is done by first updating the channel. -You can then switch to the updated Home Manager environment.

$ nix-channel --update
-…
-unpacking channels...
-$ home-manager switch

Chapter 3. Nix Flakes

Home Manager is compatible with Nix Flakes. But -please be aware that the support it is still experimental and may -change in backwards incompatible ways.

Just like in the standard installation you can use the Home Manager -flake in three ways:

  1. -Using the standalone home-manager tool. For platforms other than -NixOS and Darwin, this is the only available choice. It is also -recommended for people on NixOS or Darwin that want to manage their -home directory independently of the system as a whole. See -Section 3.2, “Standalone setup” for instructions on how to perform this -installation. -
  2. -As a module within a NixOS system configuration. This allows the -user profiles to be built together with the system when running -nixos-rebuild. See Section 3.3, “NixOS module” for a description of -this setup. -
  3. -This allows the user profiles to be built together with the system -when running darwin-rebuild. See Section 3.4, “nix-darwin module” -for a description of this setup. -

3.1. Prerequisites

  • -Install Nix 2.4 or later, or have it in nix-shell. -
  • -Enable experimental features nix-command and flakes. -

    • -When using NixOS, add the following to your configuration.nix and rebuild your system. -

      nix = {
      -  package = pkgs.nixFlakes;
      -  extraOptions = ''
      -    experimental-features = nix-command flakes
      -  '';
      -};
    • -If you are not using NixOS, add the following to nix.conf (located at ~/.config/nix/ or /etc/nix/nix.conf). -

      experimental-features = nix-command flakes

      You may need to restart the Nix daemon with, for example, sudo systemctl restart nix-daemon.service.

    • -Alternatively, you can enable flakes on a per-command basis with the following additional flags to nix and home-manager: -

      $ nix --extra-experimental-features "nix-command flakes" <sub-commands>
      -$ home-manager --extra-experimental-features "nix-command flakes" <sub-commands>
  • -Prepare your Home Manager configuration (home.nix). -

    Unlike the channel-based setup, -home.nix will be evaluated when the flake is built, -so it must be present before bootstrap of Home Manager from the flake. -See Section 2.1, “Configuration Example” for introduction about -writing a Home Manager configuration.

3.2. Standalone setup

To prepare an initial Home Manager configuration for your logged in user, -you can run the Home Manager init command directly from its flake.

For example, if you are using the unstable version of Nixpkgs or NixOS, -then to generate and activate a basic configuration run the command

$ nix run home-manager/master -- init --switch

For Nixpkgs or NixOS version 23.11 run

$ nix run home-manager/release-23.11 -- init --switch

This will generate a flake.nix and a home.nix file in -~/.config/home-manager, creating the directory if it does not exist.

If you omit the --switch option then the activation will not happen. -This is useful if you want to inspect and edit the configuration before activating it.

$ nix run home-manager/$branch -- init
-$ # Edit files in ~/.config/home-manager
-$ nix run home-manager/$branch -- init --switch

Where $branch is one of master or release-23.11.

After the initial activation has completed successfully then building -and activating your flake-based configuration is as simple as

$ home-manager switch

It is possible to override the default configuration directory, if you want. -For example,

$ nix run home-manager/$branch -- init --switch ~/hmconf
-$ # And after the initial activation.
-$ home-manager switch --flake ~/hmconf

Note

The flake inputs are not automatically updated by Home Manager. -You need to use the standard nix flake update command for that.

If you only want to update a single flake input, -then the command nix flake lock --update-input <input> can be used.

You can also pass flake-related options -such as --recreate-lock-file or --update-input <input> -to home-manager when building or switching, -and these options will be forwarded to nix build. -See the NixOS Wiki page for details.

3.3. NixOS module

To use Home Manager as a NixOS module, -a bare-minimum flake.nix would be as follows:

{
-  description = "NixOS configuration";
-
-  inputs = {
-    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
-    home-manager.url = "github:nix-community/home-manager";
-    home-manager.inputs.nixpkgs.follows = "nixpkgs";
-  };
-
-  outputs = inputs@{ nixpkgs, home-manager, ... }: {
-    nixosConfigurations = {
-      hostname = nixpkgs.lib.nixosSystem {
-        system = "x86_64-linux";
-        modules = [
-          ./configuration.nix
-          home-manager.nixosModules.home-manager
-          {
-            home-manager.useGlobalPkgs = true;
-            home-manager.useUserPackages = true;
-            home-manager.users.jdoe = import ./home.nix;
-
-            # Optionally, use home-manager.extraSpecialArgs to pass
-            # arguments to home.nix
-          }
-        ];
-      };
-    };
-  };
-}

The Home Manager configuration is then part of the NixOS configuration -and is automatically rebuilt with the system when using the appropriate command -for the system, such as nixos-rebuild switch --flake <flake-uri>.

You can use the above flake.nix as a template in /etc/nixos by

$ nix flake new /etc/nixos -t github:nix-community/home-manager#nixos

3.4. nix-darwin module

The flake-based setup of the Home Manager nix-darwin module -is similar to that of NixOS. The flake.nix would be:

{
-  description = "Darwin configuration";
-
-  inputs = {
-    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
-    darwin.url = "github:lnl7/nix-darwin";
-    darwin.inputs.nixpkgs.follows = "nixpkgs";
-    home-manager.url = "github:nix-community/home-manager";
-    home-manager.inputs.nixpkgs.follows = "nixpkgs";
-  };
-
-  outputs = inputs@{ nixpkgs, home-manager, darwin, ... }: {
-    darwinConfigurations = {
-      hostname = darwin.lib.darwinSystem {
-        system = "x86_64-darwin";
-        modules = [
-          ./configuration.nix
-          home-manager.darwinModules.home-manager
-          {
-            home-manager.useGlobalPkgs = true;
-            home-manager.useUserPackages = true;
-            home-manager.users.jdoe = import ./home.nix;
-
-            # Optionally, use home-manager.extraSpecialArgs to pass
-            # arguments to home.nix
-          }
-        ];
-      };
-    };
-  };
-}

and it is also rebuilt with the nix-darwin generations. -The rebuild command here may be darwin-rebuild switch --flake <flake-uri>.

You can use the above flake.nix as a template in ~/.config/darwin by

$ nix flake new ~/.config/darwin -t github:nix-community/home-manager#nix-darwin

Chapter 4. Writing Home Manager Modules

The module system in Home Manager is based entirely on the NixOS module system so we will here only highlight aspects that are specific for Home Manager. For information about the module system as such please refer to the Writing NixOS Modules chapter of the NixOS manual.

4.1. Option Types

Overall the basic option types are the same in Home Manager as NixOS. A few Home Manager options, however, make use of custom types that are worth describing in more detail. These are the option types dagOf and gvariant that are used, for example, by programs.ssh.matchBlocks and dconf.settings.

-hm.types.dagOf -

-Options of this type have attribute sets as values where each member is a node in a directed acyclic graph (DAG). This allows the attribute set entries to express dependency relations among themselves. This can, for example, be used to control the order of match blocks in a OpenSSH client configuration or the order of activation script blocks in home.activation. -

A number of functions are provided to create DAG nodes. The functions are shown below with examples using an option foo.bar of type hm.types.dagOf types.int.

-hm.dag.entryAnywhere (value: T) : DagEntry<T> -

-Indicates that value can be placed anywhere within the DAG. This is also the default for plain attribute set entries, that is -

foo.bar = {
-  a = hm.dag.entryAnywhere 0;
-}

and

foo.bar = {
-  a = 0;
-}

are equivalent.

-hm.dag.entryAfter (afters: list string) (value: T) : DagEntry<T> -

-Indicates that value must be placed after each of the attribute names in the given list. For example -

foo.bar = {
-  a = 0;
-  b = hm.dag.entryAfter [ "a" ] 1;
-}

would place b after a in the graph.

-hm.dag.entryBefore (befores: list string) (value: T) : DagEntry<T> -

-Indicates that value must be placed before each of the attribute names in the given list. For example -

foo.bar = {
-  b = hm.dag.entryBefore [ "a" ] 1;
-  a = 0;
-}

would place b before a in the graph.

-hm.dag.entryBetween (befores: list string) (afters: list string) (value: T) : DagEntry<T> -

-Indicates that value must be placed before the attribute names in the first list and after the attribute names in the second list. For example -

foo.bar = {
-  a = 0;
-  c = hm.dag.entryBetween [ "b" ] [ "a" ] 2;
-  b = 1;
-}

would place c before b and after a in the graph.

There are also a set of functions that generate a DAG from a list. -These are convenient when you just want to have a linear list of DAG entries, -without having to manually enter the relationship between each entry. -Each of these functions take a tag as argument and the DAG entries will be named ${tag}-${index}.

-hm.dag.entriesAnywhere (tag: string) (values: [T]) : Dag<T> -

-Creates a DAG with the given values with each entry labeled using the given tag. For example -

foo.bar = hm.dag.entriesAnywhere "a" [ 0 1 ];

is equivalent to

foo.bar = {
-  a-0 = 0;
-  a-1 = hm.dag.entryAfter [ "a-0" ] 1;
-}
-hm.dag.entriesAfter (tag: string) (afters: list string) (values: [T]) : Dag<T> -

-Creates a DAG with the given values with each entry labeled using the given tag. -The list of values are placed are placed after each of the attribute names in afters. -For example -

foo.bar =
-  { b = 0; }
-  // hm.dag.entriesAfter "a" [ "b" ] [ 1 2 ];

is equivalent to

foo.bar = {
-  b = 0;
-  a-0 = hm.dag.entryAfter [ "b" ] 1;
-  a-1 = hm.dag.entryAfter [ "a-0" ] 2;
-}
-hm.dag.entriesBefore (tag: string) (befores: list string) (values: [T]) : Dag<T> -

-Creates a DAG with the given values with each entry labeled using the given tag. -The list of values are placed before each of the attribute names in befores. -For example -

foo.bar =
-  { b = 0; }
-  // hm.dag.entriesBefore "a" [ "b" ] [ 1 2 ];

is equivalent to

foo.bar = {
-  b = 0;
-  a-0 = 1;
-  a-1 = hm.dag.entryBetween [ "b" ] [ "a-0" ] 2;
-}
-hm.dag.entriesBetween (tag: string) (befores: list string) (afters: list string) (values: [T]) : Dag<T> -

-Creates a DAG with the given values with each entry labeled using the given tag. -The list of values are placed before each of the attribute names in befores -and after each of the attribute names in afters. -For example -

foo.bar =
-  { b = 0; c = 3; }
-  // hm.dag.entriesBetween "a" [ "b" ] [ "c" ] [ 1 2 ];

is equivalent to

foo.bar = {
-  b = 0;
-  c = 3;
-  a-0 = hm.dag.entryAfter [ "c" ] 1;
-  a-1 = hm.dag.entryBetween [ "b" ] [ "a-0" ] 2;
-}
-hm.types.gvariant -

-This type is useful for options representing GVariant values. The type accepts all primitive GVariant types as well as arrays, tuples, “maybe” types, and dictionaries. -

Some Nix values are automatically coerced to matching GVariant value but the GVariant model is richer so you may need to use one of the provided constructor functions. Examples assume an option foo.bar of type hm.types.gvariant.

-hm.gvariant.mkBoolean (v: bool) -

-Takes a Nix value v to a GVariant boolean value (GVariant format string b). Note, Nix booleans are automatically coerced using this function. That is, -

foo.bar = hm.gvariant.mkBoolean true;

is equivalent to

foo.bar = true;
-hm.gvariant.mkString (v: string) -

-Takes a Nix value v to a GVariant string value (GVariant format string s). Note, Nix strings are automatically coerced using this function. That is, -

foo.bar = hm.gvariant.mkString "a string";

is equivalent to

foo.bar = "a string";
-hm.gvariant.mkObjectpath (v: string) -
-Takes a Nix value v to a GVariant objectpath value (GVariant format string o). -
-hm.gvariant.mkUchar (v: string) -
-Takes a Nix value v to a GVariant uchar value (GVariant format string y). -
-hm.gvariant.mkInt16 (v: int) -
-Takes a Nix value v to a GVariant int16 value (GVariant format string n). -
-hm.gvariant.mkUint16 (v: int) -
-Takes a Nix value v to a GVariant uint16 value (GVariant format string q). -
-hm.gvariant.mkInt32 (v: int) -

-Takes a Nix value v to a GVariant int32 value (GVariant format string i). Note, Nix integers are automatically coerced using this function. That is, -

foo.bar = hm.gvariant.mkInt32 7;

is equivalent to

foo.bar = 7;
-hm.gvariant.mkUint32 (v: int) -
-Takes a Nix value v to a GVariant uint32 value (GVariant format string u). -
-hm.gvariant.mkInt64 (v: int) -
-Takes a Nix value v to a GVariant int64 value (GVariant format string x). -
-hm.gvariant.mkUint64 (v: int) -
-Takes a Nix value v to a GVariant uint64 value (GVariant format string t). -
-hm.gvariant.mkDouble (v: double) -

-Takes a Nix value v to a GVariant double value (GVariant format string d). Note, Nix floats are automatically coerced using this function. That is, -

foo.bar = hm.gvariant.mkDouble 3.14;

is equivalent to

foo.bar = 3.14;
-hm.gvariant.mkArray type elements -

-Builds a GVariant array containing the given list of elements, where each element is a GVariant value of the given type (GVariant format string a${type}). The type value can be constructed using -

  • -hm.gvariant.type.string (GVariant format string s) -
  • -hm.gvariant.type.boolean (GVariant format string b) -
  • -hm.gvariant.type.uchar (GVariant format string y) -
  • -hm.gvariant.type.int16 (GVariant format string n) -
  • -hm.gvariant.type.uint16 (GVariant format string q) -
  • -hm.gvariant.type.int32 (GVariant format string i) -
  • -hm.gvariant.type.uint32 (GVariant format string u) -
  • -hm.gvariant.type.int64 (GVariant format string x) -
  • -hm.gvariant.type.uint64 (GVariant format string t) -
  • -hm.gvariant.type.double (GVariant format string d) -
  • -hm.gvariant.type.variant (GVariant format string v) -
  • -hm.gvariant.type.arrayOf type (GVariant format string a${type}) -
  • -hm.gvariant.type.maybeOf type (GVariant format string m${type}) -
  • -hm.gvariant.type.tupleOf types (GVariant format string (${lib.concatStrings types})) -
  • -hm.gvariant.type.dictionaryEntryOf [keyType valueType] (GVariant format string {${keyType}${valueType}}) -

where type and types are themselves a type and list of types, respectively.

-hm.gvariant.mkEmptyArray type -
-An alias of hm.gvariant.mkArray type []. -
-hm.gvariant.mkNothing type -
-Builds a GVariant maybe value (GVariant format string m${type}) whose (non-existent) element is of the given type. The type value is constructed as described for the mkArray function above. -
-hm.gvariant.mkJust element -
-Builds a GVariant maybe value (GVariant format string m${element.type}) containing the given GVariant element. -
-hm.gvariant.mkTuple elements -
-Builds a GVariant tuple containing the given list of elements, where each element is a GVariant value. -
-hm.gvariant.mkVariant element -
-Builds a GVariant variant (GVariant format string v) which contains the value of a GVariant element. -
-hm.gvariant.mkDictionaryEntry [key value] -
-Builds a GVariant dictionary entry containing the given list of elements (GVariant format string {${key.type}${value.type}}), where each element is a GVariant value. -

Chapter 5. Contributing

Contributions to Home Manager are very welcome. To make the process as smooth as possible for both you and the Home Manager maintainers we provide some guidelines that we ask you to follow. See Section 5.1, “Getting started” for information on how to set up a suitable development environment and Section 5.2, “Guidelines” for the actual guidelines.

This text is mainly directed at those who would like to make code contributions to Home Manager. If you just want to report a bug then first look among the already open issues, if you find one matching yours then feel free to comment on it to add any additional information you may have. If no matching issue exists then go to the new issue page and write a description of your problem. Include as much information as you can, ideally also include relevant excerpts from your Home Manager configuration.

5.1. Getting started

If you have not previously forked Home Manager then you need to do that first. Have a look at GitHub’s Fork a repo for instructions on how to do this.

Once you have a fork of Home Manager you should create a branch starting at the most recent master branch. Give your branch a reasonably descriptive name. Commit your changes to this branch and when you are happy with the result and it fulfills Section 5.2, “Guidelines” then push the branch to GitHub and create a pull request.

Assuming your clone is at $HOME/devel/home-manager then you can make the home-manager command use it by either

  1. -overriding the default path by using the -I command line option: -

    $ home-manager -I home-manager=$HOME/devel/home-manager

    or, if using flakes:

    $ home-manager --override-input home-manager ~/devel/home-manager

    or

  2. -changing the default path by ensuring your configuration includes -

    programs.home-manager.enable = true;
    -programs.home-manager.path = "$HOME/devel/home-manager";

    and running home-manager switch to activate the change. Afterwards, home-manager build and home-manager switch will use your cloned repository.

The first option is good if you only temporarily want to use your clone.

5.2. Guidelines

If your contribution satisfy the following rules then there is a good chance it will be merged without too much trouble. The rules are enforced by the Home Manager maintainers and to a lesser extent the Home Manager CI system.

If you are uncertain how these rules affect the change you would like to make then feel free to start a discussion in the #home-manager IRC channel, ideally before you start developing.

5.2.1. Maintain backward compatibility

Your contribution should not cause another user’s existing configuration to break unless there is a very good reason and the change should be announced to the user through an assertion or similar.

Remember that Home Manager is used in many different environments and you should consider how your change may effect others. For example,

  • -Does your change work for people that do not use NixOS? Consider other GNU/Linux distributions and macOS. -
  • -Does your change work for people whose configuration is built on one system and deployed on another system? -

5.2.2. Keep forward compatibility in mind

The master branch of Home Manager tracks the unstable channel of Nixpkgs, which may update package versions at any time. It is therefore important to consider how a package update may affect your code and try to reduce the risk of breakage.

The most effective way to reduce this risk is to follow the advice in Section 5.2.3, “Add only valuable options”.

5.2.3. Add only valuable options

When creating a new module it is tempting to include every option supported by the software. This is strongly discouraged. Providing many options increases maintenance burden and risk of breakage considerably. This is why only the most important software options should be modeled explicitly. Less important options should be expressible through an extraConfig escape hatch.

A good rule of thumb for the first implementation of a module is to only add explicit options for those settings that absolutely must be set for the software to function correctly. It follows that a module for software that provides sensible default values for all settings would require no explicit options at all.

If the software uses a structured configuration format like a JSON, YAML, INI, TOML, or even a plain list of key/value pairs then consider using a settings option as described in Nix RFC 42.

5.2.4. Add relevant tests

If at all possible, make sure to add new tests and expand existing tests so that your change will keep working in the future. See Section 5.6, “Tests” for more information about the Home Manager test suite.

All contributed code must pass the test suite.

5.2.5. Add relevant documentation

Many code changes require changing the documentation as well. Module options should be documented with Nixpkgs-flavoured Markdown. Home Manager is itself documented using a combination of DocBook and AsciiDoc. All text is hosted in Home Manager’s Git repository.

The HTML version of the manual containing both the module option descriptions and the documentation of Home Manager can be generated and opened by typing the following in a shell within a clone of the Home Manager Git repository:

$ nix-build -A docs.html
-$ xdg-open ./result/share/doc/home-manager/index.html

When you have made changes to a module, it is a good idea to check that the man page version of the module options looks good:

$ nix-build -A docs.manPages
-$ man ./result/share/man/man5/home-configuration.nix.5.gz

5.2.6. Add yourself as a module maintainer

Every new module must include a named maintainer using the meta.maintainers attribute. If you are a user of a module that currently lacks a maintainer then please consider adopting it.

If you are present in the nixpkgs maintainer list then you can use that entry. If you are not then you can add yourself to modules/lib/maintainers.nix in the Home Manager project.

Maintainers are encouraged to join the IRC or Matrix channel and participate when they have opportunity.

5.2.7. Format your code

Make sure your code is formatted as described in Section 5.4, “Code Style”. To maintain consistency throughout the project you are encouraged to browse through existing code and adopt its style also in new code.

5.2.8. Format your commit messages

Similar to Section 5.2.7, “Format your code” we encourage a consistent commit message format as described in Section 5.3, “Commits”.

5.2.9. Format your news entries

If your contribution includes a change that should be communicated to users of Home Manager then you can add a news entry. The entry must be formatted as described in Section 5.5, “News”.

When new modules are added a news entry should be included but you do not need to create this entry manually. The merging maintainer will create the entry for you. This is to reduce the risk of merge conflicts.

5.2.10. Use conditional modules and news

Home Manager includes a number of modules that are only usable on some of the supported platforms. The most common example of platform specific modules are those that define systemd user services, which only works on Linux systems.

If you add a module that is platform specific then make sure to include a condition in the loadModule function call. This will make the module accessible only on systems where the condition evaluates to true.

Similarly, if you are adding a news entry then it should be shown only to users that may find it relevant, see Section 5.5, “News” for a description of conditional news.

5.2.11. Mind the license

The Home Manager project is covered by the MIT license and we can only accept contributions that fall under this license, or are licensed in a compatible way. When you contribute self written code and documentation it is assumed that you are doing so under the MIT license.

A potential gotcha with respect to licensing are option descriptions. Often it is convenient to copy from the upstream software documentation. When this is done it is important to verify that the license of the upstream documentation allows redistribution under the terms of the MIT license.

5.3. Commits

The commits in your pull request should be reasonably self-contained, that is, each commit should make sense in isolation. In particular, you will be asked to amend any commit that introduces syntax errors or similar problems even if they are fixed in a later commit.

The commit messages should follow the seven rules, except for "Capitalize the subject line". We also ask you to include the affected code component or module in the first line. That is, a commit message should follow the template

{component}: {description}
-
-{long description}

where {component} refers to the code component (or module) your change affects, {description} is a very brief description of your change, and {long description} is an optional clarifying description. As a rare exception, if there is no clear component, or your change affects many components, then the {component} part is optional. See Example 5.1, “Compliant commit message” for a commit message that fulfills these requirements.

Example 5.1. Compliant commit message

The commit 69f8e47e9e74c8d3d060ca22e18246b7f7d988ef contains the commit message

starship: allow running in Emacs if vterm is used
-
-The vterm buffer is backed by libvterm and can handle Starship prompts
-without issues.

which ticks all the boxes necessary to be accepted in Home Manager.


Finally, when adding a new module, say programs/foo.nix, we use the fixed commit format foo: add module. You can, of course, still include a long description if you wish.

5.4. Code Style

The code in Home Manager is formatted by the nixfmt tool and the formatting is checked in the pull request tests. Run the format tool inside the project repository before submitting your pull request.

Keep lines at a reasonable width, ideally 80 characters or less. This also applies to string literals.

We prefer lowerCamelCase for variable and attribute names with the accepted exception of variables directly referencing packages in Nixpkgs which use a hyphenated style. For example, the Home Manager option services.gpg-agent.enableSshSupport references the gpg-agent package in Nixpkgs.

5.5. News

Home Manager includes a system for presenting news to the user. When making a change you, therefore, have the option to also include an associated news entry. In general, a news entry should only be added for truly noteworthy news. For example, a bug fix or new option does generally not need a news entry.

If you do have a change worthy of a news entry then please add one in news.nix but you should follow some basic guidelines:

  • -The entry timestamp should be in ISO-8601 format having "+00:00" as time zone. For example, "2017-09-13T17:10:14+00:00". A suitable timestamp can be produced by the command -

    $ date --iso-8601=second --universal
  • -The entry condition should be as specific as possible. For example, if you are changing or deprecating a specific option then you could restrict the news to those users who actually use this option. -
  • -Wrap the news message so that it will fit in the typical terminal, that is, at most 80 characters wide. Ideally a bit less. -
  • -Unlike commit messages, news will be read without any connection to the Home Manager source code. It is therefore important to make the message understandable in isolation and to those who do not have knowledge of the Home Manager internals. To this end it should be written in more descriptive, prose like way. -
  • -If you refer to an option then write its full attribute path. That is, instead of writing -

    The option 'foo' has been deprecated, please use 'bar' instead.

    it should read

    The option 'services.myservice.foo' has been deprecated, please
    -use 'services.myservice.bar' instead.
  • -A new module, say foo.nix, should always include a news entry that has a message along the lines of -

    A new module is available: 'services.foo'.

    If the module is platform specific, e.g., a service module using systemd, then a condition like

    condition = hostPlatform.isLinux;

    should be added. If you contribute a module then you don’t need to add this entry, the merger will create an entry for you.

5.6. Tests

Home Manager includes a basic test suite and it is highly recommended to include at least one test when adding a module. Tests are typically in the form of "golden tests" where, for example, a generated configuration file is compared to a known correct file.

It is relatively easy to create tests by modeling the existing tests, found in the tests project directory. For a full reference to the functions available in test scripts, you can look at NMT’s bash-lib.

The full Home Manager test suite can be run by executing

$ nix-shell --pure tests -A run.all

in the project root. List all test cases through

$ nix-shell --pure tests -A list

and run an individual test, for example alacritty-empty-settings, through

$ nix-shell --pure tests -A run.alacritty-empty-settings

However, those invocations will impurely source the system’s nixpkgs, and may cause failures. To run against the nixpkgs from the flake.lock, use instead e.g.

$ nix develop --ignore-environment .#all

Chapter 6. Third-Party Tools and Extensions

Here is a collection of tools and extensions that relate to Home -Manager. Note, these are maintained outside the regular Home Manager -flow so quality and support may vary wildly. If you encounter problems -then please raise them in the corresponding project, not as issues in -the Home Manager tracker.

If you have made something interesting related to Home Manager then -you are encouraged to create a PR that expands this chapter.

6.1. Module Collections

Chapter 7. Frequently Asked Questions (FAQ)

7.1. Why is there a collision error when switching generation?

Home Manager currently installs packages into the user environment, precisely as if the packages were installed through nix-env --install. This means that you will get a collision error if your Home Manager configuration attempts to install a package that you already have installed manually, that is, packages that shows up when you run nix-env --query.

For example, imagine you have the hello package installed in your environment

$ nix-env --query
-hello-2.10

and your Home Manager configuration contains

home.packages = [ pkgs.hello ];

Then attempting to switch to this configuration will result in an error similar to

$ home-manager switch
-these derivations will be built:
-  /nix/store/xg69wsnd1rp8xgs9qfsjal017nf0ldhm-home-manager-path.drv
-[…]
-Activating installPackages
-replacing old ‘home-manager-path’
-installing ‘home-manager-path’
-building path(s) ‘/nix/store/b5c0asjz9f06l52l9812w6k39ifr49jj-user-environment’
-Wide character in die at /nix/store/64jc9gd2rkbgdb4yjx3nrgc91bpjj5ky-buildenv.pl line 79.
-collision between ‘/nix/store/fmwa4axzghz11cnln5absh31nbhs9lq1-home-manager-path/bin/hello’ and ‘/nix/store/c2wyl8b9p4afivpcz8jplc9kis8rj36d-hello-2.10/bin/hello’; use ‘nix-env --set-flag priority NUMBER PKGNAME’ to change the priority of one of the conflicting packages
-builder for ‘/nix/store/b37x3s7pzxbasfqhaca5dqbf3pjjw0ip-user-environment.drv’ failed with exit code 2
-error: build of ‘/nix/store/b37x3s7pzxbasfqhaca5dqbf3pjjw0ip-user-environment.drv’ failed

The solution is typically to uninstall the package from the environment using nix-env --uninstall and reattempt the Home Manager generation switch.

You could also opt to unistall all of the packages from your profile with nix-env --uninstall '*'.

7.2. Why are the session variables not set?

Home Manager is only able to set session variables automatically if it manages your Bash, Z shell, or fish shell configuration. To enable such management you use programs.bash.enable, programs.zsh.enable, or programs.fish.enable.

If you don’t want to let Home Manager manage your shell then you will have to manually source the ~/.nix-profile/etc/profile.d/hm-session-vars.sh file in an appropriate way. In Bash and Z shell this can be done by adding

. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"

to your .profile and .zshrc files, respectively. The hm-session-vars.sh file should work in most Bourne-like shells. For fish shell, it is possible to source it using the foreign-env plugin

fenv source "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh" > /dev/null

7.3. How to set up a configuration for multiple users/machines?

A typical way to prepare a repository of configurations for multiple logins and machines is to prepare one "top-level" file for each unique combination.

For example, if you have two machines, called "kronos" and "rhea" on which you want to configure your user "jane" then you could create the files

  • -kronos-jane.nix, -
  • -rhea-jane.nix, and -
  • -common.nix -

in your repository. -On the kronos and rhea machines you can then make -~jane/.config/home-manager/home.nix -be a symbolic link to the corresponding file in your configuration repository.

The kronos-jane.nix and rhea-jane.nix files follow the format

{ ... }:
-
-{
-  imports = [ ./common.nix ];
-
-  # Various options that are specific for this machine/user.
-}

while the common.nix file contains configuration shared across the two logins. Of course, instead of just a single common.nix file you can have multiple ones, even one per program or service.

You can get some inspiration from the Post your home-manager home.nix file! Reddit thread.

7.4. Why do I get an error message about ca.desrt.dconf or dconf.service?

You are most likely trying to configure something that uses dconf -but the DBus session is not aware of the dconf service. -The full error you might get is

error: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name ca.desrt.dconf was not provided by any .service files

or

error: GDBus.Error:org.freedesktop.systemd1.NoSuchUnit: Unit dconf.service not found.

The solution on NixOS is to add

programs.dconf.enable = true;

to your system configuration.

7.5. How do I install packages from Nixpkgs unstable?

If you are using a stable version of Nixpkgs but would like to install some particular packages from Nixpkgs unstable – or some other channel – then you can import the unstable Nixpkgs and refer to its packages within your configuration. Something like

{ pkgs, config, ... }:
-
-let
-
-  pkgsUnstable = import <nixpkgs-unstable> {};
-
-in
-
-{
-  home.packages = [
-    pkgsUnstable.foo
-  ];
-
-  # …
-}

should work provided you have a Nix channel called nixpkgs-unstable.

You can add the nixpkgs-unstable channel by running

$ nix-channel --add https://nixos.org/channels/nixpkgs-unstable nixpkgs-unstable
-$ nix-channel --update

Note, the package will not be affected by any package overrides, overlays, etc.

7.6. How do I override the package used by a module?

By default Home Manager will install the package provided by your chosen nixpkgs channel but occasionally you might end up needing to change this package. This can typically be done in two ways.

  1. -If the module provides a package option, such as programs.beets.package, then this is the recommended way to perform the override. For example, -

    programs.beets.package = pkgs.beets.override { enableCheck = true; };
  2. -If no package option is available then you can typically override the relevant package using an overlay. -

    For example, if you want to use the programs.skim module but use the skim package from Nixpkgs unstable, then a configuration like

    { pkgs, config, ... }:
    -
    -let
    -
    -  pkgsUnstable = import <nixpkgs-unstable> {};
    -
    -in
    -
    -{
    -  programs.skim.enable = true;
    -
    -  nixpkgs.overlays = [
    -    (self: super: {
    -      skim = pkgsUnstable.skim;
    -    })
    -  ];
    -
    -  # …
    -}

    should work OK.

\ No newline at end of file diff --git a/index.xhtml b/index.xhtml new file mode 100644 index 00000000..5a933d26 --- /dev/null +++ b/index.xhtml @@ -0,0 +1,964 @@ + + + + + + Home Manager Manual + + + + + + + + +
+
+
+

Home Manager Manual

+

Version 23.11

+
+
+
+ +

Preface

This manual will eventually describe how to install, use, and extend Home +Manager.

If you encounter problems then please reach out on the IRC channel +#home-manager +hosted by OFTC. +There is also a Matrix room, +which is bridged to the IRC channel. +If your problem is caused by a bug in Home Manager then it should +be reported on the +Home Manager issue tracker.

Note

Commands prefixed with $ sudo have to be run as root, either +requiring to login as root user or temporarily switching to it using +sudo for example.

+

Installing Home Manager

Home Manager can be used in three primary ways:

  1. Using the standalone home-manager tool. For platforms other than +NixOS and Darwin, this is the only available choice. It is also +recommended for people on NixOS or Darwin that want to manage their +home directory independently of the system as a whole. See +Standalone installation for instructions +on how to perform this installation.

  2. As a module within a NixOS system configuration. This allows the +user profiles to be built together with the system when running +nixos-rebuild. See NixOS module for a +description of this setup.

  3. As a module within a +nix-darwin system +configuration. This allows the user profiles to be built together +with the system when running darwin-rebuild. See nix-darwin +module for a description of this +setup.

Note

In this chapter we describe how to install Home Manager in the standard +way using channels. If you prefer to use Nix +Flakes then please see the instructions +in nix flakes.

Standalone installation

  1. Make sure you have a working Nix installation. Specifically, make +sure that your user is able to build and install Nix packages. For +example, you should be able to successfully run a command like +nix-instantiate '<nixpkgs>' -A hello without having to switch to +the root user. For a multi-user install of Nix this means that your +user must be covered by the +allowed-users +Nix option. On NixOS you can control this option using the +nix.settings.allowed-users +system option.

  2. Add the appropriate Home Manager channel. If you are following +Nixpkgs master or an unstable channel you can run

    $ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
    +$ nix-channel --update
    +

    and if you follow a Nixpkgs version 23.11 channel you can run

    $ nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager
    +$ nix-channel --update
    +
  3. Run the Home Manager installation command and create the first Home +Manager generation:

    $ nix-shell '<home-manager>' -A install
    +

    Once finished, Home Manager should be active and available in your +user environment.

  4. If you do not plan on having Home Manager manage your shell +configuration then you must source the

    $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh
    +

    file in your shell configuration. Alternatively source

    /etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh
    +

    when managing home configuration together with system configuration.

    This file can be sourced directly by POSIX.2-like shells such as +Bash or Z +shell. Fish +users can use utilities such as +foreign-env or +babelfish.

    For example, if you use Bash then add

    . "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
    +

    to your ~/.profile file.

If instead of using channels you want to run Home Manager from a Git +checkout of the repository then you can use the +home-manager.path option to specify the absolute +path to the repository.

Once installed you can see Using Home Manager for a more detailed +description of Home Manager and how to use it.

+

NixOS module

Home Manager provides a NixOS module that allows you to prepare user +environments directly from the system configuration file, which often is +more convenient than using the home-manager tool. It also opens up +additional possibilities, for example, to automatically configure user +environments in NixOS declarative containers or on systems deployed +through NixOps.

To make the NixOS module available for use you must import it into +your system configuration. This is most conveniently done by adding a +Home Manager channel to the root user. For example, if you are following +Nixpkgs master or an unstable channel, you can run

$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
+$ sudo nix-channel --update
+

and if you follow a Nixpkgs version 23.11 channel, you can run

$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager
+$ sudo nix-channel --update
+

It is then possible to add

imports = [ <home-manager/nixos> ];
+

to your system configuration.nix file, which will introduce a new +NixOS option called home-manager.users whose type is an attribute set +that maps user names to Home Manager configurations.

For example, a NixOS configuration may include the lines

users.users.eve.isNormalUser = true;
+home-manager.users.eve = { pkgs, ... }: {
+  home.packages = [ pkgs.atool pkgs.httpie ];
+  programs.bash.enable = true;
+
+  # The state version is required and should stay at the version you
+  # originally installed.
+  home.stateVersion = "23.11";
+};
+

and after a sudo nixos-rebuild switch the user eve’s environment +should include a basic Bash configuration and the packages atool and +httpie.

Note

If nixos-rebuild switch does not result in the environment you expect, +you can take a look at the output of the Home Manager activation script +output using

$ systemctl status "home-manager-$USER.service"
+

If you do not plan on having Home Manager manage your shell +configuration then you must add either

. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
+

or

. "/etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh"
+

to your shell configuration, depending on whether +home-manager.useUserPackages is enabled. This file can +be sourced directly by POSIX.2-like shells such as +Bash or Z +shell. Fish users +can use utilities such as +foreign-env or +babelfish.

Note

By default packages will be installed to $HOME/.nix-profile but they +can be installed to /etc/profiles if

home-manager.useUserPackages = true;
+

is added to the system configuration. This is necessary if, for example, +you wish to use nixos-rebuild build-vm. This option may become the +default value in the future.

Note

By default, Home Manager uses a private pkgs instance that is +configured via the home-manager.users.<name>.nixpkgs options. To +instead use the global pkgs that is configured via the system level +nixpkgs options, set

home-manager.useGlobalPkgs = true;
+

This saves an extra Nixpkgs evaluation, adds consistency, and removes +the dependency on NIX_PATH, which is otherwise used for importing +Nixpkgs.

Note

Home Manager will pass osConfig as a module argument to any modules +you create. This contains the system’s NixOS configuration.

{ lib, pkgs, osConfig, ... }:
+

Once installed you can see Using Home Manager for a more detailed +description of Home Manager and how to use it.

+

nix-darwin module

Home Manager provides a module that allows you to prepare user +environments directly from the +nix-darwin configuration file, +which often is more convenient than using the home-manager tool.

To make the NixOS module available for use you must import it into +your system configuration. This is most conveniently done by adding a +Home Manager channel. For example, if you are following Nixpkgs master +or an unstable channel, you can run

$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
+$ nix-channel --update
+

and if you follow a Nixpkgs version 23.11 channel, you can run

$ nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager
+$ nix-channel --update
+

It is then possible to add

imports = [ <home-manager/nix-darwin> ];
+

to your nix-darwin configuration.nix file, which will introduce a new +NixOS option called home-manager whose type is an attribute set that +maps user names to Home Manager configurations.

For example, a nix-darwin configuration may include the lines

users.users.eve = {
+  name = "eve";
+  home = "/Users/eve";
+}
+home-manager.users.eve = { pkgs, ... }: {
+  home.packages = [ pkgs.atool pkgs.httpie ];
+  programs.bash.enable = true;
+
+  # The state version is required and should stay at the version you
+  # originally installed.
+  home.stateVersion = "23.11";
+};
+

and after a darwin-rebuild switch the user eve’s environment should +include a basic Bash configuration and the packages atool and httpie.

If you do not plan on having Home Manager manage your shell +configuration then you must add either

. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
+

or

. "/etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh"
+

to your shell configuration, depending on whether +home-manager.useUserPackages is enabled. This +file can be sourced directly by POSIX.2-like shells such as +Bash or Z +shell. Fish users +can use utilities such as +foreign-env or +babelfish.

Note

By default user packages will not be ignored in favor of +environment.systemPackages, but they will be installed to +/etc/profiles/per-user/$USERNAME if

home-manager.useUserPackages = true;
+

is added to the nix-darwin configuration. This option may become the +default value in the future.

Note

By default, Home Manager uses a private pkgs instance that is +configured via the home-manager.users.<name>.nixpkgs options. To +instead use the global pkgs that is configured via the system level +nixpkgs options, set

home-manager.useGlobalPkgs = true;
+

This saves an extra Nixpkgs evaluation, adds consistency, and removes +the dependency on NIX_PATH, which is otherwise used for importing +Nixpkgs.

Note

Home Manager will pass osConfig as a module argument to any modules +you create. This contains the system’s nix-darwin configuration.

{ lib, pkgs, osConfig, ... }:
+

Once installed you can see Using Home Manager for a more detailed +description of Home Manager and how to use it.

+
+

Using Home Manager

Your use of Home Manager is centered around the configuration file, +which is typically found at ~/.config/home-manager/home.nix in the +standard installation or ~/.config/home-manager/flake.nix in a Nix +flake based installation.

Note

The default configuration used to be placed in ~/.config/nixpkgs¸ so +you may see references to that elsewhere. The old directory still works +but Home Manager will print a warning message when used.

This configuration file can be built and activated.

Building a configuration produces a directory in the Nix store that +contains all files and programs that should be available in your home +directory and Nix user profile, respectively. The build step also checks +that the configuration is valid and it will fail with an error if you, +for example, assign a value to an option that does not exist or assign a +value of the wrong type. Some modules also have custom assertions that +perform more detailed, module specific, checks.

Concretely, if your configuration contains

programs.emacs.enable = "yes";
+

then building it, for example using home-manager build, will result in +an error message saying something like

$ home-manager build
+error: A definition for option `programs.emacs.enable' is not of type `boolean'. Definition values:
+- In `/home/jdoe/.config/home-manager/home.nix': "yes"
+(use '--show-trace' to show detailed location information)
+

The message indicates that you must provide a Boolean value for this +option, that is, either true or false. The documentation of each +option will state the expected type, for +programs.emacs.enable you will see “Type: boolean”. You +there also find information about the default value and a description of +the option. You can find the complete option documentation in +Home Manager Configuration Options or directly in the terminal by running

man home-configuration.nix
+

Once a configuration is successfully built, it can be activated. The +activation performs the steps necessary to make the files, programs, and +services available in your user environment. The home-manager switch +command performs a combined build and activation.

Configuration Example

A fresh install of Home Manager will generate a minimal +~/.config/home-manager/home.nix file containing something like

{ config, pkgs, ... }:
+
+{
+  # Home Manager needs a bit of information about you and the
+  # paths it should manage.
+  home.username = "jdoe";
+  home.homeDirectory = "/home/jdoe";
+
+  # This value determines the Home Manager release that your
+  # configuration is compatible with. This helps avoid breakage
+  # when a new Home Manager release introduces backwards
+  # incompatible changes.
+  #
+  # You can update Home Manager without changing this value. See
+  # the Home Manager release notes for a list of state version
+  # changes in each release.
+  home.stateVersion = "23.11";
+
+  # Let Home Manager install and manage itself.
+  programs.home-manager.enable = true;
+}
+

You can use this as a base for your further configurations.

Note

If you are not very familiar with the Nix language and NixOS modules +then it is encouraged to start with small and simple changes. As you +learn you can gradually grow the configuration with confidence.

As an example, let us expand the initial configuration file to also +install the htop and fortune packages, install Emacs with a few extra +packages available, and enable the user gpg-agent service.

To satisfy the above setup we should elaborate the home.nix file as +follows:

{ config, pkgs, ... }:
+
+{
+  # Home Manager needs a bit of information about you and the
+  # paths it should manage.
+  home.username = "jdoe";
+  home.homeDirectory = "/home/jdoe";
+
+  # Packages that should be installed to the user profile.
+  home.packages = [
+    pkgs.htop
+    pkgs.fortune
+  ];
+
+  # This value determines the Home Manager release that your
+  # configuration is compatible with. This helps avoid breakage
+  # when a new Home Manager release introduces backwards
+  # incompatible changes.
+  #
+  # You can update Home Manager without changing this value. See
+  # the Home Manager release notes for a list of state version
+  # changes in each release.
+  home.stateVersion = "23.11";
+
+  # Let Home Manager install and manage itself.
+  programs.home-manager.enable = true;
+
+  programs.emacs = {
+    enable = true;
+    extraPackages = epkgs: [
+      epkgs.nix-mode
+      epkgs.magit
+    ];
+  };
+
+  services.gpg-agent = {
+    enable = true;
+    defaultCacheTtl = 1800;
+    enableSshSupport = true;
+  };
+}
+
  • Nixpkgs packages can be installed to the user profile using +???.

  • The option names of a program module typically start with +programs.<package name>.

  • Similarly, for a service module, the names start with +services.<package name>. Note in some cases a package has both +programs and service options – Emacs is such an example.

To activate this configuration you can run

home-manager switch
+

or if you are not feeling so lucky,

home-manager build
+

which will create a result link to a directory containing an +activation script and the generated home directory files.

+

Rollbacks

While the home-manager tool does not explicitly support rollbacks at +the moment it is relatively easy to perform one manually. The steps to +do so are

  1. Run home-manager generations to determine which generation you +wish to rollback to:

    $ home-manager generations
    +2018-01-04 11:56 : id 765 -> /nix/store/kahm1rxk77mnvd2l8pfvd4jkkffk5ijk-home-manager-generation
    +2018-01-03 10:29 : id 764 -> /nix/store/2wsmsliqr5yynqkdyjzb1y57pr5q2lsj-home-manager-generation
    +2018-01-01 12:21 : id 763 -> /nix/store/mv960kl9chn2lal5q8lnqdp1ygxngcd1-home-manager-generation
    +2017-12-29 21:03 : id 762 -> /nix/store/6c0k1r03fxckql4vgqcn9ccb616ynb94-home-manager-generation
    +2017-12-25 18:51 : id 761 -> /nix/store/czc5y6vi1rvnkfv83cs3rn84jarcgsgh-home-manager-generation
    +…
    +
  2. Copy the Nix store path of the generation you chose, e.g.,

    /nix/store/mv960kl9chn2lal5q8lnqdp1ygxngcd1-home-manager-generation
    +

    for generation 763.

  3. Run the activate script inside the copied store path:

    $ /nix/store/mv960kl9chn2lal5q8lnqdp1ygxngcd1-home-manager-generation/activate
    +Starting home manager activation
    +…
    +
+

Keeping your ~ safe from harm

To configure programs and services Home Manager must write various +things to your home directory. To prevent overwriting any existing files +when switching to a new generation, Home Manager will attempt to detect +collisions between existing files and generated files. If any such +collision is detected the activation will terminate before changing +anything on your computer.

For example, suppose you have a wonderful, painstakingly created +~/.config/git/config and add

{
+  # …
+
+  programs.git = {
+    enable = true;
+    userName = "Jane Doe";
+    userEmail = "jane.doe@example.org";
+  };
+
+  # …
+}
+

to your configuration. Attempting to switch to the generation will then +result in

$ home-manager switch
+…
+Activating checkLinkTargets
+Existing file '/home/jdoe/.config/git/config' is in the way
+Please move the above files and try again
+
+

Graphical services

Home Manager includes a number of services intended to run in a +graphical session, for example xscreensaver and dunst. +Unfortunately, such services will not be started automatically unless +you let Home Manager start your X session. That is, you have something +like

{
+  # …
+
+  services.xserver.enable = true;
+
+  # …
+}
+

in your system configuration and

{
+  # …
+
+  xsession.enable = true;
+  xsession.windowManager.command = "…";
+
+  # …
+}
+

in your Home Manager configuration.

+

Updating

If you have installed Home Manager using the Nix channel method then +updating Home Manager is done by first updating the channel. You can +then switch to the updated Home Manager environment.

$ nix-channel --update
+…
+unpacking channels...
+$ home-manager switch
+
+
+

Nix Flakes

Home Manager is compatible with Nix +Flakes. But please be aware that the +support it is still experimental and may change in backwards +incompatible ways.

Just like in the standard installation you can use the Home Manager +flake in three ways:

  1. Using the standalone home-manager tool. For platforms other than +NixOS and Darwin, this is the only available choice. It is also +recommended for people on NixOS or Darwin that want to manage their +home directory independently of the system as a whole. See +Standalone setup for instructions on how +to perform this installation.

  2. As a module within a NixOS system configuration. This allows the +user profiles to be built together with the system when running +nixos-rebuild. See NixOS module for a +description of this setup.

  3. This allows the user profiles to be built together with the system +when running darwin-rebuild. See nix-darwin +module for a description of this +setup.

Prerequisites

  • Install Nix 2.4 or later, or have it in nix-shell.

  • Enable experimental features nix-command and flakes.

    • When using NixOS, add the following to your configuration.nix +and rebuild your system.

      nix = {
      +  package = pkgs.nixFlakes;
      +  extraOptions = ''
      +    experimental-features = nix-command flakes
      +  '';
      +};
      +
    • If you are not using NixOS, add the following to nix.conf +(located at ~/.config/nix/ or /etc/nix/nix.conf).

      experimental-features = nix-command flakes
      +

      You may need to restart the Nix daemon with, for example, +sudo systemctl restart nix-daemon.service.

    • Alternatively, you can enable flakes on a per-command basis with +the following additional flags to nix and home-manager:

      $ nix --extra-experimental-features "nix-command flakes" <sub-commands>
      +$ home-manager --extra-experimental-features "nix-command flakes" <sub-commands>
      +
  • Prepare your Home Manager configuration (home.nix).

    Unlike the channel-based setup, home.nix will be evaluated when +the flake is built, so it must be present before bootstrap of Home +Manager from the flake. See Configuration Example for +introduction about writing a Home Manager configuration.

+

Standalone setup

To prepare an initial Home Manager configuration for your logged in +user, you can run the Home Manager init command directly from its +flake.

For example, if you are using the unstable version of Nixpkgs or NixOS, +then to generate and activate a basic configuration run the command

$ nix run home-manager/master -- init --switch
+

For Nixpkgs or NixOS version 23.11 run

$ nix run home-manager/release-23.11 -- init --switch
+

This will generate a flake.nix and a home.nix file in +~/.config/home-manager, creating the directory if it does not exist.

If you omit the --switch option then the activation will not happen. +This is useful if you want to inspect and edit the configuration before +activating it.

$ nix run home-manager/$branch -- init
+$ # Edit files in ~/.config/home-manager
+$ nix run home-manager/$branch -- init --switch
+

Where $branch is one of master or release-23.11.

After the initial activation has completed successfully then building +and activating your flake-based configuration is as simple as

$ home-manager switch
+

It is possible to override the default configuration directory, if you +want. For example,

$ nix run home-manager/$branch -- init --switch ~/hmconf
+$ # And after the initial activation.
+$ home-manager switch --flake ~/hmconf
+

Note

The flake inputs are not automatically updated by Home Manager. You need +to use the standard nix flake update command for that.

If you only want to update a single flake input, then the command +nix flake lock --update-input <input> can be used.

You can also pass flake-related options such as --recreate-lock-file +or --update-input <input> to home-manager when building or +switching, and these options will be forwarded to nix build. See the +NixOS Wiki page for details.

+

NixOS module

To use Home Manager as a NixOS module, a bare-minimum flake.nix would +be as follows:

{
+  description = "NixOS configuration";
+
+  inputs = {
+    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
+    home-manager.url = "github:nix-community/home-manager";
+    home-manager.inputs.nixpkgs.follows = "nixpkgs";
+  };
+
+  outputs = inputs@{ nixpkgs, home-manager, ... }: {
+    nixosConfigurations = {
+      hostname = nixpkgs.lib.nixosSystem {
+        system = "x86_64-linux";
+        modules = [
+          ./configuration.nix
+          home-manager.nixosModules.home-manager
+          {
+            home-manager.useGlobalPkgs = true;
+            home-manager.useUserPackages = true;
+            home-manager.users.jdoe = import ./home.nix;
+
+            # Optionally, use home-manager.extraSpecialArgs to pass
+            # arguments to home.nix
+          }
+        ];
+      };
+    };
+  };
+}
+

The Home Manager configuration is then part of the NixOS configuration +and is automatically rebuilt with the system when using the appropriate +command for the system, such as +nixos-rebuild switch --flake <flake-uri>.

You can use the above flake.nix as a template in /etc/nixos by

$ nix flake new /etc/nixos -t github:nix-community/home-manager#nixos
+
+

nix-darwin module

The flake-based setup of the Home Manager nix-darwin module is similar +to that of NixOS. The flake.nix would be:

{
+  description = "Darwin configuration";
+
+  inputs = {
+    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
+    darwin.url = "github:lnl7/nix-darwin";
+    darwin.inputs.nixpkgs.follows = "nixpkgs";
+    home-manager.url = "github:nix-community/home-manager";
+    home-manager.inputs.nixpkgs.follows = "nixpkgs";
+  };
+
+  outputs = inputs@{ nixpkgs, home-manager, darwin, ... }: {
+    darwinConfigurations = {
+      hostname = darwin.lib.darwinSystem {
+        system = "x86_64-darwin";
+        modules = [
+          ./configuration.nix
+          home-manager.darwinModules.home-manager
+          {
+            home-manager.useGlobalPkgs = true;
+            home-manager.useUserPackages = true;
+            home-manager.users.jdoe = import ./home.nix;
+
+            # Optionally, use home-manager.extraSpecialArgs to pass
+            # arguments to home.nix
+          }
+        ];
+      };
+    };
+  };
+}
+

and it is also rebuilt with the nix-darwin generations. The rebuild +command here may be darwin-rebuild switch --flake <flake-uri>.

You can use the above flake.nix as a template in ~/.config/darwin by

$ nix flake new ~/.config/darwin -t github:nix-community/home-manager#nix-darwin
+
+
+

Writing Home Manager Modules

The module system in Home Manager is based entirely on the NixOS module +system so we will here only highlight aspects that are specific for Home +Manager. For information about the module system as such please refer to +the Writing NixOS +Modules +chapter of the NixOS manual.

Table of Contents

Option Types

Option Types

Overall the basic option types are the same in Home Manager as NixOS. A +few Home Manager options, however, make use of custom types that are +worth describing in more detail. These are the option types dagOf and +gvariant that are used, for example, by +programs.ssh.matchBlocks and dconf.settings.

hm.types.dagOf

Options of this type have attribute sets as values where each member +is a node in a directed acyclic +graph +(DAG). This allows the attribute set entries to express dependency +relations among themselves. This can, for example, be used to +control the order of match blocks in a OpenSSH client configuration +or the order of activation script blocks in +home.activation.

A number of functions are provided to create DAG nodes. The +functions are shown below with examples using an option foo.bar of +type hm.types.dagOf types.int.

There are also a set of functions that generate a DAG from a list. +These are convenient when you just want to have a linear list of DAG +entries, without having to manually enter the relationship between +each entry. Each of these functions take a tag as argument and the +DAG entries will be named ${tag}-${index}.

hm.dag.entriesAnywhere (tag: string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled +using the given tag. For example

foo.bar = hm.dag.entriesAnywhere "a" [ 0 1 ];
+

is equivalent to

foo.bar = {
+  a-0 = 0;
+  a-1 = hm.dag.entryAfter [ "a-0" ] 1;
+}
+
hm.dag.entriesAfter (tag: string) (afters: list string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled +using the given tag. The list of values are placed are placed +after each of the attribute names in afters. For example

foo.bar =
+  { b = 0; }
+  // hm.dag.entriesAfter "a" [ "b" ] [ 1 2 ];
+

is equivalent to

foo.bar = {
+  b = 0;
+  a-0 = hm.dag.entryAfter [ "b" ] 1;
+  a-1 = hm.dag.entryAfter [ "a-0" ] 2;
+}
+
hm.dag.entriesBefore (tag: string) (befores: list string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled +using the given tag. The list of values are placed before each +of the attribute names in befores. For example

foo.bar =
+  { b = 0; }
+  // hm.dag.entriesBefore "a" [ "b" ] [ 1 2 ];
+

is equivalent to

foo.bar = {
+  b = 0;
+  a-0 = 1;
+  a-1 = hm.dag.entryBetween [ "b" ] [ "a-0" ] 2;
+}
+
hm.dag.entriesBetween (tag: string) (befores: list string) (afters: list string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled +using the given tag. The list of values are placed before each +of the attribute names in befores and after each of the +attribute names in afters. For example

foo.bar =
+  { b = 0; c = 3; }
+  // hm.dag.entriesBetween "a" [ "b" ] [ "c" ] [ 1 2 ];
+

is equivalent to

foo.bar = {
+  b = 0;
+  c = 3;
+  a-0 = hm.dag.entryAfter [ "c" ] 1;
+  a-1 = hm.dag.entryBetween [ "b" ] [ "a-0" ] 2;
+}
+
hm.types.gvariant

This type is useful for options representing +GVariant +values. The type accepts all primitive GVariant types as well as +arrays, tuples, “maybe” types, and dictionaries.

Some Nix values are automatically coerced to matching GVariant value +but the GVariant model is richer so you may need to use one of the +provided constructor functions. Examples assume an option foo.bar +of type hm.types.gvariant.

hm.gvariant.mkBoolean (v: bool)

Takes a Nix value v to a GVariant boolean value (GVariant +format string b). Note, Nix booleans are automatically coerced +using this function. That is,

foo.bar = hm.gvariant.mkBoolean true;
+

is equivalent to

foo.bar = true;
+
hm.gvariant.mkString (v: string)

Takes a Nix value v to a GVariant string value (GVariant +format string s). Note, Nix strings are automatically coerced +using this function. That is,

foo.bar = hm.gvariant.mkString "a string";
+

is equivalent to

foo.bar = "a string";
+
hm.gvariant.mkObjectpath (v: string)

Takes a Nix value v to a GVariant objectpath value (GVariant +format string o).

hm.gvariant.mkUchar (v: string)

Takes a Nix value v to a GVariant uchar value (GVariant +format string y).

hm.gvariant.mkInt16 (v: int)

Takes a Nix value v to a GVariant int16 value (GVariant +format string n).

hm.gvariant.mkUint16 (v: int)

Takes a Nix value v to a GVariant uint16 value (GVariant +format string q).

hm.gvariant.mkInt32 (v: int)

Takes a Nix value v to a GVariant int32 value (GVariant +format string i). Note, Nix integers are automatically coerced +using this function. That is,

foo.bar = hm.gvariant.mkInt32 7;
+

is equivalent to

foo.bar = 7;
+
hm.gvariant.mkUint32 (v: int)

Takes a Nix value v to a GVariant uint32 value (GVariant +format string u).

hm.gvariant.mkInt64 (v: int)

Takes a Nix value v to a GVariant int64 value (GVariant +format string x).

hm.gvariant.mkUint64 (v: int)

Takes a Nix value v to a GVariant uint64 value (GVariant +format string t).

hm.gvariant.mkDouble (v: double)

Takes a Nix value v to a GVariant double value (GVariant +format string d). Note, Nix floats are automatically coerced +using this function. That is,

foo.bar = hm.gvariant.mkDouble 3.14;
+

is equivalent to

foo.bar = 3.14;
+
hm.gvariant.mkArray type elements

Builds a GVariant array containing the given list of elements, +where each element is a GVariant value of the given type +(GVariant format string a${type}). The type value can be +constructed using

where type and types are themselves a type and list of +types, respectively.

hm.gvariant.mkEmptyArray type

An alias of +hm.gvariant.mkArray type [].

hm.gvariant.mkNothing type

Builds a GVariant maybe value (GVariant format string +m${type}) whose (non-existent) element is of the given type. +The type value is constructed as described for the +mkArray function above.

hm.gvariant.mkJust element

Builds a GVariant maybe value (GVariant format string +m${element.type}) containing the given GVariant element.

hm.gvariant.mkTuple elements

Builds a GVariant tuple containing the given list of elements, +where each element is a GVariant value.

hm.gvariant.mkVariant element

Builds a GVariant variant (GVariant format string v) which +contains the value of a GVariant element.

hm.gvariant.mkDictionaryEntry [key value]

Builds a GVariant dictionary entry containing the given list of +elements (GVariant format string {${key.type}${value.type}}), +where each element is a GVariant value.

+
+

Contributing

Contributions to Home Manager are very welcome. To make the process as +smooth as possible for both you and the Home Manager maintainers we +provide some guidelines that we ask you to follow. See Getting +started for information on how to set up +a suitable development environment and Guidelines for +the actual guidelines.

This text is mainly directed at those who would like to make code +contributions to Home Manager. If you just want to report a bug then +first look among the already open +issues, if you +find one matching yours then feel free to comment on it to add any +additional information you may have. If no matching issue exists then go +to the new +issue page +and write a description of your problem. Include as much information as +you can, ideally also include relevant excerpts from your Home Manager +configuration.

Table of Contents

Getting started
Guidelines
News
Tests

Getting started

If you have not previously forked Home Manager then you need to do that +first. Have a look at GitHub’s Fork a +repo for instructions on +how to do this.

Once you have a fork of Home Manager you should create a branch starting +at the most recent master branch. Give your branch a reasonably +descriptive name. Commit your changes to this branch and when you are +happy with the result and it fulfills Guidelines then +push the branch to GitHub and create a pull +request.

Assuming your clone is at $HOME/devel/home-manager then you can make +the home-manager command use it by either

  1. overriding the default path by using the -I command line option:

    $ home-manager -I home-manager=$HOME/devel/home-manager
    +

    or, if using flakes:

    $ home-manager --override-input home-manager ~/devel/home-manager
    +

    or

  2. changing the default path by ensuring your configuration includes

    programs.home-manager.enable = true;
    +programs.home-manager.path = "$HOME/devel/home-manager";
    +

    and running home-manager switch to activate the change. +Afterwards, home-manager build and home-manager switch will use +your cloned repository.

The first option is good if you only temporarily want to use your clone.

+

Guidelines

If your contribution satisfy the following rules then there is a good +chance it will be merged without too much trouble. The rules are +enforced by the Home Manager maintainers and to a lesser extent the Home +Manager CI system.

If you are uncertain how these rules affect the change you would like to +make then feel free to start a discussion in the +#home-manager IRC +channel, ideally before you start developing.

Maintain backward compatibility

Your contribution should not cause another user’s existing configuration +to break unless there is a very good reason and the change should be +announced to the user through an +assertion +or similar.

Remember that Home Manager is used in many different environments and +you should consider how your change may effect others. For example,

  • Does your change work for people that do not use NixOS? Consider +other GNU/Linux distributions and macOS.

  • Does your change work for people whose configuration is built on one +system and deployed on another system?

+

Keep forward compatibility in mind

The master branch of Home Manager tracks the unstable channel of +Nixpkgs, which may update package versions at any time. It is therefore +important to consider how a package update may affect your code and try +to reduce the risk of breakage.

The most effective way to reduce this risk is to follow the advice in +Add only valuable options.

+

Add only valuable options

When creating a new module it is tempting to include every option +supported by the software. This is strongly discouraged. Providing +many options increases maintenance burden and risk of breakage +considerably. This is why only the most important software +options +should be modeled explicitly. Less important options should be +expressible through an extraConfig escape hatch.

A good rule of thumb for the first implementation of a module is to only +add explicit options for those settings that absolutely must be set for +the software to function correctly. It follows that a module for +software that provides sensible default values for all settings would +require no explicit options at all.

If the software uses a structured configuration format like a JSON, +YAML, INI, TOML, or even a plain list of key/value pairs then consider +using a settings option as described in Nix RFC +42.

+

Add relevant tests

If at all possible, make sure to add new tests and expand existing tests +so that your change will keep working in the future. See +Tests for more information about the Home Manager test +suite.

All contributed code must pass the test suite.

+

Add relevant documentation

Many code changes require changing the documentation as well. Module +options should be documented with Nixpkgs-flavoured +Markdown. +Home Manager is itself documented using a combination of +DocBook and +AsciiDoc. All text is hosted in Home Manager’s +Git repository.

The HTML version of the manual containing both the module option +descriptions and the documentation of Home Manager can be generated and +opened by typing the following in a shell within a clone of the Home +Manager Git repository:

$ nix-build -A docs.html
+$ xdg-open ./result/share/doc/home-manager/index.html
+

When you have made changes to a module, it is a good idea to check that +the man page version of the module options looks good:

$ nix-build -A docs.manPages
+$ man ./result/share/man/man5/home-configuration.nix.5.gz
+
+

Add yourself as a module maintainer

Every new module must include a named maintainer using the +meta.maintainers attribute. If you are a user of a module that +currently lacks a maintainer then please consider adopting it.

If you are present in the nixpkgs maintainer list then you can use that +entry. If you are not then you can add yourself to +modules/lib/maintainers.nix in the Home Manager project.

Maintainers are encouraged to join the IRC or Matrix channel and +participate when they have opportunity.

+

Format your code

Make sure your code is formatted as described in Code +Style. To maintain consistency throughout the project +you are encouraged to browse through existing code and adopt its style +also in new code.

+

Format your commit messages

Similar to Format your code we encourage a +consistent commit message format as described in +Commits.

+

Format your news entries

If your contribution includes a change that should be communicated to +users of Home Manager then you can add a news entry. The entry must be +formatted as described in News.

When new modules are added a news entry should be included but you do +not need to create this entry manually. The merging maintainer will +create the entry for you. This is to reduce the risk of merge conflicts.

+

Use conditional modules and news

Home Manager includes a number of modules that are only usable on some +of the supported platforms. The most common example of platform specific +modules are those that define systemd user services, which only works on +Linux systems.

If you add a module that is platform specific then make sure to include +a condition in the loadModule function call. This will make the module +accessible only on systems where the condition evaluates to true.

Similarly, if you are adding a news entry then it should be shown only +to users that may find it relevant, see News for a +description of conditional news.

+

Mind the license

The Home Manager project is covered by the MIT license and we can only +accept contributions that fall under this license, or are licensed in a +compatible way. When you contribute self written code and documentation +it is assumed that you are doing so under the MIT license.

A potential gotcha with respect to licensing are option descriptions. +Often it is convenient to copy from the upstream software documentation. +When this is done it is important to verify that the license of the +upstream documentation allows redistribution under the terms of the MIT +license.

+

Commits

The commits in your pull request should be reasonably self-contained, +that is, each commit should make sense in isolation. In particular, you +will be asked to amend any commit that introduces syntax errors or +similar problems even if they are fixed in a later commit.

The commit messages should follow the seven +rules, except for +"Capitalize the subject line". We also ask you to include the affected +code component or module in the first line. That is, a commit message +should follow the template

{component}: {description}
+
+{long description}
+

where {component} refers to the code component (or module) your change +affects, {description} is a very brief description of your change, and +{long description} is an optional clarifying description. As a rare +exception, if there is no clear component, or your change affects many +components, then the {component} part is optional. See +example_title for a commit message that fulfills +these requirements.

+

Example commit

The commit +69f8e47e9e74c8d3d060ca22e18246b7f7d988ef +contains the commit message


+    starship: allow running in Emacs if vterm is used
+
+    The vterm buffer is backed by libvterm and can handle Starship prompts
+    without issues.
+

which ticks all the boxes necessary to be accepted in Home Manager.

Finally, when adding a new module, say programs/foo.nix, we use the +fixed commit format foo: add module. You can, of course, still include +a long description if you wish.

+

Code Style

The code in Home Manager is formatted by the +nixfmt tool and the formatting is +checked in the pull request tests. Run the format tool inside the +project repository before submitting your pull request.

Keep lines at a reasonable width, ideally 80 characters or less. This +also applies to string literals.

We prefer lowerCamelCase for variable and attribute names with the +accepted exception of variables directly referencing packages in Nixpkgs +which use a hyphenated style. For example, the Home Manager option +services.gpg-agent.enableSshSupport references the gpg-agent package +in Nixpkgs.

+
+ +

News

Home Manager includes a system for presenting news to the user. When +making a change you, therefore, have the option to also include an +associated news entry. In general, a news entry should only be added for +truly noteworthy news. For example, a bug fix or new option does +generally not need a news entry.

If you do have a change worthy of a news entry then please add one in +news.nix +but you should follow some basic guidelines:

  • The entry timestamp should be in ISO-8601 format having "+00:00" +as time zone. For example, "2017-09-13T17:10:14+00:00". A suitable +timestamp can be produced by the command

    $ date --iso-8601=second --universal
    +
  • The entry condition should be as specific as possible. For example, +if you are changing or deprecating a specific option then you could +restrict the news to those users who actually use this option.

  • Wrap the news message so that it will fit in the typical terminal, +that is, at most 80 characters wide. Ideally a bit less.

  • Unlike commit messages, news will be read without any connection to +the Home Manager source code. It is therefore important to make the +message understandable in isolation and to those who do not have +knowledge of the Home Manager internals. To this end it should be +written in more descriptive, prose like way.

  • If you refer to an option then write its full attribute path. That +is, instead of writing

    The option 'foo' has been deprecated, please use 'bar' instead.
    +

    it should read

    The option 'services.myservice.foo' has been deprecated, please
    +use 'services.myservice.bar' instead.
    +
  • A new module, say foo.nix, should always include a news entry that +has a message along the lines of

    A new module is available: 'services.foo'.
    +

    If the module is platform specific, e.g., a service module using +systemd, then a condition like

    condition = hostPlatform.isLinux;
    +

    should be added. If you contribute a module then you don’t need to +add this entry, the merger will create an entry for you.

+

Tests

Home Manager includes a basic test suite and it is highly recommended to +include at least one test when adding a module. Tests are typically in +the form of "golden tests" where, for example, a generated +configuration file is compared to a known correct file.

It is relatively easy to create tests by modeling the existing tests, +found in the tests project directory. For a full reference to the +functions available in test scripts, you can look at NMT’s +bash-lib.

The full Home Manager test suite can be run by executing

$ nix-shell --pure tests -A run.all
+

in the project root. List all test cases through

$ nix-shell --pure tests -A list
+

and run an individual test, for example alacritty-empty-settings, +through

$ nix-shell --pure tests -A run.alacritty-empty-settings
+

However, those invocations will impurely source the system’s nixpkgs, +and may cause failures. To run against the nixpkgs from the flake.lock, +use instead e.g.

$ nix develop --ignore-environment .#all
+
+
+

Third-Party Tools and Extensions

Here is a collection of tools and extensions that relate to Home +Manager. Note, these are maintained outside the regular Home Manager +flow so quality and support may vary wildly. If you encounter problems +then please raise them in the corresponding project, not as issues in +the Home Manager tracker.

If you have made something interesting related to Home Manager then you +are encouraged to create a PR that expands this chapter.

Table of Contents

Module Collections

Module Collections

+
+

Frequently Asked Questions (FAQ)

Why is there a collision error when switching generation?

Home Manager currently installs packages into the user environment, +precisely as if the packages were installed through nix-env --install. +This means that you will get a collision error if your Home Manager +configuration attempts to install a package that you already have +installed manually, that is, packages that shows up when you run +nix-env --query.

For example, imagine you have the hello package installed in your +environment

$ nix-env --query
+hello-2.10
+

and your Home Manager configuration contains

home.packages = [ pkgs.hello ];
+

Then attempting to switch to this configuration will result in an error +similar to

$ home-manager switch
+these derivations will be built:
+  /nix/store/xg69wsnd1rp8xgs9qfsjal017nf0ldhm-home-manager-path.drv
+[…]
+Activating installPackages
+replacing old ‘home-manager-path’
+installing ‘home-manager-path’
+building path(s) ‘/nix/store/b5c0asjz9f06l52l9812w6k39ifr49jj-user-environment’
+Wide character in die at /nix/store/64jc9gd2rkbgdb4yjx3nrgc91bpjj5ky-buildenv.pl line 79.
+collision between ‘/nix/store/fmwa4axzghz11cnln5absh31nbhs9lq1-home-manager-path/bin/hello’ and ‘/nix/store/c2wyl8b9p4afivpcz8jplc9kis8rj36d-hello-2.10/bin/hello’; use ‘nix-env --set-flag priority NUMBER PKGNAME’ to change the priority of one of the conflicting packages
+builder for ‘/nix/store/b37x3s7pzxbasfqhaca5dqbf3pjjw0ip-user-environment.drv’ failed with exit code 2
+error: build of ‘/nix/store/b37x3s7pzxbasfqhaca5dqbf3pjjw0ip-user-environment.drv’ failed
+

The solution is typically to uninstall the package from the environment +using nix-env --uninstall and reattempt the Home Manager generation +switch.

You could also opt to unistall all of the packages from your profile +with nix-env --uninstall '*'.

+

Why are the session variables not set?

Home Manager is only able to set session variables automatically if it +manages your Bash, Z shell, or fish shell configuration. To enable such +management you use programs.bash.enable, +programs.zsh.enable, or programs.fish.enable.

If you don’t want to let Home Manager manage your shell then you will +have to manually source the +~/.nix-profile/etc/profile.d/hm-session-vars.sh file in an appropriate +way. In Bash and Z shell this can be done by adding

. "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
+

to your .profile and .zshrc files, respectively. The +hm-session-vars.sh file should work in most Bourne-like shells. For +fish shell, it is possible to source it using the foreign-env +plugin

fenv source "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh" > /dev/null
+
+

How to set up a configuration for multiple users/machines?

A typical way to prepare a repository of configurations for multiple +logins and machines is to prepare one "top-level" file for each unique +combination.

For example, if you have two machines, called "kronos" and "rhea" on +which you want to configure your user "jane" then you could create the +files

  • kronos-jane.nix,

  • rhea-jane.nix, and

  • common.nix

in your repository. On the kronos and rhea machines you can then make +~jane/.config/home-manager/home.nix be a symbolic link to the +corresponding file in your configuration repository.

The kronos-jane.nix and rhea-jane.nix files follow the format

{ ... }:
+
+{
+  imports = [ ./common.nix ];
+
+  # Various options that are specific for this machine/user.
+}
+

while the common.nix file contains configuration shared across the two +logins. Of course, instead of just a single common.nix file you can +have multiple ones, even one per program or service.

You can get some inspiration from the Post your home-manager home.nix +file! +Reddit thread.

+

Why do I get an error message about ca.desrt.dconf or dconf.service?

You are most likely trying to configure something that uses dconf but +the DBus session is not aware of the dconf service. The full error you +might get is

error: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name ca.desrt.dconf was not provided by any .service files
+

or

error: GDBus.Error:org.freedesktop.systemd1.NoSuchUnit: Unit dconf.service not found.
+

The solution on NixOS is to add

programs.dconf.enable = true;
+

to your system configuration.

+

How do I install packages from Nixpkgs unstable?

If you are using a stable version of Nixpkgs but would like to install +some particular packages from Nixpkgs unstable – or some other channel +– then you can import the unstable Nixpkgs and refer to its packages +within your configuration. Something like

{ pkgs, config, ... }:
+
+let
+
+  pkgsUnstable = import <nixpkgs-unstable> {};
+
+in
+
+{
+  home.packages = [
+    pkgsUnstable.foo
+  ];
+
+  # …
+}
+

should work provided you have a Nix channel called nixpkgs-unstable.

You can add the nixpkgs-unstable channel by running

$ nix-channel --add https://nixos.org/channels/nixpkgs-unstable nixpkgs-unstable
+$ nix-channel --update
+

Note, the package will not be affected by any package overrides, +overlays, etc.

+

How do I override the package used by a module?

By default Home Manager will install the package provided by your chosen +nixpkgs channel but occasionally you might end up needing to change +this package. This can typically be done in two ways.

  1. If the module provides a package option, such as +programs.beets.package, then this is the recommended way to +perform the override. For example,

    programs.beets.package = pkgs.beets.override { enableCheck = true; };
    +
  2. If no package option is available then you can typically override +the relevant package using an +overlay.

    For example, if you want to use the programs.skim module but use +the skim package from Nixpkgs unstable, then a configuration like

    { pkgs, config, ... }:
    +
    +let
    +
    +  pkgsUnstable = import <nixpkgs-unstable> {};
    +
    +in
    +
    +{
    +  programs.skim.enable = true;
    +
    +  nixpkgs.overlays = [
    +    (self: super: {
    +      skim = pkgsUnstable.skim;
    +    })
    +  ];
    +
    +  # …
    +}
    +

    should work OK.

+
+
+
+ + + \ No newline at end of file diff --git a/nix-darwin-options.html b/nix-darwin-options.html index d1bb1b7c..0662773f 100644 --- a/nix-darwin-options.html +++ b/nix-darwin-options.html @@ -1,41 +1,239 @@ - -Appendix C. nix-darwin Module Options

Appendix C. nix-darwin Module Options

home-manager.backupFileExtension

On activation move existing files by appending the given -file extension rather than exiting with an error.

Type: -null or string

Default: -null

Example: -"backup"

Declared by:

+
+ + + + + + Appendix C. nix-darwin Configuration Options + + + + + + + +

Appendix C. nix-darwin Configuration Options

+ +
+
+ + home-manager.backupFileExtension + + +
+
+

On activation move existing files by appending the given +file extension rather than exiting with an error.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"backup"

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.extraSpecialArgs

Extra specialArgs passed to Home Manager. This -option can be used to pass additional arguments to all modules.

Type: -attribute set

Default: -{ }

Example: -{ inherit emacs-overlay; }

Declared by:

+
+ +
+
+
+ + home-manager.extraSpecialArgs + + +
+
+

Extra specialArgs passed to Home Manager. This +option can be used to pass additional arguments to all modules.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example: +{ inherit emacs-overlay; }

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.sharedModules

Extra modules added to all users.

Type: -list of raw value

Default: -[ ]

Example: -[ { home.packages = [ nixpkgs-fmt ]; } ]

Declared by:

+
+ +
+
+
+ + home-manager.sharedModules + + +
+
+

Extra modules added to all users.

+ +

Type: +list of raw value

+ +

Default: +[ ]

+ +

Example: +[ { home.packages = [ nixpkgs-fmt ]; } ]

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.useGlobalPkgs

Whether to enable using the system configuration’s pkgs + +

+
+
+ + home-manager.useGlobalPkgs + + +
+
+

Whether to enable using the system configuration’s pkgs argument in Home Manager. This disables the Home Manager -options nixpkgs.*.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+options nixpkgs.*.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.useUserPackages

Whether to enable installation of user packages through the -users.users.<name>.packages option.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + home-manager.useUserPackages + + +
+
+

Whether to enable installation of user packages through the +users.users.<name>.packages option.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.users

Per-user Home Manager configuration.

Type: -attribute set of (Home Manager module)

Default: -{ }

Declared by:

+
+ +
+
+
+ + home-manager.users + + +
+
+

Per-user Home Manager configuration.

+ +

Type: +attribute set of (Home Manager module)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.verbose

Whether to enable verbose output on activation.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + home-manager.verbose + + +
+
+

Whether to enable verbose output on activation.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
\ No newline at end of file +
+
+
+
+
+
+ + \ No newline at end of file diff --git a/nixos-options.html b/nixos-options.html index 0feca73d..6d12f727 100644 --- a/nixos-options.html +++ b/nixos-options.html @@ -1,41 +1,239 @@ - -Appendix B. NixOS Module Options

Appendix B. NixOS Module Options

home-manager.backupFileExtension

On activation move existing files by appending the given -file extension rather than exiting with an error.

Type: -null or string

Default: -null

Example: -"backup"

Declared by:

+
+ + + + + + Appendix B. NixOS Configuration Options + + + + + + + +

Appendix B. NixOS Configuration Options

+ +
+
+ + home-manager.backupFileExtension + + +
+
+

On activation move existing files by appending the given +file extension rather than exiting with an error.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"backup"

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.extraSpecialArgs

Extra specialArgs passed to Home Manager. This -option can be used to pass additional arguments to all modules.

Type: -attribute set

Default: -{ }

Example: -{ inherit emacs-overlay; }

Declared by:

+
+ +
+
+
+ + home-manager.extraSpecialArgs + + +
+
+

Extra specialArgs passed to Home Manager. This +option can be used to pass additional arguments to all modules.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example: +{ inherit emacs-overlay; }

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.sharedModules

Extra modules added to all users.

Type: -list of raw value

Default: -[ ]

Example: -[ { home.packages = [ nixpkgs-fmt ]; } ]

Declared by:

+
+ +
+
+
+ + home-manager.sharedModules + + +
+
+

Extra modules added to all users.

+ +

Type: +list of raw value

+ +

Default: +[ ]

+ +

Example: +[ { home.packages = [ nixpkgs-fmt ]; } ]

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.useGlobalPkgs

Whether to enable using the system configuration’s pkgs + +

+
+
+ + home-manager.useGlobalPkgs + + +
+
+

Whether to enable using the system configuration’s pkgs argument in Home Manager. This disables the Home Manager -options nixpkgs.*.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+options nixpkgs.*.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.useUserPackages

Whether to enable installation of user packages through the -users.users.<name>.packages option.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + home-manager.useUserPackages + + +
+
+

Whether to enable installation of user packages through the +users.users.<name>.packages option.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.users

Per-user Home Manager configuration.

Type: -attribute set of (Home Manager module)

Default: -{ }

Declared by:

+
+ +
+
+
+ + home-manager.users + + +
+
+

Per-user Home Manager configuration.

+ +

Type: +attribute set of (Home Manager module)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
home-manager.verbose

Whether to enable verbose output on activation.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + home-manager.verbose + + +
+
+

Whether to enable verbose output on activation.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/nixos/common.nix> -
\ No newline at end of file +
+
+
+
+
+
+ + \ No newline at end of file diff --git a/options.html b/options.html index 1276a9c2..447c3f7b 100644 --- a/options.html +++ b/options.html @@ -1,5 +1,40 @@ - -Appendix A. Configuration Options

Appendix A. Configuration Options

_module.args

Additional arguments passed to each module in addition to ones + + + + + + Appendix A. Home Manager Configuration Options + + + + + + + +

Appendix A. Home Manager Configuration Options

+ +
+
+ + _module.args + + +
+
+

Additional arguments passed to each module in addition to ones like lib, config, and pkgs, modulesPath.

This option is also available to all submodules. Submodules do not inherit args from their parent module, nor do they provide args to @@ -8,996 +43,4501 @@ this is the argument name which is provided by parent modules to a submodule and contains the attribute name the submodule is bound to, or a unique generated name if it is not bound to an attribute.

Some arguments are already passed by default, of which the -following cannot be changed with this option:

+
+ + accounts.calendar.accounts.<name>.remote.passwordCommand + + +
+
+

A command that prints the password to standard output.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "pass"
+  "caldav"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.remote.type

The type of the storage.

Type: -one of “caldav”, “http”, “google_calendar”

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.remote.type + + +
+
+

The type of the storage.

+ +

Type: +one of “caldav”, “http”, “google_calendar”

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.remote.url

The URL of the storage.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.remote.url + + +
+
+

The URL of the storage.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.remote.userName

User name for authentication.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.remote.userName + + +
+
+

User name for authentication.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.enable

Whether to enable synchronization using vdirsyncer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.enable + + +
+
+

Whether to enable synchronization using vdirsyncer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.auth

Authentication settings. The default is basic.

Type: -null or one of “basic”, “digest”, “guess”

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.auth + + +
+
+

Authentication settings. The default is basic.

+ +

Type: +null or one of “basic”, “digest”, “guess”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.authCert

Either a path to a certificate with a client certificate and -the key or a list of paths to the files with them.

Type: -null or string or list of string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.authCert + + +
+
+

Either a path to a certificate with a client certificate and +the key or a list of paths to the files with them.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.clientIdCommand

A command that prints the OAuth credentials to standard + +

+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.clientIdCommand + + +
+
+

A command that prints the OAuth credentials to standard output.

See -https://vdirsyncer.pimutils.org/en/stable/config.html#google -for more information.

Type: -null or (list of string)

Default: -null

Example:

[
-  "pass"
-  "client_id"
+https://vdirsyncer.pimutils.org/en/stable/config.html#google
+for more information.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "pass"
+  "client_id"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.clientSecretCommand

A command that prints the OAuth credentials to standard + +

+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.clientSecretCommand + + +
+
+

A command that prints the OAuth credentials to standard output.

See -https://vdirsyncer.pimutils.org/en/stable/config.html#google -for more information.

Type: -null or (list of string)

Default: -null

Example:

[
-  "pass"
-  "client_secret"
+https://vdirsyncer.pimutils.org/en/stable/config.html#google
+for more information.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "pass"
+  "client_secret"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.collections

The collections to synchronize between the storages.

Type: -null or (list of (string or list of string))

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.collections + + +
+
+

The collections to synchronize between the storages.

+ +

Type: +null or (list of (string or list of string))

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.conflictResolution

What to do in case of a conflict between the storages. Either + +

+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.conflictResolution + + +
+
+

What to do in case of a conflict between the storages. Either remote wins or local wins or a list that contains a command to run. By default, an error -message is printed.

Type: -null or one of “remote wins”, “local wins” or list of string

Default: -null

Declared by:

+
+message is printed.

+ +

Type: +null or one of “remote wins”, “local wins” or list of string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.itemTypes

Kinds of items to show. The default is to show everything. + +

+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.itemTypes + + +
+
+

Kinds of items to show. The default is to show everything. This depends on particular features of the server, the results -are not validated.

Type: -null or (list of string)

Default: -null

Declared by:

+
+are not validated.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.metadata

Metadata keys that should be synchronized when vdirsyncer -metasync is executed.

Type: -list of string

Default: -[ ]

Example:

[
-  "color"
-  "displayname"
+
+
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.metadata + + +
+
+

Metadata keys that should be synchronized when vdirsyncer +metasync is executed.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "color"
+  "displayname"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.partialSync

What should happen if synchronization in one direction + +

+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.partialSync + + +
+
+

What should happen if synchronization in one direction is impossible due to one storage being read-only. Defaults to revert.

See -https://vdirsyncer.pimutils.org/en/stable/config.html#pair-section -for more information.

Type: -null or one of “revert”, “error”, “ignore”

Default: -null

Declared by:

+
+https://vdirsyncer.pimutils.org/en/stable/config.html#pair-section +for more information.

+ +

Type: +null or one of “revert”, “error”, “ignore”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.postHook

Command to call for each item creation and modification. + +

+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.postHook + + +
+
+

Command to call for each item creation and modification. The command will be called with the path of the new/updated -file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.timeRange

A time range to synchronize. start and end can be any Python + +

+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.timeRange + + +
+
+

A time range to synchronize. start and end can be any Python expression that returns a datetime.datetime -object.

Type: -null or (submodule)

Default: -null

Example:

{
-  end = "datetime.now() + timedelta(days=365)";
-  start = "datetime.now() - timedelta(days=365)";
+object.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
+  end = "datetime.now() + timedelta(days=365)";
+  start = "datetime.now() - timedelta(days=365)";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.timeRange.end

End of time range to show.

Type: -string

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.timeRange.end + + +
+
+

End of time range to show.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.timeRange.start

Start of time range to show.

Type: -string

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.timeRange.start + + +
+
+

Start of time range to show.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.tokenFile

A file path where access tokens are stored.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.tokenFile + + +
+
+

A file path where access tokens are stored.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.userAgent

The user agent to report to the server. Defaults to -vdirsyncer.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.userAgent + + +
+
+

The user agent to report to the server. Defaults to +vdirsyncer.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.verify

Verify SSL certificate.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.verify + + +
+
+

Verify SSL certificate.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.accounts.<name>.vdirsyncer.verifyFingerprint

Optional. SHA1 or MD5 fingerprint of the expected server certificate.

See -https://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorial -for more information.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.calendar.accounts.<name>.vdirsyncer.verifyFingerprint + + +
+
+

Optional. SHA1 or MD5 fingerprint of the expected server certificate.

See +https://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorial +for more information.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.calendar.basePath

The base directory in which to save calendars. May be a + +

+
+
+ + accounts.calendar.basePath + + +
+
+

The base directory in which to save calendars. May be a relative path, in which case it is relative the home -directory.

Type: -string

Declared by:

+
+directory.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/calendar.nix> -
accounts.contact.accounts

List of contacts.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts + + +
+
+

List of contacts.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ <home-manager/modules/programs/khard.nix> -
+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.khal.enable

Whether to enable khal access.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.khal.enable + + +
+
+

Whether to enable khal access.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.khal.readOnly

Keep khal from making any changes to this account.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.khal.readOnly + + +
+
+

Keep khal from making any changes to this account.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.khard.enable

Whether to enable khard access.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.khard.enable + + +
+
+

Whether to enable khard access.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khard.nix> -
accounts.contact.accounts.<name>.local

Local configuration for the contacts.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.local + + +
+
+

Local configuration for the contacts.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.local.encoding

File encoding for items, both content and file name. -Defaults to UTF-8.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.local.encoding + + +
+
+

File encoding for items, both content and file name. +Defaults to UTF-8.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.local.fileExt

The file extension to use.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.local.fileExt + + +
+
+

The file extension to use.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.local.path

The path of the storage.

Type: -string

Default: -"‹accounts.contact.basePath›/‹name›"

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.local.path + + +
+
+

The path of the storage.

+ +

Type: +string

+ +

Default: +"‹accounts.contact.basePath›/‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.local.type

The type of the storage.

Type: -one of “filesystem”, “singlefile”

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.local.type + + +
+
+

The type of the storage.

+ +

Type: +one of “filesystem”, “singlefile”

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.name

Unique identifier of the contact account. This is set to the -attribute name of the contact configuration.

Type: -string (read only)

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.name + + +
+
+

Unique identifier of the contact account. This is set to the +attribute name of the contact configuration.

+ +

Type: +string (read only)

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.remote

Remote configuration for the contacts.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.remote + + +
+
+

Remote configuration for the contacts.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.remote.passwordCommand

A command that prints the password to standard output.

Type: -null or (list of string)

Default: -null

Example:

[
-  "pass"
-  "caldav"
+
+
+
+
+ + accounts.contact.accounts.<name>.remote.passwordCommand + + +
+
+

A command that prints the password to standard output.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "pass"
+  "caldav"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.remote.type

The type of the storage.

Type: -one of “carddav”, “http”, “google_contacts”

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.remote.type + + +
+
+

The type of the storage.

+ +

Type: +one of “carddav”, “http”, “google_contacts”

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.remote.url

The URL of the storage.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.remote.url + + +
+
+

The URL of the storage.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.remote.userName

User name for authentication.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.remote.userName + + +
+
+

User name for authentication.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.enable

Whether to enable synchronization using vdirsyncer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.enable + + +
+
+

Whether to enable synchronization using vdirsyncer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.auth

Authentication settings. The default is basic.

Type: -null or one of “basic”, “digest”, “guess”

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.auth + + +
+
+

Authentication settings. The default is basic.

+ +

Type: +null or one of “basic”, “digest”, “guess”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.authCert

Either a path to a certificate with a client certificate and -the key or a list of paths to the files with them.

Type: -null or string or list of string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.authCert + + +
+
+

Either a path to a certificate with a client certificate and +the key or a list of paths to the files with them.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.clientIdCommand

A command that prints the OAuth credentials to standard + +

+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.clientIdCommand + + +
+
+

A command that prints the OAuth credentials to standard output.

See -https://vdirsyncer.pimutils.org/en/stable/config.html#google -for more information.

Type: -null or (list of string)

Default: -null

Example:

[
-  "pass"
-  "client_id"
+https://vdirsyncer.pimutils.org/en/stable/config.html#google
+for more information.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "pass"
+  "client_id"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.clientSecretCommand

A command that prints the OAuth credentials to standard + +

+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.clientSecretCommand + + +
+
+

A command that prints the OAuth credentials to standard output.

See -https://vdirsyncer.pimutils.org/en/stable/config.html#google -for more information.

Type: -null or (list of string)

Default: -null

Example:

[
-  "pass"
-  "client_secret"
+https://vdirsyncer.pimutils.org/en/stable/config.html#google
+for more information.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "pass"
+  "client_secret"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.collections

The collections to synchronize between the storages.

Type: -null or (list of (string or list of string))

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.collections + + +
+
+

The collections to synchronize between the storages.

+ +

Type: +null or (list of (string or list of string))

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.conflictResolution

What to do in case of a conflict between the storages. Either + +

+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.conflictResolution + + +
+
+

What to do in case of a conflict between the storages. Either remote wins or local wins or a list that contains a command to run. By default, an error -message is printed.

Type: -null or one of “remote wins”, “local wins” or list of string

Default: -null

Declared by:

+
+message is printed.

+ +

Type: +null or one of “remote wins”, “local wins” or list of string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.itemTypes

Kinds of items to show. The default is to show everything. + +

+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.itemTypes + + +
+
+

Kinds of items to show. The default is to show everything. This depends on particular features of the server, the results -are not validated.

Type: -null or (list of string)

Default: -null

Declared by:

+
+are not validated.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.metadata

Metadata keys that should be synchronized when vdirsyncer -metasync is executed.

Type: -list of string

Default: -[ ]

Example:

[
-  "color"
-  "displayname"
+
+
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.metadata + + +
+
+

Metadata keys that should be synchronized when vdirsyncer +metasync is executed.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "color"
+  "displayname"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.partialSync

What should happen if synchronization in one direction + +

+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.partialSync + + +
+
+

What should happen if synchronization in one direction is impossible due to one storage being read-only. Defaults to revert.

See -https://vdirsyncer.pimutils.org/en/stable/config.html#pair-section -for more information.

Type: -null or one of “revert”, “error”, “ignore”

Default: -null

Declared by:

+
+https://vdirsyncer.pimutils.org/en/stable/config.html#pair-section +for more information.

+ +

Type: +null or one of “revert”, “error”, “ignore”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.postHook

Command to call for each item creation and modification. + +

+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.postHook + + +
+
+

Command to call for each item creation and modification. The command will be called with the path of the new/updated -file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.timeRange

A time range to synchronize. start and end can be any Python + +

+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.timeRange + + +
+
+

A time range to synchronize. start and end can be any Python expression that returns a datetime.datetime -object.

Type: -null or (submodule)

Default: -null

Example:

{
-  end = "datetime.now() + timedelta(days=365)";
-  start = "datetime.now() - timedelta(days=365)";
+object.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
+  end = "datetime.now() + timedelta(days=365)";
+  start = "datetime.now() - timedelta(days=365)";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.timeRange.end

End of time range to show.

Type: -string

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.timeRange.end + + +
+
+

End of time range to show.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.timeRange.start

Start of time range to show.

Type: -string

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.timeRange.start + + +
+
+

Start of time range to show.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.tokenFile

A file path where access tokens are stored.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.tokenFile + + +
+
+

A file path where access tokens are stored.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.userAgent

The user agent to report to the server. Defaults to -vdirsyncer.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.userAgent + + +
+
+

The user agent to report to the server. Defaults to +vdirsyncer.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.verify

Verify SSL certificate.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.verify + + +
+
+

Verify SSL certificate.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.accounts.<name>.vdirsyncer.verifyFingerprint

Optional. SHA1 or MD5 fingerprint of the expected server certificate.

See -https://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorial -for more information.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.contact.accounts.<name>.vdirsyncer.verifyFingerprint + + +
+
+

Optional. SHA1 or MD5 fingerprint of the expected server certificate.

See +https://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorial +for more information.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.contact.basePath

The base directory in which to save contacts. May be a + +

+
+
+ + accounts.contact.basePath + + +
+
+

The base directory in which to save contacts. May be a relative path, in which case it is relative the home -directory.

Type: -string

Declared by:

+
+directory.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/contacts.nix> -
accounts.email.accounts

List of email accounts.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts + + +
+
+

List of email accounts.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + + + + + + + + + + + + + + + +
+ <home-manager/modules/services/imapnotify.nix> -
+ +
+ <home-manager/modules/programs/thunderbird.nix> -
+ +
+ <home-manager/modules/programs/offlineimap.nix> -
+ +
+ <home-manager/modules/programs/notmuch.nix> -
+ +
+ <home-manager/modules/programs/neomutt.nix> -
+ +
+ <home-manager/modules/programs/mujmap.nix> -
+ +
+ <home-manager/modules/programs/mu.nix> -
+ +
+ <home-manager/modules/programs/msmtp.nix> -
+ +
+ <home-manager/modules/programs/mbsync.nix> -
+ +
+ <home-manager/modules/programs/lieer.nix> -
+ +
+ <home-manager/modules/programs/himalaya.nix> -
+ +
+ <home-manager/modules/programs/getmail.nix> -
+ +
+ <home-manager/modules/programs/astroid.nix> -
+ +
+ <home-manager/modules/programs/alot.nix> -
+ +
+ <home-manager/modules/programs/aerc.nix> -
+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.address

The email address of this account.

Type: -string matching the pattern .*@.*

Example: -"jane.doe@example.org"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.address + + +
+
+

The email address of this account.

+ +

Type: +string matching the pattern .*@.*

+ +

Example: +"jane.doe@example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.aerc.enable

Whether to enable aerc.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.enable + + +
+
+

Whether to enable aerc.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.extraAccounts

Extra config added to the configuration section for this account in + +

+
+
+ + accounts.email.accounts.<name>.aerc.extraAccounts + + +
+
+

Extra config added to the configuration section for this account in $HOME/.config/aerc/accounts.conf. -See aerc-accounts(5).

Type: -attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

Default: -{ }

Example: -{ source = "maildir://~/Maildir/example"; }

Declared by:

+
+See aerc-accounts(5).

+ +

Type: +attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

+ +

Default: +{ }

+ +

Example: +{ source = "maildir://~/Maildir/example"; }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.extraBinds

Extra bindings specific to this account, added to + +

+
+
+ + accounts.email.accounts.<name>.aerc.extraBinds + + +
+
+

Extra bindings specific to this account, added to $HOME/.config/aerc/binds.conf. -See aerc-binds(5).

Type: -attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

Default: -{ }

Example: -{ messages = { d = ":move ${folder.trash}<Enter>"; }; }

Declared by:

+
+See aerc-binds(5).

+ +

Type: +attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

+ +

Default: +{ }

+ +

Example: +{ messages = { d = ":move ${folder.trash}<Enter>"; }; }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.extraConfig

Config specific to this account, added to $HOME/.config/aerc/aerc.conf. + +

+
+
+ + accounts.email.accounts.<name>.aerc.extraConfig + + +
+
+

Config specific to this account, added to $HOME/.config/aerc/aerc.conf. Aerc only supports per-account UI configuration. For other sections of $HOME/.config/aerc/aerc.conf, use programs.aerc.extraConfig. -See aerc-config(5).

Type: -attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

Default: -{ }

Example: -{ ui = { sidebar-width = 25; }; }

Declared by:

+
+See aerc-config(5).

+ +

Type: +attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

+ +

Default: +{ }

+ +

Example: +{ ui = { sidebar-width = 25; }; }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.imapAuth

Sets the authentication mechanism if imap is used as the incoming + +

+
+
+ + accounts.email.accounts.<name>.aerc.imapAuth + + +
+
+

Sets the authentication mechanism if imap is used as the incoming method. -See aerc-imap(5).

Type: -null or one of “oauthbearer”, “xoauth2”

Default: -null

Example: -"auth"

Declared by:

+
+See aerc-imap(5).

+ +

Type: +null or one of “oauthbearer”, “xoauth2”

+ +

Default: +null

+ +

Example: +"auth"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.imapOauth2Params

Sets the oauth2 params if authentication mechanism oauthbearer or + +

+
+
+ + accounts.email.accounts.<name>.aerc.imapOauth2Params + + +
+
+

Sets the oauth2 params if authentication mechanism oauthbearer or xoauth2 is used. -See aerc-imap(5).

Type: -null or (submodule)

Default: -null

Example:

{
-  token_endpoint = "<token_endpoint>";
+See aerc-imap(5).

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
+  token_endpoint = "<token_endpoint>";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.imapOauth2Params.client_id

The OAuth2 client identifier.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.imapOauth2Params.client_id + + +
+
+

The OAuth2 client identifier.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.imapOauth2Params.client_secret

The OAuth2 client secret.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.imapOauth2Params.client_secret + + +
+
+

The OAuth2 client secret.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.imapOauth2Params.scope

The OAuth2 requested scope.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.imapOauth2Params.scope + + +
+
+

The OAuth2 requested scope.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.imapOauth2Params.token_endpoint

The OAuth2 token endpoint.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.imapOauth2Params.token_endpoint + + +
+
+

The OAuth2 token endpoint.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.smtpAuth

Sets the authentication mechanism if smtp is used as the outgoing + +

+
+
+ + accounts.email.accounts.<name>.aerc.smtpAuth + + +
+
+

Sets the authentication mechanism if smtp is used as the outgoing method. -See aerc-smtp(5).

Type: -null or one of “none”, “plain”, “login”, “oauthbearer”, “xoauth2”

Default: -"plain"

Example: -"auth"

Declared by:

+
+See aerc-smtp(5).

+ +

Type: +null or one of “none”, “plain”, “login”, “oauthbearer”, “xoauth2”

+ +

Default: +"plain"

+ +

Example: +"auth"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.smtpOauth2Params

Sets the oauth2 params if authentication mechanism oauthbearer or + +

+
+
+ + accounts.email.accounts.<name>.aerc.smtpOauth2Params + + +
+
+

Sets the oauth2 params if authentication mechanism oauthbearer or xoauth2 is used. -See aerc-imap(5).

Type: -null or (submodule)

Default: -null

Example:

{
-  token_endpoint = "<token_endpoint>";
+See aerc-imap(5).

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
+  token_endpoint = "<token_endpoint>";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.smtpOauth2Params.client_id

The OAuth2 client identifier.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.smtpOauth2Params.client_id + + +
+
+

The OAuth2 client identifier.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.smtpOauth2Params.client_secret

The OAuth2 client secret.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.smtpOauth2Params.client_secret + + +
+
+

The OAuth2 client secret.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.smtpOauth2Params.scope

The OAuth2 requested scope.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.smtpOauth2Params.scope + + +
+
+

The OAuth2 requested scope.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aerc.smtpOauth2Params.token_endpoint

The OAuth2 token endpoint.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.aerc.smtpOauth2Params.token_endpoint + + +
+
+

The OAuth2 token endpoint.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
accounts.email.accounts.<name>.aliases

Alternative email addresses of this account.

Type: -list of string matching the pattern .*@.*

Default: -[ ]

Example:

[
-  "webmaster@example.org"
-  "admin@example.org"
+
+
+
+
+ + accounts.email.accounts.<name>.aliases + + +
+
+

Alternative email addresses of this account.

+ +

Type: +list of string matching the pattern .*@.*

+ +

Default: +[ ]

+ +

Example:

[
+  "webmaster@example.org"
+  "admin@example.org"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.alot.contactCompletion

Contact completion configuration as expected per alot. -See alot’s wiki for -explanation about possible values.

Type: -attribute set of string

Default:

{
-  command = "'\${pkgs.notmuch}/bin/notmuch address --format=json --output=recipients  date:6M..'";
-  regexp = "'\\[?{\"name\": \"(?P<name>.*)\", \"address\": \"(?P<email>.+)\", \"name-addr\": \".*\"}[,\\]]?'";
-  shellcommand_external_filtering = "False";
-  type = "shellcommand";
+
+
+
+
+ + accounts.email.accounts.<name>.alot.contactCompletion + + +
+
+

Contact completion configuration as expected per alot. +See alot’s wiki for +explanation about possible values.

+ +

Type: +attribute set of string

+ +

Default:

{
+  command = "'\${pkgs.notmuch}/bin/notmuch address --format=json --output=recipients  date:6M..'";
+  regexp = "'\\[?{\"name\": \"(?P<name>.*)\", \"address\": \"(?P<email>.+)\", \"name-addr\": \".*\"}[,\\]]?'";
+  shellcommand_external_filtering = "False";
+  type = "shellcommand";
 }
-

Example:

{
-  type = "shellcommand";
-  command = "abook --mutt-query";
-  regexp = "'^(?P<email>[^@]+@[^\t]+)\t+(?P<name>[^\t]+)'";
-  ignorecase = "True";
+
+ +

Example:

{
+  type = "shellcommand";
+  command = "abook --mutt-query";
+  regexp = "'^(?P<email>[^@]+@[^\t]+)\t+(?P<name>[^\t]+)'";
+  ignorecase = "True";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
accounts.email.accounts.<name>.alot.extraConfig

Extra settings to add to this Alot account configuration.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.alot.extraConfig + + +
+
+

Extra settings to add to this Alot account configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
accounts.email.accounts.<name>.alot.sendMailCommand

Command to send a mail. If msmtp is enabled for the account, + +

+
+
+ + accounts.email.accounts.<name>.alot.sendMailCommand + + +
+
+

Command to send a mail. If msmtp is enabled for the account, then this is set to -msmtpq --read-envelope-from --read-recipients.

Type: -null or string

Declared by:

+
+msmtpq --read-envelope-from --read-recipients.

+ +

Type: +null or string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
accounts.email.accounts.<name>.astroid.enable

Whether to enable Astroid.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.astroid.enable + + +
+
+

Whether to enable Astroid.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/astroid.nix> -
accounts.email.accounts.<name>.astroid.extraConfig

Extra settings to add to this astroid account configuration.

Type: -attribute set of anything

Default: -{ }

Example:

{
-  select_query = "";
+
+
+
+
+ + accounts.email.accounts.<name>.astroid.extraConfig + + +
+
+

Extra settings to add to this astroid account configuration.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  select_query = "";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/astroid.nix> -
accounts.email.accounts.<name>.astroid.sendMailCommand

Command to send a mail. If msmtp is enabled for the account, + +

+
+
+ + accounts.email.accounts.<name>.astroid.sendMailCommand + + +
+
+

Command to send a mail. If msmtp is enabled for the account, then this is set to -msmtpq --read-envelope-from --read-recipients.

Type: -string

Declared by:

+
+msmtpq --read-envelope-from --read-recipients.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/astroid.nix> -
accounts.email.accounts.<name>.flavor

Some email providers have peculiar behavior that require + +

+
+
+ + accounts.email.accounts.<name>.flavor + + +
+
+

Some email providers have peculiar behavior that require special treatment. This option is therefore intended to indicate the nature of the provider.

When this indicates a specific provider then, for example, the IMAP, SMTP, and JMAP server configuration may be set -automatically.

Type: -one of “plain”, “gmail.com”, “runbox.com”, “fastmail.com”, “yandex.com”, “outlook.office365.com”

Default: -"plain"

Declared by:

+
+automatically.

+ +

Type: +one of “plain”, “gmail.com”, “runbox.com”, “fastmail.com”, “yandex.com”, “outlook.office365.com”

+ +

Default: +"plain"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.folders

Standard email folders.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.folders + + +
+
+

Standard email folders.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.folders.drafts

Relative path of the drafts mail folder.

Type: -null or string

Default: -"Drafts"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.folders.drafts + + +
+
+

Relative path of the drafts mail folder.

+ +

Type: +null or string

+ +

Default: +"Drafts"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.folders.inbox

Relative path of the inbox mail.

Type: -string

Default: -"Inbox"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.folders.inbox + + +
+
+

Relative path of the inbox mail.

+ +

Type: +string

+ +

Default: +"Inbox"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.folders.sent

Relative path of the sent mail folder.

Type: -null or string

Default: -"Sent"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.folders.sent + + +
+
+

Relative path of the sent mail folder.

+ +

Type: +null or string

+ +

Default: +"Sent"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.folders.trash

Relative path of the deleted mail folder.

Type: -string

Default: -"Trash"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.folders.trash + + +
+
+

Relative path of the deleted mail folder.

+ +

Type: +string

+ +

Default: +"Trash"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.getmail.enable

Whether to enable the getmail mail retriever for this account.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.getmail.enable + + +
+
+

Whether to enable the getmail mail retriever for this account.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/getmail.nix> -
accounts.email.accounts.<name>.getmail.delete

Enable if you want to delete read messages from the server. Most + +

+
+
+ + accounts.email.accounts.<name>.getmail.delete + + +
+
+

Enable if you want to delete read messages from the server. Most users should either enable delete or disable -readAll.

Type: -boolean

Default: -false

Declared by:

+
+readAll.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/getmail.nix> -
accounts.email.accounts.<name>.getmail.destinationCommand

Specify a command delivering the incoming mail to your maildir.

Type: -null or string

Default: -null

Example: -"\${pkgs.maildrop}/bin/maildrop"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.getmail.destinationCommand + + +
+
+

Specify a command delivering the incoming mail to your maildir.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"\${pkgs.maildrop}/bin/maildrop"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/getmail.nix> -
accounts.email.accounts.<name>.getmail.mailboxes

A non-empty list of mailboxes. To download all mail you can -use the ALL mailbox.

Type: -non-empty (list of string)

Default: -[ ]

Example:

[
-  "INBOX"
-  "INBOX.spam"
+
+
+
+
+ + accounts.email.accounts.<name>.getmail.mailboxes + + +
+
+

A non-empty list of mailboxes. To download all mail you can +use the ALL mailbox.

+ +

Type: +non-empty (list of string)

+ +

Default: +[ ]

+ +

Example:

[
+  "INBOX"
+  "INBOX.spam"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/getmail.nix> -
accounts.email.accounts.<name>.getmail.readAll

Enable if you want to fetch all, even the read messages from the + +

+
+
+ + accounts.email.accounts.<name>.getmail.readAll + + +
+
+

Enable if you want to fetch all, even the read messages from the server. Most users should either enable delete or -disable readAll.

Type: -boolean

Default: -true

Declared by:

+
+disable readAll.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/getmail.nix> -
accounts.email.accounts.<name>.gpg

GPG configuration.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.gpg + + +
+
+

GPG configuration.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.gpg.encryptByDefault

Encrypt outgoing messages by default.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.gpg.encryptByDefault + + +
+
+

Encrypt outgoing messages by default.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.gpg.key

The key to use as listed in gpg --list-keys.

Type: -string

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.gpg.key + + +
+
+

The key to use as listed in gpg --list-keys.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.gpg.signByDefault

Sign messages by default.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.gpg.signByDefault + + +
+
+

Sign messages by default.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.himalaya.enable

Whether to enable Himalaya for this email account.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.himalaya.enable + + +
+
+

Whether to enable Himalaya for this email account.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
accounts.email.accounts.<name>.himalaya.backend

Specifying accounts.email.accounts.*.himalaya.backend is deprecated, -set accounts.email.accounts.*.himalaya.settings.backend instead.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.himalaya.backend + + +
+
+

Specifying accounts.email.accounts.*.himalaya.backend is deprecated, +set accounts.email.accounts.*.himalaya.settings.backend instead.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
accounts.email.accounts.<name>.himalaya.sender

Specifying accounts.email.accounts.*.himalaya.sender is deprecated, -set {option}‘accounts.email.accounts.*.himalaya.settings.sender’ instead.

Type: -null or string

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.himalaya.sender + + +
+
+

Specifying accounts.email.accounts.*.himalaya.sender is deprecated, +set {option}‘accounts.email.accounts.*.himalaya.settings.sender’ instead.

+ +

Type: +null or string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
accounts.email.accounts.<name>.himalaya.settings

Himalaya configuration for this email account. -See https://pimalaya.org/himalaya/cli/configuration/account.html for supported values.

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.himalaya.settings + + +
+
+

Himalaya configuration for this email account. +See https://pimalaya.org/himalaya/cli/configuration/account.html for supported values.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
accounts.email.accounts.<name>.imap

The IMAP configuration to use for this account.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imap + + +
+
+

The IMAP configuration to use for this account.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.imap.host

Hostname of IMAP server.

Type: -string

Example: -"imap.example.org"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imap.host + + +
+
+

Hostname of IMAP server.

+ +

Type: +string

+ +

Example: +"imap.example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.imap.port

The port on which the IMAP server listens. If -null then the default port is used.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -993

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imap.port + + +
+
+

The port on which the IMAP server listens. If +null then the default port is used.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +993

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.imap.tls

Configuration for secure connections.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imap.tls + + +
+
+

Configuration for secure connections.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.imap.tls.enable

Whether to enable TLS/SSL.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imap.tls.enable + + +
+
+

Whether to enable TLS/SSL.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.imap.tls.certificatesFile

Path to file containing certificate authorities that should + +

+
+
+ + accounts.email.accounts.<name>.imap.tls.certificatesFile + + +
+
+

Path to file containing certificate authorities that should be used to validate the connection authenticity. If null then the system default is used. -Note, if set then the system default may still be accepted.

Type: -null or path

Default: -"config.accounts.email.certificatesFile"

Declared by:

+
+Note, if set then the system default may still be accepted.

+ +

Type: +null or path

+ +

Default: +"config.accounts.email.certificatesFile"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.imap.tls.useStartTls

Whether to use STARTTLS.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imap.tls.useStartTls + + +
+
+

Whether to use STARTTLS.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.imapnotify.enable

Whether to enable imapnotify.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imapnotify.enable + + +
+
+

Whether to enable imapnotify.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/imapnotify.nix> -
accounts.email.accounts.<name>.imapnotify.boxes

IMAP folders to watch.

Type: -list of string

Default: -[ ]

Example:

[
-  "Inbox"
-  "[Gmail]/MyLabel"
+
+
+
+
+ + accounts.email.accounts.<name>.imapnotify.boxes + + +
+
+

IMAP folders to watch.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "Inbox"
+  "[Gmail]/MyLabel"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/imapnotify.nix> -
accounts.email.accounts.<name>.imapnotify.extraConfig

Additional configuration to add for this account.

Type: -JSON value

Default: -{ }

Example:

{
+
+
+
+
+ + accounts.email.accounts.<name>.imapnotify.extraConfig + + +
+
+

Additional configuration to add for this account.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
   wait = 10;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/imapnotify.nix> -
accounts.email.accounts.<name>.imapnotify.onNotify

Shell commands to run on any event.

Type: -string or attribute set of string

Default: -""

Example: -"\${pkgs.isync}/bin/mbsync test-%s"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.imapnotify.onNotify + + +
+
+

Shell commands to run on any event.

+ +

Type: +string or attribute set of string

+ +

Default: +""

+ +

Example: +"\${pkgs.isync}/bin/mbsync test-%s"

+ +

Declared by:

+ +
+ <home-manager/modules/services/imapnotify.nix> -
accounts.email.accounts.<name>.imapnotify.onNotifyPost

Shell commands to run after onNotify event.

Type: -string or attribute set of string

Default: -""

Example:

{
-  mail = "\${pkgs.notmuch}/bin/notmuch new && \${pkgs.libnotify}/bin/notify-send 'New mail arrived'";
+
+
+
+
+ + accounts.email.accounts.<name>.imapnotify.onNotifyPost + + +
+
+

Shell commands to run after onNotify event.

+ +

Type: +string or attribute set of string

+ +

Default: +""

+ +

Example:

{
+  mail = "\${pkgs.notmuch}/bin/notmuch new && \${pkgs.libnotify}/bin/notify-send 'New mail arrived'";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/imapnotify.nix> -
accounts.email.accounts.<name>.jmap

The JMAP configuration to use for this account.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.jmap + + +
+
+

The JMAP configuration to use for this account.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.jmap.host

Hostname of JMAP server.

If both this option and accounts.email.accounts.<name>.jmap.sessionUrl are specified, + +

+
+
+ + accounts.email.accounts.<name>.jmap.host + + +
+
+

Hostname of JMAP server.

If both this option and accounts.email.accounts.<name>.jmap.sessionUrl are specified, host is preferred by applications when establishing a -session.

Type: -null or string

Default: -null

Example: -"jmap.example.org"

Declared by:

+
+session.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"jmap.example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.jmap.sessionUrl

URL for the JMAP Session resource.

If both this option and accounts.email.accounts.<name>.jmap.host are specified, + +

+
+
+ + accounts.email.accounts.<name>.jmap.sessionUrl + + +
+
+

URL for the JMAP Session resource.

If both this option and accounts.email.accounts.<name>.jmap.host are specified, host is preferred by applications when establishing a -session.

Type: -null or string

Default: -null

Example: -"https://jmap.example.org:443/.well-known/jmap"

Declared by:

+
+session.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"https://jmap.example.org:443/.well-known/jmap"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.lieer.enable

Whether to enable lieer Gmail synchronization for notmuch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.enable + + +
+
+

Whether to enable lieer Gmail synchronization for notmuch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.notmuchSetupWarning

Warn if Notmuch is not also enabled for this account.

This can safely be disabled if notmuch init + +

+
+
+ + accounts.email.accounts.<name>.lieer.notmuchSetupWarning + + +
+
+

Warn if Notmuch is not also enabled for this account.

This can safely be disabled if notmuch init has been used to configure this account outside of Home -Manager.

Type: -boolean

Default: -true

Declared by:

+
+Manager.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings

Settings which are applied to .gmailieer.json -for the account.

See the lieer manual -for documentation of settings not explicitly covered by this module.

Type: -JSON value

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings + + +
+
+

Settings which are applied to .gmailieer.json +for the account.

See the lieer manual +for documentation of settings not explicitly covered by this module.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.drop_non_existing_label

Allow missing labels on the Gmail side to be dropped.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings.drop_non_existing_label + + +
+
+

Allow missing labels on the Gmail side to be dropped.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.file_extension

Extension to include in local file names, which can be useful -for indexing with third-party programs.

Type: -string

Default: -""

Example: -"mbox"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings.file_extension + + +
+
+

Extension to include in local file names, which can be useful +for indexing with third-party programs.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"mbox"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.ignore_empty_history

Work around a Gmail API quirk where an empty change history + +

+
+
+ + accounts.email.accounts.<name>.lieer.settings.ignore_empty_history + + +
+
+

Work around a Gmail API quirk where an empty change history is sometimes returned.

See this -GitHub issue -for more details.

Type: -boolean

Default: -false

Declared by:

+
+GitHub issue +for more details.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.ignore_remote_labels

Set Gmail labels to ignore when syncing from remote labels to -local tags (before translations).

Type: -list of string

Default:

[
-  "CATEGORY_FORUMS"
-  "CATEGORY_PROMOTIONS"
-  "CATEGORY_UPDATES"
-  "CATEGORY_SOCIAL"
-  "CATEGORY_PERSONAL"
+
+
+
+
+ + accounts.email.accounts.<name>.lieer.settings.ignore_remote_labels + + +
+
+

Set Gmail labels to ignore when syncing from remote labels to +local tags (before translations).

+ +

Type: +list of string

+ +

Default:

[
+  "CATEGORY_FORUMS"
+  "CATEGORY_PROMOTIONS"
+  "CATEGORY_UPDATES"
+  "CATEGORY_SOCIAL"
+  "CATEGORY_PERSONAL"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.ignore_tags

Set labels to ignore when syncing from local tags to -remote labels (after translations).

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings.ignore_tags + + +
+
+

Set labels to ignore when syncing from local tags to +remote labels (after translations).

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.local_trash_tag

Local tag to which the remote Gmail ‘TRASH’ label is translated.

Type: -string

Default: -"trash"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings.local_trash_tag + + +
+
+

Local tag to which the remote Gmail ‘TRASH’ label is translated.

+ +

Type: +string

+ +

Default: +"trash"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.remove_local_messages

Remove local messages that have been deleted on the remote.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings.remove_local_messages + + +
+
+

Remove local messages that have been deleted on the remote.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.replace_slash_with_dot

Replace ‘/’ with ‘.’ in Gmail labels.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings.replace_slash_with_dot + + +
+
+

Replace ‘/’ with ‘.’ in Gmail labels.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.settings.timeout

HTTP timeout in seconds. 0 means forever or system timeout.

Type: -unsigned integer, meaning >=0

Default: -600

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.settings.timeout + + +
+
+

HTTP timeout in seconds. 0 means forever or system timeout.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +600

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.sync.enable

Whether to enable lieer synchronization service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.lieer.sync.enable + + +
+
+

Whether to enable lieer synchronization service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.lieer.sync.frequency

How often to synchronize the account.

This value is passed to the systemd timer configuration as the + +

+
+
+ + accounts.email.accounts.<name>.lieer.sync.frequency + + +
+
+

How often to synchronize the account.

This value is passed to the systemd timer configuration as the onCalendar option. See systemd.time(7) -for more information about the format.

Type: -string

Default: -"*:0/5"

Declared by:

+
+for more information about the format.

+ +

Type: +string

+ +

Default: +"*:0/5"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
accounts.email.accounts.<name>.maildir

Maildir configuration for this account.

Type: -null or (submodule)

Default:

{
-  path = "\${name}";
+
+
+
+
+ + accounts.email.accounts.<name>.maildir + + +
+
+

Maildir configuration for this account.

+ +

Type: +null or (submodule)

+ +

Default:

{
+  path = "\${name}";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.maildir.path

Path to maildir directory where mail for this account is -stored. This is relative to the base maildir path.

Type: -string

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.maildir.path + + +
+
+

Path to maildir directory where mail for this account is +stored. This is relative to the base maildir path.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.mbsync.enable

Whether to enable synchronization using mbsync.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.enable + + +
+
+

Whether to enable synchronization using mbsync.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.create

Automatically create missing mailboxes within the -given mail store.

Type: -one of “none”, “maildir”, “imap”, “both”

Default: -"none"

Example: -"maildir"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.create + + +
+
+

Automatically create missing mailboxes within the +given mail store.

+ +

Type: +one of “none”, “maildir”, “imap”, “both”

+ +

Default: +"none"

+ +

Example: +"maildir"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.expunge

Permanently remove messages marked for deletion from -the given mail store.

Type: -one of “none”, “maildir”, “imap”, “both”

Default: -"none"

Example: -"both"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.expunge + + +
+
+

Permanently remove messages marked for deletion from +the given mail store.

+ +

Type: +one of “none”, “maildir”, “imap”, “both”

+ +

Default: +"none"

+ +

Example: +"both"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.extraConfig.account

Account section extra configuration.

Type: -attribute set of (string or signed integer or boolean or list of string)

Default: -{ }

Example:

{
+
+
+
+
+ + accounts.email.accounts.<name>.mbsync.extraConfig.account + + +
+
+

Account section extra configuration.

+ +

Type: +attribute set of (string or signed integer or boolean or list of string)

+ +

Default: +{ }

+ +

Example:

{
   PipelineDepth = 10;
   Timeout = 60;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.extraConfig.channel

Per channel extra configuration.

Type: -attribute set of (string or signed integer or boolean or list of string)

Default: -{ }

Example:

{
+
+
+
+
+ + accounts.email.accounts.<name>.mbsync.extraConfig.channel + + +
+
+

Per channel extra configuration.

+ +

Type: +attribute set of (string or signed integer or boolean or list of string)

+ +

Default: +{ }

+ +

Example:

{
   MaxMessages = 10000;
-  MaxSize = "1m";
+  MaxSize = "1m";
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.extraConfig.local

Local store extra configuration.

Type: -attribute set of (string or signed integer or boolean or list of string)

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.extraConfig.local + + +
+
+

Local store extra configuration.

+ +

Type: +attribute set of (string or signed integer or boolean or list of string)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.extraConfig.remote

Remote store extra configuration.

Type: -attribute set of (string or signed integer or boolean or list of string)

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.extraConfig.remote + + +
+
+

Remote store extra configuration.

+ +

Type: +attribute set of (string or signed integer or boolean or list of string)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.flatten

If set, flattens the hierarchy within the maildir by + +

+
+
+ + accounts.email.accounts.<name>.mbsync.flatten + + +
+
+

If set, flattens the hierarchy within the maildir by substituting the canonical hierarchy delimiter -/ with this value.

Type: -null or string

Default: -null

Example: -"."

Declared by:

+
+/ with this value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"."

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups

Some email providers (Gmail) have a different directory hierarchy for + +

+
+
+ + accounts.email.accounts.<name>.mbsync.groups + + +
+
+

Some email providers (Gmail) have a different directory hierarchy for synchronized email messages. Namely, when using mbsync without specifying a set of channels into a group, all synchronized directories end up beneath the [Gmail]/ directory.

This option allows you to specify a group, and subsequently channels that -will allow you to sync your mail into an arbitrary hierarchy.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+will allow you to sync your mail into an arbitrary hierarchy.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups.<name>.channels

List of channels that should be grouped together into this group. When + +

+
+
+ + accounts.email.accounts.<name>.mbsync.groups.<name>.channels + + +
+
+

List of channels that should be grouped together into this group. When performing a synchronization, the groups are synchronized, rather than the individual channels.

Using these channels and then grouping them together allows for you to -define the maildir hierarchy as you see fit.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+define the maildir hierarchy as you see fit.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.extraConfig

Extra configuration lines to add to THIS channel’s -configuration.

Type: -attribute set of (string or signed integer or boolean or list of string)

Default: -{ }

Example:

{
-  Create = "both";
-  CopyArrivalDate = "yes";
+
+
+
+
+ + accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.extraConfig + + +
+
+

Extra configuration lines to add to THIS channel’s +configuration.

+ +

Type: +attribute set of (string or signed integer or boolean or list of string)

+ +

Default: +{ }

+ +

Example:

{
+  Create = "both";
+  CopyArrivalDate = "yes";
   MaxMessages = 10000;
-  MaxSize = "1m";
+  MaxSize = "1m";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.farPattern

IMAP4 patterns for which mailboxes on the remote mail server to sync. + +

+
+
+ + accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.farPattern + + +
+
+

IMAP4 patterns for which mailboxes on the remote mail server to sync. If Patterns are specified, farPattern is interpreted as a prefix which is not matched against the patterns, and is not affected by mailbox list overrides.

If this is left as the default, then mbsync will default to the pattern -INBOX.

Type: -string

Default: -""

Example: -"[Gmail]/Sent Mail"

Declared by:

+
+INBOX.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"[Gmail]/Sent Mail"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.name

The unique name for THIS channel in THIS group. The group will refer to + +

+
+
+ + accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.name + + +
+
+

The unique name for THIS channel in THIS group. The group will refer to this channel by this name.

In addition, you can manually sync just this channel by specifying this -name to mbsync on the command line.

Type: -string (read only)

Default: -"‹name›"

Declared by:

+
+name to mbsync on the command line.

+ +

Type: +string (read only)

+ +

Default: +"‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.nearPattern

Name for where mail coming from the remote (far) mail server will end up + +

+
+
+ + accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.nearPattern + + +
+
+

Name for where mail coming from the remote (far) mail server will end up locally. The mailbox specified by the far pattern will be placed in this directory.

If this is left as the default, then mbsync will default to the pattern -INBOX.

Type: -string

Default: -""

Example: -"Sent"

Declared by:

+
+INBOX.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"Sent"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.patterns

Instead of synchronizing just the mailboxes that + +

+
+
+ + accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.patterns + + +
+
+

Instead of synchronizing just the mailboxes that match the farPattern, use it as a prefix which is not matched against the patterns, and is not affected by mailbox list -overrides.

Type: -list of string

Default: -[ ]

Example:

[
-  "INBOX"
+overrides.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "INBOX"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.groups.<name>.name

The name of this group for this account. These names are different than -some others, because they will hide channel names that are the same.

Type: -string (read only)

Default: -"‹name›"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.groups.<name>.name + + +
+
+

The name of this group for this account. These names are different than +some others, because they will hide channel names that are the same.

+ +

Type: +string (read only)

+ +

Default: +"‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.patterns

Pattern of mailboxes to synchronize.

Type: -list of string

Default:

[
-  "*"
+
+
+
+
+ + accounts.email.accounts.<name>.mbsync.patterns + + +
+
+

Pattern of mailboxes to synchronize.

+ +

Type: +list of string

+ +

Default:

[
+  "*"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.remove

Propagate mailbox deletions to the given mail store.

Type: -one of “none”, “maildir”, “imap”, “both”

Default: -"none"

Example: -"imap"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.remove + + +
+
+

Propagate mailbox deletions to the given mail store.

+ +

Type: +one of “none”, “maildir”, “imap”, “both”

+ +

Default: +"none"

+ +

Example: +"imap"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.mbsync.subFolders

The on-disk folder naming style. This option has no -effect when flatten is used.

Type: -one of “Verbatim”, “Maildir++”, “Legacy”

Default: -"Verbatim"

Example: -"Maildir++"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mbsync.subFolders + + +
+
+

The on-disk folder naming style. This option has no +effect when flatten is used.

+ +

Type: +one of “Verbatim”, “Maildir++”, “Legacy”

+ +

Default: +"Verbatim"

+ +

Example: +"Maildir++"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
accounts.email.accounts.<name>.msmtp.enable

Whether to enable msmtp.

If enabled then it is possible to use the + +

+
+
+ + accounts.email.accounts.<name>.msmtp.enable + + +
+
+

Whether to enable msmtp.

If enabled then it is possible to use the --account command line option to send a message for a given account using the msmtp or msmtpq tool. @@ -1005,390 +4545,1700 @@ For example, msmtp --account=privateaccounts.email.accounts.private. If the --account option is not -given then the primary account will be used.

Type: -boolean

Default: -false

Declared by:

+
+given then the primary account will be used.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/msmtp.nix> -
accounts.email.accounts.<name>.msmtp.extraConfig

Extra configuration options to add to ~/.msmtprc. -See https://marlam.de/msmtp/msmtprc.txt for -examples.

Type: -attribute set of string

Default: -{ }

Example:

{
-  auth = "login";
+
+
+
+
+ + accounts.email.accounts.<name>.msmtp.extraConfig + + +
+
+

Extra configuration options to add to ~/.msmtprc. +See https://marlam.de/msmtp/msmtprc.txt for +examples.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  auth = "login";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/msmtp.nix> -
accounts.email.accounts.<name>.msmtp.tls.fingerprint

Fingerprint of a trusted TLS certificate. + +

+
+
+ + accounts.email.accounts.<name>.msmtp.tls.fingerprint + + +
+
+

Fingerprint of a trusted TLS certificate. The fingerprint can be obtained by executing -msmtp --serverinfo --tls --tls-certcheck=off.

Type: -null or string matching the pattern ([[:alnum:]]{2}:)+[[:alnum:]]{2}

Default: -null

Example: -"my:SH:a2:56:ha:sh"

Declared by:

+
+msmtp --serverinfo --tls --tls-certcheck=off.

+ +

Type: +null or string matching the pattern ([[:alnum:]]{2}:)+[[:alnum:]]{2}

+ +

Default: +null

+ +

Example: +"my:SH:a2:56:ha:sh"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/msmtp.nix> -
accounts.email.accounts.<name>.mu.enable

Whether to enable mu indexing.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mu.enable + + +
+
+

Whether to enable mu indexing.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mu.nix> -
accounts.email.accounts.<name>.mujmap.enable

Whether to enable mujmap JMAP synchronization for notmuch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.enable + + +
+
+

Whether to enable mujmap JMAP synchronization for notmuch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.notmuchSetupWarning

Warn if Notmuch is not also enabled for this account.

This can safely be disabled if mujmap.toml is managed -outside of Home Manager.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.notmuchSetupWarning + + +
+
+

Warn if Notmuch is not also enabled for this account.

This can safely be disabled if mujmap.toml is managed +outside of Home Manager.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings

Settings which are applied to mujmap.toml -for the account.

See the mujmap project -for documentation of settings not explicitly covered by this module.

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings + + +
+
+

Settings which are applied to mujmap.toml +for the account.

See the mujmap project +for documentation of settings not explicitly covered by this module.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.auto_create_new_mailboxes

Whether to create new mailboxes automatically on the server from notmuch -tags.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings.auto_create_new_mailboxes + + +
+
+

Whether to create new mailboxes automatically on the server from notmuch +tags.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.cache_dir

The cache directory in which to store mail files while they are being -downloaded. The default is operating-system specific.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings.cache_dir + + +
+
+

The cache directory in which to store mail files while they are being +downloaded. The default is operating-system specific.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.fqdn

Fully qualified domain name of the JMAP service.

mujmap looks up the JMAP SRV record for this host to determine the JMAP session + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.fqdn + + +
+
+

Fully qualified domain name of the JMAP service.

mujmap looks up the JMAP SRV record for this host to determine the JMAP session URL. Mutually exclusive with -accounts.email.accounts.<name>.mujmap.settings.session_url.

If null, defaults to -accounts.email.accounts.<name>.jmap.host.

Type: -null or string

Default: -null

Example: -"example.com"

Declared by:

+
+accounts.email.accounts.<name>.mujmap.settings.session_url.

If null, defaults to +accounts.email.accounts.<name>.jmap.host.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"example.com"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.password_command

Shell command which will print a password to stdout for basic HTTP + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.password_command + + +
+
+

Shell command which will print a password to stdout for basic HTTP authentication.

If null, defaults to -accounts.email.accounts.<name>.passwordCommand.

Type: -null or string or list of string

Default: -null

Example: -"pass alice@example.com"

Declared by:

+
+accounts.email.accounts.<name>.passwordCommand.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Example: +"pass alice@example.com"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.session_url

Session URL to connect to.

Mutually exclusive with -accounts.email.accounts.<name>.mujmap.settings.fqdn.

If null, defaults to -accounts.email.accounts.<name>.jmap.sessionUrl.

Type: -null or string

Default: -null

Example: -"https://jmap.example.com/.well-known/jmap"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings.session_url + + +
+
+

Session URL to connect to.

Mutually exclusive with +accounts.email.accounts.<name>.mujmap.settings.fqdn.

If null, defaults to +accounts.email.accounts.<name>.jmap.sessionUrl.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"https://jmap.example.com/.well-known/jmap"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags

Tag configuration.

Beware that there are quirks that require manual consideration if changing the + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags + + +
+
+

Tag configuration.

Beware that there are quirks that require manual consideration if changing the values of these files; please see -https://github.com/elizagamedev/mujmap/blob/main/mujmap.toml.example -for more details.

Type: -TOML value

Default: -{ }

Declared by:

+
+https://github.com/elizagamedev/mujmap/blob/main/mujmap.toml.example +for more details.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.deleted

Tag for notmuch to use for messages stored in the mailbox labeled with the + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.deleted + + +
+
+

Tag for notmuch to use for messages stored in the mailbox labeled with the Trash name attribute.

If set to an empty string, this mailbox and its child -mailboxes are not synchronized with a tag.

Type: -string

Default: -"deleted"

Declared by:

+
+mailboxes are not synchronized with a tag.

+ +

Type: +string

+ +

Default: +"deleted"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.directory_separator

Directory separator for mapping notmuch tags to maildirs.

Type: -string

Default: -"/"

Example: -"."

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.directory_separator + + +
+
+

Directory separator for mapping notmuch tags to maildirs.

+ +

Type: +string

+ +

Default: +"/"

+ +

Example: +"."

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.important

Tag for notmuch to use for messages stored in the mailbox labeled with the + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.important + + +
+
+

Tag for notmuch to use for messages stored in the mailbox labeled with the Important name attribute and/or with the $Important keyword.

If set to an empty string, this mailbox, its child -mailboxes, and these keywords are not synchronized with a tag.

Type: -string

Default: -"important"

Declared by:

+
+mailboxes, and these keywords are not synchronized with a tag.

+ +

Type: +string

+ +

Default: +"important"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.inbox

Tag for notmuch to use for messages stored in the mailbox labeled with the + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.inbox + + +
+
+

Tag for notmuch to use for messages stored in the mailbox labeled with the Inbox name attribute.

If set to an empty string, this mailbox and its child -mailboxes are not synchronized with a tag.

Type: -string

Default: -"inbox"

Declared by:

+
+mailboxes are not synchronized with a tag.

+ +

Type: +string

+ +

Default: +"inbox"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.lowercase

If true, translate all mailboxes to lowercase names when mapping to notmuch -tags.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.lowercase + + +
+
+

If true, translate all mailboxes to lowercase names when mapping to notmuch +tags.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.phishing

Tag for notmuch to use for the IANA $Phishing keyword.

If set to an empty string, this keyword is not synchronized with a tag.

Type: -string

Default: -"phishing"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.phishing + + +
+
+

Tag for notmuch to use for the IANA $Phishing keyword.

If set to an empty string, this keyword is not synchronized with a tag.

+ +

Type: +string

+ +

Default: +"phishing"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.sent

Tag for notmuch to use for messages stored in the mailbox labeled with the + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.sent + + +
+
+

Tag for notmuch to use for messages stored in the mailbox labeled with the Sent name attribute.

If set to an empty string, this mailbox and its child -mailboxes are not synchronized with a tag.

Type: -string

Default: -"sent"

Declared by:

+
+mailboxes are not synchronized with a tag.

+ +

Type: +string

+ +

Default: +"sent"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.tags.spam

Tag for notmuch to use for messages stored in the mailbox labeled with the + +

+
+
+ + accounts.email.accounts.<name>.mujmap.settings.tags.spam + + +
+
+

Tag for notmuch to use for messages stored in the mailbox labeled with the Junk name attribute and/or with the $Junk keyword, except for messages with the $NotJunk keyword.

If set to an empty string, this mailbox, its child -mailboxes, and these keywords are not synchronized with a tag.

Type: -string

Default: -"spam"

Declared by:

+
+mailboxes, and these keywords are not synchronized with a tag.

+ +

Type: +string

+ +

Default: +"spam"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.mujmap.settings.username

Username for basic HTTP authentication.

If null, defaults to -accounts.email.accounts.<name>.userName.

Type: -null or string

Default: -null

Example: -"alice@example.com"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.mujmap.settings.username + + +
+
+

Username for basic HTTP authentication.

If null, defaults to +accounts.email.accounts.<name>.userName.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"alice@example.com"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
accounts.email.accounts.<name>.name

Unique identifier of the account. This is set to the -attribute name of the account configuration.

Type: -string (read only)

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.name + + +
+
+

Unique identifier of the account. This is set to the +attribute name of the account configuration.

+ +

Type: +string (read only)

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.neomutt.enable

Whether to enable NeoMutt.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.neomutt.enable + + +
+
+

Whether to enable NeoMutt.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
accounts.email.accounts.<name>.neomutt.extraConfig

Extra lines to add to the folder hook for this account.

Type: -strings concatenated with “\n”

Default: -""

Example: -"color status cyan default"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.neomutt.extraConfig + + +
+
+

Extra lines to add to the folder hook for this account.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"color status cyan default"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
accounts.email.accounts.<name>.neomutt.extraMailboxes

List of extra mailboxes

Type: -list of (string or (submodule))

Default: -[ ]

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.neomutt.extraMailboxes + + +
+
+

List of extra mailboxes

+ +

Type: +list of (string or (submodule))

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
accounts.email.accounts.<name>.neomutt.mailboxName

Use a different name as mailbox name

Type: -null or string

Default: -null

Example: -"==== <mailbox-name> ==="

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.neomutt.mailboxName + + +
+
+

Use a different name as mailbox name

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"==== <mailbox-name> ==="

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
accounts.email.accounts.<name>.neomutt.sendMailCommand

Command to send a mail. If not set, neomutt will be in charge of sending mails.

Type: -null or string

Default:

if config.msmtp.enable then
-  "msmtpq --read-envelope-from --read-recipients"
+
+
+
+
+ + accounts.email.accounts.<name>.neomutt.sendMailCommand + + +
+
+

Command to send a mail. If not set, neomutt will be in charge of sending mails.

+ +

Type: +null or string

+ +

Default:

if config.msmtp.enable then
+  "msmtpq --read-envelope-from --read-recipients"
 else
   null
 
-

Example: -"msmtpq --read-envelope-from --read-recipients"

Declared by:

+
+ + +

Example: +"msmtpq --read-envelope-from --read-recipients"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
accounts.email.accounts.<name>.notmuch.enable

Whether to enable notmuch indexing.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.notmuch.enable + + +
+
+

Whether to enable notmuch indexing.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
accounts.email.accounts.<name>.notmuch.neomutt.enable

Whether to enable Notmuch support in NeoMutt.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.notmuch.neomutt.enable + + +
+
+

Whether to enable Notmuch support in NeoMutt.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes

List of virtual mailboxes using Notmuch queries

Type: -list of (submodule)

Default:

[
+
+
+
+
+ + accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes + + +
+
+

List of virtual mailboxes using Notmuch queries

+ +

Type: +list of (submodule)

+ +

Default:

[
   {
-    name = "My INBOX";
-    query = "tag:inbox";
+    name = "My INBOX";
+    query = "tag:inbox";
   }
 ]
-

Example:

[
+
+ +

Example:

[
   {
-    name = "My INBOX";
-    query = "tag:inbox";
+    name = "My INBOX";
+    query = "tag:inbox";
   }
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.limit

Restricts number of messages/threads in the result.

Type: -null or signed integer

Default: -null

Example: -10

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.limit + + +
+
+

Restricts number of messages/threads in the result.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +10

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch-virtual-mailbox.nix> -
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.name

Name to display

Type: -string

Default: -"My INBOX"

Example: -"My INBOX"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.name + + +
+
+

Name to display

+ +

Type: +string

+ +

Default: +"My INBOX"

+ +

Example: +"My INBOX"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch-virtual-mailbox.nix> -
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.query

Notmuch query

Type: -string

Default: -"tag:inbox"

Example: -"tag:inbox"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.query + + +
+
+

Notmuch query

+ +

Type: +string

+ +

Default: +"tag:inbox"

+ +

Example: +"tag:inbox"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch-virtual-mailbox.nix> -
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.type

Reads all matching messages or whole-threads. The default is ‘messages’ or nm_query_type.

Type: -null or one of “threads”, “messages”

Default: -null

Example: -"threads"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.type + + +
+
+

Reads all matching messages or whole-threads. The default is ‘messages’ or nm_query_type.

+ +

Type: +null or one of “threads”, “messages”

+ +

Default: +null

+ +

Example: +"threads"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch-virtual-mailbox.nix> -
accounts.email.accounts.<name>.offlineimap.enable

Whether to enable OfflineIMAP.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.offlineimap.enable + + +
+
+

Whether to enable OfflineIMAP.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
accounts.email.accounts.<name>.offlineimap.extraConfig.account

Extra configuration options to add to the account section.

Type: -attribute set of (string or signed integer or boolean)

Default: -{ }

Example:

{
+
+
+
+
+ + accounts.email.accounts.<name>.offlineimap.extraConfig.account + + +
+
+

Extra configuration options to add to the account section.

+ +

Type: +attribute set of (string or signed integer or boolean)

+ +

Default: +{ }

+ +

Example:

{
   autorefresh = 20;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
accounts.email.accounts.<name>.offlineimap.extraConfig.local

Extra configuration options to add to the local account -section.

Type: -attribute set of (string or signed integer or boolean)

Default: -{ }

Example:

{
+
+
+
+
+ + accounts.email.accounts.<name>.offlineimap.extraConfig.local + + +
+
+

Extra configuration options to add to the local account +section.

+ +

Type: +attribute set of (string or signed integer or boolean)

+ +

Default: +{ }

+ +

Example:

{
   sync_deletes = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
accounts.email.accounts.<name>.offlineimap.extraConfig.remote

Extra configuration options to add to the remote account -section.

Type: -attribute set of (string or signed integer or boolean)

Default: -{ }

Example:

{
+
+
+
+
+ + accounts.email.accounts.<name>.offlineimap.extraConfig.remote + + +
+
+

Extra configuration options to add to the remote account +section.

+ +

Type: +attribute set of (string or signed integer or boolean)

+ +

Default: +{ }

+ +

Example:

{
   expunge = false;
   maxconnections = 2;
 }
-

Declared by:

-<home-manager/modules/programs/offlineimap.nix> -
accounts.email.accounts.<name>.offlineimap.postSyncHookCommand

Command to run after fetching new mails.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

-<home-manager/modules/programs/offlineimap.nix> -
accounts.email.accounts.<name>.passwordCommand

A command, which when run writes the account password on -standard output.

Type: -null or string or list of string

Default: -null

Example: -"secret-tool lookup email me@example.org"

Declared by:

-<home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.primary

Whether this is the primary account. Only one account may be -set as primary.

Type: -boolean

Default: -false

Declared by:

-<home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.realName

Name displayed when sending mails.

Type: -string

Example: -"Jane Doe"

Declared by:

-<home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.signature

Signature configuration.

Type: -submodule

Default: -{ }

Declared by:

-<home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.signature.command

A command that generates a signature.

Type: -null or path

Default: -null

Example:

pkgs.writeScript "signature" "echo This is my signature"
+
-

Declared by:

+
+

Declared by:

+ + +
+ +<home-manager/modules/programs/offlineimap.nix> + +
+ +
+ + accounts.email.accounts.<name>.offlineimap.postSyncHookCommand + + +
+
+

Command to run after fetching new mails.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/offlineimap.nix> + +
+
+
+ + accounts.email.accounts.<name>.passwordCommand + + +
+
+

A command, which when run writes the account password on +standard output.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Example: +"secret-tool lookup email me@example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.signature.delimiter

The delimiter used between the document and the signature.

Type: -string

Default:

''
+
+
+
+
+ + accounts.email.accounts.<name>.primary + + +
+
+

Whether this is the primary account. Only one account may be +set as primary.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<home-manager/modules/accounts/email.nix> + +
+
+
+ + accounts.email.accounts.<name>.realName + + +
+
+

Name displayed when sending mails.

+ +

Type: +string

+ +

Example: +"Jane Doe"

+ +

Declared by:

+ + +
+ +<home-manager/modules/accounts/email.nix> + +
+
+
+ + accounts.email.accounts.<name>.signature + + +
+
+

Signature configuration.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<home-manager/modules/accounts/email.nix> + +
+
+
+ + accounts.email.accounts.<name>.signature.command + + +
+
+

A command that generates a signature.

+ +

Type: +null or path

+ +

Default: +null

+ +

Example:

pkgs.writeScript "signature" "echo This is my signature"
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/accounts/email.nix> + +
+
+
+ + accounts.email.accounts.<name>.signature.delimiter + + +
+
+

The delimiter used between the document and the signature.

+ +

Type: +string

+ +

Default:

''
   --
-''
-

Example:

~*~*~*~*~*~*~*~*~*~*~*~
+''
+
-

Declared by:

+
+

Example:

~*~*~*~*~*~*~*~*~*~*~*~
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.signature.showSignature

Method to communicate the signature.

Type: -one of “append”, “attach”, “none”

Default: -"none"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.signature.showSignature + + +
+
+

Method to communicate the signature.

+ +

Type: +one of “append”, “attach”, “none”

+ +

Default: +"none"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.signature.text

Signature content.

Type: -string

Default: -""

Example:

''
+
+
+
+
+ + accounts.email.accounts.<name>.signature.text + + +
+
+

Signature content.

+ +

Type: +string

+ +

Default: +""

+ +

Example:

''
   --
   Luke Skywalker
   May the force be with you.
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.smtp

The SMTP configuration to use for this account.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.smtp + + +
+
+

The SMTP configuration to use for this account.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.smtp.host

Hostname of SMTP server.

Type: -string

Example: -"smtp.example.org"

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.smtp.host + + +
+
+

Hostname of SMTP server.

+ +

Type: +string

+ +

Example: +"smtp.example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.smtp.port

The port on which the SMTP server listens. If -null then the default port is used.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -465

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.smtp.port + + +
+
+

The port on which the SMTP server listens. If +null then the default port is used.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +465

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.smtp.tls

Configuration for secure connections.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.smtp.tls + + +
+
+

Configuration for secure connections.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.smtp.tls.enable

Whether to enable TLS/SSL.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.smtp.tls.enable + + +
+
+

Whether to enable TLS/SSL.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.smtp.tls.certificatesFile

Path to file containing certificate authorities that should + +

+
+
+ + accounts.email.accounts.<name>.smtp.tls.certificatesFile + + +
+
+

Path to file containing certificate authorities that should be used to validate the connection authenticity. If null then the system default is used. -Note, if set then the system default may still be accepted.

Type: -null or path

Default: -"config.accounts.email.certificatesFile"

Declared by:

+
+Note, if set then the system default may still be accepted.

+ +

Type: +null or path

+ +

Default: +"config.accounts.email.certificatesFile"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.smtp.tls.useStartTls

Whether to use STARTTLS.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.smtp.tls.useStartTls + + +
+
+

Whether to use STARTTLS.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.accounts.<name>.thunderbird.enable

Whether to enable the Thunderbird mail client for this account.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.thunderbird.enable + + +
+
+

Whether to enable the Thunderbird mail client for this account.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
accounts.email.accounts.<name>.thunderbird.perIdentitySettings

Extra settings to add to each identity of this Thunderbird + +

+
+
+ + accounts.email.accounts.<name>.thunderbird.perIdentitySettings + + +
+
+

Extra settings to add to each identity of this Thunderbird account configuration. The id given as -argument is an automatically generated identifier.

Type: -function that evaluates to a(n) attribute set of (boolean or signed integer or string)

Default: -_: { }

Example:

id: {
-  "mail.identity.id_${id}.protectSubject" = false;
-  "mail.identity.id_${id}.autoEncryptDrafts" = false;
+argument is an automatically generated identifier.

+ +

Type: +function that evaluates to a(n) attribute set of (boolean or signed integer or string)

+ +

Default: +_: { }

+ +

Example:

id: {
+  "mail.identity.id_${id}.protectSubject" = false;
+  "mail.identity.id_${id}.autoEncryptDrafts" = false;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
accounts.email.accounts.<name>.thunderbird.profiles

List of Thunderbird profiles for which this account should be + +

+
+
+ + accounts.email.accounts.<name>.thunderbird.profiles + + +
+
+

List of Thunderbird profiles for which this account should be enabled. If this list is empty (the default), this account will -be enabled for all declared profiles.

Type: -list of string

Default: -[ ]

Example:

[ "profile1" "profile2" ]
+be enabled for all declared profiles.

-

Declared by:

+
+

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[ "profile1" "profile2" ]
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
accounts.email.accounts.<name>.thunderbird.settings

Extra settings to add to this Thunderbird account configuration. + +

+
+
+ + accounts.email.accounts.<name>.thunderbird.settings + + +
+
+

Extra settings to add to this Thunderbird account configuration. The id given as argument is an automatically -generated account identifier.

Type: -function that evaluates to a(n) attribute set of (boolean or signed integer or string)

Default: -_: { }

Example:

id: {
-  "mail.server.server_${id}.check_new_mail" = false;
+generated account identifier.

+ +

Type: +function that evaluates to a(n) attribute set of (boolean or signed integer or string)

+ +

Default: +_: { }

+ +

Example:

id: {
+  "mail.server.server_${id}.check_new_mail" = false;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
accounts.email.accounts.<name>.userName

The server username of this account. This will be used as -the SMTP, IMAP, and JMAP user name.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + accounts.email.accounts.<name>.userName + + +
+
+

The server username of this account. This will be used as +the SMTP, IMAP, and JMAP user name.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.certificatesFile

Path to default file containing certificate authorities that + +

+
+
+ + accounts.email.certificatesFile + + +
+
+

Path to default file containing certificate authorities that should be used to validate the connection authenticity. This -path may be overridden on a per-account basis.

Type: -null or path

Default: -"/etc/ssl/certs/ca-certificates.crt"

Declared by:

+
+path may be overridden on a per-account basis.

+ +

Type: +null or path

+ +

Default: +"/etc/ssl/certs/ca-certificates.crt"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
accounts.email.maildirBasePath

The base directory for account maildir directories. May be a + +

+
+
+ + accounts.email.maildirBasePath + + +
+
+

The base directory for account maildir directories. May be a relative path, in which case it is relative the home -directory.

Type: -string

Default: -"$HOME/Maildir"

Declared by:

+
+directory.

+ +

Type: +string

+ +

Default: +"$HOME/Maildir"

+ +

Declared by:

+ +
+ <home-manager/modules/accounts/email.nix> -
dconf.settings

Settings to write to the dconf configuration system.

Note that the database is strongly-typed so you need to use the same types + +

+
+
+ + dconf.settings + + +
+
+

Settings to write to the dconf configuration system.

Note that the database is strongly-typed so you need to use the same types as described in the GSettings schema. For example, if an option is of type uint32 (u), you need to wrap the number using the lib.hm.gvariant.mkUint32 constructor. Otherwise, since Nix integers are implicitly coerced to int32 (i), it would get stored in the database as such, and GSettings -might be confused when loading the setting.

You might want to use dconf2nix -to convert dconf database dumps into compatible Nix expression.

Type: -attribute set of attribute set of (GVariant value)

Default: -{ }

Example:

{
-  "org/gnome/calculator" = {
-    button-mode = "programming";
+might be confused when loading the setting.

You might want to use dconf2nix +to convert dconf database dumps into compatible Nix expression.

+ +

Type: +attribute set of attribute set of (GVariant value)

+ +

Default: +{ }

+ +

Example:

{
+  "org/gnome/calculator" = {
+    button-mode = "programming";
     show-thousands = true;
     base = 10;
     word-size = 64;
@@ -1396,184 +6246,790 @@ attribute set of attribute set of (GVariant value)

}; } -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/dconf.nix> -
editorconfig.enable

Whether to enable EditorConfig home configuration file.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + editorconfig.enable + + +
+
+

Whether to enable EditorConfig home configuration file.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/editorconfig.nix> -
editorconfig.settings

Configuration written to $HOME/.editorconfig. + +

+
+
+ + editorconfig.settings + + +
+
+

Configuration written to $HOME/.editorconfig. root = true is automatically added to the file, it must not be added here. -See https://editorconfig.org for documentation.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
-  "*" = {
-    charset = "utf-8";
-    end_of_line = "lf";
+See https://editorconfig.org for documentation.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
+  "*" = {
+    charset = "utf-8";
+    end_of_line = "lf";
     trim_trailing_whitespace = true;
     insert_final_newline = true;
     max_line_width = 78;
-    indent_style = "space";
+    indent_style = "space";
     indent_size = 4;
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/editorconfig.nix> -
fonts.fontconfig.enable

Whether to enable fontconfig configuration. This will, for + +

+
+
+ + fonts.fontconfig.enable + + +
+
+

Whether to enable fontconfig configuration. This will, for example, allow fontconfig to discover fonts and configurations installed through home.packages and -nix-env.

Type: -boolean

Default: -false

Declared by:

+
+nix-env.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/misc/fontconfig.nix> -
gtk.enable

Whether to enable GTK 2/3 configuration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + gtk.enable + + +
+
+

Whether to enable GTK 2/3 configuration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.cursorTheme

The cursor theme to use.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + gtk.cursorTheme + + +
+
+

The cursor theme to use.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.cursorTheme.package

Package providing the cursor theme. This package will be installed + +

+
+
+ + gtk.cursorTheme.package + + +
+
+

Package providing the cursor theme. This package will be installed to your profile. If null then the theme -is assumed to already be available in your profile.

Type: -null or package

Default: -null

Example: -pkgs.vanilla-dmz

Declared by:

+
+is assumed to already be available in your profile.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example: +pkgs.vanilla-dmz

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.cursorTheme.name

The name of the cursor theme within the package.

Type: -string

Example: -"Vanilla-DMZ"

Declared by:

+
+ +
+
+
+ + gtk.cursorTheme.name + + +
+
+

The name of the cursor theme within the package.

+ +

Type: +string

+ +

Example: +"Vanilla-DMZ"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.cursorTheme.size

The size of the cursor.

Type: -null or signed integer

Default: -null

Example: -16

Declared by:

+
+ +
+
+
+ + gtk.cursorTheme.size + + +
+
+

The size of the cursor.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +16

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.font

The font to use in GTK+ 2/3 applications.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + gtk.font + + +
+
+

The font to use in GTK+ 2/3 applications.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.font.package

Package providing the font. This package will be installed + +

+
+
+ + gtk.font.package + + +
+
+

Package providing the font. This package will be installed to your profile. If null then the font -is assumed to already be available in your profile.

Type: -null or package

Default: -null

Example: -pkgs.dejavu_fonts

Declared by:

+
+is assumed to already be available in your profile.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example: +pkgs.dejavu_fonts

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.font.name

The family name of the font within the package.

Type: -string

Example: -"DejaVu Sans"

Declared by:

+
+ +
+
+
+ + gtk.font.name + + +
+
+

The family name of the font within the package.

+ +

Type: +string

+ +

Example: +"DejaVu Sans"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.font.size

The size of the font.

Type: -null or signed integer or floating point number

Default: -null

Example: -"8"

Declared by:

+
+ +
+
+
+ + gtk.font.size + + +
+
+

The size of the font.

+ +

Type: +null or signed integer or floating point number

+ +

Default: +null

+ +

Example: +"8"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.gtk2.configLocation

The location to put the GTK configuration file.

Type: -path

Default: -"${config.home.homeDirectory}/.gtkrc-2.0"

Example: -"${config.xdg.configHome}/gtk-2.0/gtkrc"

Declared by:

+
+ +
+
+
+ + gtk.gtk2.configLocation + + +
+
+

The location to put the GTK configuration file.

+ +

Type: +path

+ +

Default: +"${config.home.homeDirectory}/.gtkrc-2.0"

+ +

Example: +"${config.xdg.configHome}/gtk-2.0/gtkrc"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.gtk2.extraConfig

Extra configuration lines to add verbatim to -~/.gtkrc-2.0.

Type: -strings concatenated with “\n”

Default: -""

Example: -"gtk-can-change-accels = 1"

Declared by:

+
+ +
+
+
+ + gtk.gtk2.extraConfig + + +
+
+

Extra configuration lines to add verbatim to +~/.gtkrc-2.0.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"gtk-can-change-accels = 1"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.gtk3.bookmarks

Bookmarks in the sidebar of the GTK file browser

Type: -list of string

Default: -[ ]

Example:

[
-  "file:///home/jane/Documents"
+
+
+
+
+ + gtk.gtk3.bookmarks + + +
+
+

Bookmarks in the sidebar of the GTK file browser

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "file:///home/jane/Documents"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.gtk3.extraConfig

Extra configuration options to add to -$XDG_CONFIG_HOME/gtk-3.0/settings.ini.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
+
+
+
+
+ + gtk.gtk3.extraConfig + + +
+
+

Extra configuration options to add to +$XDG_CONFIG_HOME/gtk-3.0/settings.ini.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
   gtk-cursor-blink = false;
   gtk-recent-files-limit = 20;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.gtk3.extraCss

Extra configuration lines to add verbatim to -$XDG_CONFIG_HOME/gtk-3.0/gtk.css.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + gtk.gtk3.extraCss + + +
+
+

Extra configuration lines to add verbatim to +$XDG_CONFIG_HOME/gtk-3.0/gtk.css.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.gtk4.extraConfig

Extra configuration options to add to -$XDG_CONFIG_HOME/gtk-4.0/settings.ini.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
+
+
+
+
+ + gtk.gtk4.extraConfig + + +
+
+

Extra configuration options to add to +$XDG_CONFIG_HOME/gtk-4.0/settings.ini.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
   gtk-cursor-blink = false;
   gtk-recent-files-limit = 20;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.gtk4.extraCss

Extra configuration lines to add verbatim to -$XDG_CONFIG_HOME/gtk-4.0/gtk.css.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + gtk.gtk4.extraCss + + +
+
+

Extra configuration lines to add verbatim to +$XDG_CONFIG_HOME/gtk-4.0/gtk.css.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.iconTheme

The icon theme to use.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + gtk.iconTheme + + +
+
+

The icon theme to use.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.iconTheme.package

Package providing the icon theme. This package will be installed + +

+
+
+ + gtk.iconTheme.package + + +
+
+

Package providing the icon theme. This package will be installed to your profile. If null then the theme -is assumed to already be available in your profile.

Type: -null or package

Default: -null

Example: -pkgs.gnome.adwaita-icon-theme

Declared by:

+
+is assumed to already be available in your profile.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example: +pkgs.gnome.adwaita-icon-theme

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.iconTheme.name

The name of the icon theme within the package.

Type: -string

Example: -"Adwaita"

Declared by:

+
+ +
+
+
+ + gtk.iconTheme.name + + +
+
+

The name of the icon theme within the package.

+ +

Type: +string

+ +

Example: +"Adwaita"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.theme

The GTK+2/3 theme to use.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + gtk.theme + + +
+
+

The GTK+2/3 theme to use.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.theme.package

Package providing the theme. This package will be installed + +

+
+
+ + gtk.theme.package + + +
+
+

Package providing the theme. This package will be installed to your profile. If null then the theme -is assumed to already be available in your profile.

Type: -null or package

Default: -null

Example: -pkgs.gnome.gnome-themes-extra

Declared by:

+
+is assumed to already be available in your profile.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example: +pkgs.gnome.gnome-themes-extra

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
gtk.theme.name

The name of the theme within the package.

Type: -string

Example: -"Adwaita"

Declared by:

+
+ +
+
+
+ + gtk.theme.name + + +
+
+

The name of the theme within the package.

+ +

Type: +string

+ +

Example: +"Adwaita"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/gtk.nix> -
home.enableDebugInfo

Some Nix packages provide debug symbols for + +

+
+
+ + home.enableDebugInfo + + +
+
+

Some Nix packages provide debug symbols for gdb in the debug output. This option ensures that those are automatically fetched from the binary cache if available and gdb is -configured to find those symbols.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+configured to find those symbols.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/debug.nix> -
home.enableNixpkgsReleaseCheck

Determines whether to check for release version mismatch between Home + +

+
+
+ + home.enableNixpkgsReleaseCheck + + +
+
+

Determines whether to check for release version mismatch between Home Manager and Nixpkgs. Using mismatched versions is likely to cause errors and unexpected behavior. It is therefore highly recommended to use a release of Home Manager that corresponds with your chosen release of Nixpkgs.

When this option is enabled and a mismatch is detected then a warning -will be printed when the user configuration is being built.

Type: -boolean

Default: -true

Declared by:

+
+will be printed when the user configuration is being built.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.packages

The set of packages to appear in the user environment.

Type: -list of package

Default: -[ ]

Declared by:

+
+ +
+
+
+ + home.packages + + +
+
+

The set of packages to appear in the user environment.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.activation

The activation scripts blocks to run when activating a Home + +

+
+
+ + home.activation + + +
+
+

The activation scripts blocks to run when activating a Home Manager generation. Any entry here should be idempotent, meaning running twice or more times produces the same result as running it once.

If the script block produces any observable side effect, such @@ -1585,7 +7041,7 @@ does not modify, the state of the system and exits if an unexpected state is found. For example, the checkLinkTargets script block checks for collisions between non-managed files and files defined in -home.file.

A script block should respect the DRY_RUN +home.file.

A script block should respect the DRY_RUN variable, if it is set then the actions taken by the script should be logged to standard out and not actually performed. The variable DRY_RUN_CMD is set to @@ -1594,234 +7050,1014 @@ The variable DRY_RUN_CMD is set to information on standard out that may be useful for debugging any issue that may arise. The variable VERBOSE_ARG is set to ---verbose if verbose output is enabled.

Type: -DAG of string

Default: -{ }

Example:

{
-  myActivationAction = lib.hm.dag.entryAfter ["writeBoundary"] ''
+--verbose if verbose output is enabled.

+ +

Type: +DAG of string

+ +

Default: +{ }

+ +

Example:

{
+  myActivationAction = lib.hm.dag.entryAfter ["writeBoundary"] ''
     $DRY_RUN_CMD ln -s $VERBOSE_ARG \
         ${builtins.toPath ./link-me-directly} $HOME
-  '';
+  '';
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.extraOutputsToInstall

List of additional package outputs of the packages + +

+
+
+ + home.extraOutputsToInstall + + +
+
+

List of additional package outputs of the packages home.packages that should be installed into -the user environment.

Type: -list of string

Default: -[ ]

Example:

[
-  "doc"
-  "info"
-  "devdoc"
+the user environment.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "doc"
+  "info"
+  "devdoc"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.file

Attribute set of files to link into the user home.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + home.file + + +
+
+

Attribute set of files to link into the user home.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.file.<name>.enable

Whether this file should be generated. This option allows specific -files to be disabled.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + home.file.<name>.enable + + +
+
+

Whether this file should be generated. This option allows specific +files to be disabled.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.file.<name>.executable

Set the execute bit. If null, defaults to the mode + +

+
+
+ + home.file.<name>.executable + + +
+
+

Set the execute bit. If null, defaults to the mode of the source file or to false -for files created through the text option.

Type: -null or boolean

Default: -null

Declared by:

+
+for files created through the text option.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.file.<name>.onChange

Shell commands to run when file has changed between + +

+
+
+ + home.file.<name>.onChange + + +
+
+

Shell commands to run when file has changed between generations. The script will be run after the new files have been linked into place.

Note, this code is always run when recursive is -enabled.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+enabled.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.file.<name>.recursive

If the file source is a directory, then this option + +

+
+
+ + home.file.<name>.recursive + + +
+
+

If the file source is a directory, then this option determines whether the directory should be recursively linked to the target location. This option has no effect if the source is a file.

If false (the default) then the target will be a symbolic link to the source directory. If true then the target will be a directory structure matching the source’s but whose leafs -are symbolic links to the files of the source directory.

Type: -boolean

Default: -false

Declared by:

+
+are symbolic links to the files of the source directory.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.file.<name>.source

Path of the source file or directory. If -home.file.<name>.text + +

+
+
+ + home.file.<name>.source + + +
+
+

Path of the source file or directory. If +home.file.<name>.text is non-null then this option will automatically point to a file -containing that text.

Type: -path

Declared by:

+
+containing that text.

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.file.<name>.target

Path to target file relative to HOME.

Type: -string

Default: -name

Declared by:

+
+ +
+
+
+ + home.file.<name>.target + + +
+
+

Path to target file relative to HOME.

+ +

Type: +string

+ +

Default: +name

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.file.<name>.text

Text of the file. If this option is null then -home.file.<name>.source -must be set.

Type: -null or strings concatenated with “\n”

Default: -null

Declared by:

+
+ +
+
+
+ + home.file.<name>.text + + +
+
+

Text of the file. If this option is null then +home.file.<name>.source +must be set.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/files.nix> -
home.homeDirectory

The user’s home directory. Must be an absolute path.

Type: -path

Default:

"$HOME"   for state version < 20.09,
+
+
+
+
+ + home.homeDirectory + + +
+
+

The user’s home directory. Must be an absolute path.

+ +

Type: +path

+ +

Default:

"$HOME"   for state version < 20.09,
 undefined for state version ≥ 20.09
 
-

Example: -"/home/jane.doe"

Declared by:

-<home-manager/modules/home-environment.nix> -
home.keyboard

Keyboard configuration. Set to null to -disable Home Manager keyboard management.

Type: -null or (submodule)

Default:

"{ }"  for state version < 21.11,
-"null" for state version ≥ 21.11
+
-

Declared by:

+
+

Example: +"/home/jane.doe"

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.keyboard.layout

Keyboard layout. If null, then the system + +

+
+
+ + home.keyboard + + +
+
+

Keyboard configuration. Set to null to +disable Home Manager keyboard management.

+ +

Type: +null or (submodule)

+ +

Default:

"{ }"  for state version < 21.11,
+"null" for state version ≥ 21.11
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/home-environment.nix> + +
+
+
+ + home.keyboard.layout + + +
+
+

Keyboard layout. If null, then the system configuration will be used.

This defaults to null for state -version ≥ 19.09 and "us" otherwise.

Type: -null or string

Default: -null

Declared by:

+
+version ≥ 19.09 and "us" otherwise.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.keyboard.model

Keyboard model.

Type: -null or string

Default: -null

Example: -"presario"

Declared by:

+
+ +
+
+
+ + home.keyboard.model + + +
+
+

Keyboard model.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"presario"

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.keyboard.options

X keyboard options; layout switching goes here.

Type: -list of string

Default: -[ ]

Example:

[
-  "grp:caps_toggle"
-  "grp_led:scroll"
+
+
+
+
+ + home.keyboard.options + + +
+
+

X keyboard options; layout switching goes here.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "grp:caps_toggle"
+  "grp_led:scroll"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.keyboard.variant

X keyboard variant. If null, then the + +

+
+
+ + home.keyboard.variant + + +
+
+

X keyboard variant. If null, then the system configuration will be used.

This defaults to null for state -version ≥ 19.09 and "" otherwise.

Type: -null or string

Default: -null

Example: -"colemak"

Declared by:

+
+version ≥ 19.09 and "" otherwise.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"colemak"

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language

Language configuration.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + home.language + + +
+
+

Language configuration.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.address

The language to use for addresses.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.address + + +
+
+

The language to use for addresses.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.base

The language to use unless overridden by a more specific option.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.base + + +
+
+

The language to use unless overridden by a more specific option.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.collate

The language to use for collation (alphabetical ordering).

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.collate + + +
+
+

The language to use for collation (alphabetical ordering).

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.ctype

Character classification category.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.ctype + + +
+
+

Character classification category.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.measurement

The language to use for measurement values.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.measurement + + +
+
+

The language to use for measurement values.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.messages

The language to use for messages, application UI languages, etc.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.messages + + +
+
+

The language to use for messages, application UI languages, etc.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.monetary

The language to use for formatting currencies and money amounts.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.monetary + + +
+
+

The language to use for formatting currencies and money amounts.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.name

The language to use for personal names.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.name + + +
+
+

The language to use for personal names.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.numeric

The language to use for numerical values.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.numeric + + +
+
+

The language to use for numerical values.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.paper

The language to use for paper sizes.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.paper + + +
+
+

The language to use for paper sizes.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.telephone

The language to use for telephone numbers.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.telephone + + +
+
+

The language to use for telephone numbers.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.language.time

The language to use for formatting times.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + home.language.time + + +
+
+

The language to use for formatting times.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.pointerCursor

Cursor configuration. Set to null to disable.

Top-level options declared under this submodule are backend independent + +

+
+
+ + home.pointerCursor + + +
+
+

Cursor configuration. Set to null to disable.

Top-level options declared under this submodule are backend independent options. Options declared under namespaces such as x11 are backend specific options. By default, only backend independent cursor configurations are generated. If you need configurations for specific backends, you can toggle them via the enable option. For example, -home.pointerCursor.x11.enable +home.pointerCursor.x11.enable will enable x11 cursor configurations.

Note that this will merely generate the cursor configurations. To apply the configurations, the relevant subsytems must also be configured. -For example, home.pointerCursor.gtk.enable will generate -the gtk cursor configuration, but gtk.enable needs -to be set for it to be applied.

Type: -null or (submodule)

Default: -null

Declared by:

-<home-manager/modules/config/home-cursor.nix> -
home.pointerCursor.package

Package providing the cursor theme.

Type: -package

Example: -pkgs.vanilla-dmz

Declared by:

-<home-manager/modules/config/home-cursor.nix> -
home.pointerCursor.gtk.enable

Whether to enable gtk config generation for home.pointerCursor -.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/config/home-cursor.nix> -
home.pointerCursor.name

The cursor name within the package.

Type: -string

Example: -"Vanilla-DMZ"

Declared by:

-<home-manager/modules/config/home-cursor.nix> -
home.pointerCursor.size

The cursor size.

Type: -signed integer

Default: -32

Example: -64

Declared by:

-<home-manager/modules/config/home-cursor.nix> -
home.pointerCursor.x11.enable

Whether to enable x11 config generation for home.pointerCursor -.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/config/home-cursor.nix> -
home.pointerCursor.x11.defaultCursor

The default cursor file to use within the package.

Type: -string

Default: -"left_ptr"

Example: -"X_cursor"

Declared by:

-<home-manager/modules/config/home-cursor.nix> -
home.profileDirectory

The profile directory where Home Manager generations are installed.

Type: -path (read only)

Default:

"${home.homeDirectory}/.nix-profile"  or
-"/etc/profiles/per-user/${home.username}"
+For example, home.pointerCursor.gtk.enable will generate
+the gtk cursor configuration, but gtk.enable needs
+to be set for it to be applied.

-

Declared by:

+
+

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/config/home-cursor.nix> + +
+ +
+ + home.pointerCursor.package + + +
+
+

Package providing the cursor theme.

+ +

Type: +package

+ +

Example: +pkgs.vanilla-dmz

+ +

Declared by:

+ + +
+ +<home-manager/modules/config/home-cursor.nix> + +
+
+
+ + home.pointerCursor.gtk.enable + + +
+
+

Whether to enable gtk config generation for home.pointerCursor +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/config/home-cursor.nix> + +
+
+
+ + home.pointerCursor.name + + +
+
+

The cursor name within the package.

+ +

Type: +string

+ +

Example: +"Vanilla-DMZ"

+ +

Declared by:

+ + +
+ +<home-manager/modules/config/home-cursor.nix> + +
+
+
+ + home.pointerCursor.size + + +
+
+

The cursor size.

+ +

Type: +signed integer

+ +

Default: +32

+ +

Example: +64

+ +

Declared by:

+ + +
+ +<home-manager/modules/config/home-cursor.nix> + +
+
+
+ + home.pointerCursor.x11.enable + + +
+
+

Whether to enable x11 config generation for home.pointerCursor +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/config/home-cursor.nix> + +
+
+
+ + home.pointerCursor.x11.defaultCursor + + +
+
+

The default cursor file to use within the package.

+ +

Type: +string

+ +

Default: +"left_ptr"

+ +

Example: +"X_cursor"

+ +

Declared by:

+ + +
+ +<home-manager/modules/config/home-cursor.nix> + +
+
+
+ + home.profileDirectory + + +
+
+

The profile directory where Home Manager generations are installed.

+ +

Type: +path (read only)

+ +

Default:

"${home.homeDirectory}/.nix-profile"  or
+"/etc/profiles/per-user/${home.username}"
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.sessionPath

Extra directories to add to PATH.

These directories are added to the PATH variable in a + +

+
+
+ + home.sessionPath + + +
+
+

Extra directories to add to PATH.

These directories are added to the PATH variable in a double-quoted context, so expressions like $HOME are expanded by the shell. However, since expressions like ~ or * are escaped, they will end up in the PATH -verbatim.

Type: -list of string

Default: -[ ]

Example:

[
-  "$HOME/.local/bin"
-  "\${xdg.configHome}/emacs/bin"
-  ".git/safe/../../bin"
+verbatim.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "$HOME/.local/bin"
+  "\${xdg.configHome}/emacs/bin"
+  ".git/safe/../../bin"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.sessionVariables

Environment variables to always set at login.

The values may refer to other environment variables using + +

+
+
+ + home.sessionVariables + + +
+
+

Environment variables to always set at login.

The values may refer to other environment variables using POSIX.2 style variable references. For example, a variable parameter may be referenced as $parameter or ${parameter}. A @@ -1830,127 +8066,389 @@ default value foo may be given as per value bar can be given as per ${parameter:+bar}.

Note, these variables may be set in any order so no session variable may have a runtime dependency on another session -variable. In particular code like

home.sessionVariables = {
-  FOO = "Hello";
-  BAR = "$FOO World!";
+variable. In particular code like

home.sessionVariables = {
+  FOO = "Hello";
+  BAR = "$FOO World!";
 };
-

may not work as expected. If you need to reference another +

may not work as expected. If you need to reference another session variable, then do so inside Nix instead. The above -example then becomes

home.sessionVariables = {
-  FOO = "Hello";
-  BAR = "${config.home.sessionVariables.FOO} World!";
+example then becomes

home.sessionVariables = {
+  FOO = "Hello";
+  BAR = "${config.home.sessionVariables.FOO} World!";
 };
-

Type: -lazy attribute set of (string or path or signed integer or floating point number)

Default: -{ }

Example:

{
-  EDITOR = "emacs";
-  GS_OPTIONS = "-sPAPERSIZE=a4";
+
+ +

Type: +lazy attribute set of (string or path or signed integer or floating point number)

+ +

Default: +{ }

+ +

Example:

{
+  EDITOR = "emacs";
+  GS_OPTIONS = "-sPAPERSIZE=a4";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.shellAliases

An attribute set that maps aliases (the top level attribute names + +

+
+
+ + home.shellAliases + + +
+
+

An attribute set that maps aliases (the top level attribute names in this option) to command strings or directly to build outputs.

This option should only be used to manage simple aliases that are compatible across all shells. If you need to use a shell specific feature then make sure to use a shell specific option, for example -programs.bash.shellAliases for Bash.

Type: -attribute set of string

Default: -{ }

Example:

{
-  g = "git";
-  "..." = "cd ../..";
+programs.bash.shellAliases for Bash.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  g = "git";
+  "..." = "cd ../..";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
home.stateVersion

It is occasionally necessary for Home Manager to change + +

+
+
+ + home.stateVersion + + +
+
+

It is occasionally necessary for Home Manager to change configuration defaults in a way that is incompatible with stateful data. This could, for example, include switching the default data format or location of a file.

The state version indicates which default settings are in effect and will therefore help avoid breaking program configurations. Switching to a higher state version typically requires performing some manual steps, such as data -conversion or moving files.

Type: -one of “18.09”, “19.03”, “19.09”, “20.03”, “20.09”, “21.03”, “21.05”, “21.11”, “22.05”, “22.11”, “23.05”, “23.11”, “24.05”

Declared by:

+
+conversion or moving files.

+ +

Type: +one of “18.09”, “19.03”, “19.09”, “20.03”, “20.09”, “21.03”, “21.05”, “21.11”, “22.05”, “22.11”, “23.05”, “23.11”, “24.05”

+ +

Declared by:

+ +
+ <home-manager/modules/misc/version.nix> -
home.username

The user’s username.

Type: -string

Default:

"$USER"   for state version < 20.09,
+
+
+
+
+ + home.username + + +
+
+

The user’s username.

+ +

Type: +string

+ +

Default:

"$USER"   for state version < 20.09,
 undefined for state version ≥ 20.09
 
-

Example: -"jane.doe"

Declared by:

+
+ + +

Example: +"jane.doe"

+ +

Declared by:

+ +
+ <home-manager/modules/home-environment.nix> -
i18n.glibcLocales

Customized glibcLocales package providing + +

+
+
+ + i18n.glibcLocales + + +
+
+

Customized glibcLocales package providing the LOCALE_ARCHIVE_* environment variable.

This option only applies to the Linux platform.

When Home Manager is configured with NixOS, the default value will be set to i18n.glibcLocales from the -system configuration.

Type: -path

Default: -pkgs.glibcLocales

Example:

pkgs.glibcLocales.override {
+system configuration.

+ +

Type: +path

+ +

Default: +pkgs.glibcLocales

+ +

Example:

pkgs.glibcLocales.override {
   allLocales = false;
-  locales = [ "en_US.UTF-8/UTF-8" ];
+  locales = [ "en_US.UTF-8/UTF-8" ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/config/i18n.nix> -
i18n.inputMethod.enabled

Select the enabled input method. Input methods are software to input + +

+
+
+ + i18n.inputMethod.enabled + + +
+
+

Select the enabled input method. Input methods are software to input symbols that are not available on standard input devices.

Input methods are especially used to input Chinese, Japanese and Korean characters.

Currently the following input methods are available in Home Manager:

fcitx5

A customizable lightweight input method. The next generation of fcitx. Addons (including engines, dictionaries, skins) can be added using -i18n.inputMethod.fcitx5.addons.

nabi

A Korean input method based on XIM. Nabi doesn’t support Qt 5.

uim

The “universal input method” is a library with an XIM bridge. -uim mainly supports Chinese, Japanese and Korean.

hime

An extremely easy-to-use input method framework.

kime

A Korean IME.

Type: -null or one of “fcitx”, “fcitx5”, “nabi”, “uim”, “hime”, “kime”

Default: -null

Example: -"fcitx5"

Declared by:

+
+i18n.inputMethod.fcitx5.addons.

nabi

A Korean input method based on XIM. Nabi doesn’t support Qt 5.

uim

The “universal input method” is a library with an XIM bridge. +uim mainly supports Chinese, Japanese and Korean.

hime

An extremely easy-to-use input method framework.

kime

A Korean IME.

+ +

Type: +null or one of “fcitx”, “fcitx5”, “nabi”, “uim”, “hime”, “kime”

+ +

Default: +null

+ +

Example: +"fcitx5"

+ +

Declared by:

+ +
+ <home-manager/modules/i18n/input-method/default.nix> -
i18n.inputMethod.fcitx5.addons

Enabled Fcitx5 addons.

Type: -list of package

Default: -[ ]

Example: -with pkgs; [ fcitx5-rime ]

Declared by:

+
+ +
+
+
+ + i18n.inputMethod.fcitx5.addons + + +
+
+

Enabled Fcitx5 addons.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +with pkgs; [ fcitx5-rime ]

+ +

Declared by:

+ +
+ <home-manager/modules/i18n/input-method/fcitx5.nix> -
i18n.inputMethod.kime.config

kime configuration. Refer to -https://github.com/Riey/kime/blob/develop/docs/CONFIGURATION.md -for details on supported values.

Type: -YAML value

Default: -{ }

Example:

{
+
+
+
+
+ + i18n.inputMethod.kime.config + + +
+
+

kime configuration. Refer to +https://github.com/Riey/kime/blob/develop/docs/CONFIGURATION.md +for details on supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   daemon = {
-    modules = ["Xim" "Indicator"];
+    modules = ["Xim" "Indicator"];
   };
 
   indicator = {
-    icon_color = "White";
+    icon_color = "White";
   };
 
   engine = {
     hangul = {
-      layout = "dubeolsik";
+      layout = "dubeolsik";
     };
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/i18n/input-method/kime.nix> -
i18n.inputMethod.uim.toolbar

Selected UIM toolbar.

Type: -one of “gtk”, “gtk3”, “gtk-systray”, “gtk3-systray”, “qt4”

Default: -"gtk"

Example: -"gtk-systray"

Declared by:

+
+ +
+
+
+ + i18n.inputMethod.uim.toolbar + + +
+
+

Selected UIM toolbar.

+ +

Type: +one of “gtk”, “gtk3”, “gtk-systray”, “gtk3-systray”, “qt4”

+ +

Default: +"gtk"

+ +

Example: +"gtk-systray"

+ +

Declared by:

+ +
+ <home-manager/modules/i18n/input-method/uim.nix> -
launchd.enable

Whether to enable Home Manager to define per-user daemons by making use -of launchd’s LaunchAgents.

Type: -boolean

Default: -pkgs.stdenv.hostPlatform.isDarwin

Declared by:

+
+ +
+
+
+ + launchd.enable + + +
+
+

Whether to enable Home Manager to define per-user daemons by making use +of launchd’s LaunchAgents.

+ +

Type: +boolean

+ +

Default: +pkgs.stdenv.hostPlatform.isDarwin

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents

Define LaunchAgents.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + launchd.agents + + +
+
+

Define LaunchAgents.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.enable

Whether to enable ‹name›.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.enable + + +
+
+

Whether to enable ‹name›.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config

Define a launchd job. See launchd.plist(5) for details.

Type: -attribute set of anything

Default: -{ }

Example:

{
-  ProgramArguments = [ "/usr/bin/say" "Good afternoon" ];
+
+
+
+
+ + launchd.agents.<name>.config + + +
+
+

Define a launchd job. See launchd.plist(5) for details.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  ProgramArguments = [ "/usr/bin/say" "Good afternoon" ];
   StartCalendarInterval = [
     {
       Hour = 12;
@@ -1959,19 +8457,75 @@ attribute set of anything

Default: ]; } -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.AbandonProcessGroup

When a job dies, launchd kills any remaining processes with the same process group ID as the job. Setting -this key to true disables that behavior.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.AbandonProcessGroup + + +
+
+

When a job dies, launchd kills any remaining processes with the same process group ID as the job. Setting +this key to true disables that behavior.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Debug

This optional key specifies that launchd should adjust its log mask temporarily to LOG_DEBUG while -dealing with this job.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Debug + + +
+
+

This optional key specifies that launchd should adjust its log mask temporarily to LOG_DEBUG while +dealing with this job.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Disabled

This optional key is used as a hint to launchctl(1) that it should not submit this job to launchd when + +

+
+
+ + launchd.agents.<name>.config.Disabled + + +
+
+

This optional key is used as a hint to launchctl(1) that it should not submit this job to launchd when loading a job or jobs. The value of this key does NOT reflect the current state of the job on the running system. If you wish to know whether a job is loaded in launchd, reading this key from a configuration file yourself is not a sufficient test. You should query launchd for the presence of the job using @@ -1982,542 +8536,2404 @@ longer modify the configuration file, so the value displayed in the configuratio the value that launchctl(1) will apply. See launchctl(1) for more information.

Please also be mindful that you should only use this key if the provided on-demand and KeepAlive criteria are insufficient to describe the conditions under which your job needs to run. The cost to have a job loaded in launchd is negligible, so there is no harm in loading a job which only runs once or very -rarely.

Type: -null or boolean

Default: -null

Declared by:

+
+rarely.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.EnableGlobbing

This flag causes launchd to use the glob(3) mechanism to update the program arguments before invocation.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.EnableGlobbing + + +
+
+

This flag causes launchd to use the glob(3) mechanism to update the program arguments before invocation.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.EnableTransactions

This flag instructs launchd that the job promises to use vproc_transaction_begin(3) and + +

+
+
+ + launchd.agents.<name>.config.EnableTransactions + + +
+
+

This flag instructs launchd that the job promises to use vproc_transaction_begin(3) and vproc_transaction_end(3) to track outstanding transactions that need to be reconciled before the process can safely terminate. If no outstanding transactions are in progress, then launchd is free to -send the SIGKILL signal.

Type: -null or boolean

Default: -null

Declared by:

+
+send the SIGKILL signal.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.EnvironmentVariables

This optional key is used to specify additional environment variables to be set before running the -job.

Type: -null or (attribute set of string)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.EnvironmentVariables + + +
+
+

This optional key is used to specify additional environment variables to be set before running the +job.

+ +

Type: +null or (attribute set of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.ExitTimeOut

The amount of time launchd waits before sending a SIGKILL signal. The default value is 20 seconds. The -value zero is interpreted as infinity.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.ExitTimeOut + + +
+
+

The amount of time launchd waits before sending a SIGKILL signal. The default value is 20 seconds. The +value zero is interpreted as infinity.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.GroupName

This optional key specifies the group to run the job as. This key is only applicable when launchd is + +

+
+
+ + launchd.agents.<name>.config.GroupName + + +
+
+

This optional key specifies the group to run the job as. This key is only applicable when launchd is running as root. If UserName is set and GroupName is not, the the group will be set to the default -group of the user.

Type: -null or string

Default: -null

Declared by:

+
+group of the user.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits

Resource limits to be imposed on the job. These adjust variables set with setrlimit(2). The following -keys apply:

Type: -null or (submodule)

Default: -null

Example:

{
+
+
+
+
+ + launchd.agents.<name>.config.HardResourceLimits + + +
+
+

Resource limits to be imposed on the job. These adjust variables set with setrlimit(2). The following +keys apply:

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
   NumberOfFiles = 4096;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.CPU

The maximum amount of cpu time (in seconds) to be used by each process.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.HardResourceLimits.CPU + + +
+
+

The maximum amount of cpu time (in seconds) to be used by each process.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.Core

The largest size (in bytes) core file that may be created.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.HardResourceLimits.Core + + +
+
+

The largest size (in bytes) core file that may be created.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.Data

The maximum size (in bytes) of the data segment for a process; this defines how far a program may -extend its break with the sbrk(2) system call.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.HardResourceLimits.Data + + +
+
+

The maximum size (in bytes) of the data segment for a process; this defines how far a program may +extend its break with the sbrk(2) system call.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.FileSize

The largest size (in bytes) file that may be created.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.HardResourceLimits.FileSize + + +
+
+

The largest size (in bytes) file that may be created.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.MemoryLock

The maximum size (in bytes) which a process may lock into memory using the mlock(2) function.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.HardResourceLimits.MemoryLock + + +
+
+

The maximum size (in bytes) which a process may lock into memory using the mlock(2) function.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.NumberOfFiles

The maximum number of open files for this process. Setting this value in a system wide daemon + +

+
+
+ + launchd.agents.<name>.config.HardResourceLimits.NumberOfFiles + + +
+
+

The maximum number of open files for this process. Setting this value in a system wide daemon will set the sysctl(3) kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResourceLimits) -value in addition to the setrlimit(2) values.

Type: -null or signed integer

Default: -null

Declared by:

+
+value in addition to the setrlimit(2) values.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.NumberOfProcesses

The maximum number of simultaneous processes for this user id. Setting this value in a system + +

+
+
+ + launchd.agents.<name>.config.HardResourceLimits.NumberOfProcesses + + +
+
+

The maximum number of simultaneous processes for this user id. Setting this value in a system wide daemon will set the sysctl(3) kern.maxproc (SoftResourceLimits) or kern.maxprocperuid -(HardResourceLimits) value in addition to the setrlimit(2) values.

Type: -null or signed integer

Default: -null

Declared by:

+
+(HardResourceLimits) value in addition to the setrlimit(2) values.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.ResidentSetSize

The maximum size (in bytes) to which a process’s resident set size may grow. This imposes a + +

+
+
+ + launchd.agents.<name>.config.HardResourceLimits.ResidentSetSize + + +
+
+

The maximum size (in bytes) to which a process’s resident set size may grow. This imposes a limit on the amount of physical memory to be given to a process; if memory is tight, the system -will prefer to take memory from processes that are exceeding their declared resident set size.

Type: -null or signed integer

Default: -null

Declared by:

+
+will prefer to take memory from processes that are exceeding their declared resident set size.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.HardResourceLimits.Stack

The maximum size (in bytes) of the stack segment for a process; this defines how far a program’s -stack segment may be extended. Stack extension is performed automatically by the system.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.HardResourceLimits.Stack + + +
+
+

The maximum size (in bytes) of the stack segment for a process; this defines how far a program’s +stack segment may be extended. Stack extension is performed automatically by the system.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.InitGroups

This optional key specifies whether initgroups(3) should be called before running the job. The default -is true in 10.5 and false in 10.4. This key will be ignored if the UserName key is not set.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.InitGroups + + +
+
+

This optional key specifies whether initgroups(3) should be called before running the job. The default +is true in 10.5 and false in 10.4. This key will be ignored if the UserName key is not set.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.KeepAlive

This optional key is used to control whether your job is to be kept continuously running or to let + +

+
+
+ + launchd.agents.<name>.config.KeepAlive + + +
+
+

This optional key is used to control whether your job is to be kept continuously running or to let demand and conditions control the invocation. The default is false and therefore only demand will start the job. The value may be set to true to unconditionally keep the job alive. Alternatively, a dictionary of conditions may be specified to selectively control whether launchd keeps a job alive or not. If multiple keys are provided, launchd ORs them, thus providing maximum flexibility to the job to refine the logic and stall if necessary. If launchd finds no reason to restart the job, it falls back on demand based invocation. Jobs that exit quickly and frequently when configured to be kept alive will -be throttled to converve system resources.

Type: -null or boolean or (submodule)

Default: -null

Declared by:

+
+be throttled to converve system resources.

+ +

Type: +null or boolean or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Label

This required key uniquely identifies the job to launchd.

Type: -string

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Label + + +
+
+

This required key uniquely identifies the job to launchd.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.LaunchEvents

Specifies higher-level event types to be used as launch-on-demand event + +

+
+
+ + launchd.agents.<name>.config.LaunchEvents + + +
+
+

Specifies higher-level event types to be used as launch-on-demand event sources. Each sub-dictionary defines events for a particular event subsystem, such as “com.apple.iokit.matching”, which can be used to launch jobs based on the appearance of nodes in the IORegistry. Each dictionary within the sub-dictionary specifies an event descriptor that is specified to each event subsystem. With this key, the job promises to use the xpc_set_event_stream_handler(3) API to consume events. See -xpc_events(3) for more details on event sources.

Type: -null or (attribute set)

Default: -null

Example:

{
-  "com.apple.iokit.matching" = {
-    "com.apple.usb.device" = {
+xpc_events(3) for more details on event sources.

+ +

Type: +null or (attribute set)

+ +

Default: +null

+ +

Example:

{
+  "com.apple.iokit.matching" = {
+    "com.apple.usb.device" = {
       IOMatchLaunchStream = true;
-      IOProviderClass = "IOUSBDevice";
-      idProduct = "*";
-      idVendor = "*";
+      IOProviderClass = "IOUSBDevice";
+      idProduct = "*";
+      idVendor = "*";
     };
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.LaunchOnlyOnce

This optional key specifies whether the job can only be run once and only once. In other words, if the -job cannot be safely respawned without a full machine reboot, then set this key to be true.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.LaunchOnlyOnce + + +
+
+

This optional key specifies whether the job can only be run once and only once. In other words, if the +job cannot be safely respawned without a full machine reboot, then set this key to be true.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.LimitLoadFromHosts

This configuration file only applies to hosts NOT listed with this key. Note: One should set kern.hostname -in sysctl.conf(5) for this feature to work reliably.

Type: -null or (list of string)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.LimitLoadFromHosts + + +
+
+

This configuration file only applies to hosts NOT listed with this key. Note: One should set kern.hostname +in sysctl.conf(5) for this feature to work reliably.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.LimitLoadToHosts

This configuration file only applies to the hosts listed with this key. Note: One should set kern.hostname -in sysctl.conf(5) for this feature to work reliably.

Type: -null or (list of string)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.LimitLoadToHosts + + +
+
+

This configuration file only applies to the hosts listed with this key. Note: One should set kern.hostname +in sysctl.conf(5) for this feature to work reliably.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.LimitLoadToSessionType

This configuration file only applies to sessions of the type specified. This key is used in concert -with the -S flag to launchctl.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.LimitLoadToSessionType + + +
+
+

This configuration file only applies to sessions of the type specified. This key is used in concert +with the -S flag to launchctl.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.LowPriorityIO

This optional key specifies whether the kernel should consider this daemon to be low priority when -doing file system I/O.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.LowPriorityIO + + +
+
+

This optional key specifies whether the kernel should consider this daemon to be low priority when +doing file system I/O.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.MachServices

This optional key is used to specify Mach services to be registered with the Mach bootstrap sub-system. + +

+
+
+ + launchd.agents.<name>.config.MachServices + + +
+
+

This optional key is used to specify Mach services to be registered with the Mach bootstrap sub-system. Each key in this dictionary should be the name of service to be advertised. The value of the key must be a boolean and set to true. Alternatively, a dictionary can be used instead of a simple true value.

Finally, for the job itself, the values will be replaced with Mach ports at the time of check-in with -launchd.

Type: -null or (submodule)

Default: -null

Example:

{
+launchd.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
   ResetAtClose = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.MachServices.HideUntilCheckIn

Reserve the name in the namespace, but cause bootstrap_look_up() to fail until the job has -checked in with launchd.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.MachServices.HideUntilCheckIn + + +
+
+

Reserve the name in the namespace, but cause bootstrap_look_up() to fail until the job has +checked in with launchd.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.MachServices.ResetAtClose

If this boolean is false, the port is recycled, thus leaving clients to remain oblivious to the + +

+
+
+ + launchd.agents.<name>.config.MachServices.ResetAtClose + + +
+
+

If this boolean is false, the port is recycled, thus leaving clients to remain oblivious to the demand nature of job. If the value is set to true, clients receive port death notifications when the job lets go of the receive right. The port will be recreated atomically with respect to bootstrap_look_up() calls, so that clients can trust that after receiving a port death notification, the new port will have already been recreated. Setting the value to true should be done with -care. Not all clients may be able to handle this behavior. The default value is false.

Type: -null or boolean

Default: -null

Declared by:

+
+care. Not all clients may be able to handle this behavior. The default value is false.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Nice

This optional key specifies what nice(3) value should be applied to the daemon.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Nice + + +
+
+

This optional key specifies what nice(3) value should be applied to the daemon.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.OnDemand

This key was used in Mac OS X 10.4 to control whether a job was kept alive or not. The default was + +

+
+
+ + launchd.agents.<name>.config.OnDemand + + +
+
+

This key was used in Mac OS X 10.4 to control whether a job was kept alive or not. The default was true. This key has been deprecated and replaced in Mac OS X 10.5 and later with the more powerful -KeepAlive option.

Type: -null or boolean

Default: -null

Declared by:

+
+KeepAlive option.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.ProcessType

This optional key describes, at a high level, the intended purpose of the job. The system will apply + +

+
+
+ + launchd.agents.<name>.config.ProcessType + + +
+
+

This optional key describes, at a high level, the intended purpose of the job. The system will apply resource limits based on what kind of job it is. If left unspecified, the system will apply light resource limits to the job, throttling its CPU usage and I/O bandwidth. The following are valid values:

Background

Background jobs are generally processes that do work that was not directly requested by the user. The resource limits applied to Background jobs are intended to prevent them from disrupting the user experience.

Standard

Standard jobs are equivalent to no ProcessType being set.

Adaptive

Adaptive jobs move between the Background and Interactive classifications based on activity over XPC connections. See xpc_transaction_begin(3) for details.

Interactive

Interactive jobs run with the same resource limitations as apps, that is to say, none. Interactive jobs are critical to maintaining a responsive user experience, and this key should only be -used if an app’s ability to be responsive depends on it, and cannot be made Adaptive.

Type: -null or one of “Background”, “Standard”, “Adaptive”, “Interactive”

Default: -null

Example: -"Background"

Declared by:

+
+used if an app’s ability to be responsive depends on it, and cannot be made Adaptive.

+ +

Type: +null or one of “Background”, “Standard”, “Adaptive”, “Interactive”

+ +

Default: +null

+ +

Example: +"Background"

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Program

This key maps to the first argument of execvp(3). If this key is missing, then the first element of + +

+
+
+ + launchd.agents.<name>.config.Program + + +
+
+

This key maps to the first argument of execvp(3). If this key is missing, then the first element of the array of strings provided to the ProgramArguments will be used instead. This key is required in -the absence of the ProgramArguments key.

Type: -null or path

Default: -null

Declared by:

+
+the absence of the ProgramArguments key.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.ProgramArguments

This key maps to the second argument of execvp(3). This key is required in the absence of the Program -key. Please note: many people are confused by this key. Please read execvp(3) very carefully!

Type: -null or (list of string)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.ProgramArguments + + +
+
+

This key maps to the second argument of execvp(3). This key is required in the absence of the Program +key. Please note: many people are confused by this key. Please read execvp(3) very carefully!

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.QueueDirectories

Much like the WatchPaths option, this key will watch the paths for modifications. The difference being -that the job will only be started if the path is a directory and the directory is not empty.

Type: -null or (list of string)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.QueueDirectories + + +
+
+

Much like the WatchPaths option, this key will watch the paths for modifications. The difference being +that the job will only be started if the path is a directory and the directory is not empty.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.RootDirectory

This optional key is used to specify a directory to chroot(2) to before running the job.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.RootDirectory + + +
+
+

This optional key is used to specify a directory to chroot(2) to before running the job.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.RunAtLoad

This optional key is used to control whether your job is launched once at the time the job is loaded. -The default is false.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.RunAtLoad + + +
+
+

This optional key is used to control whether your job is launched once at the time the job is loaded. +The default is false.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets

This optional key is used to specify launch on demand sockets that can be used to let launchd know when + +

+
+
+ + launchd.agents.<name>.config.Sockets + + +
+
+

This optional key is used to specify launch on demand sockets that can be used to let launchd know when to run the job. The job must check-in to get a copy of the file descriptors using APIs outlined in launch(3). The keys of the top level Sockets dictionary can be anything. They are meant for the application developer to use to differentiate which descriptors correspond to which application level protocols (e.g. http vs. ftp vs. DNS…). At check-in time, the value of each Sockets dictionary key will be an array of descriptors. Daemon/Agent writers should consider all descriptors of a given key to be to be effectively equivalent, even though each file descriptor likely represents a different networking -protocol which conforms to the criteria specified in the job configuration file.

The parameters below are used as inputs to call getaddrinfo(3).

Type: -null or (attribute set of (submodule))

Default: -null

Declared by:

+
+protocol which conforms to the criteria specified in the job configuration file.

The parameters below are used as inputs to call getaddrinfo(3).

+ +

Type: +null or (attribute set of (submodule))

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.Bonjour

This optional key can be used to request that the service be registered with the -mDNSResponder(8). If the value is boolean, the service name is inferred from the SockServiceName.

Type: -null or boolean or list of string

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.Bonjour + + +
+
+

This optional key can be used to request that the service be registered with the +mDNSResponder(8). If the value is boolean, the service name is inferred from the SockServiceName.

+ +

Type: +null or boolean or list of string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.MulticastGroup

This optional key can be used to request that the datagram socket join a multicast group. If the + +

+
+
+ + launchd.agents.<name>.config.Sockets.<name>.MulticastGroup + + +
+
+

This optional key can be used to request that the datagram socket join a multicast group. If the value is a hostname, then getaddrinfo(3) will be used to join the correct multicast address for a given socket family. If an explicit IPv4 or IPv6 address is given, it is required that the SockFamily -family also be set, otherwise the results are undefined.

Type: -null or string

Default: -null

Declared by:

+
+family also be set, otherwise the results are undefined.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SecureSocketWithKey

This optional key is a variant of SockPathName. Instead of binding to a known path, a securely + +

+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SecureSocketWithKey + + +
+
+

This optional key is a variant of SockPathName. Instead of binding to a known path, a securely generated socket is created and the path is assigned to the environment variable that is inherited -by all jobs spawned by launchd.

Type: -null or string

Default: -null

Declared by:

+
+by all jobs spawned by launchd.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockFamily

This optional key can be used to specifically request that “IPv4” or “IPv6” socket(s) be created.

Type: -null or one of “IPv4”, “IPv6”

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockFamily + + +
+
+

This optional key can be used to specifically request that “IPv4” or “IPv6” socket(s) be created.

+ +

Type: +null or one of “IPv4”, “IPv6”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockNodeName

This optional key specifies the node to connect(2) or bind(2) to.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockNodeName + + +
+
+

This optional key specifies the node to connect(2) or bind(2) to.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockPassive

This optional key specifies whether listen(2) or connect(2) should be called on the created file -descriptor. The default is true (“to listen”).

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockPassive + + +
+
+

This optional key specifies whether listen(2) or connect(2) should be called on the created file +descriptor. The default is true (“to listen”).

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockPathMode

This optional key specifies the mode of the socket. Known bug: Property lists don’t support -octal, so please convert the value to decimal.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockPathMode + + +
+
+

This optional key specifies the mode of the socket. Known bug: Property lists don’t support +octal, so please convert the value to decimal.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockPathName

This optional key implies SockFamily is set to “Unix”. It specifies the path to connect(2) or -bind(2) to.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockPathName + + +
+
+

This optional key implies SockFamily is set to “Unix”. It specifies the path to connect(2) or +bind(2) to.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockProtocol

This optional key specifies the protocol to be passed to socket(2). The only value understood by -this key at the moment is “TCP”.

Type: -null or value “TCP” (singular enum)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockProtocol + + +
+
+

This optional key specifies the protocol to be passed to socket(2). The only value understood by +this key at the moment is “TCP”.

+ +

Type: +null or value “TCP” (singular enum)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockServiceName

This optional key specifies the service on the node to connect(2) or bind(2) to.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockServiceName + + +
+
+

This optional key specifies the service on the node to connect(2) or bind(2) to.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Sockets.<name>.SockType

This optional key tells launchctl what type of socket to create. The default is “stream” and -other valid values for this key are “dgram” and “seqpacket” respectively.

Type: -null or one of “stream”, “dgram”, “seqpacket”

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Sockets.<name>.SockType + + +
+
+

This optional key tells launchctl what type of socket to create. The default is “stream” and +other valid values for this key are “dgram” and “seqpacket” respectively.

+ +

Type: +null or one of “stream”, “dgram”, “seqpacket”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits

Resource limits to be imposed on the job. These adjust variables set with setrlimit(2). The following -keys apply:

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.SoftResourceLimits + + +
+
+

Resource limits to be imposed on the job. These adjust variables set with setrlimit(2). The following +keys apply:

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.CPU

The maximum amount of cpu time (in seconds) to be used by each process.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.CPU + + +
+
+

The maximum amount of cpu time (in seconds) to be used by each process.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.Core

The largest size (in bytes) core file that may be created.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.Core + + +
+
+

The largest size (in bytes) core file that may be created.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.Data

The maximum size (in bytes) of the data segment for a process; this defines how far a program may -extend its break with the sbrk(2) system call.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.Data + + +
+
+

The maximum size (in bytes) of the data segment for a process; this defines how far a program may +extend its break with the sbrk(2) system call.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.FileSize

The largest size (in bytes) file that may be created.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.FileSize + + +
+
+

The largest size (in bytes) file that may be created.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.MemoryLock

The maximum size (in bytes) which a process may lock into memory using the mlock(2) function.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.MemoryLock + + +
+
+

The maximum size (in bytes) which a process may lock into memory using the mlock(2) function.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.NumberOfFiles

The maximum number of open files for this process. Setting this value in a system wide daemon + +

+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.NumberOfFiles + + +
+
+

The maximum number of open files for this process. Setting this value in a system wide daemon will set the sysctl(3) kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResourceLimits) -value in addition to the setrlimit(2) values.

Type: -null or signed integer

Default: -null

Declared by:

+
+value in addition to the setrlimit(2) values.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.NumberOfProcesses

The maximum number of simultaneous processes for this user id. Setting this value in a system + +

+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.NumberOfProcesses + + +
+
+

The maximum number of simultaneous processes for this user id. Setting this value in a system wide daemon will set the sysctl(3) kern.maxproc (SoftResourceLimits) or kern.maxprocperuid -(HardResourceLimits) value in addition to the setrlimit(2) values.

Type: -null or signed integer

Default: -null

Declared by:

+
+(HardResourceLimits) value in addition to the setrlimit(2) values.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.ResidentSetSize

The maximum size (in bytes) to which a process’s resident set size may grow. This imposes a + +

+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.ResidentSetSize + + +
+
+

The maximum size (in bytes) to which a process’s resident set size may grow. This imposes a limit on the amount of physical memory to be given to a process; if memory is tight, the system -will prefer to take memory from processes that are exceeding their declared resident set size.

Type: -null or signed integer

Default: -null

Declared by:

+
+will prefer to take memory from processes that are exceeding their declared resident set size.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.SoftResourceLimits.Stack

The maximum size (in bytes) of the stack segment for a process; this defines how far a program’s -stack segment may be extended. Stack extension is performed automatically by the system.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.SoftResourceLimits.Stack + + +
+
+

The maximum size (in bytes) of the stack segment for a process; this defines how far a program’s +stack segment may be extended. Stack extension is performed automatically by the system.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StandardErrorPath

This optional key specifies what file should be used for data being sent to stderr when using stdio(3).

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StandardErrorPath + + +
+
+

This optional key specifies what file should be used for data being sent to stderr when using stdio(3).

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StandardInPath

This optional key specifies what file should be used for data being supplied to stdin when using -stdio(3).

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StandardInPath + + +
+
+

This optional key specifies what file should be used for data being supplied to stdin when using +stdio(3).

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StandardOutPath

This optional key specifies what file should be used for data being sent to stdout when using stdio(3).

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StandardOutPath + + +
+
+

This optional key specifies what file should be used for data being sent to stdout when using stdio(3).

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartCalendarInterval

This optional key causes the job to be started every calendar interval as specified. Missing arguments + +

+
+
+ + launchd.agents.<name>.config.StartCalendarInterval + + +
+
+

This optional key causes the job to be started every calendar interval as specified. Missing arguments are considered to be wildcard. The semantics are much like crontab(5). Unlike cron which skips job invocations when the computer is asleep, launchd will start the job the next time the computer wakes up. If multiple intervals transpire before the computer is woken, those events will be coalesced into -one event upon wake from sleep.

Type: -null or (list of (submodule))

Default: -null

Example:

{
+one event upon wake from sleep.

+ +

Type: +null or (list of (submodule))

+ +

Default: +null

+ +

Example:

{
   Hour = 2;
   Minute = 30;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartCalendarInterval.*.Day

The day on which this job will be run.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StartCalendarInterval.*.Day + + +
+
+

The day on which this job will be run.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartCalendarInterval.*.Hour

The hour on which this job will be run.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StartCalendarInterval.*.Hour + + +
+
+

The hour on which this job will be run.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartCalendarInterval.*.Minute

The minute on which this job will be run.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StartCalendarInterval.*.Minute + + +
+
+

The minute on which this job will be run.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartCalendarInterval.*.Month

The month on which this job will be run.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StartCalendarInterval.*.Month + + +
+
+

The month on which this job will be run.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartCalendarInterval.*.Weekday

The weekday on which this job will be run (0 and 7 are Sunday).

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StartCalendarInterval.*.Weekday + + +
+
+

The weekday on which this job will be run (0 and 7 are Sunday).

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartInterval

This optional key causes the job to be started every N seconds. If the system is asleep, the job will + +

+
+
+ + launchd.agents.<name>.config.StartInterval + + +
+
+

This optional key causes the job to be started every N seconds. If the system is asleep, the job will be started the next time the computer wakes up. If multiple intervals transpire before the computer is -woken, those events will be coalesced into one event upon wake from sleep.

Type: -null or signed integer

Default: -null

Declared by:

+
+woken, those events will be coalesced into one event upon wake from sleep.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.StartOnMount

This optional key causes the job to be started every time a filesystem is mounted.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.StartOnMount + + +
+
+

This optional key causes the job to be started every time a filesystem is mounted.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.ThrottleInterval

This key lets one override the default throttling policy imposed on jobs by launchd. The value is in + +

+
+
+ + launchd.agents.<name>.config.ThrottleInterval + + +
+
+

This key lets one override the default throttling policy imposed on jobs by launchd. The value is in seconds, and by default, jobs will not be spawned more than once every 10 seconds. The principle behind this is that jobs should linger around just in case they are needed again in the near future. This not only reduces the latency of responses, but it encourages developers to amortize the cost of -program invocation.

Type: -null or signed integer

Default: -null

Declared by:

+
+program invocation.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.TimeOut

The recommended idle time out (in seconds) to pass to the job. If no value is specified, a default time -out will be supplied by launchd for use by the job at check in time.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.TimeOut + + +
+
+

The recommended idle time out (in seconds) to pass to the job. If no value is specified, a default time +out will be supplied by launchd for use by the job at check in time.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.Umask

This optional key specifies what value should be passed to umask(2) before running the job. Known bug: -Property lists don’t support octal, so please convert the value to decimal.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.Umask + + +
+
+

This optional key specifies what value should be passed to umask(2) before running the job. Known bug: +Property lists don’t support octal, so please convert the value to decimal.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.UserName

This optional key specifies the user to run the job as. This key is only applicable when launchd is -running as root.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.UserName + + +
+
+

This optional key specifies the user to run the job as. This key is only applicable when launchd is +running as root.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.WaitForDebugger

This optional key specifies that launchd should instruct the kernel to have the job wait for a debugger -to attach before any code in the job is executed.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.WaitForDebugger + + +
+
+

This optional key specifies that launchd should instruct the kernel to have the job wait for a debugger +to attach before any code in the job is executed.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.WatchPaths

This optional key causes the job to be started if any one of the listed paths are modified.

Type: -null or (list of path)

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.WatchPaths + + +
+
+

This optional key causes the job to be started if any one of the listed paths are modified.

+ +

Type: +null or (list of path)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.WorkingDirectory

This optional key is used to specify a directory to chdir(2) to before running the job.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + launchd.agents.<name>.config.WorkingDirectory + + +
+
+

This optional key is used to specify a directory to chdir(2) to before running the job.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.inetdCompatibility

The presence of this key specifies that the daemon expects to be run as if it were launched from inetd.

Type: -null or (submodule)

Default: -null

Example:

{
+
+
+
+
+ + launchd.agents.<name>.config.inetdCompatibility + + +
+
+

The presence of this key specifies that the daemon expects to be run as if it were launched from inetd.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
   Wait = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
launchd.agents.<name>.config.inetdCompatibility.Wait

This flag corresponds to the “wait” or “nowait” option of inetd. If true, then the listening + +

+
+
+ + launchd.agents.<name>.config.inetdCompatibility.Wait + + +
+
+

This flag corresponds to the “wait” or “nowait” option of inetd. If true, then the listening socket is passed via the standard in/out/error file descriptors. If false, then accept(2) is -called on behalf of the job, and the result is passed via the standard in/out/error descriptors.

Type: -null or boolean or string

Default: -null

Declared by:

+
+called on behalf of the job, and the result is passed via the standard in/out/error descriptors.

+ +

Type: +null or boolean or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/launchd/default.nix> -
lib

This option allows modules to define helper functions, -constants, etc.

Type: -attribute set of (attribute set)

Default: -{ }

Declared by:

+
+ +
+
+
+ + lib + + +
+
+

This option allows modules to define helper functions, +constants, etc.

+ +

Type: +attribute set of (attribute set)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/misc/lib.nix> -
manual.html.enable

Whether to install the HTML manual. This also installs the + +

+
+
+ + manual.html.enable + + +
+
+

Whether to install the HTML manual. This also installs the home-manager-help tool, which opens a local -copy of the Home Manager manual in the system web browser.

Type: -boolean

Default: -false

Declared by:

+
+copy of the Home Manager manual in the system web browser.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/manual.nix> -
manual.json.enable

Whether to install a JSON formatted list of all Home Manager + +

+
+
+ + manual.json.enable + + +
+
+

Whether to install a JSON formatted list of all Home Manager options. This can be located at <profile directory>/share/doc/home-manager/options.json, and may be used for navigating definitions, auto-completing, -and other miscellaneous tasks.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+and other miscellaneous tasks.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/manual.nix> -
manual.manpages.enable

Whether to install the configuration manual page. The manual can + +

+
+
+ + manual.manpages.enable + + +
+
+

Whether to install the configuration manual page. The manual can be reached by man home-configuration.nix.

When looking at the manual page pretend that all references to NixOS stuff are actually references to Home Manager stuff. -Thanks!

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+Thanks!

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/manual.nix> -
news.display

How unread and relevant news should be presented when + +

+
+
+ + news.display + + +
+
+

How unread and relevant news should be presented when running home-manager build and home-manager switch.

The options are

silent

Do not print anything during build or switch. The home-manager news command still works for viewing the entries.

notify

The number of unread and relevant news entries will be -printed to standard output. The home-manager news command can later be used to view the entries.

show

A pager showing unread news entries is opened.

Type: -one of “silent”, “notify”, “show”

Default: -"notify"

Declared by:

+
+printed to standard output. The home-manager news command can later be used to view the entries.

show

A pager showing unread news entries is opened.

+ +

Type: +one of “silent”, “notify”, “show”

+ +

Default: +"notify"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/news.nix> -
nix.package

The Nix package that the configuration should be generated for.

Type: -null or package

Default: -null

Example: -pkgs.nix

Declared by:

+
+ +
+
+
+ + nix.package + + +
+
+

The Nix package that the configuration should be generated for.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example: +pkgs.nix

+ +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.checkConfig

If enabled (the default), checks for data type mismatches and that Nix -can parse the generated nix.conf.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + nix.checkConfig + + +
+
+

If enabled (the default), checks for data type mismatches and that Nix +can parse the generated nix.conf.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.extraOptions

Additional text appended to nix.conf.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + nix.extraOptions + + +
+
+

Additional text appended to nix.conf.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   keep-outputs = true
   keep-derivations = true
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.registry

User level flake registry.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + nix.registry + + +
+
+

User level flake registry.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.registry.<name>.exact

Whether the from reference needs to match exactly. If set, + +

+
+
+ + nix.registry.<name>.exact + + +
+
+

Whether the from reference needs to match exactly. If set, a from reference like nixpkgs does not -match with a reference like nixpkgs/nixos-20.03.

Type: -boolean

Default: -true

Declared by:

+
+match with a reference like nixpkgs/nixos-20.03.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.registry.<name>.flake

The flake input to which from> is to be rewritten.

Type: -null or (attribute set)

Default: -null

Example: -nixpkgs

Declared by:

+
+ +
+
+
+ + nix.registry.<name>.flake + + +
+
+

The flake input to which from> is to be rewritten.

+ +

Type: +null or (attribute set)

+ +

Default: +null

+ +

Example: +nixpkgs

+ +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.registry.<name>.from

The flake reference to be rewritten.

Type: -attribute set of (string or signed integer or boolean or package)

Example:

{
-  id = "nixpkgs";
-  type = "indirect";
+
+
+
+
+ + nix.registry.<name>.from + + +
+
+

The flake reference to be rewritten.

+ +

Type: +attribute set of (string or signed integer or boolean or package)

+ +

Example:

{
+  id = "nixpkgs";
+  type = "indirect";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.registry.<name>.to

The flake reference to which from> is to be rewritten.

Type: -attribute set of (string or signed integer or boolean or package)

Example:

{
-  owner = "my-org";
-  repo = "my-nixpkgs";
-  type = "github";
+
+
+
+
+ + nix.registry.<name>.to + + +
+
+

The flake reference to which from> is to be rewritten.

+ +

Type: +attribute set of (string or signed integer or boolean or package)

+ +

Example:

{
+  owner = "my-org";
+  repo = "my-nixpkgs";
+  type = "github";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nix.settings

Configuration for Nix; see nix.conf(5) for available options. -The value declared here will be translated directly to the key-value pairs Nix expects.

Configuration specified in nix.extraOptions will be appended -verbatim to the resulting config file.

Type: -attribute set of (Nix config atom (null, bool, int, float, str, path or package) or list of (Nix config atom (null, bool, int, float, str, path or package)))

Default: -{ }

Example:

{
+
+
+
+
+ + nix.settings + + +
+
+

Configuration for Nix; see nix.conf(5) for available options. +The value declared here will be translated directly to the key-value pairs Nix expects.

Configuration specified in nix.extraOptions will be appended +verbatim to the resulting config file.

+ +

Type: +attribute set of (Nix config atom (null, bool, int, float, str, path or package) or list of (Nix config atom (null, bool, int, float, str, path or package)))

+ +

Default: +{ }

+ +

Example:

{
   use-sandbox = true;
   show-trace = true;
-  system-features = [ "big-parallel" "kvm" "recursive-nix" ];
+  system-features = [ "big-parallel" "kvm" "recursive-nix" ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/nix.nix> -
nixpkgs.config

The configuration of the Nix Packages collection. (For + +

+
+
+ + nixpkgs.config + + +
+
+

The configuration of the Nix Packages collection. (For details, see the Nixpkgs documentation.) It allows you to set package configuration options.

If null, then configuration is taken from the fallback location, for example, @@ -2525,16 +10941,38 @@ the fallback location, for example, configuration like when installing manually through nix-env. If you want to apply it both inside and outside Home Manager you can put it in a separate -file and include something like

  nixpkgs.config = import ./nixpkgs-config.nix;
-  xdg.configFile."nixpkgs/config.nix".source = ./nixpkgs-config.nix;
-

in your Home Manager configuration.

Type: -null or (nixpkgs config)

Default: -null

Example:

{
+file and include something like

  nixpkgs.config = import ./nixpkgs-config.nix;
+  xdg.configFile."nixpkgs/config.nix".source = ./nixpkgs-config.nix;
+

in your Home Manager configuration.

+ +

Type: +null or (nixpkgs config)

+ +

Default: +null

+ +

Example:

{
   allowBroken = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/nixpkgs.nix> -
nixpkgs.overlays

List of overlays to use with the Nix Packages collection. (For + +

+
+
+ + nixpkgs.overlays + + +
+
+

List of overlays to use with the Nix Packages collection. (For details, see the Nixpkgs documentation.) It allows you to override packages globally. This is a function that takes as an argument the original Nixpkgs. The @@ -2544,9 +10982,15 @@ the fallback location, for example, ~/.config/nixpkgs/overlays.

Like nixpkgs.config this option only applies within the Home Manager configuration. See nixpkgs.config for a suggested setup that -works both internally and externally.

Type: -null or (list of (nixpkgs overlay))

Default: -null

Example:

[
+works both internally and externally.

+ +

Type: +null or (list of (nixpkgs overlay))

+ +

Default: +null

+ +

Example:

[
   (final: prev: {
     openssh = prev.openssh.override {
       hpnSupport = true;
@@ -2556,98 +11000,400 @@ null or (list of (nixpkgs overlay))

Default:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/nixpkgs.nix> -
pam.sessionVariables

Environment variables that will be set for the PAM session. + +

+
+
+ + pam.sessionVariables + + +
+
+

Environment variables that will be set for the PAM session. The variable values must be as described in pam_env.conf(5).

Note, this option will become deprecated in the future and its use is -therefore discouraged.

Type: -attribute set

Default: -{ }

Example:

{
-  EDITOR = "vim";
+therefore discouraged.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example:

{
+  EDITOR = "vim";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/pam.nix> -
pam.yubico.authorizedYubiKeys.ids

List of authorized YubiKey token IDs. Refer to -https://developers.yubico.com/yubico-pam -for details on how to obtain the token ID of a YubiKey.

Type: -list of string of length 12

Default: -[ ]

Declared by:

+
+ +
+
+
+ + pam.yubico.authorizedYubiKeys.ids + + +
+
+

List of authorized YubiKey token IDs. Refer to +https://developers.yubico.com/yubico-pam +for details on how to obtain the token ID of a YubiKey.

+ +

Type: +list of string of length 12

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/misc/pam.nix> -
pam.yubico.authorizedYubiKeys.path

File path to write the authorized YubiKeys, -relative to HOME.

Type: -string

Default: -".yubico/authorized_yubikeys"

Declared by:

+
+ +
+
+
+ + pam.yubico.authorizedYubiKeys.path + + +
+
+

File path to write the authorized YubiKeys, +relative to HOME.

+ +

Type: +string

+ +

Default: +".yubico/authorized_yubikeys"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/pam.nix> -
programs.abook.enable

Whether to enable Abook.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.abook.enable + + +
+
+

Whether to enable Abook.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/abook.nix> -
programs.abook.extraConfig

Extra lines added to $HOME/.config/abook/abookrc. + +

+
+
+ + programs.abook.extraConfig + + +
+
+

Extra lines added to $HOME/.config/abook/abookrc. Available configuration options are described in the abook repository: -https://sourceforge.net/p/abook/git/ci/master/tree/sample.abookrc.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+https://sourceforge.net/p/abook/git/ci/master/tree/sample.abookrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   field pager = Pager
   view CONTACT = name, email
   set autosave=true
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/abook.nix> -
programs.aerc.enable

Whether to enable aerc.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/aerc.nix> -
programs.aerc.package

The aerc package to use.

Type: -package

Default: -pkgs.aerc

Declared by:

-<home-manager/modules/programs/aerc.nix> -
programs.aerc.extraAccounts

Extra lines added to $HOME/.config/aerc/accounts.conf.

See aerc-config(5).

Type: -strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

Default: -{ }

Example: -{ Work = { source = "maildir://~/Maildir/work"; }; }

Declared by:

-<home-manager/modules/programs/aerc.nix> -
programs.aerc.extraBinds

Extra lines added to $HOME/.config/aerc/binds.conf. -Global keybindings can be set in the global section.

See aerc-config(5).

Type: -strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

Default: -{ }

Example: -{ messages = { q = ":quit<Enter>"; }; }

Declared by:

-<home-manager/modules/programs/aerc.nix> -
programs.aerc.extraConfig

Extra lines added to $HOME/.config/aerc/aerc.conf.

See aerc-config(5).

Type: -strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

Default: -{ }

Example: -{ ui = { sort = "-r date"; }; }

Declared by:

-<home-manager/modules/programs/aerc.nix> -
programs.aerc.stylesets

Stylesets added to $HOME/.config/aerc/stylesets/.

See aerc-stylesets(7).

Type: -attribute set of ((attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)) or strings concatenated with “\n”)

Default: -{ }

Example:

{ default = { ui = { "tab.selected.reverse" = toggle; }; }; };
+
+
+
+
+ + programs.aerc.enable + + +
+
+

Whether to enable aerc.

-

Declared by:

-<home-manager/modules/programs/aerc.nix> -
programs.aerc.templates

Templates added to $HOME/.config/aerc/templates/.

See aerc-templates(7).

Type: -attribute set of strings concatenated with “\n”

Default: -{ }

Example:

{ new_message = "Hello!"; };
+

Type: +boolean

-

Declared by:

+
+

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aerc.nix> -
programs.afew.enable

Whether to enable the afew initial tagging script for Notmuch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.aerc.package + + +
+
+

The aerc package to use.

+ +

Type: +package

+ +

Default: +pkgs.aerc

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/aerc.nix> + +
+
+
+ + programs.aerc.extraAccounts + + +
+
+

Extra lines added to $HOME/.config/aerc/accounts.conf.

See aerc-config(5).

+ +

Type: +strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

+ +

Default: +{ }

+ +

Example: +{ Work = { source = "maildir://~/Maildir/work"; }; }

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/aerc.nix> + +
+
+
+ + programs.aerc.extraBinds + + +
+
+

Extra lines added to $HOME/.config/aerc/binds.conf. +Global keybindings can be set in the global section.

See aerc-config(5).

+ +

Type: +strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

+ +

Default: +{ }

+ +

Example: +{ messages = { q = ":quit<Enter>"; }; }

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/aerc.nix> + +
+
+
+ + programs.aerc.extraConfig + + +
+
+

Extra lines added to $HOME/.config/aerc/aerc.conf.

See aerc-config(5).

+ +

Type: +strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)

+ +

Default: +{ }

+ +

Example: +{ ui = { sort = "-r date"; }; }

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/aerc.nix> + +
+
+
+ + programs.aerc.stylesets + + +
+
+

Stylesets added to $HOME/.config/aerc/stylesets/.

See aerc-stylesets(7).

+ +

Type: +attribute set of ((attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)) or strings concatenated with “\n”)

+ +

Default: +{ }

+ +

Example:

{ default = { ui = { "tab.selected.reverse" = toggle; }; }; };
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/aerc.nix> + +
+
+
+ + programs.aerc.templates + + +
+
+

Templates added to $HOME/.config/aerc/templates/.

See aerc-templates(7).

+ +

Type: +attribute set of strings concatenated with “\n”

+ +

Default: +{ }

+ +

Example:

{ new_message = "Hello!"; };
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/aerc.nix> + +
+
+
+ + programs.afew.enable + + +
+
+

Whether to enable the afew initial tagging script for Notmuch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/afew.nix> -
programs.afew.extraConfig

Extra lines added to afew configuration file. Available + +

+
+
+ + programs.afew.extraConfig + + +
+
+

Extra lines added to afew configuration file. Available configuration options are described in the afew manual: -https://afew.readthedocs.io/en/latest/configuration.html.

Type: -strings concatenated with “\n”

Default:

''
+https://afew.readthedocs.io/en/latest/configuration.html.

+ +

Type: +strings concatenated with “\n”

+ +

Default:

''
   [SpamFilter]
   [KillThreadsFilter]
   [ListMailsFilter]
   [ArchiveSentMailsFilter]
   [InboxFilter]
-''
-

Example:

''
+''
+
+ +

Example:

''
   [SpamFilter]
   
   [Filter.0]
@@ -2656,248 +11402,1080 @@ strings concatenated with “\n”

Default:

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/afew.nix> -
programs.alacritty.enable

Whether to enable Alacritty.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.alacritty.enable + + +
+
+

Whether to enable Alacritty.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alacritty.nix> -
programs.alacritty.package

The Alacritty package to install.

Type: -package

Default: -pkgs.alacritty

Declared by:

+
+ +
+
+
+ + programs.alacritty.package + + +
+
+

The Alacritty package to install.

+ +

Type: +package

+ +

Default: +pkgs.alacritty

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alacritty.nix> -
programs.alacritty.settings

Configuration written to + +

+
+
+ + programs.alacritty.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/alacritty/alacritty.yml. See -https://github.com/alacritty/alacritty/blob/master/alacritty.yml -for the default configuration.

Type: -YAML value

Default: -{ }

Example:

{
+https://github.com/alacritty/alacritty/blob/master/alacritty.yml
+for the default configuration.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   window.dimensions = {
     lines = 3;
     columns = 200;
   };
   key_bindings = [
     {
-      key = "K";
-      mods = "Control";
-      chars = "\\x0c";
+      key = "K";
+      mods = "Control";
+      chars = "\\x0c";
     }
   ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/alacritty.nix> -
programs.alot.enable

Whether to enable the Alot mail user agent. Alot uses the + +

+
+
+ + programs.alot.enable + + +
+
+

Whether to enable the Alot mail user agent. Alot uses the Notmuch email system and will therefore be automatically -enabled for each email account that is managed by Notmuch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+enabled for each email account that is managed by Notmuch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.bindings

Keybindings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.bindings + + +
+
+

Keybindings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.bindings.bufferlist

Bufferlist mode keybindings.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.bindings.bufferlist + + +
+
+

Bufferlist mode keybindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.bindings.envelope

Envelope mode keybindings.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.bindings.envelope + + +
+
+

Envelope mode keybindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.bindings.global

Global keybindings.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.bindings.global + + +
+
+

Global keybindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.bindings.search

Search mode keybindings.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.bindings.search + + +
+
+

Search mode keybindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.bindings.taglist

Taglist mode keybindings.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.bindings.taglist + + +
+
+

Taglist mode keybindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.bindings.thread

Thread mode keybindings.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.bindings.thread + + +
+
+

Thread mode keybindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.extraConfig

Extra lines added to alot configuration file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.alot.extraConfig + + +
+
+

Extra lines added to alot configuration file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.hooks

Content of the hooks file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.alot.hooks + + +
+
+

Content of the hooks file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.settings

Configuration options added to alot configuration file.

Type: -attribute set of (string or signed integer or boolean or floating point number)

Default:

{
+
+
+
+
+ + programs.alot.settings + + +
+
+

Configuration options added to alot configuration file.

+ +

Type: +attribute set of (string or signed integer or boolean or floating point number)

+ +

Default:

{
   auto_remove_unread = true;
   handle_mouse = true;
-  initial_command = "search tag:inbox AND NOT tag:killed";
+  initial_command = "search tag:inbox AND NOT tag:killed";
   prefer_plaintext = true;
 }
-

Example:

{
+
+ +

Example:

{
   auto_remove_unread = true;
   ask_subject = false;
   thread_indent_replies = 2;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.tags

How to display the tags.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.alot.tags + + +
+
+

How to display the tags.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.tags.<name>.focus

How to display the tag when focused.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.alot.tags.<name>.focus + + +
+
+

How to display the tag when focused.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.tags.<name>.normal

How to display the tag when unfocused. -See https://alot.readthedocs.io/en/latest/configuration/theming.html#tagstring-formatting.

Type: -null or string

Default: -null

Example: -"'','', 'white','light red', 'white','#d66'"

Declared by:

+
+ +
+
+
+ + programs.alot.tags.<name>.normal + + +
+
+

How to display the tag when unfocused. +See https://alot.readthedocs.io/en/latest/configuration/theming.html#tagstring-formatting.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"'','', 'white','light red', 'white','#d66'"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.tags.<name>.translated

Fixed string representation for this tag. The tag can be + +

+
+
+ + programs.alot.tags.<name>.translated + + +
+
+

Fixed string representation for this tag. The tag can be hidden from view, if the key translated is set to -"", the empty string.

Type: -null or string

Declared by:

+
+"", the empty string.

+ +

Type: +null or string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.alot.tags.<name>.translation

A pair of strings that define a regular substitution to + +

+
+
+ + programs.alot.tags.<name>.translation + + +
+
+

A pair of strings that define a regular substitution to compute the string representation on the fly using -re.sub.

Type: -null or string

Default: -null

Declared by:

+
+re.sub.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/alot.nix> -
programs.aria2.enable

Whether to enable aria2.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.aria2.enable + + +
+
+

Whether to enable aria2.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aria2.nix> -
programs.aria2.extraConfig

Extra lines added to aria2.conf file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.aria2.extraConfig + + +
+
+

Extra lines added to aria2.conf file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/aria2.nix> -
programs.aria2.settings

Options to add to aria2.conf file. + +

+
+
+ + programs.aria2.settings + + +
+
+

Options to add to aria2.conf file. See aria2c(1) -for options.

Type: -attribute set of (boolean or floating point number or signed integer or string)

Default: -{ }

Example:

{
+for options.

+ +

Type: +attribute set of (boolean or floating point number or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
   listen-port = 60000;
   dht-listen-port = 60000;
   seed-ratio = 1.0;
-  max-upload-limit = "50K";
+  max-upload-limit = "50K";
   ftp-pasv = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/aria2.nix> -
programs.astroid.enable

Whether to enable Astroid.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.astroid.enable + + +
+
+

Whether to enable Astroid.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/astroid.nix> -
programs.astroid.externalEditor

You can use the following variables:

%1

file name

%2

server name

%3

socket ID

See Customizing editor -on the Astroid wiki.

Type: -null or string

Default: -null

Example: -"nvim-qt -- -c 'set ft=mail' '+set fileencoding=utf-8' '+set ff=unix' '+set enc=utf-8' '+set fo+=w' %1"

Declared by:

+
+ +
+
+
+ + programs.astroid.externalEditor + + +
+
+

You can use the following variables:

%1

file name

%2

server name

%3

socket ID

See Customizing editor +on the Astroid wiki.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"nvim-qt -- -c 'set ft=mail' '+set fileencoding=utf-8' '+set ff=unix' '+set enc=utf-8' '+set fo+=w' %1"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/astroid.nix> -
programs.astroid.extraConfig

JSON config that will override the default Astroid configuration.

Type: -JSON value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.astroid.extraConfig + + +
+
+

JSON config that will override the default Astroid configuration.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
   poll.interval = 0;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/astroid.nix> -
programs.astroid.pollScript

Script to run to fetch/update mails.

Type: -string

Default: -""

Example: -"mbsync gmail"

Declared by:

+
+ +
+
+
+ + programs.astroid.pollScript + + +
+
+

Script to run to fetch/update mails.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"mbsync gmail"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/astroid.nix> -
programs.atuin.enable

Whether to enable atuin.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.atuin.enable + + +
+
+

Whether to enable atuin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.atuin.enableBashIntegration

Whether to enable Atuin’s Bash integration. This will bind -ctrl-r to open the Atuin history.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.atuin.enableBashIntegration + + +
+
+

Whether to enable Atuin’s Bash integration. This will bind +ctrl-r to open the Atuin history.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.atuin.enableFishIntegration

Whether to enable Atuin’s Fish integration.

If enabled, this will bind the up-arrow key to open the Atuin history.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.atuin.enableFishIntegration + + +
+
+

Whether to enable Atuin’s Fish integration.

If enabled, this will bind the up-arrow key to open the Atuin history.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.atuin.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.atuin.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.atuin.enableZshIntegration

Whether to enable Atuin’s Zsh integration.

If enabled, this will bind ctrl-r and the up-arrow -key to open the Atuin history.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.atuin.enableZshIntegration + + +
+
+

Whether to enable Atuin’s Zsh integration.

If enabled, this will bind ctrl-r and the up-arrow +key to open the Atuin history.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.atuin.package

The package to use for atuin.

Type: -package

Default: -pkgs.atuin

Declared by:

+
+ +
+
+
+ + programs.atuin.package + + +
+
+

The package to use for atuin.

+ +

Type: +package

+ +

Default: +pkgs.atuin

+ +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.atuin.flags

Flags to append to the shell hook.

Type: -list of string

Default: -[ ]

Example:

[
-  "--disable-up-arrow"
-  "--disable-ctrl-r"
+
+
+
+
+ + programs.atuin.flags + + +
+
+

Flags to append to the shell hook.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--disable-up-arrow"
+  "--disable-ctrl-r"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.atuin.settings

Configuration written to -$XDG_CONFIG_HOME/atuin/config.toml.

See https://atuin.sh/docs/config/ for the full list -of options.

Type: -Atuin configuration

Default: -{ }

Example:

{
+
+
+
+
+ + programs.atuin.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/atuin/config.toml.

See https://atuin.sh/docs/config/ for the full list +of options.

+ +

Type: +Atuin configuration

+ +

Default: +{ }

+ +

Example:

{
   auto_sync = true;
-  sync_frequency = "5m";
-  sync_address = "https://api.atuin.sh";
-  search_mode = "prefix";
+  sync_frequency = "5m";
+  sync_address = "https://api.atuin.sh";
+  search_mode = "prefix";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/atuin.nix> -
programs.autojump.enable

Whether to enable autojump.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.autojump.enable + + +
+
+

Whether to enable autojump.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autojump.nix> -
programs.autojump.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.autojump.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autojump.nix> -
programs.autojump.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.autojump.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autojump.nix> -
programs.autojump.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.autojump.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autojump.nix> -
programs.autorandr.enable

Whether to enable Autorandr.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.autorandr.enable + + +
+
+

Whether to enable Autorandr.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.hooks

Global hook scripts

Type: -submodule

Default: -{ }

Example:

{
+
+
+
+
+ + programs.autorandr.hooks + + +
+
+

Global hook scripts

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Example:

{
   postswitch = {
-    "notify-i3" = "${pkgs.i3}/bin/i3-msg restart";
-    "change-background" = readFile ./change-background.sh;
-    "change-dpi" = ''
-      case "$AUTORANDR_CURRENT_PROFILE" in
+    "notify-i3" = "${pkgs.i3}/bin/i3-msg restart";
+    "change-background" = readFile ./change-background.sh;
+    "change-dpi" = ''
+      case "$AUTORANDR_CURRENT_PROFILE" in
         default)
           DPI=120
           ;;
@@ -2908,36 +12486,118 @@ submodule

Default: DPI=144 ;; *) - echo "Unknown profile: $AUTORANDR_CURRENT_PROFILE" + echo "Unknown profile: $AUTORANDR_CURRENT_PROFILE" exit 1 esac - echo "Xft.dpi: $DPI" | ${pkgs.xorg.xrdb}/bin/xrdb -merge - '' + echo "Xft.dpi: $DPI" | ${pkgs.xorg.xrdb}/bin/xrdb -merge + '' }; } -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.hooks.postswitch

Postswitch hook executed after mode switch.

Type: -attribute set of strings concatenated with “\n”

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.autorandr.hooks.postswitch + + +
+
+

Postswitch hook executed after mode switch.

+ +

Type: +attribute set of strings concatenated with “\n”

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.hooks.predetect

Predetect hook executed before autorandr attempts to run xrandr.

Type: -attribute set of strings concatenated with “\n”

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.autorandr.hooks.predetect + + +
+
+

Predetect hook executed before autorandr attempts to run xrandr.

+ +

Type: +attribute set of strings concatenated with “\n”

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.hooks.preswitch

Preswitch hook executed before mode switch.

Type: -attribute set of strings concatenated with “\n”

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.autorandr.hooks.preswitch + + +
+
+

Preswitch hook executed before mode switch.

+ +

Type: +attribute set of strings concatenated with “\n”

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles

Autorandr profiles specification.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
-  "work" = {
+
+
+
+
+ + programs.autorandr.profiles + + +
+
+

Autorandr profiles specification.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  "work" = {
     fingerprint = {
-      eDP1 = "<EDID>";
-      DP1 = "<EDID>";
+      eDP1 = "<EDID>";
+      DP1 = "<EDID>";
     };
     config = {
       eDP1.enable = false;
@@ -2945,1185 +12605,5037 @@ attribute set of (submodule)

Default:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config

Per output profile configuration.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config + + +
+
+

Per output profile configuration.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.enable

Whether to enable the output.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.enable + + +
+
+

Whether to enable the output.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.crtc

Output video display controller.

Type: -null or unsigned integer, meaning >=0

Default: -null

Example: -0

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.crtc + + +
+
+

Output video display controller.

+ +

Type: +null or unsigned integer, meaning >=0

+ +

Default: +null

+ +

Example: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.dpi

Output DPI configuration.

Type: -null or positive integer, meaning >0

Default: -null

Example: -96

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.dpi + + +
+
+

Output DPI configuration.

+ +

Type: +null or positive integer, meaning >0

+ +

Default: +null

+ +

Example: +96

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.filter

Interpolation method to be used for scaling the output.

Type: -null or one of “bilinear”, “nearest”

Default: -null

Example: -"nearest"

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.filter + + +
+
+

Interpolation method to be used for scaling the output.

+ +

Type: +null or one of “bilinear”, “nearest”

+ +

Default: +null

+ +

Example: +"nearest"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.gamma

Output gamma configuration.

Type: -string

Default: -""

Example: -"1.0:0.909:0.833"

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.gamma + + +
+
+

Output gamma configuration.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"1.0:0.909:0.833"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.mode

Output resolution.

Type: -string

Default: -""

Example: -"3840x2160"

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.mode + + +
+
+

Output resolution.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"3840x2160"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.position

Output position

Type: -string

Default: -""

Example: -"5760x0"

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.position + + +
+
+

Output position

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"5760x0"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.primary

Whether output should be marked as primary

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.primary + + +
+
+

Whether output should be marked as primary

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.rate

Output framerate.

Type: -string

Default: -""

Example: -"60.00"

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.rate + + +
+
+

Output framerate.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"60.00"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.rotate

Output rotate configuration.

Type: -null or one of “normal”, “left”, “right”, “inverted”

Default: -null

Example: -"left"

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.rotate + + +
+
+

Output rotate configuration.

+ +

Type: +null or one of “normal”, “left”, “right”, “inverted”

+ +

Default: +null

+ +

Example: +"left"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.scale

Output scale configuration.

Either configure by pixels or a scaling factor. When using pixel method the + +

+
+
+ + programs.autorandr.profiles.<name>.config.<name>.scale + + +
+
+

Output scale configuration.

Either configure by pixels or a scaling factor. When using pixel method the xrandr(1) option --scale-from will be used; when using factor method the option --scale will be used.

This option is a shortcut version of the transform option and they are mutually -exclusive.

Type: -null or (submodule)

Default: -null

Example:

{
+exclusive.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
   x = 1.25;
   y = 1.25;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.scale.method

Output scaling method.

Type: -one of “factor”, “pixel”

Default: -"factor"

Example: -"pixel"

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.scale.method + + +
+
+

Output scaling method.

+ +

Type: +one of “factor”, “pixel”

+ +

Default: +"factor"

+ +

Example: +"pixel"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.scale.x

Horizontal scaling factor/pixels.

Type: -floating point number or positive integer, meaning >0

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.scale.x + + +
+
+

Horizontal scaling factor/pixels.

+ +

Type: +floating point number or positive integer, meaning >0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.scale.y

Vertical scaling factor/pixels.

Type: -floating point number or positive integer, meaning >0

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.config.<name>.scale.y + + +
+
+

Vertical scaling factor/pixels.

+ +

Type: +floating point number or positive integer, meaning >0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.config.<name>.transform

Refer to + +

+
+
+ + programs.autorandr.profiles.<name>.config.<name>.transform + + +
+
+

Refer to xrandr(1) -for the documentation of the transform matrix.

Type: -null or (3×3 matrix of floating point numbers)

Default: -null

Example:

[
+for the documentation of the transform matrix.

+ +

Type: +null or (3×3 matrix of floating point numbers)

+ +

Default: +null

+ +

Example:

[
   [ 0.6 0.0 0.0 ]
   [ 0.0 0.6 0.0 ]
   [ 0.0 0.0 1.0 ]
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.fingerprint

Output name to EDID mapping. -Use autorandr --fingerprint to get current setup values.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.fingerprint + + +
+
+

Output name to EDID mapping. +Use autorandr --fingerprint to get current setup values.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.hooks

Profile hook scripts.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.hooks + + +
+
+

Profile hook scripts.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.hooks.postswitch

Postswitch hook executed after mode switch.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.hooks.postswitch + + +
+
+

Postswitch hook executed after mode switch.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.hooks.predetect

Predetect hook executed before autorandr attempts to run xrandr.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.hooks.predetect + + +
+
+

Predetect hook executed before autorandr attempts to run xrandr.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.autorandr.profiles.<name>.hooks.preswitch

Preswitch hook executed before mode switch.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.autorandr.profiles.<name>.hooks.preswitch + + +
+
+

Preswitch hook executed before mode switch.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/autorandr.nix> -
programs.awscli.enable

Whether to enable AWS CLI tool.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.awscli.enable + + +
+
+

Whether to enable AWS CLI tool.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/awscli.nix> -
programs.awscli.package

Package providing aws.

Type: -package

Default: -pkgs.awscli2

Declared by:

+
+ +
+
+
+ + programs.awscli.package + + +
+
+

Package providing aws.

+ +

Type: +package

+ +

Default: +pkgs.awscli2

+ +

Declared by:

+ +
+ <home-manager/modules/programs/awscli.nix> -
programs.awscli.credentials

Configuration written to $HOME/.aws/credentials.

For security reasons, never store cleartext passwords here. + +

+
+
+ + programs.awscli.credentials + + +
+
+

Configuration written to $HOME/.aws/credentials.

For security reasons, never store cleartext passwords here. We recommend that you use credential_process option to retrieve the IAM credentials from your favorite password manager during runtime, -or use AWS IAM Identity Center to get short-term credentials.

See https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-authentication.html.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
-  "default" = {
-    "credential_process" = "${pkgs.pass}/bin/pass show aws";
+or use AWS IAM Identity Center to get short-term credentials.

See https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-authentication.html.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
+  "default" = {
+    "credential_process" = "${pkgs.pass}/bin/pass show aws";
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/awscli.nix> -
programs.awscli.settings

Configuration written to $HOME/.aws/config.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
-  "default" = {
-    region = "eu-west-3";
-    output = "json";
+
+
+
+
+ + programs.awscli.settings + + +
+
+

Configuration written to $HOME/.aws/config.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
+  "default" = {
+    region = "eu-west-3";
+    output = "json";
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/awscli.nix> -
programs.bacon.enable

Whether to enable bacon, a background rust code checker.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.bacon.enable + + +
+
+

Whether to enable bacon, a background rust code checker.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bacon.nix> -
programs.bacon.settings

Bacon configuration. -For available settings see https://dystroy.org/bacon/#global-preferences.

Type: -TOML value

Example:

{
+
+
+
+
+ + programs.bacon.settings + + +
+
+

Bacon configuration. +For available settings see https://dystroy.org/bacon/#global-preferences.

+ +

Type: +TOML value

+ +

Example:

{
   jobs = {
     default = {
       command = [
-        "cargo"
-        "build"
-        "--all-features"
-        "--color"
-        "always"
+        "cargo"
+        "build"
+        "--all-features"
+        "--color"
+        "always"
       ];
       need_stdout = true;
     };
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bacon.nix> -
programs.bash.enable

Whether to enable GNU Bourne-Again SHell.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.bash.enable + + +
+
+

Whether to enable GNU Bourne-Again SHell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.enableCompletion

Whether to enable Bash completion for all interactive Bash shells.

Note, if you use NixOS or nix-darwin and do not have Bash completion -enabled in the system configuration, then make sure to add

  environment.pathsToLink = [ "/share/bash-completion" ];
-

to your system configuration to get completion for system packages. + +

+
+
+ + programs.bash.enableCompletion + + +
+
+

Whether to enable Bash completion for all interactive Bash shells.

Note, if you use NixOS or nix-darwin and do not have Bash completion +enabled in the system configuration, then make sure to add

  environment.pathsToLink = [ "/share/bash-completion" ];
+

to your system configuration to get completion for system packages. Note, the legacy /etc/bash_completion.d path is -not supported by Home Manager.

Type: -boolean

Default: -true

Declared by:

+
+not supported by Home Manager.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.enableVteIntegration

Whether to enable integration with terminals using the VTE + +

+
+
+ + programs.bash.enableVteIntegration + + +
+
+

Whether to enable integration with terminals using the VTE library. This will let the terminal track the current working -directory.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+directory.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/vte.nix> -
programs.bash.bashrcExtra

Extra commands that should be placed in ~/.bashrc. -Note that these commands will be run even in non-interactive shells.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.bash.bashrcExtra + + +
+
+

Extra commands that should be placed in ~/.bashrc. +Note that these commands will be run even in non-interactive shells.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.historyControl

Controlling how commands are saved on the history list.

Type: -list of (one of “erasedups”, “ignoredups”, “ignorespace”)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.bash.historyControl + + +
+
+

Controlling how commands are saved on the history list.

+ +

Type: +list of (one of “erasedups”, “ignoredups”, “ignorespace”)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.historyFile

Location of the bash history file.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.bash.historyFile + + +
+
+

Location of the bash history file.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.historyFileSize

Number of history lines to keep on file.

Type: -signed integer

Default: -100000

Declared by:

+
+ +
+
+
+ + programs.bash.historyFileSize + + +
+
+

Number of history lines to keep on file.

+ +

Type: +signed integer

+ +

Default: +100000

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.historyIgnore

List of commands that should not be saved to the history list.

Type: -list of string

Default: -[ ]

Example:

[
-  "ls"
-  "cd"
-  "exit"
+
+
+
+
+ + programs.bash.historyIgnore + + +
+
+

List of commands that should not be saved to the history list.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "ls"
+  "cd"
+  "exit"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.historySize

Number of history lines to keep in memory.

Type: -signed integer

Default: -10000

Declared by:

+
+ +
+
+
+ + programs.bash.historySize + + +
+
+

Number of history lines to keep in memory.

+ +

Type: +signed integer

+ +

Default: +10000

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.initExtra

Extra commands that should be run when initializing an -interactive shell.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.bash.initExtra + + +
+
+

Extra commands that should be run when initializing an +interactive shell.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.logoutExtra

Extra commands that should be run when logging out of an -interactive shell.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.bash.logoutExtra + + +
+
+

Extra commands that should be run when logging out of an +interactive shell.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.profileExtra

Extra commands that should be run when initializing a login -shell.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.bash.profileExtra + + +
+
+

Extra commands that should be run when initializing a login +shell.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.sessionVariables

Environment variables that will be set for the Bash session.

Type: -attribute set

Default: -{ }

Example:

{
+
+
+
+
+ + programs.bash.sessionVariables + + +
+
+

Environment variables that will be set for the Bash session.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example:

{
   MAILCHECK = 30;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.shellAliases

An attribute set that maps aliases (the top level attribute names in -this option) to command strings or directly to build outputs.

Type: -attribute set of string

Default: -{ }

Example:

{
-  ll = "ls -l";
-  ".." = "cd ..";
+
+
+
+
+ + programs.bash.shellAliases + + +
+
+

An attribute set that maps aliases (the top level attribute names in +this option) to command strings or directly to build outputs.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  ll = "ls -l";
+  ".." = "cd ..";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bash.shellOptions

Shell options to set. Prefix an option with -“-” to unset.

Type: -list of string

Default:

[
-  "histappend"
-  "checkwinsize"
-  "extglob"
-  "globstar"
-  "checkjobs"
+
+
+
+
+ + programs.bash.shellOptions + + +
+
+

Shell options to set. Prefix an option with +“-” to unset.

+ +

Type: +list of string

+ +

Default:

[
+  "histappend"
+  "checkwinsize"
+  "extglob"
+  "globstar"
+  "checkjobs"
 ]
-

Example:

[
-  "extglob"
-  "-cdspell"
+
+ +

Example:

[
+  "extglob"
+  "-cdspell"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bash.nix> -
programs.bashmount.enable

Whether to enable bashmount.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.bashmount.enable + + +
+
+

Whether to enable bashmount.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bashmount.nix> -
programs.bashmount.extraConfig

Configuration written to + +

+
+
+ + programs.bashmount.extraConfig + + +
+
+

Configuration written to $XDG_CONFIG_HOME/bashmount/config. Look at -https://github.com/jamielinux/bashmount/blob/master/bashmount.conf -for explanation about possible values.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+https://github.com/jamielinux/bashmount/blob/master/bashmount.conf +for explanation about possible values.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bashmount.nix> -
programs.bat.enable

Whether to enable bat, a cat clone with wings.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.bat.enable + + +
+
+

Whether to enable bat, a cat clone with wings.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bat.nix> -
programs.bat.config

Bat configuration.

Type: -attribute set of (string or list of string or boolean)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.bat.config + + +
+
+

Bat configuration.

+ +

Type: +attribute set of (string or list of string or boolean)

+ +

Default: +{ }

+ +

Example:

{
   map-syntax = [
-    "*.jenkinsfile:Groovy"
-    "*.props:Java Properties"
+    "*.jenkinsfile:Groovy"
+    "*.props:Java Properties"
   ];
-  pager = "less -FR";
-  theme = "TwoDark";
+  pager = "less -FR";
+  theme = "TwoDark";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bat.nix> -
programs.bat.extraPackages

Additional bat packages to install.

Type: -list of package

Default: -[ ]

Example: -with pkgs.bat-extras; [ batdiff batman batgrep batwatch ];

Declared by:

+
+ +
+
+
+ + programs.bat.extraPackages + + +
+
+

Additional bat packages to install.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +with pkgs.bat-extras; [ batdiff batman batgrep batwatch ];

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bat.nix> -
programs.bat.syntaxes

Additional syntaxes to provide.

Type: -attribute set of (strings concatenated with “\n” or (submodule))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.bat.syntaxes + + +
+
+

Additional syntaxes to provide.

+ +

Type: +attribute set of (strings concatenated with “\n” or (submodule))

+ +

Default: +{ }

+ +

Example:

{
   gleam = {
     src = pkgs.fetchFromGitHub {
-      owner = "molnarmark";
-      repo = "sublime-gleam";
-      rev = "2e761cdb1a87539d827987f997a20a35efd68aa9";
-      hash = "sha256-Zj2DKTcO1t9g18qsNKtpHKElbRSc9nBRE2QBzRn9+qs=";
+      owner = "molnarmark";
+      repo = "sublime-gleam";
+      rev = "2e761cdb1a87539d827987f997a20a35efd68aa9";
+      hash = "sha256-Zj2DKTcO1t9g18qsNKtpHKElbRSc9nBRE2QBzRn9+qs=";
     };
-    file = "syntax/gleam.sublime-syntax";
+    file = "syntax/gleam.sublime-syntax";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bat.nix> -
programs.bat.themes

Additional themes to provide.

Type: -attribute set of (strings concatenated with “\n” or (submodule))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.bat.themes + + +
+
+

Additional themes to provide.

+ +

Type: +attribute set of (strings concatenated with “\n” or (submodule))

+ +

Default: +{ }

+ +

Example:

{
   dracula = {
     src = pkgs.fetchFromGitHub {
-      owner = "dracula";
-      repo = "sublime"; # Bat uses sublime syntax for its themes
-      rev = "26c57ec282abcaa76e57e055f38432bd827ac34e";
-      sha256 = "019hfl4zbn4vm4154hh3bwk6hm7bdxbr1hdww83nabxwjn99ndhv";
+      owner = "dracula";
+      repo = "sublime"; # Bat uses sublime syntax for its themes
+      rev = "26c57ec282abcaa76e57e055f38432bd827ac34e";
+      sha256 = "019hfl4zbn4vm4154hh3bwk6hm7bdxbr1hdww83nabxwjn99ndhv";
     };
-    file = "Dracula.tmTheme";
+    file = "Dracula.tmTheme";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bat.nix> -
programs.beets.enable

Whether to enable the beets music library manager. This + +

+
+
+ + programs.beets.enable + + +
+
+

Whether to enable the beets music library manager. This defaults to false for state version ≥ 19.03. For earlier versions beets is enabled if -programs.beets.settings is non-empty.

Type: -boolean

Default: -"false"

Declared by:

+
+programs.beets.settings is non-empty.

+ +

Type: +boolean

+ +

Default: +"false"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/beets.nix> -
programs.beets.package

The beets package to use. -Can be used to specify extensions.

Type: -package

Default: -pkgs.beets

Example: -(pkgs.beets.override { enableCheck = true; })

Declared by:

+
+ +
+
+
+ + programs.beets.package + + +
+
+

The beets package to use. +Can be used to specify extensions.

+ +

Type: +package

+ +

Default: +pkgs.beets

+ +

Example: +(pkgs.beets.override { enableCheck = true; })

+ +

Declared by:

+ +
+ <home-manager/modules/programs/beets.nix> -
programs.beets.mpdIntegration.enableStats

Whether to enable mpdstats plugin and service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.beets.mpdIntegration.enableStats + + +
+
+

Whether to enable mpdstats plugin and service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/beets.nix> -
programs.beets.mpdIntegration.enableUpdate

Whether to enable mpdupdate plugin.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.beets.mpdIntegration.enableUpdate + + +
+
+

Whether to enable mpdupdate plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/beets.nix> -
programs.beets.mpdIntegration.host

The host that mpdstats will connect to.

Type: -string

Default: -"localhost"

Example: -"10.0.0.42"

Declared by:

+
+ +
+
+
+ + programs.beets.mpdIntegration.host + + +
+
+

The host that mpdstats will connect to.

+ +

Type: +string

+ +

Default: +"localhost"

+ +

Example: +"10.0.0.42"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/beets.nix> -
programs.beets.mpdIntegration.port

The port that mpdstats will connect to.

Type: -16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -config.services.mpd.network.port

Example: -6601

Declared by:

+
+ +
+
+
+ + programs.beets.mpdIntegration.port + + +
+
+

The port that mpdstats will connect to.

+ +

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +config.services.mpd.network.port

+ +

Example: +6601

+ +

Declared by:

+ +
+ <home-manager/modules/programs/beets.nix> -
programs.beets.settings

Configuration written to -$XDG_CONFIG_HOME/beets/config.yaml

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.beets.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/beets/config.yaml

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/beets.nix> -
programs.borgmatic.enable

Whether to enable Borgmatic.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.borgmatic.enable + + +
+
+

Whether to enable Borgmatic.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.package

The borgmatic package to use.

Type: -package

Default: -pkgs.borgmatic

Declared by:

+
+ +
+
+
+ + programs.borgmatic.package + + +
+
+

The borgmatic package to use.

+ +

Type: +package

+ +

Default: +pkgs.borgmatic

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups

Borgmatic allows for several named backup configurations, -each with its own source directories and repositories.

Type: -attribute set of (submodule)

Example:

{
+
+
+
+
+ + programs.borgmatic.backups + + +
+
+

Borgmatic allows for several named backup configurations, +each with its own source directories and repositories.

+ +

Type: +attribute set of (submodule)

+ +

Example:

{
   personal = {
     location = {
-      sourceDirectories = [ "/home/me/personal" ];
-      repositories = [ "ssh://myuser@myserver.com/./personal-repo" ];
+      sourceDirectories = [ "/home/me/personal" ];
+      repositories = [ "ssh://myuser@myserver.com/./personal-repo" ];
     };
   };
   work = {
     location = {
-      sourceDirectories = [ "/home/me/work" ];
-      repositories = [ "ssh://myuser@myserver.com/./work-repo" ];
+      sourceDirectories = [ "/home/me/work" ];
+      repositories = [ "ssh://myuser@myserver.com/./work-repo" ];
     };
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.consistency.checks

Consistency checks to run

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.borgmatic.backups.<name>.consistency.checks + + +
+
+

Consistency checks to run

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    name = "repository";
-    frequency = "2 weeks";
+    name = "repository";
+    frequency = "2 weeks";
   }
   {
-    name = "archives";
-    frequency = "4 weeks";
+    name = "archives";
+    frequency = "4 weeks";
   }
   {
-    name = "data";
-    frequency = "6 weeks";
+    name = "data";
+    frequency = "6 weeks";
   }
   {
-    name = "extract";
-    frequency = "6 weeks";
+    name = "extract";
+    frequency = "6 weeks";
   }
 ];
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.consistency.checks.*.frequency

Frequency of this type of check

Type: -null or string matching the pattern ([[:digit:]]+ .*)|always

Default: -null

Example: -"2 weeks"

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.consistency.checks.*.frequency + + +
+
+

Frequency of this type of check

+ +

Type: +null or string matching the pattern ([[:digit:]]+ .*)|always

+ +

Default: +null

+ +

Example: +"2 weeks"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.consistency.checks.*.name

Name of consistency check to run.

Type: -one of “repository”, “archives”, “data”, “extract”

Example: -"repository"

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.consistency.checks.*.name + + +
+
+

Name of consistency check to run.

+ +

Type: +one of “repository”, “archives”, “data”, “extract”

+ +

Example: +"repository"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.consistency.extraConfig

Extra settings.

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.consistency.extraConfig + + +
+
+

Extra settings.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.hooks.extraConfig

Extra settings.

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.hooks.extraConfig + + +
+
+

Extra settings.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.location.excludeHomeManagerSymlinks

Whether to exclude Home Manager generated symbolic links from + +

+
+
+ + programs.borgmatic.backups.<name>.location.excludeHomeManagerSymlinks + + +
+
+

Whether to exclude Home Manager generated symbolic links from the backups. This facilitates restoring the whole home directory when the Nix store doesn’t contain the latest -Home Manager generation.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+Home Manager generation.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.location.extraConfig

Extra settings.

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.location.extraConfig + + +
+
+

Extra settings.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.location.repositories

List of local or remote repositories with paths and optional labels.

Type: -list of (string or (submodule))

Example:

[
+
+
+
+
+ + programs.borgmatic.backups.<name>.location.repositories + + +
+
+

List of local or remote repositories with paths and optional labels.

+ +

Type: +list of (string or (submodule))

+ +

Example:

[
   {
-    "path" = "ssh://myuser@myrepo.myserver.com/./repo";
-    "label" = "server";
+    "path" = "ssh://myuser@myrepo.myserver.com/./repo";
+    "label" = "server";
   }
   {
-    "path" = "/var/lib/backups/local.borg";
-    "label" = "local";
+    "path" = "/var/lib/backups/local.borg";
+    "label" = "local";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.location.sourceDirectories

Directories to backup.

Type: -list of string

Example: -[config.home.homeDirectory]

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.location.sourceDirectories + + +
+
+

Directories to backup.

+ +

Type: +list of string

+ +

Example: +[config.home.homeDirectory]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.output.extraConfig

Extra settings.

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.output.extraConfig + + +
+
+

Extra settings.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.extraConfig

Extra settings.

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.extraConfig + + +
+
+

Extra settings.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepDaily

Number of daily archives to keep. Use -1 for no limit.

Type: -null or signed integer

Default: -null

Example: -3

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepDaily + + +
+
+

Number of daily archives to keep. Use -1 for no limit.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepHourly

Number of hourly archives to keep. Use -1 for no limit.

Type: -null or signed integer

Default: -null

Example: -3

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepHourly + + +
+
+

Number of hourly archives to keep. Use -1 for no limit.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepMinutely

Number of minutely archives to keep. Use -1 for no limit.

Type: -null or signed integer

Default: -null

Example: -3

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepMinutely + + +
+
+

Number of minutely archives to keep. Use -1 for no limit.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepMonthly

Number of monthly archives to keep. Use -1 for no limit.

Type: -null or signed integer

Default: -null

Example: -3

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepMonthly + + +
+
+

Number of monthly archives to keep. Use -1 for no limit.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepSecondly

Number of secondly archives to keep. Use -1 for no limit.

Type: -null or signed integer

Default: -null

Example: -3

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepSecondly + + +
+
+

Number of secondly archives to keep. Use -1 for no limit.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepWeekly

Number of weekly archives to keep. Use -1 for no limit.

Type: -null or signed integer

Default: -null

Example: -3

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepWeekly + + +
+
+

Number of weekly archives to keep. Use -1 for no limit.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepWithin

Keep all archives within this time interval.

Type: -null or string matching the pattern [[:digit:]]+[Hdwmy]

Default: -null

Example: -"2d"

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepWithin + + +
+
+

Keep all archives within this time interval.

+ +

Type: +null or string matching the pattern [[:digit:]]+[Hdwmy]

+ +

Default: +null

+ +

Example: +"2d"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.retention.keepYearly

Number of yearly archives to keep. Use -1 for no limit.

Type: -null or signed integer

Default: -null

Example: -3

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.retention.keepYearly + + +
+
+

Number of yearly archives to keep. Use -1 for no limit.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.storage.encryptionPasscommand

Command writing the passphrase to standard output.

Type: -null or string

Default: -null

Example: -"${pkgs.password-store}/bin/pass borg-repo"

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.storage.encryptionPasscommand + + +
+
+

Command writing the passphrase to standard output.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"${pkgs.password-store}/bin/pass borg-repo"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.borgmatic.backups.<name>.storage.extraConfig

Extra settings.

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.borgmatic.backups.<name>.storage.extraConfig + + +
+
+

Extra settings.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/borgmatic.nix> -
programs.bottom.enable

Whether to enable bottom, a cross-platform graphical process/system monitor with a -customizable interface.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.bottom.enable + + +
+
+

Whether to enable bottom, a cross-platform graphical process/system monitor with a +customizable interface.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bottom.nix> -
programs.bottom.package

Package providing bottom.

Type: -package

Default: -pkgs.bottom

Declared by:

+
+ +
+
+
+ + programs.bottom.package + + +
+
+

Package providing bottom.

+ +

Type: +package

+ +

Default: +pkgs.bottom

+ +

Declared by:

+ +
+ <home-manager/modules/programs/bottom.nix> -
programs.bottom.settings

Configuration written to -$XDG_CONFIG_HOME/bottom/bottom.toml.

See https://github.com/ClementTsang/bottom/blob/master/sample_configs/default_config.toml -for the default configuration.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.bottom.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/bottom/bottom.toml.

See https://github.com/ClementTsang/bottom/blob/master/sample_configs/default_config.toml +for the default configuration.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   flags = {
     avg_cpu = true;
-    temperature_type = "c";
+    temperature_type = "c";
   };
 
   colors = {
-    low_battery_color = "red";
+    low_battery_color = "red";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/bottom.nix> -
programs.boxxy.enable

Whether to enable boxxy: Boxes in badly behaving applications.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.boxxy.enable + + +
+
+

Whether to enable boxxy: Boxes in badly behaving applications.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.package

The boxxy package to use.

Type: -package

Default: -pkgs.boxxy

Declared by:

+
+ +
+
+
+ + programs.boxxy.package + + +
+
+

The boxxy package to use.

+ +

Type: +package

+ +

Default: +pkgs.boxxy

+ +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules

List of boxxy rules

Type: -list of (YAML value)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.boxxy.rules + + +
+
+

List of boxxy rules

+ +

Type: +list of (YAML value)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules.*.context

Apply redirection ONLY when in a certain directory.

Type: -list of string

Default: -[ ]

Example:

[
-  "/home/example/Projects/my-project"
+
+
+
+
+ + programs.boxxy.rules.*.context + + +
+
+

Apply redirection ONLY when in a certain directory.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "/home/example/Projects/my-project"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules.*.env

Give certain environment variables for said match.

Type: -attribute set of string

Default: -{ }

Example:

{
-  MY_ENV_VAR = "my_env_var_value";
+
+
+
+
+ + programs.boxxy.rules.*.env + + +
+
+

Give certain environment variables for said match.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  MY_ENV_VAR = "my_env_var_value";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules.*.mode

Does the current path redirect a file or a directory?

Type: -one of “file”, “directory”

Default: -"directory"

Declared by:

+
+ +
+
+
+ + programs.boxxy.rules.*.mode + + +
+
+

Does the current path redirect a file or a directory?

+ +

Type: +one of “file”, “directory”

+ +

Default: +"directory"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules.*.name

Unique identifier of the boxxy rule. This can be any single-line string.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.boxxy.rules.*.name + + +
+
+

Unique identifier of the boxxy rule. This can be any single-line string.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules.*.only

Apply redirection ONLY to specified executable names.

Type: -list of string

Default: -[ ]

Example:

[
-  "bash"
-  "/usr/bin/sh"
+
+
+
+
+ + programs.boxxy.rules.*.only + + +
+
+

Apply redirection ONLY to specified executable names.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "bash"
+  "/usr/bin/sh"
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules.*.rewrite

Where that file/directory should be rewritten to.

Type: -string

Default: -""

Example: -"${config.xdg.configHome}/ssh"

Declared by:

+
+ +
+
+
+ + programs.boxxy.rules.*.rewrite + + +
+
+

Where that file/directory should be rewritten to.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"${config.xdg.configHome}/ssh"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.boxxy.rules.*.target

What directory/file to redirect.

Type: -string

Default: -""

Example: -"~/.ssh"

Declared by:

+
+ +
+
+
+ + programs.boxxy.rules.*.target + + +
+
+

What directory/file to redirect.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"~/.ssh"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/boxxy.nix> -
programs.broot.enable

Whether to enable Broot, a better way to navigate directories.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.broot.enable + + +
+
+

Whether to enable Broot, a better way to navigate directories.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.broot.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.broot.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.broot.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.broot.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.package

Package providing broot

Type: -package

Default: -pkgs.broot

Declared by:

+
+ +
+
+
+ + programs.broot.package + + +
+
+

Package providing broot

+ +

Type: +package

+ +

Default: +pkgs.broot

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.settings

Verbatim config entries

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.broot.settings + + +
+
+

Verbatim config entries

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.settings.modal

Whether to enable modal (vim) mode.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.broot.settings.modal + + +
+
+

Whether to enable modal (vim) mode.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.settings.skin

Color configuration.

Complete list of keys (expected to change before the v1 of broot):

  • char_match

  • code

  • directory

  • exe

  • file

  • file_error

  • flag_label

  • flag_value

  • input

  • link

  • permissions

  • selected_line

  • size_bar_full

  • size_bar_void

  • size_text

  • spinner

  • status_error

  • status_normal

  • table_border

  • tree

  • unlisted

Add _fg for a foreground color and -_bg for a background color.

Type: -attribute set of string

Default: -{ }

Example:

{
-  status_normal_fg = "grayscale(18)";
-  status_normal_bg = "grayscale(3)";
-  status_error_fg = "red";
-  status_error_bg = "yellow";
-  tree_fg = "red";
-  selected_line_bg = "grayscale(7)";
-  permissions_fg = "grayscale(12)";
-  size_bar_full_bg = "red";
-  size_bar_void_bg = "black";
-  directory_fg = "lightyellow";
-  input_fg = "cyan";
-  flag_value_fg = "lightyellow";
-  table_border_fg = "red";
-  code_fg = "lightyellow";
+
+
+
+
+ + programs.broot.settings.skin + + +
+
+

Color configuration.

Complete list of keys (expected to change before the v1 of broot):

  • char_match

  • code

  • directory

  • exe

  • file

  • file_error

  • flag_label

  • flag_value

  • input

  • link

  • permissions

  • selected_line

  • size_bar_full

  • size_bar_void

  • size_text

  • spinner

  • status_error

  • status_normal

  • table_border

  • tree

  • unlisted

Add _fg for a foreground color and +_bg for a background color.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  status_normal_fg = "grayscale(18)";
+  status_normal_bg = "grayscale(3)";
+  status_error_fg = "red";
+  status_error_bg = "yellow";
+  tree_fg = "red";
+  selected_line_bg = "grayscale(7)";
+  permissions_fg = "grayscale(12)";
+  size_bar_full_bg = "red";
+  size_bar_void_bg = "black";
+  directory_fg = "lightyellow";
+  input_fg = "cyan";
+  flag_value_fg = "lightyellow";
+  table_border_fg = "red";
+  code_fg = "lightyellow";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.broot.settings.verbs

Define new verbs. For more information, see -Verb Definition Attributes + +

+
+
+ + programs.broot.settings.verbs + + +
+
+

Define new verbs. For more information, see +Verb Definition Attributes in the broot documentation.

The possible attributes are:

invocation (optional)

how the verb is called by the user, with placeholders for arguments

execution (mandatory)

how the verb is executed

key (optional)

a keyboard key triggering execution

shortcut (optional)

an alternate way to call the verb (without the arguments part)

leave_broot (optional)

whether to quit broot on execution (default: true)

from_shell (optional)</term>

whether the verb must be executed from the -parent shell (default: false)

Type: -list of attribute set of (boolean or string)

Default: -[ ]

Example:

[
-  { invocation = "p"; execution = ":parent"; }
-  { invocation = "edit"; shortcut = "e"; execution = "$EDITOR {file}" ; }
-  { invocation = "create {subpath}"; execution = "$EDITOR {directory}/{subpath}"; }
-  { invocation = "view"; execution = "less {file}"; }
+parent shell (default: false)

+ +

Type: +list of attribute set of (boolean or string)

+ +

Default: +[ ]

+ +

Example:

[
+  { invocation = "p"; execution = ":parent"; }
+  { invocation = "edit"; shortcut = "e"; execution = "$EDITOR {file}" ; }
+  { invocation = "create {subpath}"; execution = "$EDITOR {directory}/{subpath}"; }
+  { invocation = "view"; execution = "less {file}"; }
   {
-    invocation = "blop {name}\\.{type}";
-    execution = "mkdir {parent}/{type} && ${pkgs.neovim}/bin/nvim {parent}/{type}/{name}.{type}";
+    invocation = "blop {name}\\.{type}";
+    execution = "mkdir {parent}/{type} && ${pkgs.neovim}/bin/nvim {parent}/{type}/{name}.{type}";
     from_shell = true;
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/broot.nix> -
programs.browserpass.enable

Whether to enable the browserpass extension host application.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.browserpass.enable + + +
+
+

Whether to enable the browserpass extension host application.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/browserpass.nix> -
programs.browserpass.browsers

Which browsers to install browserpass for

Type: -list of (one of “brave”, “chrome”, “chromium”, “firefox”, “librewolf”, “vivaldi”)

Default:

[
-  "brave"
-  "chrome"
-  "chromium"
-  "firefox"
-  "librewolf"
-  "vivaldi"
+
+
+
+
+ + programs.browserpass.browsers + + +
+
+

Which browsers to install browserpass for

+ +

Type: +list of (one of “brave”, “chrome”, “chromium”, “firefox”, “librewolf”, “vivaldi”)

+ +

Default:

[
+  "brave"
+  "chrome"
+  "chromium"
+  "firefox"
+  "librewolf"
+  "vivaldi"
 ]
-

Example:

[
-  "firefox"
+
+ +

Example:

[
+  "firefox"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/browserpass.nix> -
programs.btop.enable

Whether to enable btop.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.btop.enable + + +
+
+

Whether to enable btop.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/btop.nix> -
programs.btop.package

The btop package to use.

Type: -package

Default: -pkgs.btop

Declared by:

+
+ +
+
+
+ + programs.btop.package + + +
+
+

The btop package to use.

+ +

Type: +package

+ +

Default: +pkgs.btop

+ +

Declared by:

+ +
+ <home-manager/modules/programs/btop.nix> -
programs.btop.extraConfig

Extra lines added to the btop.conf file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.btop.extraConfig + + +
+
+

Extra lines added to the btop.conf file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/btop.nix> -
programs.btop.settings

Options to add to btop.conf file. -See https://github.com/aristocratos/btop#configurability -for options.

Type: -attribute set of (boolean or floating point number or signed integer or string)

Default: -{ }

Example:

{
-  color_theme = "Default";
+
+
+
+
+ + programs.btop.settings + + +
+
+

Options to add to btop.conf file. +See https://github.com/aristocratos/btop#configurability +for options.

+ +

Type: +attribute set of (boolean or floating point number or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  color_theme = "Default";
   theme_background = false;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/btop.nix> -
programs.carapace.enable

Whether to enable carapace, a multi-shell multi-command argument completer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.carapace.enable + + +
+
+

Whether to enable carapace, a multi-shell multi-command argument completer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/carapace.nix> -
programs.carapace.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.carapace.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/carapace.nix> -
programs.carapace.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.carapace.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/carapace.nix> -
programs.carapace.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.carapace.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/carapace.nix> -
programs.carapace.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.carapace.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/carapace.nix> -
programs.carapace.package

The carapace package to use.

Type: -package

Default: -pkgs.carapace

Declared by:

+
+ +
+
+
+ + programs.carapace.package + + +
+
+

The carapace package to use.

+ +

Type: +package

+ +

Default: +pkgs.carapace

+ +

Declared by:

+ +
+ <home-manager/modules/programs/carapace.nix> -
programs.cava.enable

Whether to enable Cava audio visualizer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.cava.enable + + +
+
+

Whether to enable Cava audio visualizer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/cava.nix> -
programs.cava.package

The cava package to use.

Type: -package

Default: -pkgs.cava

Declared by:

+
+ +
+
+
+ + programs.cava.package + + +
+
+

The cava package to use.

+ +

Type: +package

+ +

Default: +pkgs.cava

+ +

Declared by:

+ +
+ <home-manager/modules/programs/cava.nix> -
programs.cava.settings

Settings to be written to the Cava configuration file. See -https://github.com/karlstav/cava/blob/master/example_files/config for -all available options.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.cava.settings + + +
+
+

Settings to be written to the Cava configuration file. See +https://github.com/karlstav/cava/blob/master/example_files/config for +all available options.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   general.framerate = 60;
-  input.method = "alsa";
+  input.method = "alsa";
   smoothing.noise_reduction = 88;
   color = {
-    background = "'#000000'";
-    foreground = "'#FFFFFF'";
+    background = "'#000000'";
+    foreground = "'#FFFFFF'";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/cava.nix> -
programs.chromium.enable

Whether to enable Chromium.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.chromium.enable + + +
+
+

Whether to enable Chromium.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.package

The Chromium package to use.

Type: -package

Default: -pkgs.chromium

Declared by:

+
+ +
+
+
+ + programs.chromium.package + + +
+
+

The Chromium package to use.

+ +

Type: +package

+ +

Default: +pkgs.chromium

+ +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.commandLineArgs

List of command-line arguments to be passed to Chromium.

For a list of common switches, see -Chrome switches.

To search switches for other components, see -Chromium codesearch.

Type: -list of string

Default: -[ ]

Example:

[
-  "--enable-logging=stderr"
-  "--ignore-gpu-blocklist"
+
+
+
+
+ + programs.chromium.commandLineArgs + + +
+
+

List of command-line arguments to be passed to Chromium.

For a list of common switches, see +Chrome switches.

To search switches for other components, see +Chromium codesearch.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--enable-logging=stderr"
+  "--ignore-gpu-blocklist"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.dictionaries

List of Chromium dictionaries to install.

Type: -list of package

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.chromium.dictionaries + + +
+
+

List of Chromium dictionaries to install.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example:

[
   pkgs.hunspellDictsChromium.en_US
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.extensions

List of Chromium extensions to install. + +

+
+
+ + programs.chromium.extensions + + +
+
+

List of Chromium extensions to install. To find the extension ID, check its URL on the -Chrome Web Store.

To install extensions outside of the Chrome Web Store set +Chrome Web Store.

To install extensions outside of the Chrome Web Store set updateUrl or crxPath and version as explained in the -Chrome -documentation.

Type: -list of ((submodule) or string convertible to it)

Default: -[ ]

Example:

[
-  { id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # ublock origin
+Chrome
+documentation.

+ +

Type: +list of ((submodule) or string convertible to it)

+ +

Default: +[ ]

+ +

Example:

[
+  { id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # ublock origin
   {
-    id = "dcpihecpambacapedldabdbpakmachpb";
-    updateUrl = "https://raw.githubusercontent.com/iamadamdev/bypass-paywalls-chrome/master/updates.xml";
+    id = "dcpihecpambacapedldabdbpakmachpb";
+    updateUrl = "https://raw.githubusercontent.com/iamadamdev/bypass-paywalls-chrome/master/updates.xml";
   }
   {
-    id = "aaaaaaaaaabbbbbbbbbbcccccccccc";
-    crxPath = "/home/share/extension.crx";
-    version = "1.0";
+    id = "aaaaaaaaaabbbbbbbbbbcccccccccc";
+    crxPath = "/home/share/extension.crx";
+    version = "1.0";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.extensions.*.crxPath

Path to the extension’s crx file. Linux only.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + programs.chromium.extensions.*.crxPath + + +
+
+

Path to the extension’s crx file. Linux only.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.extensions.*.id

The extension’s ID from the Chrome Web Store url or the unpacked crx.

Type: -string matching the pattern [a-zA-Z]{32}

Default: -""

Declared by:

+
+ +
+
+
+ + programs.chromium.extensions.*.id + + +
+
+

The extension’s ID from the Chrome Web Store url or the unpacked crx.

+ +

Type: +string matching the pattern [a-zA-Z]{32}

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.extensions.*.updateUrl

URL of the extension’s update manifest XML file. Linux only.

Type: -string

Default: -"https://clients2.google.com/service/update2/crx"

Declared by:

+
+ +
+
+
+ + programs.chromium.extensions.*.updateUrl + + +
+
+

URL of the extension’s update manifest XML file. Linux only.

+ +

Type: +string

+ +

Default: +"https://clients2.google.com/service/update2/crx"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.chromium.extensions.*.version

The extension’s version, required for local installation. Linux only.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.chromium.extensions.*.version + + +
+
+

The extension’s version, required for local installation. Linux only.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/chromium.nix> -
programs.command-not-found.enable

Whether to enable command-not-found hook for interactive shell.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.command-not-found.enable + + +
+
+

Whether to enable command-not-found hook for interactive shell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/command-not-found/command-not-found.nix> -
programs.command-not-found.dbPath

Absolute path to programs.sqlite. By + +

+
+
+ + programs.command-not-found.dbPath + + +
+
+

Absolute path to programs.sqlite. By default this file will be provided by your channel -(nixexprs.tar.xz).

Type: -path

Default: -"/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite"

Declared by:

+
+(nixexprs.tar.xz).

+ +

Type: +path

+ +

Default: +"/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/command-not-found/command-not-found.nix> -
programs.comodoro.enable

Whether to enable Comodoro, a CLI to manage your time.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.comodoro.enable + + +
+
+

Whether to enable Comodoro, a CLI to manage your time.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/comodoro.nix> -
programs.comodoro.package

The comodoro package to use.

Type: -package

Default: -pkgs.comodoro

Declared by:

+
+ +
+
+
+ + programs.comodoro.package + + +
+
+

The comodoro package to use.

+ +

Type: +package

+ +

Default: +pkgs.comodoro

+ +

Declared by:

+ +
+ <home-manager/modules/programs/comodoro.nix> -
programs.comodoro.settings

Comodoro configuration. -See https://pimalaya.org/comodoro/cli/configuration/ for supported values.

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.comodoro.settings + + +
+
+

Comodoro configuration. +See https://pimalaya.org/comodoro/cli/configuration/ for supported values.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/comodoro.nix> -
programs.darcs.enable

Whether to enable darcs.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.darcs.enable + + +
+
+

Whether to enable darcs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/darcs.nix> -
programs.darcs.package

The darcs package to use.

Type: -package

Default: -pkgs.darcs

Declared by:

+
+ +
+
+
+ + programs.darcs.package + + +
+
+

The darcs package to use.

+ +

Type: +package

+ +

Default: +pkgs.darcs

+ +

Declared by:

+ +
+ <home-manager/modules/programs/darcs.nix> -
programs.darcs.author

If this list has a single entry, it will be used as the author + +

+
+
+ + programs.darcs.author + + +
+
+

If this list has a single entry, it will be used as the author when you record a patch. If there are multiple entries, Darcs -will prompt you to choose one of them.

Type: -list of string

Default: -[ ]

Example:

[
-  "Fred Bloggs <fred@example.net>"
+will prompt you to choose one of them.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "Fred Bloggs <fred@example.net>"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/darcs.nix> -
programs.darcs.boring

File patterns to ignore

Type: -list of string

Default: -[ ]

Example:

[
-  "^.idea$"
-  ".iml$"
-  "^.stack-work$"
+
+
+
+
+ + programs.darcs.boring + + +
+
+

File patterns to ignore

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "^.idea$"
+  ".iml$"
+  "^.stack-work$"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/darcs.nix> -
programs.dircolors.enable

Whether to manage .dir_colors -and set LS_COLORS.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.dircolors.enable + + +
+
+

Whether to manage .dir_colors +and set LS_COLORS.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/dircolors.nix> -
programs.dircolors.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.dircolors.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/dircolors.nix> -
programs.dircolors.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.dircolors.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/dircolors.nix> -
programs.dircolors.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.dircolors.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/dircolors.nix> -
programs.dircolors.extraConfig

Extra lines added to .dir_colors file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.dircolors.extraConfig + + +
+
+

Extra lines added to .dir_colors file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/dircolors.nix> -
programs.dircolors.settings

Options to add to .dir_colors file. + +

+
+
+ + programs.dircolors.settings + + +
+
+

Options to add to .dir_colors file. See dircolors --print-database -for options.

Type: -attribute set of string

Default: -{ }

Example:

{
-  OTHER_WRITABLE = "30;46";
-  ".sh" = "01;32";
-  ".csh" = "01;32";
+for options.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  OTHER_WRITABLE = "30;46";
+  ".sh" = "01;32";
+  ".csh" = "01;32";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/dircolors.nix> -
programs.direnv.enable

Whether to enable direnv, the environment switcher.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.direnv.enable + + +
+
+

Whether to enable direnv, the environment switcher.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.direnv.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.enableFishIntegration

Whether to enable Fish integration. Note, enabling the direnv module + +

+
+
+ + programs.direnv.enableFishIntegration + + +
+
+

Whether to enable Fish integration. Note, enabling the direnv module will always active its functionality for Fish since the direnv package -automatically gets loaded in Fish. If this is not the case try adding

  environment.pathsToLink = [ "/share/fish" ];
-

to the system configuration.

Type: -boolean (read only)

Default: -true

Declared by:

+
+automatically gets loaded in Fish. If this is not the case try adding

  environment.pathsToLink = [ "/share/fish" ];
+

to the system configuration.

+ +

Type: +boolean (read only)

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.direnv.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.direnv.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.package

The direnv package to use.

Type: -package

Default: -pkgs.direnv

Declared by:

+
+ +
+
+
+ + programs.direnv.package + + +
+
+

The direnv package to use.

+ +

Type: +package

+ +

Default: +pkgs.direnv

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.config

Configuration written to + +

+
+
+ + programs.direnv.config + + +
+
+

Configuration written to $XDG_CONFIG_HOME/direnv/direnv.toml.

See direnv.toml(1). -for the full list of options.

Type: -TOML value

Default: -{ }

Declared by:

+
+for the full list of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.nix-direnv.enable

Whether to enable nix-direnv, -a fast, persistent use_nix implementation for direnv.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.direnv.nix-direnv.enable + + +
+
+

Whether to enable nix-direnv, +a fast, persistent use_nix implementation for direnv.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.nix-direnv.package

The nix-direnv package to use.

Type: -package

Default: -pkgs.nix-direnv

Declared by:

+
+ +
+
+
+ + programs.direnv.nix-direnv.package + + +
+
+

The nix-direnv package to use.

+ +

Type: +package

+ +

Default: +pkgs.nix-direnv

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.direnv.stdlib

Custom stdlib written to -$XDG_CONFIG_HOME/direnv/direnvrc.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.direnv.stdlib + + +
+
+

Custom stdlib written to +$XDG_CONFIG_HOME/direnv/direnvrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/direnv.nix> -
programs.discocss.enable

Whether to enable discocss, a tiny Discord CSS injector for Linux and MacOS.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.discocss.enable + + +
+
+

Whether to enable discocss, a tiny Discord CSS injector for Linux and MacOS.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/discocss.nix> -
programs.discocss.package

The discocss package to use.

Type: -package

Default: -pkgs.discocss

Declared by:

+
+ +
+
+
+ + programs.discocss.package + + +
+
+

The discocss package to use.

+ +

Type: +package

+ +

Default: +pkgs.discocss

+ +

Declared by:

+ +
+ <home-manager/modules/programs/discocss.nix> -
programs.discocss.css

The custom CSS for discocss to use.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + programs.discocss.css + + +
+
+

The custom CSS for discocss to use.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/discocss.nix> -
programs.discocss.discordAlias

Whether to alias discocss to discord.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.discocss.discordAlias + + +
+
+

Whether to alias discocss to discord.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/discocss.nix> -
programs.discocss.discordPackage

The discord package to use.

Type: -package

Default: -pkgs.discord

Declared by:

+
+ +
+
+
+ + programs.discocss.discordPackage + + +
+
+

The discord package to use.

+ +

Type: +package

+ +

Default: +pkgs.discord

+ +

Declared by:

+ +
+ <home-manager/modules/programs/discocss.nix> -
programs.eclipse.enable

Whether to enable Eclipse.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.eclipse.enable + + +
+
+

Whether to enable Eclipse.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eclipse.nix> -
programs.eclipse.enableLombok

Whether to enable the Lombok Java Agent in Eclipse. This is -necessary to use the Lombok class annotations.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.eclipse.enableLombok + + +
+
+

Whether to enable the Lombok Java Agent in Eclipse. This is +necessary to use the Lombok class annotations.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eclipse.nix> -
programs.eclipse.package

The Eclipse package to install.

Type: -package

Default: -pkgs.eclipses.eclipse-platform

Example: -pkgs.eclipses.eclipse-java

Declared by:

+
+ +
+
+
+ + programs.eclipse.package + + +
+
+

The Eclipse package to install.

+ +

Type: +package

+ +

Default: +pkgs.eclipses.eclipse-platform

+ +

Example: +pkgs.eclipses.eclipse-java

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eclipse.nix> -
programs.eclipse.jvmArgs

JVM arguments to use for the Eclipse process.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.eclipse.jvmArgs + + +
+
+

JVM arguments to use for the Eclipse process.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eclipse.nix> -
programs.eclipse.plugins

Plugins that should be added to Eclipse.

Type: -list of package

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.eclipse.plugins + + +
+
+

Plugins that should be added to Eclipse.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eclipse.nix> -
programs.emacs.enable

Whether to enable Emacs.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.emacs.enable + + +
+
+

Whether to enable Emacs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/emacs.nix> -
programs.emacs.package

The Emacs package to use.

Type: -package

Default: -pkgs.emacs

Example: -pkgs.emacs25-nox

Declared by:

+
+ +
+
+
+ + programs.emacs.package + + +
+
+

The Emacs package to use.

+ +

Type: +package

+ +

Default: +pkgs.emacs

+ +

Example: +pkgs.emacs25-nox

+ +

Declared by:

+ +
+ <home-manager/modules/programs/emacs.nix> -
programs.emacs.extraConfig

Configuration to include in the Emacs default init file. See -https://www.gnu.org/software/emacs/manual/html_node/elisp/Init-File.html + +

+
+
+ + programs.emacs.extraConfig + + +
+
+

Configuration to include in the Emacs default init file. See +https://www.gnu.org/software/emacs/manual/html_node/elisp/Init-File.html for more.

Note, the inhibit-startup-message Emacs option cannot be set here since Emacs disallows setting it from the default -initialization file.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+initialization file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   (setq standard-indent 2)
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/emacs.nix> -
programs.emacs.extraPackages

Extra packages available to Emacs. To get a list of + +

+
+
+ + programs.emacs.extraPackages + + +
+
+

Extra packages available to Emacs. To get a list of available packages run: -nix-env -f '<nixpkgs>' -qaP -A emacsPackages.

Type: -Function that takes an attribute set and returns a list containing a selection of the values of the input set

Default: -"epkgs: []"

Example: -epkgs: [ epkgs.emms epkgs.magit ]

Declared by:

+
+nix-env -f '<nixpkgs>' -qaP -A emacsPackages.

+ +

Type: +Function that takes an attribute set and returns a list containing a selection of the values of the input set

+ +

Default: +"epkgs: []"

+ +

Example: +epkgs: [ epkgs.emms epkgs.magit ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/emacs.nix> -
programs.emacs.overrides

Allows overriding packages within the Emacs package set.

Type: -An overlay function, takes self and super and returns an attribute set overriding the desired attributes.

Default: -"self: super: {}"

Example:

self: super: rec {
+
+
+
+
+ + programs.emacs.overrides + + +
+
+

Allows overriding packages within the Emacs package set.

+ +

Type: +An overlay function, takes self and super and returns an attribute set overriding the desired attributes.

+ +

Default: +"self: super: {}"

+ +

Example:

self: super: rec {
   haskell-mode = self.melpaPackages.haskell-mode;
   # ...
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/emacs.nix> -
programs.eww.enable

Whether to enable eww.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.eww.enable + + +
+
+

Whether to enable eww.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eww.nix> -
programs.eww.package

The eww package to install.

Type: -package

Default: -pkgs.eww

Example: -pkgs.eww

Declared by:

+
+ +
+
+
+ + programs.eww.package + + +
+
+

The eww package to install.

+ +

Type: +package

+ +

Default: +pkgs.eww

+ +

Example: +pkgs.eww

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eww.nix> -
programs.eww.configDir

The directory that gets symlinked to -$XDG_CONFIG_HOME/eww.

Type: -path

Example: -./eww-config-dir

Declared by:

+
+ +
+
+
+ + programs.eww.configDir + + +
+
+

The directory that gets symlinked to +$XDG_CONFIG_HOME/eww.

+ +

Type: +path

+ +

Example: +./eww-config-dir

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eww.nix> -
programs.eza.enable

Whether to enable eza, a modern replacement for ls.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.eza.enable + + +
+
+

Whether to enable eza, a modern replacement for ls.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eza.nix> -
programs.eza.enableAliases

Whether to enable recommended eza aliases (ls, ll…).

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.eza.enableAliases + + +
+
+

Whether to enable recommended eza aliases (ls, ll…).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eza.nix> -
programs.eza.package

The eza package to use.

Type: -package

Default: -pkgs.eza

Declared by:

+
+ +
+
+
+ + programs.eza.package + + +
+
+

The eza package to use.

+ +

Type: +package

+ +

Default: +pkgs.eza

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eza.nix> -
programs.eza.extraOptions

Extra command line options passed to eza.

Type: -list of string

Default: -[ ]

Example:

[
-  "--group-directories-first"
-  "--header"
+
+
+
+
+ + programs.eza.extraOptions + + +
+
+

Extra command line options passed to eza.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--group-directories-first"
+  "--header"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/eza.nix> -
programs.eza.git

List each file’s Git status if tracked or ignored (--git argument).

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.eza.git + + +
+
+

List each file’s Git status if tracked or ignored (--git argument).

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eza.nix> -
programs.eza.icons

Display icons next to file names (--icons argument).

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.eza.icons + + +
+
+

Display icons next to file names (--icons argument).

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/eza.nix> -
programs.feh.enable

Whether to enable feh - a fast and light image viewer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.feh.enable + + +
+
+

Whether to enable feh - a fast and light image viewer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/feh.nix> -
programs.feh.package

The feh package to use.

Type: -package

Default: -pkgs.feh

Declared by:

+
+ +
+
+
+ + programs.feh.package + + +
+
+

The feh package to use.

+ +

Type: +package

+ +

Default: +pkgs.feh

+ +

Declared by:

+ +
+ <home-manager/modules/programs/feh.nix> -
programs.feh.buttons

Override feh’s default mouse button mapping. If you want to disable an + +

+
+
+ + programs.feh.buttons + + +
+
+

Override feh’s default mouse button mapping. If you want to disable an action, set its value to null. If you want to bind multiple buttons to an action, set its value to a list. -See https://man.finalrewind.org/1/feh/#x425554544f4e53 for -default bindings and available commands.

Type: -attribute set of (null or string or signed integer or list of (string or signed integer))

Default: -{ }

Example:

{
+See https://man.finalrewind.org/1/feh/#x425554544f4e53 for
+default bindings and available commands.

+ +

Type: +attribute set of (null or string or signed integer or list of (string or signed integer))

+ +

Default: +{ }

+ +

Example:

{
   prev_img = [
     3
-    "C-3"
+    "C-3"
   ];
   zoom_in = 4;
-  zoom_out = "C-4";
+  zoom_out = "C-4";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/feh.nix> -
programs.feh.keybindings

Override feh’s default keybindings. If you want to disable a keybinding + +

+
+
+ + programs.feh.keybindings + + +
+
+

Override feh’s default keybindings. If you want to disable a keybinding set its value to null. If you want to bind multiple keys to an action, set its value to a list. -See https://man.finalrewind.org/1/feh/#x4b455953 for -default bindings and available commands.

Type: -attribute set of (null or string or list of string)

Default: -{ }

Example:

{
+See https://man.finalrewind.org/1/feh/#x4b455953 for
+default bindings and available commands.

+ +

Type: +attribute set of (null or string or list of string)

+ +

Default: +{ }

+ +

Example:

{
   prev_img = [
-    "h"
-    "Left"
+    "h"
+    "Left"
   ];
-  zoom_in = "plus";
-  zoom_out = "minus";
+  zoom_in = "plus";
+  zoom_out = "minus";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/feh.nix> -
programs.firefox.enable

Whether to enable Firefox.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.firefox.enable + + +
+
+

Whether to enable Firefox.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.enableGnomeExtensions

Whether to enable the GNOME Shell native host connector. Note, you + +

+
+
+ + programs.firefox.enableGnomeExtensions + + +
+
+

Whether to enable the GNOME Shell native host connector. Note, you also need to set the NixOS option services.gnome.gnome-browser-connector.enable to -true.

Type: -boolean

Default: -false

Declared by:

+
+true.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.package

The Firefox package to use. If state version ≥ 19.09 then + +

+
+
+ + programs.firefox.package + + +
+
+

The Firefox package to use. If state version ≥ 19.09 then this should be a wrapped Firefox package. For earlier state versions it should be an unwrapped Firefox package. -Set to null to disable installing Firefox.

Type: -null or package

Default: -pkgs.firefox

Example:

pkgs.firefox.override {
-  # See nixpkgs' firefox/wrapper.nix to check which options you can use
+Set to null to disable installing Firefox.

+ +

Type: +null or package

+ +

Default: +pkgs.firefox

+ +

Example:

pkgs.firefox.override {
+  # See nixpkgs' firefox/wrapper.nix to check which options you can use
   cfg = {
     # Gnome shell native connector
     enableGnomeExtensions = true;
@@ -4132,856 +17644,3244 @@ null or package

Default: }; } -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.finalPackage

Resulting Firefox package.

Type: -null or package (read only)

Declared by:

+
+ +
+
+
+ + programs.firefox.finalPackage + + +
+
+

Resulting Firefox package.

+ +

Type: +null or package (read only)

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.policies

See list of policies.

Type: -attribute set of (JSON value)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.firefox.policies + + +
+
+

See list of policies.

+ +

Type: +attribute set of (JSON value)

+ +

Default: +{ }

+ +

Example:

{
   BlockAboutConfig = true;
-  DefaultDownloadDirectory = "\${home}/Downloads";
+  DefaultDownloadDirectory = "\${home}/Downloads";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles

Attribute set of Firefox profiles.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles + + +
+
+

Attribute set of Firefox profiles.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.bookmarks

Preloaded bookmarks. Note, this may silently overwrite any -previously existing bookmarks!

Type: -(list of ((bookmark submodule) or (directory submodule))) or (attribute set of ((bookmark submodule) or (directory submodule))) convertible to it

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.firefox.profiles.<name>.bookmarks + + +
+
+

Preloaded bookmarks. Note, this may silently overwrite any +previously existing bookmarks!

+ +

Type: +(list of ((bookmark submodule) or (directory submodule))) or (attribute set of ((bookmark submodule) or (directory submodule))) convertible to it

+ +

Default: +[ ]

+ +

Example:

[
   {
-    name = "wikipedia";
-    tags = [ "wiki" ];
-    keyword = "wiki";
-    url = "https://en.wikipedia.org/wiki/Special:Search?search=%s&go=Go";
+    name = "wikipedia";
+    tags = [ "wiki" ];
+    keyword = "wiki";
+    url = "https://en.wikipedia.org/wiki/Special:Search?search=%s&go=Go";
   }
   {
-    name = "kernel.org";
-    url = "https://www.kernel.org";
+    name = "kernel.org";
+    url = "https://www.kernel.org";
   }
   {
-    name = "Nix sites";
+    name = "Nix sites";
     toolbar = true;
     bookmarks = [
       {
-        name = "homepage";
-        url = "https://nixos.org/";
+        name = "homepage";
+        url = "https://nixos.org/";
       }
       {
-        name = "wiki";
-        tags = [ "wiki" "nix" ];
-        url = "https://nixos.wiki/";
+        name = "wiki";
+        tags = [ "wiki" "nix" ];
+        url = "https://nixos.wiki/";
       }
     ];
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.containers

Attribute set of container configurations. See -Multi-Account + +

+
+
+ + programs.firefox.profiles.<name>.containers + + +
+
+

Attribute set of container configurations. See +Multi-Account Containers -for more information.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
+for more information.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
   dangerous = {
-    color = "red";
-    icon = "fruit";
+    color = "red";
+    icon = "fruit";
     id = 2;
   };
   shopping = {
-    color = "blue";
-    icon = "cart";
+    color = "blue";
+    icon = "cart";
     id = 1;
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.containers.<name>.color

Container color.

Type: -one of “blue”, “turquoise”, “green”, “yellow”, “orange”, “red”, “pink”, “purple”, “toolbar”

Default: -"pink"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.containers.<name>.color + + +
+
+

Container color.

+ +

Type: +one of “blue”, “turquoise”, “green”, “yellow”, “orange”, “red”, “pink”, “purple”, “toolbar”

+ +

Default: +"pink"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.containers.<name>.icon

Container icon.

Type: -one of “briefcase”, “cart”, “circle”, “dollar”, “fence”, “fingerprint”, “gift”, “vacation”, “food”, “fruit”, “pet”, “tree”, “chill”

Default: -"fruit"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.containers.<name>.icon + + +
+
+

Container icon.

+ +

Type: +one of “briefcase”, “cart”, “circle”, “dollar”, “fence”, “fingerprint”, “gift”, “vacation”, “food”, “fruit”, “pet”, “tree”, “chill”

+ +

Default: +"fruit"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.containers.<name>.id

Container ID. This should be set to a unique number per container in this profile.

Type: -unsigned integer, meaning >=0

Default: -0

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.containers.<name>.id + + +
+
+

Container ID. This should be set to a unique number per container in this profile.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.containers.<name>.name

Container name, e.g., shopping.

Type: -string

Default: -"‹name›"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.containers.<name>.name + + +
+
+

Container name, e.g., shopping.

+ +

Type: +string

+ +

Default: +"‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.extensions

List of Firefox add-on packages to install for this profile. + +

+
+
+ + programs.firefox.profiles.<name>.extensions + + +
+
+

List of Firefox add-on packages to install for this profile. Some pre-packaged add-ons are accessible from the -Nix User Repository. -Once you have NUR installed run

$ nix-env -f '<nixpkgs>' -qaP -A nur.repos.rycee.firefox-addons
-

to list the available Firefox add-ons.

Note that it is necessary to manually enable these extensions -inside Firefox after the first installation.

Type: -list of package

Default: -[ ]

Example:

with pkgs.nur.repos.rycee.firefox-addons; [
+Nix User Repository.
+Once you have NUR installed run

$ nix-env -f '<nixpkgs>' -qaP -A nur.repos.rycee.firefox-addons
+

to list the available Firefox add-ons.

Note that it is necessary to manually enable these extensions +inside Firefox after the first installation.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example:

with pkgs.nur.repos.rycee.firefox-addons; [
   privacy-badger
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.extraConfig

Extra preferences to add to user.js.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.extraConfig + + +
+
+

Extra preferences to add to user.js.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.id

Profile ID. This should be set to a unique number per profile.

Type: -unsigned integer, meaning >=0

Default: -0

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.id + + +
+
+

Profile ID. This should be set to a unique number per profile.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.isDefault

Whether this is a default profile.

Type: -boolean

Default: -"true if profile ID is 0"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.isDefault + + +
+
+

Whether this is a default profile.

+ +

Type: +boolean

+ +

Default: +"true if profile ID is 0"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.name

Profile name.

Type: -string

Default: -"‹name›"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.name + + +
+
+

Profile name.

+ +

Type: +string

+ +

Default: +"‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.path

Profile path.

Type: -string

Default: -"‹name›"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.path + + +
+
+

Profile path.

+ +

Type: +string

+ +

Default: +"‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.search.default

The default search engine used in the address bar and search bar.

Type: -null or string

Default: -null

Example: -"DuckDuckGo"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.search.default + + +
+
+

The default search engine used in the address bar and search bar.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"DuckDuckGo"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.search.engines

Attribute set of search engine configurations. Engines + +

+
+
+ + programs.firefox.profiles.<name>.search.engines + + +
+
+

Attribute set of search engine configurations. Engines that only have metaData specified will -be treated as builtin to Firefox.

See SearchEngine.jsm +be treated as builtin to Firefox.

See SearchEngine.jsm in Firefox’s source for available options. We maintain a mapping to let you specify all options in the referenced link without underscores, but it may fall out of date with future options.

Note, icon is also a special option added by Home Manager to make it convenient to specify -absolute icon paths.

Type: -attribute set of attribute set of (JSON value)

Default: -{ }

Example:

{
-  "Nix Packages" = {
+absolute icon paths.

+ +

Type: +attribute set of attribute set of (JSON value)

+ +

Default: +{ }

+ +

Example:

{
+  "Nix Packages" = {
     urls = [{
-      template = "https://search.nixos.org/packages";
+      template = "https://search.nixos.org/packages";
       params = [
-        { name = "type"; value = "packages"; }
-        { name = "query"; value = "{searchTerms}"; }
+        { name = "type"; value = "packages"; }
+        { name = "query"; value = "{searchTerms}"; }
       ];
     }];
 
-    icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
-    definedAliases = [ "@np" ];
+    icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
+    definedAliases = [ "@np" ];
   };
 
-  "NixOS Wiki" = {
-    urls = [{ template = "https://nixos.wiki/index.php?search={searchTerms}"; }];
-    iconUpdateURL = "https://nixos.wiki/favicon.png";
+  "NixOS Wiki" = {
+    urls = [{ template = "https://nixos.wiki/index.php?search={searchTerms}"; }];
+    iconUpdateURL = "https://nixos.wiki/favicon.png";
     updateInterval = 24 * 60 * 60 * 1000; # every day
-    definedAliases = [ "@nw" ];
+    definedAliases = [ "@nw" ];
   };
 
-  "Bing".metaData.hidden = true;
-  "Google".metaData.alias = "@g"; # builtin engines only support specifying one additional alias
+  "Bing".metaData.hidden = true;
+  "Google".metaData.alias = "@g"; # builtin engines only support specifying one additional alias
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.search.force

Whether to force replace the existing search + +

+
+
+ + programs.firefox.profiles.<name>.search.force + + +
+
+

Whether to force replace the existing search configuration. This is recommended since Firefox will replace the symlink for the search configuration on every launch, but note that you’ll lose any existing -configuration by enabling this.

Type: -boolean

Default: -false

Declared by:

+
+configuration by enabling this.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.search.order

The order the search engines are listed in. Any engines + +

+
+
+ + programs.firefox.profiles.<name>.search.order + + +
+
+

The order the search engines are listed in. Any engines that aren’t included in this list will be listed after -these in an unspecified order.

Type: -list of string

Default: -[ ]

Example:

[
-  "DuckDuckGo"
-  "Google"
+these in an unspecified order.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "DuckDuckGo"
+  "Google"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.search.privateDefault

The default search engine used in the Private Browsing.

Type: -null or string

Default: -null

Example: -"DuckDuckGo"

Declared by:

+
+ +
+
+
+ + programs.firefox.profiles.<name>.search.privateDefault + + +
+
+

The default search engine used in the Private Browsing.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"DuckDuckGo"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.settings

Attribute set of Firefox preferences.

Firefox only supports int, bool, and string types for + +

+
+
+ + programs.firefox.profiles.<name>.settings + + +
+
+

Attribute set of Firefox preferences.

Firefox only supports int, bool, and string types for preferences, but home-manager will automatically -convert all other JSON-compatible values into strings.

Type: -attribute set of (Firefox preference (int, bool, string, and also attrs, list, float as a JSON string))

Default: -{ }

Example:

{
-  "browser.startup.homepage" = "https://nixos.org";
-  "browser.search.region" = "GB";
-  "browser.search.isUS" = false;
-  "distribution.searchplugins.defaultLocale" = "en-GB";
-  "general.useragent.locale" = "en-GB";
-  "browser.bookmarks.showMobileBookmarks" = true;
-  "browser.newtabpage.pinned" = [{
-    title = "NixOS";
-    url = "https://nixos.org";
+convert all other JSON-compatible values into strings.

+ +

Type: +attribute set of (Firefox preference (int, bool, string, and also attrs, list, float as a JSON string))

+ +

Default: +{ }

+ +

Example:

{
+  "browser.startup.homepage" = "https://nixos.org";
+  "browser.search.region" = "GB";
+  "browser.search.isUS" = false;
+  "distribution.searchplugins.defaultLocale" = "en-GB";
+  "general.useragent.locale" = "en-GB";
+  "browser.bookmarks.showMobileBookmarks" = true;
+  "browser.newtabpage.pinned" = [{
+    title = "NixOS";
+    url = "https://nixos.org";
   }];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.userChrome

Custom Firefox user chrome CSS.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.firefox.profiles.<name>.userChrome + + +
+
+

Custom Firefox user chrome CSS.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   /* Hide tab bar in FF Quantum */
-  @-moz-document url("chrome://browser/content/browser.xul") {
+  @-moz-document url("chrome://browser/content/browser.xul") {
     #TabsToolbar {
       visibility: collapse !important;
       margin-bottom: 21px !important;
     }
   
-    #sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
+    #sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
       visibility: collapse !important;
     }
   }
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.firefox.profiles.<name>.userContent

Custom Firefox user content CSS.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.firefox.profiles.<name>.userContent + + +
+
+

Custom Firefox user content CSS.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   /* Hide scrollbar in FF Quantum */
   *{scrollbar-width:none !important}
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/firefox.nix> -
programs.fish.enable

Whether to enable fish, the friendly interactive shell.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.fish.enable + + +
+
+

Whether to enable fish, the friendly interactive shell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.package

The fish package to install. May be used to change the version.

Type: -package

Default: -pkgs.fish

Declared by:

+
+ +
+
+
+ + programs.fish.package + + +
+
+

The fish package to install. May be used to change the version.

+ +

Type: +package

+ +

Default: +pkgs.fish

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.functions

Basic functions to add to fish. For more information see -https://fishshell.com/docs/current/cmds/function.html.

Type: -attribute set of (strings concatenated with “\n” or (submodule))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.fish.functions + + +
+
+

Basic functions to add to fish. For more information see +https://fishshell.com/docs/current/cmds/function.html.

+ +

Type: +attribute set of (strings concatenated with “\n” or (submodule))

+ +

Default: +{ }

+ +

Example:

{
   __fish_command_not_found_handler = {
-    body = "__fish_default_command_not_found_handler $argv[1]";
-    onEvent = "fish_command_not_found";
+    body = "__fish_default_command_not_found_handler $argv[1]";
+    onEvent = "fish_command_not_found";
   };
 
-  gitignore = "curl -sL https://www.gitignore.io/api/$argv";
+  gitignore = "curl -sL https://www.gitignore.io/api/$argv";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.interactiveShellInit

Shell script code called during interactive fish shell -initialisation.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.fish.interactiveShellInit + + +
+
+

Shell script code called during interactive fish shell +initialisation.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.loginShellInit

Shell script code called during fish login shell -initialisation.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.fish.loginShellInit + + +
+
+

Shell script code called during fish login shell +initialisation.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.plugins

The plugins to source in -conf.d/99plugins.fish.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.fish.plugins + + +
+
+

The plugins to source in +conf.d/99plugins.fish.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    name = "z";
+    name = "z";
     src = pkgs.fetchFromGitHub {
-      owner = "jethrokuan";
-      repo = "z";
-      rev = "ddeb28a7b6a1f0ec6dae40c636e5ca4908ad160a";
-      sha256 = "0c5i7sdrsp0q3vbziqzdyqn4fmp235ax4mn4zslrswvn8g3fvdyh";
+      owner = "jethrokuan";
+      repo = "z";
+      rev = "ddeb28a7b6a1f0ec6dae40c636e5ca4908ad160a";
+      sha256 = "0c5i7sdrsp0q3vbziqzdyqn4fmp235ax4mn4zslrswvn8g3fvdyh";
     };
   }
 
   # oh-my-fish plugins are stored in their own repositories, which
   # makes them simple to import into home-manager.
   {
-    name = "fasd";
+    name = "fasd";
     src = pkgs.fetchFromGitHub {
-      owner = "oh-my-fish";
-      repo = "plugin-fasd";
-      rev = "38a5b6b6011106092009549e52249c6d6f501fba";
-      sha256 = "06v37hqy5yrv5a6ssd1p3cjd9y3hnp19d3ab7dag56fs1qmgyhbs";
+      owner = "oh-my-fish";
+      repo = "plugin-fasd";
+      rev = "38a5b6b6011106092009549e52249c6d6f501fba";
+      sha256 = "06v37hqy5yrv5a6ssd1p3cjd9y3hnp19d3ab7dag56fs1qmgyhbs";
     };
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.plugins.*.name

The name of the plugin.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.fish.plugins.*.name + + +
+
+

The name of the plugin.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.plugins.*.src

Path to the plugin folder.

Relevant pieces will be added to the fish function path and + +

+
+
+ + programs.fish.plugins.*.src + + +
+
+

Path to the plugin folder.

Relevant pieces will be added to the fish function path and the completion path. The init.fish and key_binding.fish files are sourced if -they exist.

Type: -path

Declared by:

+
+they exist.

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.shellAbbrs

An attribute set that maps aliases (the top level attribute names + +

+
+
+ + programs.fish.shellAbbrs + + +
+
+

An attribute set that maps aliases (the top level attribute names in this option) to abbreviations. Abbreviations are expanded with -the longer phrase after they are entered.

Type: -attribute set of (string or (submodule))

Default: -{ }

Example:

{
-  l = "less";
-  gco = "git checkout";
-  "-C" = {
-    position = "anywhere";
-    expansion = "--color";
+the longer phrase after they are entered.

+ +

Type: +attribute set of (string or (submodule))

+ +

Default: +{ }

+ +

Example:

{
+  l = "less";
+  gco = "git checkout";
+  "-C" = {
+    position = "anywhere";
+    expansion = "--color";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fish.nix> -
programs.fish.shellAliases

An attribute set that maps aliases (the top level attribute names -in this option) to command strings or directly to build outputs.

Type: -attribute set of string

Default: -{ }

Example:

{
-  g = "git";
-  "..." = "cd ../..";
+
+
+
+
+ + programs.fish.shellAliases + + +
+
+

An attribute set that maps aliases (the top level attribute names +in this option) to command strings or directly to build outputs.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  g = "git";
+  "..." = "cd ../..";
 }
 
-

Declared by:

-<home-manager/modules/programs/fish.nix> -
programs.fish.shellInit

Shell script code called during fish shell -initialisation.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

-<home-manager/modules/programs/fish.nix> -
programs.foot.enable

Whether to enable Foot terminal.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/foot.nix> -
programs.foot.package

The foot package to install

Type: -package

Default: -pkgs.foot

Declared by:

-<home-manager/modules/programs/foot.nix> -
programs.foot.server.enable

Whether to enable Foot terminal server.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/foot.nix> -
programs.foot.settings

Configuration written to -$XDG_CONFIG_HOME/foot/foot.ini. See https://codeberg.org/dnkl/foot/src/branch/master/foot.ini -for a list of available options.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
-  main = {
-    term = "xterm-256color";
+
- font = "Fira Code:size=11"; - dpi-aware = "yes"; +

Declared by:

+ + +
+ +<home-manager/modules/programs/fish.nix> + +
+
+
+ + programs.fish.shellInit + + +
+
+

Shell script code called during fish shell +initialisation.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/fish.nix> + +
+
+
+ + programs.foot.enable + + +
+
+

Whether to enable Foot terminal.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/foot.nix> + +
+
+
+ + programs.foot.package + + +
+
+

The foot package to install

+ +

Type: +package

+ +

Default: +pkgs.foot

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/foot.nix> + +
+
+
+ + programs.foot.server.enable + + +
+
+

Whether to enable Foot terminal server.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/foot.nix> + +
+
+
+ + programs.foot.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/foot/foot.ini. See https://codeberg.org/dnkl/foot/src/branch/master/foot.ini +for a list of available options.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
+  main = {
+    term = "xterm-256color";
+
+    font = "Fira Code:size=11";
+    dpi-aware = "yes";
   };
 
   mouse = {
-    hide-when-typing = "yes";
+    hide-when-typing = "yes";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/foot.nix> -
programs.fuzzel.enable

Whether to enable fuzzel.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.fuzzel.enable + + +
+
+

Whether to enable fuzzel.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fuzzel.nix> -
programs.fuzzel.package

The fuzzel package to use.

Type: -package

Default: -pkgs.fuzzel

Declared by:

+
+ +
+
+
+ + programs.fuzzel.package + + +
+
+

The fuzzel package to use.

+ +

Type: +package

+ +

Default: +pkgs.fuzzel

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fuzzel.nix> -
programs.fuzzel.settings

Configuration for fuzzel written to + +

+
+
+ + programs.fuzzel.settings + + +
+
+

Configuration for fuzzel written to $XDG_CONFIG_HOME/fuzzel/fuzzel.ini. See -fuzzel.ini(5) for a list of available options.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+fuzzel.ini(5) for a list of available options.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   main = {
-    terminal = "${pkgs.foot}/bin/foot";
-    layer = "overlay";
+    terminal = "${pkgs.foot}/bin/foot";
+    layer = "overlay";
   };
-  colors.background = "ffffffff";
+  colors.background = "ffffffff";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fuzzel.nix> -
programs.fzf.enable

Whether to enable fzf - a command-line fuzzy finder.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.fzf.enable + + +
+
+

Whether to enable fzf - a command-line fuzzy finder.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.fzf.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.fzf.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.fzf.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.package

Package providing the fzf tool.

Type: -package

Default: -pkgs.fzf

Declared by:

+
+ +
+
+
+ + programs.fzf.package + + +
+
+

Package providing the fzf tool.

+ +

Type: +package

+ +

Default: +pkgs.fzf

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.changeDirWidgetCommand

The command that gets executed as the source for fzf for the -ALT-C keybinding.

Type: -null or string

Default: -null

Example: -"fd --type d"

Declared by:

+
+ +
+
+
+ + programs.fzf.changeDirWidgetCommand + + +
+
+

The command that gets executed as the source for fzf for the +ALT-C keybinding.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fd --type d"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.changeDirWidgetOptions

Command line options for the ALT-C keybinding.

Type: -list of string

Default: -[ ]

Example:

[
-  "--preview 'tree -C {} | head -200'"
+
+
+
+
+ + programs.fzf.changeDirWidgetOptions + + +
+
+

Command line options for the ALT-C keybinding.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--preview 'tree -C {} | head -200'"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.colors

Color scheme options added to FZF_DEFAULT_OPTS. See -https://github.com/junegunn/fzf/wiki/Color-schemes -for documentation.

Type: -attribute set of string

Default: -{ }

Example:

{
-  bg = "#1e1e1e";
-  "bg+" = "#1e1e1e";
-  fg = "#d4d4d4";
-  "fg+" = "#d4d4d4";
+
+
+
+
+ + programs.fzf.colors + + +
+
+

Color scheme options added to FZF_DEFAULT_OPTS. See +https://github.com/junegunn/fzf/wiki/Color-schemes +for documentation.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  bg = "#1e1e1e";
+  "bg+" = "#1e1e1e";
+  fg = "#d4d4d4";
+  "fg+" = "#d4d4d4";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.defaultCommand

The command that gets executed as the default source for fzf -when running.

Type: -null or string

Default: -null

Example: -"fd --type f"

Declared by:

+
+ +
+
+
+ + programs.fzf.defaultCommand + + +
+
+

The command that gets executed as the default source for fzf +when running.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fd --type f"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.defaultOptions

Extra command line options given to fzf by default.

Type: -list of string

Default: -[ ]

Example:

[
-  "--height 40%"
-  "--border"
+
+
+
+
+ + programs.fzf.defaultOptions + + +
+
+

Extra command line options given to fzf by default.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--height 40%"
+  "--border"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.fileWidgetCommand

The command that gets executed as the source for fzf for the -CTRL-T keybinding.

Type: -null or string

Default: -null

Example: -"fd --type f"

Declared by:

+
+ +
+
+
+ + programs.fzf.fileWidgetCommand + + +
+
+

The command that gets executed as the source for fzf for the +CTRL-T keybinding.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fd --type f"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.fileWidgetOptions

Command line options for the CTRL-T keybinding.

Type: -list of string

Default: -[ ]

Example:

[
-  "--preview 'head {}'"
+
+
+
+
+ + programs.fzf.fileWidgetOptions + + +
+
+

Command line options for the CTRL-T keybinding.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--preview 'head {}'"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.historyWidgetOptions

Command line options for the CTRL-R keybinding.

Type: -list of string

Default: -[ ]

Example:

[
-  "--sort"
-  "--exact"
+
+
+
+
+ + programs.fzf.historyWidgetOptions + + +
+
+

Command line options for the CTRL-R keybinding.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--sort"
+  "--exact"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.tmux.enableShellIntegration

Whether to enable setting FZF_TMUX=1 which causes shell integration to use fzf-tmux -.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.fzf.tmux.enableShellIntegration + + +
+
+

Whether to enable setting FZF_TMUX=1 which causes shell integration to use fzf-tmux +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.fzf.tmux.shellIntegrationOptions

If programs.fzf.tmux.enableShellIntegration is set to true, + +

+
+
+ + programs.fzf.tmux.shellIntegrationOptions + + +
+
+

If programs.fzf.tmux.enableShellIntegration is set to true, shell integration will use these options for fzf-tmux. -See fzf-tmux --help for available options.

Type: -list of string

Default: -[ ]

Example: -[ "-d 40%" ]

Declared by:

+
+See fzf-tmux --help for available options.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +[ "-d 40%" ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/fzf.nix> -
programs.gallery-dl.enable

Whether to enable gallery-dl.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.gallery-dl.enable + + +
+
+

Whether to enable gallery-dl.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gallery-dl.nix> -
programs.gallery-dl.settings

Configuration written to + +

+
+
+ + programs.gallery-dl.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/gallery-dl/config.json. See -https://github.com/mikf/gallery-dl#configuration -for supported values.

Type: -JSON value

Default: -{ }

Example:

{
-  extractor.base-directory = "~/Downloads";
+https://github.com/mikf/gallery-dl#configuration
+for supported values.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
+  extractor.base-directory = "~/Downloads";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/gallery-dl.nix> -
programs.gh.enable

Whether to enable GitHub CLI tool.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.gh.enable + + +
+
+

Whether to enable GitHub CLI tool.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.package

Package providing gh.

Type: -package

Default: -pkgs.gh

Declared by:

+
+ +
+
+
+ + programs.gh.package + + +
+
+

Package providing gh.

+ +

Type: +package

+ +

Default: +pkgs.gh

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.extensions

gh extensions, see https://cli.github.com/manual/gh_extension.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.gh-eco ]

Declared by:

+
+ +
+
+
+ + programs.gh.extensions + + +
+
+

gh extensions, see https://cli.github.com/manual/gh_extension.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.gh-eco ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.gitCredentialHelper.enable

Whether to enable the gh git credential helper.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.gh.gitCredentialHelper.enable + + +
+
+

Whether to enable the gh git credential helper.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.gitCredentialHelper.hosts

GitHub hosts to enable the gh git credential helper for

Type: -list of string

Default:

[
-  "https://github.com"
+
+
+
+
+ + programs.gh.gitCredentialHelper.hosts + + +
+
+

GitHub hosts to enable the gh git credential helper for

+ +

Type: +list of string

+ +

Default:

[
+  "https://github.com"
 ]
-

Example:

[ "https://github.com" "https://github.example.com" ]
+
-

Declared by:

+
+

Example:

[ "https://github.com" "https://github.example.com" ]
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.settings

Configuration written to $XDG_CONFIG_HOME/gh/config.yml.

Type: -YAML value

Default: -{ }

Example:

{
-  git_protocol = "ssh";
+
+
+
+
+ + programs.gh.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/gh/config.yml.

- prompt = "enabled"; +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
+  git_protocol = "ssh";
+
+  prompt = "enabled";
 
   aliases = {
-    co = "pr checkout";
-    pv = "pr view";
+    co = "pr checkout";
+    pv = "pr view";
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.settings.aliases

Aliases that allow you to create nicknames for gh commands.

Type: -attribute set of string

Default: -{ }

Example:

{
-  co = "pr checkout";
-  pv = "pr view";
+
+
+
+
+ + programs.gh.settings.aliases + + +
+
+

Aliases that allow you to create nicknames for gh commands.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  co = "pr checkout";
+  pv = "pr view";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.settings.editor

The editor that gh should run when creating issues, pull requests, etc. -If blank, will refer to environment.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + programs.gh.settings.editor + + +
+
+

The editor that gh should run when creating issues, pull requests, etc. +If blank, will refer to environment.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh.settings.git_protocol

The protocol to use when performing Git operations.

Type: -string

Default: -"https"

Example: -"ssh"

Declared by:

+
+ +
+
+
+ + programs.gh.settings.git_protocol + + +
+
+

The protocol to use when performing Git operations.

+ +

Type: +string

+ +

Default: +"https"

+ +

Example: +"ssh"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh.nix> -
programs.gh-dash.enable

Whether to enable GitHub CLI dashboard plugin.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.gh-dash.enable + + +
+
+

Whether to enable GitHub CLI dashboard plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh-dash.nix> -
programs.gh-dash.package

The gh-dash package to use.

Type: -package

Default: -pkgs.gh-dash

Declared by:

+
+ +
+
+
+ + programs.gh-dash.package + + +
+
+

The gh-dash package to use.

+ +

Type: +package

+ +

Default: +pkgs.gh-dash

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gh-dash.nix> -
programs.gh-dash.settings

Configuration written to $XDG_CONFIG_HOME/gh-dash/config.yml.

Type: -YAML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.gh-dash.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/gh-dash/config.yml.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   prSections = [{
-    title = "My Pull Requests";
-    filters = "is:open author:@me";
+    title = "My Pull Requests";
+    filters = "is:open author:@me";
   }];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/gh-dash.nix> -
programs.git.enable

Whether to enable Git.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.git.enable + + +
+
+

Whether to enable Git.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.package

Git package to install. Use pkgs.gitAndTools.gitFull -to gain access to git send-email for instance.

Type: -package

Default: -pkgs.git

Declared by:

+
+ +
+
+
+ + programs.git.package + + +
+
+

Git package to install. Use pkgs.gitAndTools.gitFull +to gain access to git send-email for instance.

+ +

Type: +package

+ +

Default: +pkgs.git

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.aliases

Git aliases to define.

Type: -attribute set of string

Default: -{ }

Example:

{
-  co = "checkout";
+
+
+
+
+ + programs.git.aliases + + +
+
+

Git aliases to define.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  co = "checkout";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.attributes

List of defining attributes set globally.

Type: -list of string

Default: -[ ]

Example:

[
-  "*.pdf diff=pdf"
+
+
+
+
+ + programs.git.attributes + + +
+
+

List of defining attributes set globally.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "*.pdf diff=pdf"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.delta.enable

Whether to enable the delta syntax highlighter. -See https://github.com/dandavison/delta.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.git.delta.enable + + +
+
+

Whether to enable the delta syntax highlighter. +See https://github.com/dandavison/delta.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.delta.package

The delta package to use.

Type: -package

Default: -pkgs.delta

Declared by:

+
+ +
+
+
+ + programs.git.delta.package + + +
+
+

The delta package to use.

+ +

Type: +package

+ +

Default: +pkgs.delta

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.delta.options

Options to configure delta.

Type: -attribute set of (string or boolean or signed integer or attribute set of (string or boolean or signed integer))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.git.delta.options + + +
+
+

Options to configure delta.

+ +

Type: +attribute set of (string or boolean or signed integer or attribute set of (string or boolean or signed integer))

+ +

Default: +{ }

+ +

Example:

{
   decorations = {
-    commit-decoration-style = "bold yellow box ul";
-    file-decoration-style = "none";
-    file-style = "bold yellow ul";
+    commit-decoration-style = "bold yellow box ul";
+    file-decoration-style = "none";
+    file-style = "bold yellow ul";
   };
-  features = "decorations";
-  whitespace-error-style = "22 reverse";
+  features = "decorations";
+  whitespace-error-style = "22 reverse";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.diff-so-fancy.enable

Enable the diff-so-fancy diff colorizer. -See https://github.com/so-fancy/diff-so-fancy.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.git.diff-so-fancy.enable + + +
+
+

Enable the diff-so-fancy diff colorizer. +See https://github.com/so-fancy/diff-so-fancy.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.diff-so-fancy.changeHunkIndicators

Simplify git header chunks to a more human readable format.

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+ +
+
+
+ + programs.git.diff-so-fancy.changeHunkIndicators + + +
+
+

Simplify git header chunks to a more human readable format.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.diff-so-fancy.markEmptyLines

Whether the first block of an empty line should be colored.

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+ +
+
+
+ + programs.git.diff-so-fancy.markEmptyLines + + +
+
+

Whether the first block of an empty line should be colored.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.diff-so-fancy.pagerOpts

Arguments to be passed to less.

Type: -list of string

Default:

[
-  "--tabs=4"
-  "-RFX"
+
+
+
+
+ + programs.git.diff-so-fancy.pagerOpts + + +
+
+

Arguments to be passed to less.

+ +

Type: +list of string

+ +

Default:

[
+  "--tabs=4"
+  "-RFX"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.diff-so-fancy.rulerWidth

By default, the separator for the file header spans the full + +

+
+
+ + programs.git.diff-so-fancy.rulerWidth + + +
+
+

By default, the separator for the file header spans the full width of the terminal. Use this setting to set the width of -the file header manually.

Type: -null or signed integer

Default: -null

Example: -false

Declared by:

+
+the file header manually.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.diff-so-fancy.stripLeadingSymbols

Whether the + or - at -line-start should be removed.

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+ +
+
+
+ + programs.git.diff-so-fancy.stripLeadingSymbols + + +
+
+

Whether the + or - at +line-start should be removed.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.diff-so-fancy.useUnicodeRuler

By default, the separator for the file header uses Unicode + +

+
+
+ + programs.git.diff-so-fancy.useUnicodeRuler + + +
+
+

By default, the separator for the file header uses Unicode line-drawing characters. If this is causing output errors on -your terminal, set this to false to use ASCII characters instead.

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+your terminal, set this to false to use ASCII characters instead.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.difftastic.enable

Enable the difftastic syntax highlighter. -See https://github.com/Wilfred/difftastic.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.git.difftastic.enable + + +
+
+

Enable the difftastic syntax highlighter. +See https://github.com/Wilfred/difftastic.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.difftastic.background

Determines whether difftastic should use the lighter or darker colors -for syntax highlighting.

Type: -one of “light”, “dark”

Default: -"light"

Example: -"dark"

Declared by:

+
+ +
+
+
+ + programs.git.difftastic.background + + +
+
+

Determines whether difftastic should use the lighter or darker colors +for syntax highlighting.

+ +

Type: +one of “light”, “dark”

+ +

Default: +"light"

+ +

Example: +"dark"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.difftastic.color

Determines when difftastic should color its output.

Type: -one of “always”, “auto”, “never”

Default: -"auto"

Example: -"always"

Declared by:

+
+ +
+
+
+ + programs.git.difftastic.color + + +
+
+

Determines when difftastic should color its output.

+ +

Type: +one of “always”, “auto”, “never”

+ +

Default: +"auto"

+ +

Example: +"always"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.difftastic.display

Determines how the output displays - in one column or two columns.

Type: -one of “side-by-side”, “side-by-side-show-both”, “inline”

Default: -"side-by-side"

Example: -"inline"

Declared by:

+
+ +
+
+
+ + programs.git.difftastic.display + + +
+
+

Determines how the output displays - in one column or two columns.

+ +

Type: +one of “side-by-side”, “side-by-side-show-both”, “inline”

+ +

Default: +"side-by-side"

+ +

Example: +"inline"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.extraConfig

Additional configuration to add. The use of string values is -deprecated and will be removed in the future.

Type: -strings concatenated with “\n” or attribute set of attribute set of (string or boolean or signed integer or list of (string or boolean or signed integer) or attribute set of (string or boolean or signed integer or list of (string or boolean or signed integer)))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.git.extraConfig + + +
+
+

Additional configuration to add. The use of string values is +deprecated and will be removed in the future.

+ +

Type: +strings concatenated with “\n” or attribute set of attribute set of (string or boolean or signed integer or list of (string or boolean or signed integer) or attribute set of (string or boolean or signed integer or list of (string or boolean or signed integer)))

+ +

Default: +{ }

+ +

Example:

{
   core = {
-    whitespace = "trailing-space,space-before-tab";
+    whitespace = "trailing-space,space-before-tab";
   };
   url = {
-    "ssh://git@host" = {
-      insteadOf = "otherhost";
+    "ssh://git@host" = {
+      insteadOf = "otherhost";
     };
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.hooks

Configuration helper for Git hooks. -See https://git-scm.com/docs/githooks -for reference.

Type: -attribute set of path

Default: -{ }

Example:

{
+
+
+
+
+ + programs.git.hooks + + +
+
+

Configuration helper for Git hooks. +See https://git-scm.com/docs/githooks +for reference.

+ +

Type: +attribute set of path

+ +

Default: +{ }

+ +

Example:

{
   pre-commit = ./pre-commit-script;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.ignores

List of paths that should be globally ignored.

Type: -list of string

Default: -[ ]

Example:

[
-  "*~"
-  "*.swp"
+
+
+
+
+ + programs.git.ignores + + +
+
+

List of paths that should be globally ignored.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "*~"
+  "*.swp"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.includes

List of configuration files to include.

Type: -list of (submodule)

Default: -[ ]

Example:

[
-  { path = "~/path/to/config.inc"; }
+
+
+
+
+ + programs.git.includes + + +
+
+

List of configuration files to include.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
+  { path = "~/path/to/config.inc"; }
   {
-    path = "~/path/to/conditional.inc";
-    condition = "gitdir:~/src/dir";
+    path = "~/path/to/conditional.inc";
+    condition = "gitdir:~/src/dir";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.includes.*.condition

Include this configuration only when condition + +

+
+
+ + programs.git.includes.*.condition + + +
+
+

Include this configuration only when condition matches. Allowed conditions are described in -git-config(1).

Type: -null or string

Default: -null

Declared by:

+
+git-config(1).

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.includes.*.contentSuffix

Nix store name for the git configuration text file, -when generating the configuration text from nix options.

Type: -string

Default: -"gitconfig"

Declared by:

+
+ +
+
+
+ + programs.git.includes.*.contentSuffix + + +
+
+

Nix store name for the git configuration text file, +when generating the configuration text from nix options.

+ +

Type: +string

+ +

Default: +"gitconfig"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.includes.*.contents

Configuration to include. If empty then a path must be given.

This follows the configuration structure as described in -git-config(1).

Type: -attribute set of anything

Default: -{ }

Example:

{
+
+
+
+
+ + programs.git.includes.*.contents + + +
+
+

Configuration to include. If empty then a path must be given.

This follows the configuration structure as described in +git-config(1).

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
   user = {
-    email = "bob@work.example.com";
-    name = "Bob Work";
-    signingKey = "1A2B3C4D5E6F7G8H";
+    email = "bob@work.example.com";
+    name = "Bob Work";
+    signingKey = "1A2B3C4D5E6F7G8H";
   };
   commit = {
     gpgSign = true;
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.includes.*.path

Path of the configuration file to include.

Type: -string or path

Declared by:

+
+ +
+
+
+ + programs.git.includes.*.path + + +
+
+

Path of the configuration file to include.

+ +

Type: +string or path

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.lfs.enable

Whether to enable Git Large File Storage.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.git.lfs.enable + + +
+
+

Whether to enable Git Large File Storage.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.lfs.skipSmudge

Skip automatic downloading of objects on clone or pull. + +

+
+
+ + programs.git.lfs.skipSmudge + + +
+
+

Skip automatic downloading of objects on clone or pull. This requires a manual git lfs pull -every time a new commit is checked out on your repository.

Type: -boolean

Default: -false

Declared by:

+
+every time a new commit is checked out on your repository.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.signing

Options related to signing commits using GnuPG.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.git.signing + + +
+
+

Options related to signing commits using GnuPG.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.signing.gpgPath

Path to GnuPG binary to use.

Type: -string

Default: -"\${pkgs.gnupg}/bin/gpg2"

Declared by:

+
+ +
+
+
+ + programs.git.signing.gpgPath + + +
+
+

Path to GnuPG binary to use.

+ +

Type: +string

+ +

Default: +"\${pkgs.gnupg}/bin/gpg2"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.signing.key

The default GPG signing key fingerprint.

Set to null to let GnuPG decide what signing key -to use depending on commit’s author.

Type: -null or string

Declared by:

+
+ +
+
+
+ + programs.git.signing.key + + +
+
+

The default GPG signing key fingerprint.

Set to null to let GnuPG decide what signing key +to use depending on commit’s author.

+ +

Type: +null or string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.signing.signByDefault

Whether commits and tags should be signed by default.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.git.signing.signByDefault + + +
+
+

Whether commits and tags should be signed by default.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.userEmail

Default user email to use.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.git.userEmail + + +
+
+

Default user email to use.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git.userName

Default user name to use.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.git.userName + + +
+
+

Default user name to use.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git.nix> -
programs.git-cliff.enable

Whether to enable git-cliff changelog generator.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.git-cliff.enable + + +
+
+

Whether to enable git-cliff changelog generator.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git-cliff.nix> -
programs.git-cliff.package

The git-cliff package to use.

Type: -package

Default: -pkgs.git-cliff

Declared by:

+
+ +
+
+
+ + programs.git-cliff.package + + +
+
+

The git-cliff package to use.

+ +

Type: +package

+ +

Default: +pkgs.git-cliff

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git-cliff.nix> -
programs.git-cliff.settings

Configuration written to + +

+
+
+ + programs.git-cliff.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/git-cliff/cliff.toml. See -https://git-cliff.org/docs/configuration -for the documentation.

Type: -TOML value

Default: -{ }

Example:

{
-  header = "Changelog";
+https://git-cliff.org/docs/configuration
+for the documentation.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
+  header = "Changelog";
   trim = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/git-cliff.nix> -
programs.git-credential-oauth.enable

Whether to enable Git authentication handler for OAuth.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.git-credential-oauth.enable + + +
+
+

Whether to enable Git authentication handler for OAuth.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git-credential-oauth.nix> -
programs.git-credential-oauth.package

The git-credential-oauth package to use.

Type: -package

Default: -pkgs.git-credential-oauth

Declared by:

+
+ +
+
+
+ + programs.git-credential-oauth.package + + +
+
+

The git-credential-oauth package to use.

+ +

Type: +package

+ +

Default: +pkgs.git-credential-oauth

+ +

Declared by:

+ +
+ <home-manager/modules/programs/git-credential-oauth.nix> -
programs.gitui.enable

Whether to enable gitui, blazing fast terminal-ui for git written in rust.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.gitui.enable + + +
+
+

Whether to enable gitui, blazing fast terminal-ui for git written in rust.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gitui.nix> -
programs.gitui.package

The package to use.

Type: -package

Default: -"pkgs.gitui"

Declared by:

+
+ +
+
+
+ + programs.gitui.package + + +
+
+

The package to use.

+ +

Type: +package

+ +

Default: +"pkgs.gitui"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gitui.nix> -
programs.gitui.keyConfig

Key config in Ron file format. This is written to -$XDG_CONFIG_HOME/gitui/key_config.ron.

Type: -path or strings concatenated with “\n”

Default: -""

Example:

''
-  exit: Some(( code: Char('c'), modifiers: ( bits: 2,),)),
-  quit: Some(( code: Char('q'), modifiers: ( bits: 0,),)),
+
+
+
+
+ + programs.gitui.keyConfig + + +
+
+

Key config in Ron file format. This is written to +$XDG_CONFIG_HOME/gitui/key_config.ron.

+ +

Type: +path or strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
+  exit: Some(( code: Char('c'), modifiers: ( bits: 2,),)),
+  quit: Some(( code: Char('q'), modifiers: ( bits: 0,),)),
   exit_popup: Some(( code: Esc, modifiers: ( bits: 0,),)),
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/gitui.nix> -
programs.gitui.theme

Theme in Ron file format. This is written to -$XDG_CONFIG_HOME/gitui/theme.ron.

Type: -path or strings concatenated with “\n”

Default:

''
+
+
+
+
+ + programs.gitui.theme + + +
+
+

Theme in Ron file format. This is written to +$XDG_CONFIG_HOME/gitui/theme.ron.

+ +

Type: +path or strings concatenated with “\n”

+ +

Default:

''
   (
     selected_tab: Reset,
     command_fg: White,
@@ -5005,281 +20905,1371 @@ path or strings concatenated with “\n”

Defa tag_fg: LightMagenta, branch_fg: LightYellow, ) -'' -

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/gitui.nix> -
programs.gnome-terminal.enable

Whether to enable Gnome Terminal.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.enable + + +
+
+

Whether to enable Gnome Terminal.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile

A set of Gnome Terminal profiles. Note, the name of a profile must be + +

+
+
+ + programs.gnome-terminal.profile + + +
+
+

A set of Gnome Terminal profiles. Note, the name of a profile must be a UUID. You can generate one, for example, using uuidgen -(from util-linux).

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+(from util-linux).

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.allowBold

If true, allow applications in the -terminal to make text boldface.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.allowBold + + +
+
+

If true, allow applications in the +terminal to make text boldface.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.audibleBell

Turn on/off the terminal’s bell.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.audibleBell + + +
+
+

Turn on/off the terminal’s bell.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.backspaceBinding

Which string the terminal should send to an application when the user -presses the Backspace key.

auto

Attempt to determine the right value from the terminal’s IO settings.

ascii-backspace

Send an ASCII backspace character (0x08).

ascii-delete

Send an ASCII delete character (0x7F).

delete-sequence

Send the @7 control sequence.

tty

Send terminal’s “erase” setting.

Type: -one of “auto”, “ascii-backspace”, “ascii-delete”, “delete-sequence”, “tty”

Default: -"ascii-delete"

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.backspaceBinding + + +
+
+

Which string the terminal should send to an application when the user +presses the Backspace key.

auto

Attempt to determine the right value from the terminal’s IO settings.

ascii-backspace

Send an ASCII backspace character (0x08).

ascii-delete

Send an ASCII delete character (0x7F).

delete-sequence

Send the @7 control sequence.

tty

Send terminal’s “erase” setting.

+ +

Type: +one of “auto”, “ascii-backspace”, “ascii-delete”, “delete-sequence”, “tty”

+ +

Default: +"ascii-delete"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.boldIsBright

Whether bold text is shown in bright colors.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.boldIsBright + + +
+
+

Whether bold text is shown in bright colors.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors

The terminal colors, null to use system default.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors + + +
+
+

The terminal colors, null to use system default.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.backgroundColor

The background color.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.backgroundColor + + +
+
+

The background color.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.boldColor

The bold color, null to use same as foreground.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.boldColor + + +
+
+

The bold color, null to use same as foreground.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.cursor

The color for the terminal cursor.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.cursor + + +
+
+

The color for the terminal cursor.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.cursor.background

The background color.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.cursor.background + + +
+
+

The background color.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.cursor.foreground

The foreground color.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.cursor.foreground + + +
+
+

The foreground color.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.foregroundColor

The foreground color.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.foregroundColor + + +
+
+

The foreground color.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.highlight

The colors for the terminal’s highlighted area.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.highlight + + +
+
+

The colors for the terminal’s highlighted area.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.highlight.background

The background color.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.highlight.background + + +
+
+

The background color.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.highlight.foreground

The foreground color.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.highlight.foreground + + +
+
+

The foreground color.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.colors.palette

The terminal palette.

Type: -list of string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.colors.palette + + +
+
+

The terminal palette.

+ +

Type: +list of string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.cursorBlinkMode

The cursor blink mode.

Type: -one of “system”, “on”, “off”

Default: -"system"

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.cursorBlinkMode + + +
+
+

The cursor blink mode.

+ +

Type: +one of “system”, “on”, “off”

+ +

Default: +"system"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.cursorShape

The cursor shape.

Type: -one of “block”, “ibeam”, “underline”

Default: -"block"

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.cursorShape + + +
+
+

The cursor shape.

+ +

Type: +one of “block”, “ibeam”, “underline”

+ +

Default: +"block"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.customCommand

The command to use to start the shell, or null for default shell.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.customCommand + + +
+
+

The command to use to start the shell, or null for default shell.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.default

Whether this should be the default profile.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.default + + +
+
+

Whether this should be the default profile.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.deleteBinding

Which string the terminal should send to an application when the user -presses the Delete key.

auto

Send the @7 control sequence.

ascii-backspace

Send an ASCII backspace character (0x08).

ascii-delete

Send an ASCII delete character (0x7F).

delete-sequence

Send the @7 control sequence.

tty

Send terminal’s “erase” setting.

Type: -one of “auto”, “ascii-backspace”, “ascii-delete”, “delete-sequence”, “tty”

Default: -"delete-sequence"

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.deleteBinding + + +
+
+

Which string the terminal should send to an application when the user +presses the Delete key.

auto

Send the @7 control sequence.

ascii-backspace

Send an ASCII backspace character (0x08).

ascii-delete

Send an ASCII delete character (0x7F).

delete-sequence

Send the @7 control sequence.

tty

Send terminal’s “erase” setting.

+ +

Type: +one of “auto”, “ascii-backspace”, “ascii-delete”, “delete-sequence”, “tty”

+ +

Default: +"delete-sequence"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.font

The font name, null to use system default.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.font + + +
+
+

The font name, null to use system default.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.loginShell

Run command as a login shell.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.loginShell + + +
+
+

Run command as a login shell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.scrollOnOutput

Whether to scroll when output is written.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.scrollOnOutput + + +
+
+

Whether to scroll when output is written.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.scrollbackLines

The number of scrollback lines to keep, null for infinite.

Type: -null or signed integer

Default: -10000

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.scrollbackLines + + +
+
+

The number of scrollback lines to keep, null for infinite.

+ +

Type: +null or signed integer

+ +

Default: +10000

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.showScrollbar

Whether the scroll bar should be visible.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.showScrollbar + + +
+
+

Whether the scroll bar should be visible.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.transparencyPercent

Background transparency in percent.

Type: -null or integer between 0 and 100 (both inclusive)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.transparencyPercent + + +
+
+

Background transparency in percent.

+ +

Type: +null or integer between 0 and 100 (both inclusive)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.profile.<name>.visibleName

The profile name.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.profile.<name>.visibleName + + +
+
+

The profile name.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.showMenubar

Whether to show the menubar by default

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.showMenubar + + +
+
+

Whether to show the menubar by default

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.gnome-terminal.themeVariant

The theme variation to request

Type: -one of “default”, “light”, “dark”, “system”

Default: -"default"

Declared by:

+
+ +
+
+
+ + programs.gnome-terminal.themeVariant + + +
+
+

The theme variation to request

+ +

Type: +one of “default”, “light”, “dark”, “system”

+ +

Default: +"default"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gnome-terminal.nix> -
programs.go.enable

Whether to enable Go.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.go.enable + + +
+
+

Whether to enable Go.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/go.nix> -
programs.go.package

The Go package to use.

Type: -package

Default: -pkgs.go

Declared by:

+
+ +
+
+
+ + programs.go.package + + +
+
+

The Go package to use.

+ +

Type: +package

+ +

Default: +pkgs.go

+ +

Declared by:

+ +
+ <home-manager/modules/programs/go.nix> -
programs.go.packages

Packages to add to GOPATH.

Type: -attribute set of path

Default: -{ }

Example:

{
-  "golang.org/x/text" = builtins.fetchGit "https://go.googlesource.com/text";
-  "golang.org/x/time" = builtins.fetchGit "https://go.googlesource.com/time";
+
+
+
+
+ + programs.go.packages + + +
+
+

Packages to add to GOPATH.

+ +

Type: +attribute set of path

+ +

Default: +{ }

+ +

Example:

{
+  "golang.org/x/text" = builtins.fetchGit "https://go.googlesource.com/text";
+  "golang.org/x/time" = builtins.fetchGit "https://go.googlesource.com/time";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/go.nix> -
programs.go.extraGoPaths

Extra GOPATHs relative to HOME appended -after programs.go.goPath, if that option is set.

Type: -list of string

Default: -[ ]

Example:

[
-  "extraGoPath1"
-  "extraGoPath2"
+
+
+
+
+ + programs.go.extraGoPaths + + +
+
+

Extra GOPATHs relative to HOME appended +after programs.go.goPath, if that option is set.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "extraGoPath1"
+  "extraGoPath2"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/go.nix> -
programs.go.goBin

GOBIN relative to HOME

Type: -null or string

Default: -null

Example: -".local/bin.go"

Declared by:

+
+ +
+
+
+ + programs.go.goBin + + +
+
+

GOBIN relative to HOME

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +".local/bin.go"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/go.nix> -
programs.go.goPath

Primary GOPATH relative to + +

+
+
+ + programs.go.goPath + + +
+
+

Primary GOPATH relative to HOME. It will be exported first and therefore -used by default by the Go tooling.

Type: -null or string

Default: -null

Example: -"go"

Declared by:

+
+used by default by the Go tooling.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"go"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/go.nix> -
programs.go.goPrivate

The GOPRIVATE environment variable controls + +

+
+
+ + programs.go.goPrivate + + +
+
+

The GOPRIVATE environment variable controls which modules the go command considers to be private (not available publicly) and should therefore not use the proxy -or checksum database.

Type: -list of string

Default: -[ ]

Example:

[
-  "*.corp.example.com"
-  "rsc.io/private"
+or checksum database.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "*.corp.example.com"
+  "rsc.io/private"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/go.nix> -
programs.gpg.enable

Whether to enable GnuPG.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.gpg.enable + + +
+
+

Whether to enable GnuPG.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.package

The Gnupg package to use (also used by the gpg-agent service).

Type: -package

Default: -pkgs.gnupg

Example: -pkgs.gnupg23

Declared by:

+
+ +
+
+
+ + programs.gpg.package + + +
+
+

The Gnupg package to use (also used by the gpg-agent service).

+ +

Type: +package

+ +

Default: +pkgs.gnupg

+ +

Example: +pkgs.gnupg23

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.homedir

Directory to store keychains and configuration.

Type: -path

Default: -"${config.home.homeDirectory}/.gnupg"

Example: -"${config.xdg.dataHome}/gnupg"

Declared by:

+
+ +
+
+
+ + programs.gpg.homedir + + +
+
+

Directory to store keychains and configuration.

+ +

Type: +path

+ +

Default: +"${config.home.homeDirectory}/.gnupg"

+ +

Example: +"${config.xdg.dataHome}/gnupg"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.mutableKeys

If set to true, you may manage your keyring as a user + +

+
+
+ + programs.gpg.mutableKeys + + +
+
+

If set to true, you may manage your keyring as a user using the gpg command. Upon activation, the keyring will have managed keys added without overwriting unmanaged keys.

If set to false, the path $GNUPGHOME/pubring.kbx will become an immutable -link to the Nix store, denying modifications.

Type: -boolean

Default: -true

Declared by:

+
+link to the Nix store, denying modifications.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.mutableTrust

If set to true, you may manage trust as a user using + +

+
+
+ + programs.gpg.mutableTrust + + +
+
+

If set to true, you may manage trust as a user using the gpg command. Upon activation, trusted keys have their trust set without overwriting unmanaged keys.

If set to false, the path $GNUPGHOME/trustdb.gpg will be overwritten on each activation, removing trust for any unmanaged keys. Be careful to make a backup of your old -trustdb.gpg before switching to immutable trust!

Type: -boolean

Default: -true

Declared by:

-<home-manager/modules/programs/gpg.nix> -
programs.gpg.publicKeys

A list of public keys to be imported into GnuPG. Note, these key files -will be copied into the world-readable Nix store.

Type: -list of (submodule)

Default: -[ ]

Example:

[ { source = ./pubkeys.txt; } ]
+trustdb.gpg before switching to immutable trust!

-

Declared by:

+
+

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.publicKeys.*.source

Path of an OpenPGP public key file.

Type: -path

Declared by:

+
+ +
+
+
+ + programs.gpg.publicKeys + + +
+
+

A list of public keys to be imported into GnuPG. Note, these key files +will be copied into the world-readable Nix store.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[ { source = ./pubkeys.txt; } ]
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.publicKeys.*.text

Text of an OpenPGP public key.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gpg.publicKeys.*.source + + +
+
+

Path of an OpenPGP public key file.

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.publicKeys.*.trust

The amount of trust you have in the key ownership and the care the -owner puts into signing other keys. The available levels are

unknown or 1

I don’t know or won’t say.

never or 2

I do not trust.

marginal or 3

I trust marginally.

full or 4

I trust fully.

ultimate or 5

I trust ultimately.

See the Key Management chapter -of the GNU Privacy Handbook for more.

Type: -null or one of “unknown”, 1, “never”, 2, “marginal”, 3, “full”, 4, “ultimate”, 5

Default: -null

Declared by:

+
+ +
+
+
+ + programs.gpg.publicKeys.*.text + + +
+
+

Text of an OpenPGP public key.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.scdaemonSettings

SCdaemon configuration options. Available options are described + +

+
+
+ + programs.gpg.publicKeys.*.trust + + +
+
+

The amount of trust you have in the key ownership and the care the +owner puts into signing other keys. The available levels are

unknown or 1

I don’t know or won’t say.

never or 2

I do not trust.

marginal or 3

I trust marginally.

full or 4

I trust fully.

ultimate or 5

I trust ultimately.

See the Key Management chapter +of the GNU Privacy Handbook for more.

+ +

Type: +null or one of “unknown”, 1, “never”, 2, “marginal”, 3, “full”, 4, “ultimate”, 5

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/gpg.nix> + +
+
+
+ + programs.gpg.scdaemonSettings + + +
+
+

SCdaemon configuration options. Available options are described in - + scdaemon(1) -.

Type: -attribute set of (string or boolean or list of string)

Example:

{
+.

+ +

Type: +attribute set of (string or boolean or list of string)

+ +

Example:

{
   disable-ccid = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.gpg.settings

GnuPG configuration options. Available options are described + +

+
+
+ + programs.gpg.settings + + +
+
+

GnuPG configuration options. Available options are described in - + gpg(1) -.

Note that lists are converted to duplicate keys.

Type: -attribute set of (string or boolean or list of string)

Example:

{
+.

Note that lists are converted to duplicate keys.

+ +

Type: +attribute set of (string or boolean or list of string)

+ +

Example:

{
   no-comments = false;
-  s2k-cipher-algo = "AES128";
+  s2k-cipher-algo = "AES128";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/gpg.nix> -
programs.granted.enable

Whether to enable granted.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.granted.enable + + +
+
+

Whether to enable granted.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/granted.nix> -
programs.granted.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.granted.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/granted.nix> -
programs.havoc.enable

Whether to enable Havoc terminal.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.havoc.enable + + +
+
+

Whether to enable Havoc terminal.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/havoc.nix> -
programs.havoc.package

The havoc package to use.

Type: -package

Default: -pkgs.havoc

Declared by:

+
+ +
+
+
+ + programs.havoc.package + + +
+
+

The havoc package to use.

+ +

Type: +package

+ +

Default: +pkgs.havoc

+ +

Declared by:

+ +
+ <home-manager/modules/programs/havoc.nix> -
programs.havoc.settings

Configuration written to -$XDG_CONFIG_HOME/havoc.cfg. See https://raw.githubusercontent.com/ii8/havoc/master/havoc.cfg -for a list of available options.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
-  child.program = "bash";
+
+
+
+
+ + programs.havoc.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/havoc.cfg. See https://raw.githubusercontent.com/ii8/havoc/master/havoc.cfg +for a list of available options.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
+  child.program = "bash";
   window.opacity = 240;
   window.margin = no;
   terminal = {
@@ -5288,162 +22278,356 @@ attribute set of attribute set of (INI atom (null, bool, int, float or string))<
     scrollback = 2000;
   };
   bind = {
-    "C-S-c" = "copy";
-    "C-S-v" = "paste";
-    "C-S-r" = "reset";
-    "C-S-Delete" = "hard reset";
-    "C-S-j" = "scroll down";
-    "C-S-k" = "scroll up";
-    "C-S-Page_Down" = "scroll down page";
-    "C-S-Page_Up" = "scroll up page";
-    "C-S-End" = "scroll to bottom";
-    "C-S-Home" = "scroll to top";
+    "C-S-c" = "copy";
+    "C-S-v" = "paste";
+    "C-S-r" = "reset";
+    "C-S-Delete" = "hard reset";
+    "C-S-j" = "scroll down";
+    "C-S-k" = "scroll up";
+    "C-S-Page_Down" = "scroll down page";
+    "C-S-Page_Up" = "scroll up page";
+    "C-S-End" = "scroll to bottom";
+    "C-S-Home" = "scroll to top";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/havoc.nix> -
programs.helix.enable

Whether to enable helix text editor.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.helix.enable + + +
+
+

Whether to enable helix text editor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/helix.nix> -
programs.helix.package

The package to use for helix.

Type: -package

Default: -pkgs.helix

Declared by:

+
+ +
+
+
+ + programs.helix.package + + +
+
+

The package to use for helix.

+ +

Type: +package

+ +

Default: +pkgs.helix

+ +

Declared by:

+ +
+ <home-manager/modules/programs/helix.nix> -
programs.helix.defaultEditor

Whether to configure hx as the default -editor using the EDITOR environment variable.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.helix.defaultEditor + + +
+
+

Whether to configure hx as the default +editor using the EDITOR environment variable.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/helix.nix> -
programs.helix.extraPackages

Extra packages available to hx.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.marksman ]

Declared by:

+
+ +
+
+
+ + programs.helix.extraPackages + + +
+
+

Extra packages available to hx.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.marksman ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/helix.nix> -
programs.helix.languages

Language specific configuration at -$XDG_CONFIG_HOME/helix/languages.toml.

See https://docs.helix-editor.com/languages.html -for more information.

Type: -(TOML value) or (list of (TOML value)) convertible to it

Default: -{ }

Example:

{
+
+
+
+
+ + programs.helix.languages + + +
+
+

Language specific configuration at +$XDG_CONFIG_HOME/helix/languages.toml.

See https://docs.helix-editor.com/languages.html +for more information.

+ +

Type: +(TOML value) or (list of (TOML value)) convertible to it

+ +

Default: +{ }

+ +

Example:

{
   # the language-server option currently requires helix from the master branch at https://github.com/helix-editor/helix/
   language-server.typescript-language-server = with pkgs.nodePackages; {
-    command = "${typescript-language-server}/bin/typescript-language-server";
-    args = [ "--stdio" "--tsserver-path=${typescript}/lib/node_modules/typescript/lib" ];
+    command = "${typescript-language-server}/bin/typescript-language-server";
+    args = [ "--stdio" "--tsserver-path=${typescript}/lib/node_modules/typescript/lib" ];
   };
 
   language = [{
-    name = "rust";
+    name = "rust";
     auto-format = false;
   }];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/helix.nix> -
programs.helix.settings

Configuration written to -$XDG_CONFIG_HOME/helix/config.toml.

See https://docs.helix-editor.com/configuration.html -for the full list of options.

Type: -TOML value

Default: -{ }

Example:

{
-  theme = "base16";
+
+
+
+
+ + programs.helix.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/helix/config.toml.

See https://docs.helix-editor.com/configuration.html +for the full list of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
+  theme = "base16";
   editor = {
-    line-number = "relative";
+    line-number = "relative";
     lsp.display-messages = true;
   };
   keys.normal = {
-    space.space = "file_picker";
-    space.w = ":w";
-    space.q = ":q";
-    esc = [ "collapse_selection" "keep_primary_selection" ];
+    space.space = "file_picker";
+    space.w = ":w";
+    space.q = ":q";
+    esc = [ "collapse_selection" "keep_primary_selection" ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/helix.nix> -
programs.helix.themes

Each theme is written to + +

+
+
+ + programs.helix.themes + + +
+
+

Each theme is written to $XDG_CONFIG_HOME/helix/themes/theme-name.toml. -Where the name of each attribute is the theme-name (in the example “base16”).

See https://docs.helix-editor.com/themes.html -for the full list of options.

Type: -attribute set of (TOML value)

Default: -{ }

Example:

{
+Where the name of each attribute is the theme-name (in the example “base16”).

See https://docs.helix-editor.com/themes.html +for the full list of options.

+ +

Type: +attribute set of (TOML value)

+ +

Default: +{ }

+ +

Example:

{
   base16 = let
-    transparent = "none";
-    gray = "#665c54";
-    dark-gray = "#3c3836";
-    white = "#fbf1c7";
-    black = "#282828";
-    red = "#fb4934";
-    green = "#b8bb26";
-    yellow = "#fabd2f";
-    orange = "#fe8019";
-    blue = "#83a598";
-    magenta = "#d3869b";
-    cyan = "#8ec07c";
+    transparent = "none";
+    gray = "#665c54";
+    dark-gray = "#3c3836";
+    white = "#fbf1c7";
+    black = "#282828";
+    red = "#fb4934";
+    green = "#b8bb26";
+    yellow = "#fabd2f";
+    orange = "#fe8019";
+    blue = "#83a598";
+    magenta = "#d3869b";
+    cyan = "#8ec07c";
   in {
-    "ui.menu" = transparent;
-    "ui.menu.selected" = { modifiers = [ "reversed" ]; };
-    "ui.linenr" = { fg = gray; bg = dark-gray; };
-    "ui.popup" = { modifiers = [ "reversed" ]; };
-    "ui.linenr.selected" = { fg = white; bg = black; modifiers = [ "bold" ]; };
-    "ui.selection" = { fg = black; bg = blue; };
-    "ui.selection.primary" = { modifiers = [ "reversed" ]; };
-    "comment" = { fg = gray; };
-    "ui.statusline" = { fg = white; bg = dark-gray; };
-    "ui.statusline.inactive" = { fg = dark-gray; bg = white; };
-    "ui.help" = { fg = dark-gray; bg = white; };
-    "ui.cursor" = { modifiers = [ "reversed" ]; };
-    "variable" = red;
-    "variable.builtin" = orange;
-    "constant.numeric" = orange;
-    "constant" = orange;
-    "attributes" = yellow;
-    "type" = yellow;
-    "ui.cursor.match" = { fg = yellow; modifiers = [ "underlined" ]; };
-    "string" = green;
-    "variable.other.member" = red;
-    "constant.character.escape" = cyan;
-    "function" = blue;
-    "constructor" = blue;
-    "special" = blue;
-    "keyword" = magenta;
-    "label" = magenta;
-    "namespace" = blue;
-    "diff.plus" = green;
-    "diff.delta" = yellow;
-    "diff.minus" = red;
-    "diagnostic" = { modifiers = [ "underlined" ]; };
-    "ui.gutter" = { bg = black; };
-    "info" = blue;
-    "hint" = dark-gray;
-    "debug" = dark-gray;
-    "warning" = yellow;
-    "error" = red;
+    "ui.menu" = transparent;
+    "ui.menu.selected" = { modifiers = [ "reversed" ]; };
+    "ui.linenr" = { fg = gray; bg = dark-gray; };
+    "ui.popup" = { modifiers = [ "reversed" ]; };
+    "ui.linenr.selected" = { fg = white; bg = black; modifiers = [ "bold" ]; };
+    "ui.selection" = { fg = black; bg = blue; };
+    "ui.selection.primary" = { modifiers = [ "reversed" ]; };
+    "comment" = { fg = gray; };
+    "ui.statusline" = { fg = white; bg = dark-gray; };
+    "ui.statusline.inactive" = { fg = dark-gray; bg = white; };
+    "ui.help" = { fg = dark-gray; bg = white; };
+    "ui.cursor" = { modifiers = [ "reversed" ]; };
+    "variable" = red;
+    "variable.builtin" = orange;
+    "constant.numeric" = orange;
+    "constant" = orange;
+    "attributes" = yellow;
+    "type" = yellow;
+    "ui.cursor.match" = { fg = yellow; modifiers = [ "underlined" ]; };
+    "string" = green;
+    "variable.other.member" = red;
+    "constant.character.escape" = cyan;
+    "function" = blue;
+    "constructor" = blue;
+    "special" = blue;
+    "keyword" = magenta;
+    "label" = magenta;
+    "namespace" = blue;
+    "diff.plus" = green;
+    "diff.delta" = yellow;
+    "diff.minus" = red;
+    "diagnostic" = { modifiers = [ "underlined" ]; };
+    "ui.gutter" = { bg = black; };
+    "info" = blue;
+    "hint" = dark-gray;
+    "debug" = dark-gray;
+    "warning" = yellow;
+    "error" = red;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/helix.nix> -
programs.hexchat.enable

Whether to enable HexChat, a graphical IRC client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.hexchat.enable + + +
+
+

Whether to enable HexChat, a graphical IRC client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels

Configures $XDG_CONFIG_HOME/hexchat/servlist.conf.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.hexchat.channels + + +
+
+

Configures $XDG_CONFIG_HOME/hexchat/servlist.conf.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
   oftc = {
     autojoin = [
-      "#home-manager"
-      "#linux"
+      "#home-manager"
+      "#linux"
     ];
-    charset = "UTF-8 (Unicode)";
+    charset = "UTF-8 (Unicode)";
     commands = [
-      "ECHO Buzz Lightyear sent you a message: 'To Infinity... and Beyond!'"
+      "ECHO Buzz Lightyear sent you a message: 'To Infinity... and Beyond!'"
     ];
     loginMethod = sasl;
-    nickname = "my_nickname";
-    nickname2 = "my_secondchoice";
+    nickname = "my_nickname";
+    nickname2 = "my_secondchoice";
     options = {
       acceptInvalidSSLCertificates = false;
       autoconnect = true;
@@ -5452,198 +22636,868 @@ attribute set of (submodule)

Default:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.autojoin

Channels list to autojoin on connecting to server.

Type: -list of string

Default: -[ ]

Example:

[
-  "#home-manager"
-  "#linux"
-  "#nix"
+
+
+
+
+ + programs.hexchat.channels.<name>.autojoin + + +
+
+

Channels list to autojoin on connecting to server.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "#home-manager"
+  "#linux"
+  "#nix"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.charset

Character set.

Type: -null or string

Default: -null

Example: -"UTF-8 (Unicode)"

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.charset + + +
+
+

Character set.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"UTF-8 (Unicode)"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.commands

Commands to be executed on connecting to server.

Type: -list of string

Default: -[ ]

Example: -[ "ECHO Greetings fellow Nixer! ]

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.commands + + +
+
+

Commands to be executed on connecting to server.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +[ "ECHO Greetings fellow Nixer! ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.loginMethod

The login method. The allowed options are:

null

Default

"nickServMsg"

NickServ (/MSG NickServ + password)

"nickServ"

NickServ (/NICKSERV + password)

"challengeAuth"

Challenge Auth (username + password)

"sasl"

SASL (username + password)

"serverPassword"

Server password (/PASS password)

"saslExternal"

SASL EXTERNAL (cert)

"customCommands"

Use “commands” field for auth. For example

commands = [ "/msg NickServ IDENTIFY my_password" ]
-

Type: -null or one of “challengeAuth”, “customCommands”, “nickServ”, “nickServMsg”, “sasl”, “saslExternal”, “serverPassword”

Default: -null

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.loginMethod + + +
+
+

The login method. The allowed options are:

null

Default

"nickServMsg"

NickServ (/MSG NickServ + password)

"nickServ"

NickServ (/NICKSERV + password)

"challengeAuth"

Challenge Auth (username + password)

"sasl"

SASL (username + password)

"serverPassword"

Server password (/PASS password)

"saslExternal"

SASL EXTERNAL (cert)

"customCommands"

Use “commands” field for auth. For example

commands = [ "/msg NickServ IDENTIFY my_password" ]
+
+ +

Type: +null or one of “challengeAuth”, “customCommands”, “nickServ”, “nickServMsg”, “sasl”, “saslExternal”, “serverPassword”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.nickname

Primary nickname.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.nickname + + +
+
+

Primary nickname.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.nickname2

Secondary nickname.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.nickname2 + + +
+
+

Secondary nickname.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.options

Channel options.

Type: -null or (submodule)

Default: -null

Example:

{
+
+
+
+
+ + programs.hexchat.channels.<name>.options + + +
+
+

Channel options.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{
   autoconnect = true;
   useGlobalUserInformation = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.options.acceptInvalidSSLCertificates

Accept invalid SSL certificates.

Type: -null or boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.options.acceptInvalidSSLCertificates + + +
+
+

Accept invalid SSL certificates.

+ +

Type: +null or boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.options.autoconnect

Autoconnect to network.

Type: -null or boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.options.autoconnect + + +
+
+

Autoconnect to network.

+ +

Type: +null or boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.options.bypassProxy

Bypass proxy.

Type: -null or boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.options.bypassProxy + + +
+
+

Bypass proxy.

+ +

Type: +null or boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.options.connectToSelectedServerOnly

Connect to selected server only.

Type: -null or boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.options.connectToSelectedServerOnly + + +
+
+

Connect to selected server only.

+ +

Type: +null or boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.options.forceSSL

Use SSL for all servers.

Type: -null or boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.options.forceSSL + + +
+
+

Use SSL for all servers.

+ +

Type: +null or boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.options.useGlobalUserInformation

Use global user information.

Type: -null or boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.options.useGlobalUserInformation + + +
+
+

Use global user information.

+ +

Type: +null or boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.password

Password to use. Note this password will be readable by all user’s -in the Nix store.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.password + + +
+
+

Password to use. Note this password will be readable by all user’s +in the Nix store.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.realName

Real name. Is used to populate the real name field that appears when -someone uses the WHOIS command on your nick.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.realName + + +
+
+

Real name. Is used to populate the real name field that appears when +someone uses the WHOIS command on your nick.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.servers

IRC Server Address List.

Type: -list of string

Default: -[ ]

Example:

[
-  "irc.oftc.net"
+
+
+
+
+ + programs.hexchat.channels.<name>.servers + + +
+
+

IRC Server Address List.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "irc.oftc.net"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.channels.<name>.userName

User name. Part of your user@host hostmask that -appears to other on IRC.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.hexchat.channels.<name>.userName + + +
+
+

User name. Part of your user@host hostmask that +appears to other on IRC.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.overwriteConfigFiles

Enables overwriting HexChat configuration files + +

+
+
+ + programs.hexchat.overwriteConfigFiles + + +
+
+

Enables overwriting HexChat configuration files (hexchat.conf, servlist.conf). Any existing HexChat configuration will be lost. Make sure to back up any previous configuration before enabling this.

Enabling this setting is recommended, because everytime HexChat application is closed it overwrites Nix/Home Manager provided -configuration files, causing:

  1. Nix/Home Manager provided configuration to be out of sync with +configuration files, causing:

    1. Nix/Home Manager provided configuration to be out of sync with actual active HexChat configuration.

    2. Nix/Home Manager updates to be blocked until configuration files are -manually removed.

    Type: -null or boolean

    Default: -false

    Declared by:

    +
    +manually removed.

    + +

    Type: +null or boolean

    + +

    Default: +false

    + +

    Declared by:

    + +
    + <home-manager/modules/programs/hexchat.nix> -
    programs.hexchat.settings

    Configuration for $XDG_CONFIG_HOME/hexchat/hexchat.conf, see -https://hexchat.readthedocs.io/en/latest/settings.html#list-of-settings -for supported values.

    Type: -null or (attribute set of string)

    Default: -null

    Example:

    {
    -  irc_nick1 = "mynick";
    -  irc_username = "bob";
    -  irc_realname = "Bart Simpson";
    -  text_font = "Monospace 14";
    +
    +
    +
+
+ + programs.hexchat.settings + + +
+
+

Configuration for $XDG_CONFIG_HOME/hexchat/hexchat.conf, see +https://hexchat.readthedocs.io/en/latest/settings.html#list-of-settings +for supported values.

+ +

Type: +null or (attribute set of string)

+ +

Default: +null

+ +

Example:

{
+  irc_nick1 = "mynick";
+  irc_username = "bob";
+  irc_realname = "Bart Simpson";
+  text_font = "Monospace 14";
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.hexchat.theme

Theme package for HexChat. Expects a derivation containing decompressed + +

+
+
+ + programs.hexchat.theme + + +
+
+

Theme package for HexChat. Expects a derivation containing decompressed theme files. Note, .hct files are actually ZIP files, -as seen in example.

Type: -null or package

Default: -null

Example:

source = pkgs.fetchzip {
-  url = "https://dl.hexchat.net/themes/Monokai.hct#Monokai.zip";
-  sha256 = "sha256-WCdgEr8PwKSZvBMs0fN7E2gOjNM0c2DscZGSKSmdID0=";
+as seen in example.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example:

source = pkgs.fetchzip {
+  url = "https://dl.hexchat.net/themes/Monokai.hct#Monokai.zip";
+  sha256 = "sha256-WCdgEr8PwKSZvBMs0fN7E2gOjNM0c2DscZGSKSmdID0=";
   stripRoot = false;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/hexchat.nix> -
programs.himalaya.enable

Whether to enable the Himalaya email client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.himalaya.enable + + +
+
+

Whether to enable the Himalaya email client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
programs.himalaya.package

The himalaya package to use.

Type: -package

Default: -pkgs.himalaya

Declared by:

+
+ +
+
+
+ + programs.himalaya.package + + +
+
+

The himalaya package to use.

+ +

Type: +package

+ +

Default: +pkgs.himalaya

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
programs.himalaya.settings

Himalaya global configuration. -See https://pimalaya.org/himalaya/cli/configuration/global.html for supported values.

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.himalaya.settings + + +
+
+

Himalaya global configuration. +See https://pimalaya.org/himalaya/cli/configuration/global.html for supported values.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
programs.home-manager.enable

Whether to enable Home Manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.home-manager.enable + + +
+
+

Whether to enable Home Manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/home-manager.nix> -
programs.home-manager.path

The default path to use for Home Manager. When + +

+
+
+ + programs.home-manager.path + + +
+
+

The default path to use for Home Manager. When null, then the home-manager channel, $HOME/.config/nixpkgs/home-manager, and -$HOME/.nixpkgs/home-manager will be attempted.

Type: -null or string

Default: -null

Example: -"$HOME/devel/home-manager"

Declared by:

+
+$HOME/.nixpkgs/home-manager will be attempted.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"$HOME/devel/home-manager"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/home-manager.nix> -
programs.hstr.enable

Whether to enable Bash And Zsh shell history suggest box - easily view, navigate, search and -manage your command history.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.hstr.enable + + +
+
+

Whether to enable Bash And Zsh shell history suggest box - easily view, navigate, search and +manage your command history.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hstr.nix> -
programs.hstr.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.hstr.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hstr.nix> -
programs.hstr.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.hstr.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hstr.nix> -
programs.hstr.package

The hstr package to use.

Type: -package

Default: -pkgs.hstr

Declared by:

+
+ +
+
+
+ + programs.hstr.package + + +
+
+

The hstr package to use.

+ +

Type: +package

+ +

Default: +pkgs.hstr

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hstr.nix> -
programs.htop.enable

Whether to enable htop.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.htop.enable + + +
+
+

Whether to enable htop.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/htop.nix> -
programs.htop.package

Package containing the htop program.

Type: -package

Default: -pkgs.htop

Declared by:

+
+ +
+
+
+ + programs.htop.package + + +
+
+

Package containing the htop program.

+ +

Type: +package

+ +

Default: +pkgs.htop

+ +

Declared by:

+ +
+ <home-manager/modules/programs/htop.nix> -
programs.htop.settings

Configuration options to add to -$XDG_CONFIG_HOME/htop/htoprc.

Type: -attribute set

Default: -{ }

Example:

{
+
+
+
+
+ + programs.htop.settings + + +
+
+

Configuration options to add to +$XDG_CONFIG_HOME/htop/htoprc.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example:

{
   color_scheme = 6;
   cpu_count_from_one = 0;
   delay = 15;
@@ -5665,375 +23519,1013 @@ attribute set

Default: highlight_megabytes = 1; highlight_threads = 1; } // (with config.lib.htop; leftMeters [ - (bar "AllCPUs2") - (bar "Memory") - (bar "Swap") - (text "Zram") + (bar "AllCPUs2") + (bar "Memory") + (bar "Swap") + (text "Zram") ]) // (with config.lib.htop; rightMeters [ - (text "Tasks") - (text "LoadAverage") - (text "Uptime") - (text "Systemd") + (text "Tasks") + (text "LoadAverage") + (text "Uptime") + (text "Systemd") ]); -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/htop.nix> -
programs.hyfetch.enable

Whether to enable hyfetch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.hyfetch.enable + + +
+
+

Whether to enable hyfetch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hyfetch.nix> -
programs.hyfetch.package

The hyfetch package to use.

Type: -package

Default: -pkgs.hyfetch

Declared by:

+
+ +
+
+
+ + programs.hyfetch.package + + +
+
+

The hyfetch package to use.

+ +

Type: +package

+ +

Default: +pkgs.hyfetch

+ +

Declared by:

+ +
+ <home-manager/modules/programs/hyfetch.nix> -
programs.hyfetch.settings

JSON config for HyFetch

Type: -JSON value

Default: -{ }

Example:

{
-  preset = "rainbow";
-  mode = "rgb";
+
+
+
+
+ + programs.hyfetch.settings + + +
+
+

JSON config for HyFetch

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
+  preset = "rainbow";
+  mode = "rgb";
   color_align = {
-    mode = "horizontal";
+    mode = "horizontal";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/hyfetch.nix> -
programs.i3status.enable

Whether to enable i3status.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.i3status.enable + + +
+
+

Whether to enable i3status.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status.enableDefault

Whether or not to enable -the default configuration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.i3status.enableDefault + + +
+
+

Whether or not to enable +the default configuration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status.package

The i3status package to use.

Type: -package

Default: -pkgs.i3status

Declared by:

+
+ +
+
+
+ + programs.i3status.package + + +
+
+

The i3status package to use.

+ +

Type: +package

+ +

Default: +pkgs.i3status

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status.general

Configuration to add to i3status config + +

+
+
+ + programs.i3status.general + + +
+
+

Configuration to add to i3status config general section. See i3status(1) -for options.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
+for options.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
   colors = true;
-  color_good = "#e0e0e0";
-  color_degraded = "#d7ae00";
-  color_bad = "#f69d6a";
+  color_good = "#e0e0e0";
+  color_degraded = "#d7ae00";
+  color_bad = "#f69d6a";
   interval = 1;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status.modules

Modules to add to i3status config file. + +

+
+
+ + programs.i3status.modules + + +
+
+

Modules to add to i3status config file. See i3status(1) -for options.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
-  "volume master" = {
+for options.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  "volume master" = {
     position = 1;
     settings = {
-      format = "♪ %volume";
-      format_muted = "♪ muted (%volume)";
-      device = "pulse:1";
+      format = "♪ %volume";
+      format_muted = "♪ muted (%volume)";
+      device = "pulse:1";
     };
   };
-  "disk /" = {
+  "disk /" = {
     position = 2;
     settings = {
-      format = "/ %avail";
+      format = "/ %avail";
     };
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status.modules.<name>.enable

Whether or not to enable this module.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.i3status.modules.<name>.enable + + +
+
+

Whether or not to enable this module.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status.modules.<name>.position

Position of this module in i3status order.

Type: -signed integer or floating point number

Declared by:

+
+ +
+
+
+ + programs.i3status.modules.<name>.position + + +
+
+

Position of this module in i3status order.

+ +

Type: +signed integer or floating point number

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status.modules.<name>.settings

Configuration to add to this i3status module. + +

+
+
+ + programs.i3status.modules.<name>.settings + + +
+
+

Configuration to add to this i3status module. See i3status(1) -for options.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  format = "♪ %volume";
-  format_muted = "♪ muted (%volume)";
-  device = "pulse:1";
+for options.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  format = "♪ %volume";
+  format_muted = "♪ muted (%volume)";
+  device = "pulse:1";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/i3status.nix> -
programs.i3status-rust.enable

Whether to enable a replacement for i3-status written in Rust.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.i3status-rust.enable + + +
+
+

Whether to enable a replacement for i3-status written in Rust.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status-rust.nix> -
programs.i3status-rust.package

Package providing i3status-rust

Type: -package

Default: -pkgs.i3status-rust

Declared by:

+
+ +
+
+
+ + programs.i3status-rust.package + + +
+
+

Package providing i3status-rust

+ +

Type: +package

+ +

Default: +pkgs.i3status-rust

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status-rust.nix> -
programs.i3status-rust.bars

Attribute set of i3status-rust bars, each with their own configuration. + +

+
+
+ + programs.i3status-rust.bars + + +
+
+

Attribute set of i3status-rust bars, each with their own configuration. Each bar name generates a config file suffixed with the bar’s name from the attribute set, like so: config-${name}.toml.

This way, multiple config files can be generated, such as for having a top and a bottom bar.

See i3status-rust(1) -for options.

Type: -attribute set of (submodule)

Default:

{
+for options.

+ +

Type: +attribute set of (submodule)

+ +

Default:

{
   default = {
     blocks = [
       {
         alert = 10.0;
-        block = "disk_space";
-        info_type = "available";
+        block = "disk_space";
+        info_type = "available";
         interval = 60;
-        path = "/";
+        path = "/";
         warning = 20.0;
       }
       {
-        block = "memory";
-        format = " $icon mem_used_percents ";
-        format_alt = " $icon $swap_used_percents ";
+        block = "memory";
+        format = " $icon mem_used_percents ";
+        format_alt = " $icon $swap_used_percents ";
       }
       {
-        block = "cpu";
+        block = "cpu";
         interval = 1;
       }
       {
-        block = "load";
-        format = " $icon $1m ";
+        block = "load";
+        format = " $icon $1m ";
         interval = 1;
       }
       {
-        block = "sound";
+        block = "sound";
       }
       {
-        block = "time";
-        format = " $timestamp.datetime(f:'%a %d/%m %R') ";
+        block = "time";
+        format = " $timestamp.datetime(f:'%a %d/%m %R') ";
         interval = 60;
       }
     ];
   };
 }
-

Example:

bottom = {
+
+ +

Example:

bottom = {
   blocks = [
     {
-       block = "disk_space";
-       path = "/";
-       info_type = "available";
+       block = "disk_space";
+       path = "/";
+       info_type = "available";
        interval = 60;
        warning = 20.0;
        alert = 10.0;
      }
      {
-       block = "memory";
-       format_mem = " $icon $mem_used_percents ";
-       format_swap = " $icon $swap_used_percents ";
+       block = "memory";
+       format_mem = " $icon $mem_used_percents ";
+       format_swap = " $icon $swap_used_percents ";
      }
      {
-       block = "cpu";
+       block = "cpu";
        interval = 1;
      }
      {
-       block = "load";
+       block = "load";
        interval = 1;
-       format = " $icon $1m ";
+       format = " $icon $1m ";
      }
-     { block = "sound"; }
+     { block = "sound"; }
      {
-       block = "time";
+       block = "time";
        interval = 60;
-       format = " $timestamp.datetime(f:'%a %d/%m %R') ";
+       format = " $timestamp.datetime(f:'%a %d/%m %R') ";
      }
   ];
   settings = {
     theme =  {
-      theme = "solarized-dark";
+      theme = "solarized-dark";
       overrides = {
-        idle_bg = "#123456";
-        idle_fg = "#abcdef";
+        idle_bg = "#123456";
+        idle_fg = "#abcdef";
       };
     };
   };
-  icons = "awesome5";
-  theme = "gruvbox-dark";
+  icons = "awesome5";
+  theme = "gruvbox-dark";
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/i3status-rust.nix> -
programs.i3status-rust.bars.<name>.blocks

Configuration blocks to add to i3status-rust + +

+
+
+ + programs.i3status-rust.bars.<name>.blocks + + +
+
+

Configuration blocks to add to i3status-rust config. See -https://github.com/greshake/i3status-rust/blob/master/blocks.md -for block options.

Type: -TOML value

Default:

[
+https://github.com/greshake/i3status-rust/blob/master/blocks.md
+for block options.

+ +

Type: +TOML value

+ +

Default:

[
   {
-    block = "cpu";
+    block = "cpu";
   }
   {
     alert = 10.0;
-    block = "disk_space";
-    format = " $icon root: $available.eng(w:2) ";
-    info_type = "available";
+    block = "disk_space";
+    format = " $icon root: $available.eng(w:2) ";
+    info_type = "available";
     interval = 20;
-    path = "/";
+    path = "/";
     warning = 20.0;
   }
   {
-    block = "memory";
-    format = " $icon $mem_total_used_percents.eng(w:2) ";
-    format_alt = " $icon_swap $swap_used_percents.eng(w:2) ";
+    block = "memory";
+    format = " $icon $mem_total_used_percents.eng(w:2) ";
+    format_alt = " $icon_swap $swap_used_percents.eng(w:2) ";
   }
   {
-    block = "sound";
+    block = "sound";
     click = [
       {
-        button = "left";
-        cmd = "pavucontrol";
+        button = "left";
+        cmd = "pavucontrol";
       }
     ];
   }
   {
-    block = "time";
-    format = " $timestamp.datetime(f:'%a %d/%m %R') ";
+    block = "time";
+    format = " $timestamp.datetime(f:'%a %d/%m %R') ";
     interval = 5;
   }
 ]
-

Example:

[
+
+ +

Example:

[
   {
-    block = "disk_space";
-    path = "/";
-    info_type = "available";
+    block = "disk_space";
+    path = "/";
+    info_type = "available";
     interval = 60;
     warning = 20.0;
     alert = 10.0;
   }
   {
-    block = "sound";
-    format = " $icon $output_name {$volume.eng(w:2) |}";
+    block = "sound";
+    format = " $icon $output_name {$volume.eng(w:2) |}";
     click = [
       {
-        button = "left";
-        cmd = "pavucontrol --tab=3";
+        button = "left";
+        cmd = "pavucontrol --tab=3";
       }
     ];
     mappings = {
-      "alsa_output.pci-0000_00_1f.3.analog-stereo" = "";
-      "bluez_sink.70_26_05_DA_27_A4.a2dp_sink" = "";
+      "alsa_output.pci-0000_00_1f.3.analog-stereo" = "";
+      "bluez_sink.70_26_05_DA_27_A4.a2dp_sink" = "";
     };
   }
 ];
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/i3status-rust.nix> -
programs.i3status-rust.bars.<name>.icons

The icons set to use. See -https://github.com/greshake/i3status-rust/blob/master/doc/themes.md -for a list of available icon sets.

Type: -string

Default: -"none"

Example: -"awesome6"

Declared by:

+
+ +
+
+
+ + programs.i3status-rust.bars.<name>.icons + + +
+
+

The icons set to use. See +https://github.com/greshake/i3status-rust/blob/master/doc/themes.md +for a list of available icon sets.

+ +

Type: +string

+ +

Default: +"none"

+ +

Example: +"awesome6"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status-rust.nix> -
programs.i3status-rust.bars.<name>.settings

Any extra options to add to i3status-rust -config.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.i3status-rust.bars.<name>.settings + + +
+
+

Any extra options to add to i3status-rust +config.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   theme =  {
-    theme = "solarized-dark";
+    theme = "solarized-dark";
     overrides = {
-      idle_bg = "#123456";
-      idle_fg = "#abcdef";
+      idle_bg = "#123456";
+      idle_fg = "#abcdef";
     };
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/i3status-rust.nix> -
programs.i3status-rust.bars.<name>.theme

The theme to use. See -https://github.com/greshake/i3status-rust/blob/master/doc/themes.md -for a list of available themes.

Type: -string

Default: -"plain"

Example: -"gruvbox-dark"

Declared by:

+
+ +
+
+
+ + programs.i3status-rust.bars.<name>.theme + + +
+
+

The theme to use. See +https://github.com/greshake/i3status-rust/blob/master/doc/themes.md +for a list of available themes.

+ +

Type: +string

+ +

Default: +"plain"

+ +

Example: +"gruvbox-dark"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/i3status-rust.nix> -
programs.imv.enable

Whether to enable imv: a command line image viewer intended for use with tiling window managers.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.imv.enable + + +
+
+

Whether to enable imv: a command line image viewer intended for use with tiling window managers.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/imv.nix> -
programs.imv.package

The imv package to use.

Type: -package

Default: -pkgs.imv

Declared by:

+
+ +
+
+
+ + programs.imv.package + + +
+
+

The imv package to use.

+ +

Type: +package

+ +

Default: +pkgs.imv

+ +

Declared by:

+ +
+ <home-manager/modules/programs/imv.nix> -
programs.imv.settings

Configuration options for imv. See -imv(5).

Type: -attribute set of attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  options.background = "ffffff";
-  aliases.x = "close";
+
+
+
+
+ + programs.imv.settings + + +
+
+

Configuration options for imv. See +imv(5).

+ +

Type: +attribute set of attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  options.background = "ffffff";
+  aliases.x = "close";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/imv.nix> -
programs.info.enable

Whether to enable GNU Info.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.info.enable + + +
+
+

Whether to enable GNU Info.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/info.nix> -
programs.ion.enable

Whether to enable the Ion Shell. Compatible with Redox and Linux.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.ion.enable + + +
+
+

Whether to enable the Ion Shell. Compatible with Redox and Linux.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ion.nix> -
programs.ion.package

The ion package to install. May be used to change the version.

Type: -package

Default: -pkgs.ion

Declared by:

+
+ +
+
+
+ + programs.ion.package + + +
+
+

The ion package to install. May be used to change the version.

+ +

Type: +package

+ +

Default: +pkgs.ion

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ion.nix> -
programs.ion.initExtra

Ion script which is called during ion initialization.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.ion.initExtra + + +
+
+

Ion script which is called during ion initialization.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ion.nix> -
programs.ion.shellAliases

An attribute set that maps aliases (the top level attribute names -in this option) to command strings or directly to build outputs.

Type: -attribute set of string

Default: -{ }

Example:

{
-  g = "git";
+
+
+
+
+ + programs.ion.shellAliases + + +
+
+

An attribute set that maps aliases (the top level attribute names +in this option) to command strings or directly to build outputs.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  g = "git";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ion.nix> -
programs.irssi.enable

Whether to enable the Irssi chat client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.irssi.enable + + +
+
+

Whether to enable the Irssi chat client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.aliases

An attribute set that maps aliases to commands.

Type: -attribute set of string

Default: -{ }

Example:

{
-  BYE = "quit";
-  J = "join";
+
+
+
+
+ + programs.irssi.aliases + + +
+
+

An attribute set that maps aliases to commands.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  BYE = "quit";
+  J = "join";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.extraConfig

These lines are appended to the Irssi configuration.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.irssi.extraConfig + + +
+
+

These lines are appended to the Irssi configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks

An attribute set of chat networks.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.irssi.networks + + +
+
+

An attribute set of chat networks.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
   liberachat = {
-    nick = "hmuser";
+    nick = "hmuser";
     server = {
-      address = "irc.libera.chat";
+      address = "irc.libera.chat";
       port = 6697;
       autoConnect = true;
     };
@@ -6043,1009 +24535,4367 @@ attribute set of (submodule)

Default:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.autoCommands

List of commands to execute on connect.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.autoCommands + + +
+
+

List of commands to execute on connect.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.channels

Channels for the given network.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.channels + + +
+
+

Channels for the given network.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.channels.<name>.autoJoin

Whether to join this channel on connect.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.channels.<name>.autoJoin + + +
+
+

Whether to join this channel on connect.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.nick

Nickname in that network.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.nick + + +
+
+

Nickname in that network.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.saslExternal

Enable SASL external authentication. This requires setting a path in -programs.irssi.networks.<name>.server.ssl.certificateFile.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.saslExternal + + +
+
+

Enable SASL external authentication. This requires setting a path in +programs.irssi.networks.<name>.server.ssl.certificateFile.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.server.address

Address of the chat server.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.server.address + + +
+
+

Address of the chat server.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.server.autoConnect

Whether Irssi connects to the server on launch.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.server.autoConnect + + +
+
+

Whether Irssi connects to the server on launch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.server.port

Port of the chat server.

Type: -16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -6667

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.server.port + + +
+
+

Port of the chat server.

+ +

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +6667

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.server.ssl.enable

Whether SSL should be used.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.server.ssl.enable + + +
+
+

Whether SSL should be used.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.server.ssl.certificateFile

Path to a file containing the certificate used for -client authentication to the server.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.server.ssl.certificateFile + + +
+
+

Path to a file containing the certificate used for +client authentication to the server.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.server.ssl.verify

Whether the SSL certificate should be verified.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.server.ssl.verify + + +
+
+

Whether the SSL certificate should be verified.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.irssi.networks.<name>.type

Type of the network.

Type: -string

Default: -"IRC"

Declared by:

+
+ +
+
+
+ + programs.irssi.networks.<name>.type + + +
+
+

Type of the network.

+ +

Type: +string

+ +

Default: +"IRC"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/irssi.nix> -
programs.java.enable

Install the Java development kit and set the -JAVA_HOME variable.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.java.enable + + +
+
+

Install the Java development kit and set the +JAVA_HOME variable.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/java.nix> -
programs.java.package

Java package to install. Typical values are -pkgs.jdk or pkgs.jre.

Type: -package

Default: -"pkgs.jdk"

Declared by:

+
+ +
+
+
+ + programs.java.package + + +
+
+

Java package to install. Typical values are +pkgs.jdk or pkgs.jre.

+ +

Type: +package

+ +

Default: +"pkgs.jdk"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/java.nix> -
programs.joshuto.enable

Whether to enable joshuto file manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.joshuto.enable + + +
+
+

Whether to enable joshuto file manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/joshuto.nix> -
programs.joshuto.package

The package to use for joshuto.

Type: -package

Default: -pkgs.joshuto

Declared by:

+
+ +
+
+
+ + programs.joshuto.package + + +
+
+

The package to use for joshuto.

+ +

Type: +package

+ +

Default: +pkgs.joshuto

+ +

Declared by:

+ +
+ <home-manager/modules/programs/joshuto.nix> -
programs.joshuto.keymap

Configuration written to -$XDG_CONFIG_HOME/joshuto/keymap.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/keymap.toml.md -for the full list of options. Note that this option will overwrite any existing keybinds.

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.joshuto.keymap + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/joshuto/keymap.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/keymap.toml.md +for the full list of options. Note that this option will overwrite any existing keybinds.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/joshuto.nix> -
programs.joshuto.mimetype

Configuration written to -$XDG_CONFIG_HOME/joshuto/mimetype.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/mimetype.toml.md -for the full list of options

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.joshuto.mimetype + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/joshuto/mimetype.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/mimetype.toml.md +for the full list of options

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/joshuto.nix> -
programs.joshuto.settings

Configuration written to -$XDG_CONFIG_HOME/joshuto/joshuto.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/joshuto.toml.md -for the full list of options.

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.joshuto.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/joshuto/joshuto.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/joshuto.toml.md +for the full list of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/joshuto.nix> -
programs.joshuto.theme

Configuration written to -$XDG_CONFIG_HOME/joshuto/theme.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/theme.toml.md -for the full list of options

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.joshuto.theme + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/joshuto/theme.toml.

See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/theme.toml.md +for the full list of options

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/joshuto.nix> -
programs.jq.enable

Whether to enable the jq command-line JSON processor.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.jq.enable + + +
+
+

Whether to enable the jq command-line JSON processor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/jq.nix> -
programs.jq.package

jq package to use.

Type: -package

Default: -pkgs.jq

Declared by:

+
+ +
+
+
+ + programs.jq.package + + +
+
+

jq package to use.

+ +

Type: +package

+ +

Default: +pkgs.jq

+ +

Declared by:

+ +
+ <home-manager/modules/programs/jq.nix> -
programs.jq.colors

The colors used in colored JSON output.

See the Colors section -of the jq manual.

Type: -submodule

Default:

{
-  arrays = "1;37";
-  false = "0;37";
-  null = "1;30";
-  numbers = "0;37";
-  objects = "1;37";
-  strings = "0;32";
-  true = "0;37";
+
+
+
+
+ + programs.jq.colors + + +
+
+

The colors used in colored JSON output.

See the Colors section +of the jq manual.

+ +

Type: +submodule

+ +

Default:

{
+  arrays = "1;37";
+  false = "0;37";
+  null = "1;30";
+  numbers = "0;37";
+  objects = "1;37";
+  strings = "0;32";
+  true = "0;37";
 }
-

Example:

{
-  null    = "1;30";
-  false   = "0;31";
-  true    = "0;32";
-  numbers = "0;36";
-  strings = "0;33";
-  arrays  = "1;35";
-  objects = "1;37";
+
+ +

Example:

{
+  null    = "1;30";
+  false   = "0;31";
+  true    = "0;32";
+  numbers = "0;36";
+  strings = "0;33";
+  arrays  = "1;35";
+  objects = "1;37";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/jq.nix> -
programs.jujutsu.enable

Whether to enable a Git-compatible DVCS that is both simple and powerful.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.jujutsu.enable + + +
+
+

Whether to enable a Git-compatible DVCS that is both simple and powerful.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/jujutsu.nix> -
programs.jujutsu.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.jujutsu.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/jujutsu.nix> -
programs.jujutsu.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.jujutsu.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/jujutsu.nix> -
programs.jujutsu.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.jujutsu.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/jujutsu.nix> -
programs.jujutsu.package

The jujutsu package to use.

Type: -package

Default: -pkgs.jujutsu

Declared by:

+
+ +
+
+
+ + programs.jujutsu.package + + +
+
+

The jujutsu package to use.

+ +

Type: +package

+ +

Default: +pkgs.jujutsu

+ +

Declared by:

+ +
+ <home-manager/modules/programs/jujutsu.nix> -
programs.jujutsu.settings

Options to add to the .jjconfig.toml file. See -https://github.com/martinvonz/jj/blob/main/docs/config.md -for options.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.jujutsu.settings + + +
+
+

Options to add to the .jjconfig.toml file. See +https://github.com/martinvonz/jj/blob/main/docs/config.md +for options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   user = {
-    name = "John Doe";
-    email = "jdoe@example.org";
+    name = "John Doe";
+    email = "jdoe@example.org";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/jujutsu.nix> -
programs.k9s.enable

Whether to enable k9s - Kubernetes CLI To Manage Your Clusters In Style.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.k9s.enable + + +
+
+

Whether to enable k9s - Kubernetes CLI To Manage Your Clusters In Style.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.k9s.package

The k9s package to use.

Type: -package

Default: -pkgs.k9s

Declared by:

+
+ +
+
+
+ + programs.k9s.package + + +
+
+

The k9s package to use.

+ +

Type: +package

+ +

Default: +pkgs.k9s

+ +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.k9s.aliases

Aliases written to $XDG_CONFIG_HOME/k9s/aliases.yml. See -https://k9scli.io/topics/aliases/ for supported values.

Type: -YAML value

Default: -{ }

Example:

alias = {
+
+
+
+
+ + programs.k9s.aliases + + +
+
+

Aliases written to $XDG_CONFIG_HOME/k9s/aliases.yml. See +https://k9scli.io/topics/aliases/ for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

alias = {
   # Use pp as an alias for Pod
-  pp = "v1/pods";
+  pp = "v1/pods";
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.k9s.hotkey

Hotkeys written to $XDG_CONFIG_HOME/k9s/hotkey.yml. See -https://k9scli.io/topics/hotkeys/ for supported values.

Type: -YAML value

Default: -{ }

Example:

hotkey = {
+
+
+
+
+ + programs.k9s.hotkey + + +
+
+

Hotkeys written to $XDG_CONFIG_HOME/k9s/hotkey.yml. See +https://k9scli.io/topics/hotkeys/ for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

hotkey = {
   # Make sure this is camel case
   hotKey = {
     shift-0 = {
-      shortCut = "Shift-0";
-      description = "Viewing pods";
-      command = "pods";
+      shortCut = "Shift-0";
+      description = "Viewing pods";
+      command = "pods";
     };
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.k9s.plugin

Plugins written to $XDG_CONFIG_HOME/k9s/plugin.yml. See -https://k9scli.io/topics/plugins/ for supported values.

Type: -YAML value

Default: -{ }

Example:

plugin = {
+
+
+
+
+ + programs.k9s.plugin + + +
+
+

Plugins written to $XDG_CONFIG_HOME/k9s/plugin.yml. See +https://k9scli.io/topics/plugins/ for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

plugin = {
   # Defines a plugin to provide a `ctrl-l` shortcut to
   # tail the logs while in pod view.
   fred = {
-    shortCut = "Ctrl-L";
-    description = "Pod logs";
-    scopes = [ "po" ];
-    command = "kubectl";
+    shortCut = "Ctrl-L";
+    description = "Pod logs";
+    scopes = [ "po" ];
+    command = "kubectl";
     background = false;
     args = [
-      "logs"
-      "-f"
-      "$NAME"
-      "-n"
-      "$NAMESPACE"
-      "--context"
-      "$CLUSTER"
+      "logs"
+      "-f"
+      "$NAME"
+      "-n"
+      "$NAMESPACE"
+      "--context"
+      "$CLUSTER"
     ];
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.k9s.settings

Configuration written to $XDG_CONFIG_HOME/k9s/config.yml. See -https://k9scli.io/topics/config/ for supported values.

Type: -YAML value

Default: -{ }

Example:

k9s = {
+
+
+
+
+ + programs.k9s.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/k9s/config.yml. See +https://k9scli.io/topics/config/ for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

k9s = {
   refreshRate = 2;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.k9s.skin

Skin written to $XDG_CONFIG_HOME/k9s/skin.yml. See -https://k9scli.io/topics/skins/ for supported values.

Type: -YAML value

Default: -{ }

Example:

k9s = {
+
+
+
+
+ + programs.k9s.skin + + +
+
+

Skin written to $XDG_CONFIG_HOME/k9s/skin.yml. See +https://k9scli.io/topics/skins/ for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

k9s = {
   body = {
-    fgColor = "dodgerblue";
+    fgColor = "dodgerblue";
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.k9s.views

Resource column views written to $XDG_CONFIG_HOME/k9s/views.yml. -See https://k9scli.io/topics/columns/ for supported values.

Type: -YAML value

Default: -{ }

Example:

k9s = {
+
+
+
+
+ + programs.k9s.views + + +
+
+

Resource column views written to $XDG_CONFIG_HOME/k9s/views.yml. +See https://k9scli.io/topics/columns/ for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

k9s = {
   views = {
-    "v1/pods" = {
+    "v1/pods" = {
       columns = [
-        "AGE"
-        "NAMESPACE"
-        "NAME"
-        "IP"
-        "NODE"
-        "STATUS"
-        "READY"
+        "AGE"
+        "NAMESPACE"
+        "NAME"
+        "IP"
+        "NODE"
+        "STATUS"
+        "READY"
       ];
     };
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/k9s.nix> -
programs.kakoune.enable

Whether to enable the kakoune text editor.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.kakoune.enable + + +
+
+

Whether to enable the kakoune text editor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.package

The kakoune-unwrapped package to use.

Type: -package

Default: -pkgs.kakoune-unwrapped

Declared by:

+
+ +
+
+
+ + programs.kakoune.package + + +
+
+

The kakoune-unwrapped package to use.

+ +

Type: +package

+ +

Default: +pkgs.kakoune-unwrapped

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config

kakoune configuration options.

Type: -null or (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.kakoune.config + + +
+
+

kakoune configuration options.

+ +

Type: +null or (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.alignWithTabs

Use tabs for the align command.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.alignWithTabs + + +
+
+

Use tabs for the align command.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.autoComplete

Modes in which to display possible completions. -The kakoune default is [ "insert" "prompt" ].

Type: -null or (list of (one of “insert”, “prompt”))

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.autoComplete + + +
+
+

Modes in which to display possible completions. +The kakoune default is [ "insert" "prompt" ].

+ +

Type: +null or (list of (one of “insert”, “prompt”))

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.autoInfo

Contexts in which to display automatic information box. -The kakoune default is [ "command" "onkey" ].

Type: -null or (list of (one of “command”, “onkey”, “normal”))

Default: -null

Example:

[
-  "command"
-  "normal"
+
+
+
+
+ + programs.kakoune.config.autoInfo + + +
+
+

Contexts in which to display automatic information box. +The kakoune default is [ "command" "onkey" ].

+ +

Type: +null or (list of (one of “command”, “onkey”, “normal”))

+ +

Default: +null

+ +

Example:

[
+  "command"
+  "normal"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.autoReload

Reload buffers when an external modification is detected. -The kakoune default is "ask".

Type: -null or one of “yes”, “no”, “ask”

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.autoReload + + +
+
+

Reload buffers when an external modification is detected. +The kakoune default is "ask".

+ +

Type: +null or one of “yes”, “no”, “ask”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.colorScheme

Set the color scheme. To see available schemes, enter -colorscheme at the kakoune prompt.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.colorScheme + + +
+
+

Set the color scheme. To see available schemes, enter +colorscheme at the kakoune prompt.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.hooks

Global hooks. For documentation, see -https://github.com/mawww/kakoune/blob/master/doc/pages/hooks.asciidoc.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.hooks + + +
+
+

Global hooks. For documentation, see +https://github.com/mawww/kakoune/blob/master/doc/pages/hooks.asciidoc.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.hooks.*.commands

Commands to run when the hook is activated.

Type: -strings concatenated with “\n”

Default: -""

Example: -"set-option window indentwidth 2"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.hooks.*.commands + + +
+
+

Commands to run when the hook is activated.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"set-option window indentwidth 2"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.hooks.*.group

Add the hook to the named group.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.hooks.*.group + + +
+
+

Add the hook to the named group.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.hooks.*.name

The name of the hook. For a description, see -https://github.com/mawww/kakoune/blob/master/doc/pages/hooks.asciidoc#default-hooks.

Type: -one of “NormalIdle”, “NormalKey”, “InsertIdle”, “InsertKey”, “InsertChar”, “InsertDelete”, “InsertMove”, “WinCreate”, “WinClose”, “WinResize”, “WinDisplay”, “WinSetOption”, “BufSetOption”, “BufNewFile”, “BufOpenFile”, “BufCreate”, “BufWritePre”, “BufWritePost”, “BufReload”, “BufClose”, “BufOpenFifo”, “BufReadFifo”, “BufCloseFifo”, “RuntimeError”, “ModeChange”, “PromptIdle”, “GlobalSetOption”, “KakBegin”, “KakEnd”, “FocusIn”, “FocusOut”, “RawKey”, “InsertCompletionShow”, “InsertCompletionHide”, “ModuleLoaded”, “ClientCreate”, “ClientClose”, “RegisterModified”, “User”

Example: -"SetOption"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.hooks.*.name + + +
+
+

The name of the hook. For a description, see +https://github.com/mawww/kakoune/blob/master/doc/pages/hooks.asciidoc#default-hooks.

+ +

Type: +one of “NormalIdle”, “NormalKey”, “InsertIdle”, “InsertKey”, “InsertChar”, “InsertDelete”, “InsertMove”, “WinCreate”, “WinClose”, “WinResize”, “WinDisplay”, “WinSetOption”, “BufSetOption”, “BufNewFile”, “BufOpenFile”, “BufCreate”, “BufWritePre”, “BufWritePost”, “BufReload”, “BufClose”, “BufOpenFifo”, “BufReadFifo”, “BufCloseFifo”, “RuntimeError”, “ModeChange”, “PromptIdle”, “GlobalSetOption”, “KakBegin”, “KakEnd”, “FocusIn”, “FocusOut”, “RawKey”, “InsertCompletionShow”, “InsertCompletionHide”, “ModuleLoaded”, “ClientCreate”, “ClientClose”, “RegisterModified”, “User”

+ +

Example: +"SetOption"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.hooks.*.once

Remove the hook after running it once.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.hooks.*.once + + +
+
+

Remove the hook after running it once.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.hooks.*.option

Additional option to pass to the hook.

Type: -null or string

Default: -null

Example: -"filetype=latex"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.hooks.*.option + + +
+
+

Additional option to pass to the hook.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"filetype=latex"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.incrementalSearch

Execute a search as it is being typed.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.incrementalSearch + + +
+
+

Execute a search as it is being typed.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.indentWidth

The width of an indentation in spaces. + +

+
+
+ + programs.kakoune.config.indentWidth + + +
+
+

The width of an indentation in spaces. The kakoune default is 4. -If 0, a tab will be used instead.

Type: -null or unsigned integer, meaning >=0

Default: -null

Declared by:

+
+If 0, a tab will be used instead.

+ +

Type: +null or unsigned integer, meaning >=0

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.keyMappings

User-defined key mappings. For documentation, see -https://github.com/mawww/kakoune/blob/master/doc/pages/mapping.asciidoc.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.keyMappings + + +
+
+

User-defined key mappings. For documentation, see +https://github.com/mawww/kakoune/blob/master/doc/pages/mapping.asciidoc.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.keyMappings.*.docstring

Optional documentation text to display in info boxes.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.keyMappings.*.docstring + + +
+
+

Optional documentation text to display in info boxes.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.keyMappings.*.effect

The sequence of keys to be mapped.

Type: -string

Example: -":wq<ret>"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.keyMappings.*.effect + + +
+
+

The sequence of keys to be mapped.

+ +

Type: +string

+ +

Example: +":wq<ret>"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.keyMappings.*.key

The key to be mapped. See -https://github.com/mawww/kakoune/blob/master/doc/pages/mapping.asciidoc#mappable-keys -for possible values.

Type: -string

Example: -"<a-x>"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.keyMappings.*.key + + +
+
+

The key to be mapped. See +https://github.com/mawww/kakoune/blob/master/doc/pages/mapping.asciidoc#mappable-keys +for possible values.

+ +

Type: +string

+ +

Example: +"<a-x>"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.keyMappings.*.mode

The mode in which the mapping takes effect.

Type: -string

Example: -"user"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.keyMappings.*.mode + + +
+
+

The mode in which the mapping takes effect.

+ +

Type: +string

+ +

Example: +"user"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.numberLines

Settings for the number lines highlighter.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.numberLines + + +
+
+

Settings for the number lines highlighter.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.numberLines.enable

Whether to enable the number lines highlighter.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.numberLines.enable + + +
+
+

Whether to enable the number lines highlighter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.numberLines.highlightCursor

Highlight the cursor line with a separate face.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.numberLines.highlightCursor + + +
+
+

Highlight the cursor line with a separate face.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.numberLines.relative

Show line numbers relative to the main cursor line.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.numberLines.relative + + +
+
+

Show line numbers relative to the main cursor line.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.numberLines.separator

String that separates the line number column from the + +

+
+
+ + programs.kakoune.config.numberLines.separator + + +
+
+

String that separates the line number column from the buffer contents. The kakoune default is -"|".

Type: -null or string

Default: -null

Declared by:

+
+"|".

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.scrollOff

How many lines and columns to keep visible around the cursor.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.scrollOff + + +
+
+

How many lines and columns to keep visible around the cursor.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.scrollOff.columns

The number of columns to keep visible around the cursor.

Type: -unsigned integer, meaning >=0

Default: -0

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.scrollOff.columns + + +
+
+

The number of columns to keep visible around the cursor.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.scrollOff.lines

The number of lines to keep visible around the cursor.

Type: -unsigned integer, meaning >=0

Default: -0

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.scrollOff.lines + + +
+
+

The number of lines to keep visible around the cursor.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showMatching

Highlight the matching char of the character under the + +

+
+
+ + programs.kakoune.config.showMatching + + +
+
+

Highlight the matching char of the character under the selections’ cursor using the MatchingChar -face.

Type: -boolean

Default: -false

Declared by:

+
+face.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showWhitespace

Settings for the show whitespaces highlighter.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.showWhitespace + + +
+
+

Settings for the show whitespaces highlighter.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showWhitespace.enable

Whether to enable the show whitespace highlighter.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.showWhitespace.enable + + +
+
+

Whether to enable the show whitespace highlighter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showWhitespace.lineFeed

The character to display for line feeds. -The kakoune default is "¬".

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.showWhitespace.lineFeed + + +
+
+

The character to display for line feeds. +The kakoune default is "¬".

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showWhitespace.nonBreakingSpace

The character to display for non-breaking spaces. -The kakoune default is "⍽".

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.showWhitespace.nonBreakingSpace + + +
+
+

The character to display for non-breaking spaces. +The kakoune default is "⍽".

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showWhitespace.space

The character to display for spaces. -The kakoune default is "·".

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.showWhitespace.space + + +
+
+

The character to display for spaces. +The kakoune default is "·".

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showWhitespace.tab

The character to display for tabs. -The kakoune default is "→".

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.showWhitespace.tab + + +
+
+

The character to display for tabs. +The kakoune default is "→".

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.showWhitespace.tabStop

The character to append to tabs to reach the width of a tabstop. -The kakoune default is " ".

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.showWhitespace.tabStop + + +
+
+

The character to append to tabs to reach the width of a tabstop. +The kakoune default is " ".

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.tabStop

The width of a tab in spaces. The kakoune default is -6.

Type: -null or unsigned integer, meaning >=0

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.tabStop + + +
+
+

The width of a tab in spaces. The kakoune default is +6.

+ +

Type: +null or unsigned integer, meaning >=0

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui

Settings for the ncurses interface.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui + + +
+
+

Settings for the ncurses interface.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.enableMouse

Whether to enable mouse support.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.enableMouse + + +
+
+

Whether to enable mouse support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.assistant

The assistant displayed in info boxes.

Type: -one of “clippy”, “cat”, “dilbert”, “none”

Default: -"clippy"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.assistant + + +
+
+

The assistant displayed in info boxes.

+ +

Type: +one of “clippy”, “cat”, “dilbert”, “none”

+ +

Default: +"clippy"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.changeColors

Change color palette.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.changeColors + + +
+
+

Change color palette.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.setTitle

Change the title of the terminal emulator.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.setTitle + + +
+
+

Change the title of the terminal emulator.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.shiftFunctionKeys

Amount by which shifted function keys are offset. That + +

+
+
+ + programs.kakoune.config.ui.shiftFunctionKeys + + +
+
+

Amount by which shifted function keys are offset. That is, if the terminal sends F13 for Shift-F1, this -should be 12.

Type: -null or unsigned integer, meaning >=0

Default: -null

Declared by:

+
+should be 12.

+ +

Type: +null or unsigned integer, meaning >=0

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.statusLine

Where to display the status line.

Type: -one of “top”, “bottom”

Default: -"bottom"

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.statusLine + + +
+
+

Where to display the status line.

+ +

Type: +one of “top”, “bottom”

+ +

Default: +"bottom"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.useBuiltinKeyParser

Bypass ncurses key parser and use an internal one.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.useBuiltinKeyParser + + +
+
+

Bypass ncurses key parser and use an internal one.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.wheelDownButton

Button to send for wheel down events.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.wheelDownButton + + +
+
+

Button to send for wheel down events.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.ui.wheelUpButton

Button to send for wheel up events.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.ui.wheelUpButton + + +
+
+

Button to send for wheel up events.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.wrapLines

Settings for the wrap lines highlighter.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.wrapLines + + +
+
+

Settings for the wrap lines highlighter.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.wrapLines.enable

Whether to enable the wrap lines highlighter.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.wrapLines.enable + + +
+
+

Whether to enable the wrap lines highlighter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.wrapLines.indent

Preserve line indentation when wrapping.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.wrapLines.indent + + +
+
+

Preserve line indentation when wrapping.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.wrapLines.marker

Prefix wrapped lines with marker text. + +

+
+
+ + programs.kakoune.config.wrapLines.marker + + +
+
+

Prefix wrapped lines with marker text. If not null, -the marker text will be displayed in the indentation if possible.

Type: -null or string

Default: -null

Example: -"⏎"

Declared by:

+
+the marker text will be displayed in the indentation if possible.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"⏎"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.wrapLines.maxWidth

Wrap text at maxWidth, even if the window is wider.

Type: -null or unsigned integer, meaning >=0

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.wrapLines.maxWidth + + +
+
+

Wrap text at maxWidth, even if the window is wider.

+ +

Type: +null or unsigned integer, meaning >=0

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.config.wrapLines.word

Wrap at word boundaries instead of codepoint boundaries.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.config.wrapLines.word + + +
+
+

Wrap at word boundaries instead of codepoint boundaries.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.defaultEditor

Whether to configure kak as the default -editor using the EDITOR environment variable.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.kakoune.defaultEditor + + +
+
+

Whether to configure kak as the default +editor using the EDITOR environment variable.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.extraConfig

Extra configuration lines to add to -$XDG_CONFIG_HOME/kak/kakrc.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.kakoune.extraConfig + + +
+
+

Extra configuration lines to add to +$XDG_CONFIG_HOME/kak/kakrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.kakoune.plugins

List of kakoune plugins to install. To get a list of + +

+
+
+ + programs.kakoune.plugins + + +
+
+

List of kakoune plugins to install. To get a list of supported plugins run: -nix-env -f '<nixpkgs>' -qaP -A kakounePlugins.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.kakounePlugins.kak-fzf ]

Declared by:

+
+nix-env -f '<nixpkgs>' -qaP -A kakounePlugins.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.kakounePlugins.kak-fzf ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kakoune.nix> -
programs.keychain.enable

Whether to enable keychain.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.keychain.enable + + +
+
+

Whether to enable keychain.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.keychain.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.keychain.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.keychain.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.enableXsessionIntegration

Whether to run keychain from your ~/.xsession.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.keychain.enableXsessionIntegration + + +
+
+

Whether to run keychain from your ~/.xsession.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.keychain.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.package

Keychain package to install.

Type: -package

Default: -pkgs.keychain

Declared by:

+
+ +
+
+
+ + programs.keychain.package + + +
+
+

Keychain package to install.

+ +

Type: +package

+ +

Default: +pkgs.keychain

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.agents

Agents to add.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.keychain.agents + + +
+
+

Agents to add.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.extraFlags

Extra flags to pass to keychain.

Type: -list of string

Default:

[
-  "--quiet"
+
+
+
+
+ + programs.keychain.extraFlags + + +
+
+

Extra flags to pass to keychain.

+ +

Type: +list of string

+ +

Default:

[
+  "--quiet"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.inheritType

Inherit type to attempt from agent variables from the environment.

Type: -null or one of “local”, “any”, “local-once”, “any-once”

Default: -null

Declared by:

+
+ +
+
+
+ + programs.keychain.inheritType + + +
+
+

Inherit type to attempt from agent variables from the environment.

+ +

Type: +null or one of “local”, “any”, “local-once”, “any-once”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.keychain.keys

Keys to add to keychain.

Type: -list of string

Default:

[
-  "id_rsa"
+
+
+
+
+ + programs.keychain.keys + + +
+
+

Keys to add to keychain.

+ +

Type: +list of string

+ +

Default:

[
+  "id_rsa"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/keychain.nix> -
programs.khal.enable

Whether to enable khal, a CLI calendar application.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.khal.enable + + +
+
+

Whether to enable khal, a CLI calendar application.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale

khal locale settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.khal.locale + + +
+
+

khal locale settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.dateformat

khal will display and understand all dates in this format.

Format strings are for Python strftime, similarly to -strftime(3).

Type: -string

Default: -"%x"

Declared by:

+
+ +
+
+
+ + programs.khal.locale.dateformat + + +
+
+

khal will display and understand all dates in this format.

Format strings are for Python strftime, similarly to +strftime(3).

+ +

Type: +string

+ +

Default: +"%x"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.datetimeformat

khal will display and understand all datetimes in this format.

Format strings are for Python strftime, similarly to -strftime(3).

Type: -string

Default: -"%c"

Declared by:

+
+ +
+
+
+ + programs.khal.locale.datetimeformat + + +
+
+

khal will display and understand all datetimes in this format.

Format strings are for Python strftime, similarly to +strftime(3).

+ +

Type: +string

+ +

Default: +"%c"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.default_timezone

Default for new events or if khal does not understand the timezone + +

+
+
+ + programs.khal.locale.default_timezone + + +
+
+

Default for new events or if khal does not understand the timezone in an ical file. -If null, the timezone of your computer will be used.

Type: -null or string

Default: -null

Declared by:

+
+If null, the timezone of your computer will be used.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.firstweekday

The first day of the week, where Monday is 0 and Sunday is 6.

Type: -integer between 0 and 6 (both inclusive)

Default: -0

Declared by:

+
+ +
+
+
+ + programs.khal.locale.firstweekday + + +
+
+

The first day of the week, where Monday is 0 and Sunday is 6.

+ +

Type: +integer between 0 and 6 (both inclusive)

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.local_timezone

khal will show all times in this timezone. -If null, the timezone of your computer will be used.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.khal.locale.local_timezone + + +
+
+

khal will show all times in this timezone. +If null, the timezone of your computer will be used.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.longdateformat

khal will display and understand all dates in this format. + +

+
+
+ + programs.khal.locale.longdateformat + + +
+
+

khal will display and understand all dates in this format. It should contain a year (e.g. %Y).

Format strings are for Python strftime, similarly to -strftime(3).

Type: -string

Default: -"%x"

Declared by:

+
+strftime(3).

+ +

Type: +string

+ +

Default: +"%x"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.longdatetimeformat

khal will display and understand all datetimes in this format. + +

+
+
+ + programs.khal.locale.longdatetimeformat + + +
+
+

khal will display and understand all datetimes in this format. It should contain a year (e.g. %Y).

Format strings are for Python strftime, similarly to -strftime(3).

Type: -string

Default: -"%c"

Declared by:

+
+strftime(3).

+ +

Type: +string

+ +

Default: +"%c"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.timeformat

khal will display and understand all times in this format.

Format strings are for Python strftime, similarly to -strftime(3).

Type: -string

Default: -"%X"

Declared by:

+
+ +
+
+
+ + programs.khal.locale.timeformat + + +
+
+

khal will display and understand all times in this format.

Format strings are for Python strftime, similarly to +strftime(3).

+ +

Type: +string

+ +

Default: +"%X"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.unicode_symbols

By default khal uses some Unicode symbols (as in “non-ASCII”) as + +

+
+
+ + programs.khal.locale.unicode_symbols + + +
+
+

By default khal uses some Unicode symbols (as in “non-ASCII”) as indicators for things like repeating events. If your font, encoding etc. does not support those symbols, set this -to false (this will enable ASCII-based replacements).

Type: -boolean

Default: -true

Declared by:

+
+to false (this will enable ASCII-based replacements).

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.locale.weeknumbers

Enable week numbers in calendar and interactive (ikhal) mode. + +

+
+
+ + programs.khal.locale.weeknumbers + + +
+
+

Enable week numbers in calendar and interactive (ikhal) mode. As those are ISO week numbers, they only work properly if -firstweekday is set to 0.

Type: -one of “off”, “left”, “right”

Default: -"off"

Declared by:

+
+firstweekday is set to 0.

+ +

Type: +one of “off”, “left”, “right”

+ +

Default: +"off"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khal.settings

Configuration options to add to the various sections in the configuration file.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.khal.settings + + +
+
+

Configuration options to add to the various sections in the configuration file.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   default = {
-    default_calendar = "Calendar";
-    timedelta = "5d";
+    default_calendar = "Calendar";
+    timedelta = "5d";
   };
   view = {
     agenda_event_format =
-      "{calendar-color}{cancelled}{start-end-time-style} {title}{repeat-symbol}{reset}";
+      "{calendar-color}{cancelled}{start-end-time-style} {title}{repeat-symbol}{reset}";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/khal.nix> -
programs.khard.enable

Whether to enable Khard: an address book for the Unix console.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.khard.enable + + +
+
+

Whether to enable Khard: an address book for the Unix console.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khard.nix> -
programs.khard.settings

Khard settings. See -https://khard.readthedocs.io/en/latest/#configuration -for more information.

Type: -attribute set of attribute set of (boolean or string or list of string)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.khard.settings + + +
+
+

Khard settings. See +https://khard.readthedocs.io/en/latest/#configuration +for more information.

+ +

Type: +attribute set of attribute set of (boolean or string or list of string)

+ +

Default: +{ }

+ +

Example:

{
   general = {
-    default_action = "list";
-    editor = ["vim" "-i" "NONE"];
+    default_action = "list";
+    editor = ["vim" "-i" "NONE"];
   };
 
-  "contact table" = {
-    display = "formatted_name";
-    preferred_phone_number_type = ["pref" "cell" "home"];
-    preferred_email_address_type = ["pref" "work" "home"];
+  "contact table" = {
+    display = "formatted_name";
+    preferred_phone_number_type = ["pref" "cell" "home"];
+    preferred_email_address_type = ["pref" "work" "home"];
   };
 
   vcard = {
-    private_objects = ["Jabber" "Skype" "Twitter"];
+    private_objects = ["Jabber" "Skype" "Twitter"];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/khard.nix> -
programs.khard.settings.general.default_action

The default action to execute.

Type: -string

Default: -"list"

Declared by:

+
+ +
+
+
+ + programs.khard.settings.general.default_action + + +
+
+

The default action to execute.

+ +

Type: +string

+ +

Default: +"list"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/khard.nix> -
programs.kitty.enable

Whether to enable Kitty terminal emulator.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.kitty.enable + + +
+
+

Whether to enable Kitty terminal emulator.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.package

Kitty package to install.

Type: -package

Default: -pkgs.kitty

Declared by:

+
+ +
+
+
+ + programs.kitty.package + + +
+
+

Kitty package to install.

+ +

Type: +package

+ +

Default: +pkgs.kitty

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.darwinLaunchOptions

Command-line options to use when launched by Mac OS GUI

Type: -null or (list of string)

Default: -null

Example:

[
-  "--single-instance"
-  "--directory=/tmp/my-dir"
-  "--listen-on=unix:/tmp/my-socket"
+
+
+
+
+ + programs.kitty.darwinLaunchOptions + + +
+
+

Command-line options to use when launched by Mac OS GUI

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "--single-instance"
+  "--directory=/tmp/my-dir"
+  "--listen-on=unix:/tmp/my-socket"
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.environment

Environment variables to set or override.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "LS_COLORS" = "1";
+
+
+
+
+ + programs.kitty.environment + + +
+
+

Environment variables to set or override.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "LS_COLORS" = "1";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.extraConfig

Additional configuration to add.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.kitty.extraConfig + + +
+
+

Additional configuration to add.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.font

The font to use.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.kitty.font + + +
+
+

The font to use.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.font.package

Package providing the font. This package will be installed + +

+
+
+ + programs.kitty.font.package + + +
+
+

Package providing the font. This package will be installed to your profile. If null then the font -is assumed to already be available in your profile.

Type: -null or package

Default: -null

Example: -pkgs.dejavu_fonts

Declared by:

+
+is assumed to already be available in your profile.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example: +pkgs.dejavu_fonts

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.font.name

The family name of the font within the package.

Type: -string

Example: -"DejaVu Sans"

Declared by:

+
+ +
+
+
+ + programs.kitty.font.name + + +
+
+

The family name of the font within the package.

+ +

Type: +string

+ +

Example: +"DejaVu Sans"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.font.size

The size of the font.

Type: -null or signed integer or floating point number

Default: -null

Example: -"8"

Declared by:

+
+ +
+
+
+ + programs.kitty.font.size + + +
+
+

The size of the font.

+ +

Type: +null or signed integer or floating point number

+ +

Default: +null

+ +

Example: +"8"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.keybindings

Mapping of keybindings to actions.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "ctrl+c" = "copy_or_interrupt";
-  "ctrl+f>2" = "set_font_size 20";
+
+
+
+
+ + programs.kitty.keybindings + + +
+
+

Mapping of keybindings to actions.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "ctrl+c" = "copy_or_interrupt";
+  "ctrl+f>2" = "set_font_size 20";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.settings

Configuration written to + +

+
+
+ + programs.kitty.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/kitty/kitty.conf. See -https://sw.kovidgoyal.net/kitty/conf.html -for the documentation.

Type: -attribute set of (string or boolean or signed integer)

Default: -{ }

Example:

{
+https://sw.kovidgoyal.net/kitty/conf.html
+for the documentation.

+ +

Type: +attribute set of (string or boolean or signed integer)

+ +

Default: +{ }

+ +

Example:

{
   scrollback_lines = 10000;
   enable_audio_bell = false;
   update_check_interval = 0;
 }
 
-

Declared by:

-<home-manager/modules/programs/kitty.nix> -
programs.kitty.shellIntegration.enableBashIntegration

Whether to enable Kitty Bash integration.

Type: -boolean

Default:

config.programs.kitty.shellIntegration.mode != "disabled"
+
-

Example: -true

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.shellIntegration.enableFishIntegration

Whether to enable Kitty fish integration.

Type: -boolean

Default:

config.programs.kitty.shellIntegration.mode != "disabled"
+
+
+
+
+ + programs.kitty.shellIntegration.enableBashIntegration + + +
+
+

Whether to enable Kitty Bash integration.

-

Example: -true

Declared by:

-<home-manager/modules/programs/kitty.nix> -
programs.kitty.shellIntegration.enableZshIntegration

Whether to enable Kitty Z Shell integration.

Type: -boolean

Default:

config.programs.kitty.shellIntegration.mode != "disabled"
+

Type: +boolean

-

Example: -true

Declared by:

+
+

Default:

config.programs.kitty.shellIntegration.mode != "disabled"
+
+
+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.shellIntegration.mode

Set the mode of the shell integration. This accepts the same options + +

+
+
+ + programs.kitty.shellIntegration.enableFishIntegration + + +
+
+

Whether to enable Kitty fish integration.

+ +

Type: +boolean

+ +

Default:

config.programs.kitty.shellIntegration.mode != "disabled"
+
+
+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/kitty.nix> + +
+
+
+ + programs.kitty.shellIntegration.enableZshIntegration + + +
+
+

Whether to enable Kitty Z Shell integration.

+ +

Type: +boolean

+ +

Default:

config.programs.kitty.shellIntegration.mode != "disabled"
+
+
+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/kitty.nix> + +
+
+
+ + programs.kitty.shellIntegration.mode + + +
+
+

Set the mode of the shell integration. This accepts the same options as the shell_integration option of Kitty. Note that no-rc is always implied. See -https://sw.kovidgoyal.net/kitty/shell-integration -for more details.

Type: -string

Default: -"enabled"

Example: -"no-cursor"

Declared by:

+
+https://sw.kovidgoyal.net/kitty/shell-integration +for more details.

+ +

Type: +string

+ +

Default: +"enabled"

+ +

Example: +"no-cursor"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kitty.theme

Apply a Kitty color theme. This option takes the friendly name of + +

+
+
+ + programs.kitty.theme + + +
+
+

Apply a Kitty color theme. This option takes the friendly name of any theme given by the command kitty +kitten themes. -See https://github.com/kovidgoyal/kitty-themes -for more details.

Type: -null or string

Default: -null

Example: -"Space Gray Eighties"

Declared by:

+
+See https://github.com/kovidgoyal/kitty-themes +for more details.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"Space Gray Eighties"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kitty.nix> -
programs.kodi.enable

Whether to enable Kodi.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.kodi.enable + + +
+
+

Whether to enable Kodi.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kodi.nix> -
programs.kodi.package

The kodi package to use. -Can be used to specify extensions.

Type: -package

Default: -pkgs.kodi

Example: -pkgs.kodi.withPackages (exts: [ exts.pvr-iptvsimple ])

Declared by:

+
+ +
+
+
+ + programs.kodi.package + + +
+
+

The kodi package to use. +Can be used to specify extensions.

+ +

Type: +package

+ +

Default: +pkgs.kodi

+ +

Example: +pkgs.kodi.withPackages (exts: [ exts.pvr-iptvsimple ])

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kodi.nix> -
programs.kodi.addonSettings

Attribute set with the plugin namespace as toplevel key and the plugins + +

+
+
+ + programs.kodi.addonSettings + + +
+
+

Attribute set with the plugin namespace as toplevel key and the plugins settings as lower level key/value pairs.

Kodi will still show the settings of plugins configured via this mechanism in the GUI and they appear to be mutable. This however is -not the case and the settings will stay as specified via Home Manager.

Type: -null or (attribute set of attribute set of string)

Default: -null

Example:

{ "service.xbmc.versioncheck".versioncheck_enable = "false"; }
+not the case and the settings will stay as specified via Home Manager.

-

Declared by:

+
+

Type: +null or (attribute set of attribute set of string)

+ +

Default: +null

+ +

Example:

{ "service.xbmc.versioncheck".versioncheck_enable = "false"; }
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/kodi.nix> -
programs.kodi.datadir

Directory to store configuration and metadata.

Type: -path

Default: -"${config.home.homeDirectory}/.kodi"

Example: -"${config.xdg.dataHome}/kodi"

Declared by:

+
+ +
+
+
+ + programs.kodi.datadir + + +
+
+

Directory to store configuration and metadata.

+ +

Type: +path

+ +

Default: +"${config.home.homeDirectory}/.kodi"

+ +

Example: +"${config.xdg.dataHome}/kodi"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/kodi.nix> -
programs.kodi.settings

Configuration to write to the advancedsettings.xml + +

+
+
+ + programs.kodi.settings + + +
+
+

Configuration to write to the advancedsettings.xml file in kodis userdata directory. Settings specified here will be -immutable from inside kodi and be hidden from the GUI settings dialog.

See https://kodi.wiki/view/Advancedsettings.xml as -reference for how settings need to be specified.

The innermost attributes must be of type str.

Type: -null or attribute sets of strings

Default: -null

Example:

{ videolibrary.showemptytvshows = "true"; }
+immutable from inside kodi and be hidden from the GUI settings dialog.

See https://kodi.wiki/view/Advancedsettings.xml as +reference for how settings need to be specified.

The innermost attributes must be of type str.

-

Declared by:

+
+

Type: +null or attribute sets of strings

+ +

Default: +null

+ +

Example:

{ videolibrary.showemptytvshows = "true"; }
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/kodi.nix> -
programs.kodi.sources

Contents to populate the file sources.xml in kodis -userdata directory.

See https://kodi.wiki/view/Sources.xml as + +

+
+
+ + programs.kodi.sources + + +
+
+

Contents to populate the file sources.xml in kodis +userdata directory.

See https://kodi.wiki/view/Sources.xml as reference for how sources need to be specified.

Kodi will still show the dialogs to modify sources in the GUI and they appear to be mutable. This however is not the case and the sources will -stay as specified via Home Manager.

The innermost attributes must be of type str.

Type: -null or attribute sets or lists of strings

Default: -null

Example:

{
+stay as specified via Home Manager.

The innermost attributes must be of type str.

+ +

Type: +null or attribute sets or lists of strings

+ +

Default: +null

+ +

Example:

{
   video = {
-    default = "movies";
+    default = "movies";
     source = [
-      { name = "videos"; path = "/path/to/videos"; allowsharing = "true"; }
-      { name = "movies"; path = "/path/to/movies"; allowsharing = "true"; }
+      { name = "videos"; path = "/path/to/videos"; allowsharing = "true"; }
+      { name = "movies"; path = "/path/to/movies"; allowsharing = "true"; }
     ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/kodi.nix> -
programs.lazygit.enable

Whether to enable lazygit, a simple terminal UI for git commands.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.lazygit.enable + + +
+
+

Whether to enable lazygit, a simple terminal UI for git commands.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lazygit.nix> -
programs.lazygit.package

The lazygit package to use.

Type: -package

Default: -pkgs.lazygit

Declared by:

+
+ +
+
+
+ + programs.lazygit.package + + +
+
+

The lazygit package to use.

+ +

Type: +package

+ +

Default: +pkgs.lazygit

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lazygit.nix> -
programs.lazygit.settings

Configuration written to + +

+
+
+ + programs.lazygit.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/lazygit/config.yml -on Linux or on Darwin if xdg.enable is set, otherwise +on Linux or on Darwin if xdg.enable is set, otherwise ~/Library/Application Support/lazygit/config.yml. See -https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md -for supported values.

Type: -YAML value

Default: -{ }

Example:

{
+https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md
+for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   gui.theme = {
     lightTheme = true;
-    activeBorderColor = [ "blue" "bold" ];
-    inactiveBorderColor = [ "black" ];
-    selectedLineBgColor = [ "default" ];
+    activeBorderColor = [ "blue" "bold" ];
+    inactiveBorderColor = [ "black" ];
+    selectedLineBgColor = [ "default" ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lazygit.nix> -
programs.ledger.enable

Whether to enable ledger, a double-entry accounting system.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.ledger.enable + + +
+
+

Whether to enable ledger, a double-entry accounting system.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ledger.nix> -
programs.ledger.package

The ledger package to use.

Type: -package

Default: -pkgs.ledger

Declared by:

+
+ +
+
+
+ + programs.ledger.package + + +
+
+

The ledger package to use.

+ +

Type: +package

+ +

Default: +pkgs.ledger

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ledger.nix> -
programs.ledger.extraConfig

Extra configuration to add to -$XDG_CONFIG_HOME/ledger/ledgerrc.

Type: -strings concatenated with “\n”

Default: -""

Example:

--sort date
+
+
+
+
+ + programs.ledger.extraConfig + + +
+
+

Extra configuration to add to +$XDG_CONFIG_HOME/ledger/ledgerrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

--sort date
 --effective
 --date-format %Y-%m-%d
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ledger.nix> -
programs.ledger.settings

Configuration written to $XDG_CONFIG_HOME/ledger/ledgerrc. -See https://www.ledger-cli.org/3.0/doc/ledger3.html#Detailed-Option-Description -for explanation about possible values.

Type: -attribute set of (boolean or signed integer or string or list of string)

Default: -{ }

Example:

{
-  date-format = "%Y-%m-%d";
+
+
+
+
+ + programs.ledger.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/ledger/ledgerrc. +See https://www.ledger-cli.org/3.0/doc/ledger3.html#Detailed-Option-Description +for explanation about possible values.

+ +

Type: +attribute set of (boolean or signed integer or string or list of string)

+ +

Default: +{ }

+ +

Example:

{
+  date-format = "%Y-%m-%d";
   file = [
-    "~/finances/journal.ledger"
-    "~/finances/assets.ledger"
-    "~/finances/income.ledger"
+    "~/finances/journal.ledger"
+    "~/finances/assets.ledger"
+    "~/finances/income.ledger"
   ];
-  sort = "date";
+  sort = "date";
   strict = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ledger.nix> -
programs.less.enable

Whether to enable less, opposite of more.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.less.enable + + +
+
+

Whether to enable less, opposite of more.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/less.nix> -
programs.less.keys

Extra configuration for less written to -$XDG_CONFIG_HOME/lesskey.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.less.keys + + +
+
+

Extra configuration for less written to +$XDG_CONFIG_HOME/lesskey.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   s        back-line
   t        forw-line
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/less.nix> -
programs.lesspipe.enable

Whether to enable lesspipe preprocessor for less.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.lesspipe.enable + + +
+
+

Whether to enable lesspipe preprocessor for less.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lesspipe.nix> -
programs.lf.enable

Whether to enable lf.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.lf.enable + + +
+
+

Whether to enable lf.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.package

lf package to use.

Type: -package

Default: -pkgs.lf

Declared by:

+
+ +
+
+
+ + programs.lf.package + + +
+
+

lf package to use.

+ +

Type: +package

+ +

Default: +pkgs.lf

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.cmdKeybindings

Keys to bind to command line commands which can only be one of the -builtin commands. Keys set to null or an empty string are deleted.

Type: -attribute set of (null or string)

Default: -{ }

Example: -{ "<c-g>" = "cmd-escape"; }

Declared by:

+
+ +
+
+
+ + programs.lf.cmdKeybindings + + +
+
+

Keys to bind to command line commands which can only be one of the +builtin commands. Keys set to null or an empty string are deleted.

+ +

Type: +attribute set of (null or string)

+ +

Default: +{ }

+ +

Example: +{ "<c-g>" = "cmd-escape"; }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.commands

Commands to declare. Commands set to null or an empty string are -deleted.

Type: -attribute set of (null or string)

Default: -{ }

Example:

{
-  get-mime-type = "%xdg-mime query filetype \"$f\"";
-  open = "$$OPENER $f";
+
+
+
+
+ + programs.lf.commands + + +
+
+

Commands to declare. Commands set to null or an empty string are +deleted.

+ +

Type: +attribute set of (null or string)

+ +

Default: +{ }

+ +

Example:

{
+  get-mime-type = "%xdg-mime query filetype \"$f\"";
+  open = "$$OPENER $f";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.extraConfig

Custom lfrc lines.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.lf.extraConfig + + +
+
+

Custom lfrc lines.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   $mkdir -p ~/.trash
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.keybindings

Keys to bind. Keys set to null or an empty string are deleted.

Type: -attribute set of (null or string)

Default: -{ }

Example:

{
-  D = "trash";
-  U = "!du -sh";
+
+
+
+
+ + programs.lf.keybindings + + +
+
+

Keys to bind. Keys set to null or an empty string are deleted.

+ +

Type: +attribute set of (null or string)

+ +

Default: +{ }

+ +

Example:

{
+  D = "trash";
+  U = "!du -sh";
   gg = null;
-  gh = "cd ~";
-  i = "$less $f";
+  gh = "cd ~";
+  i = "$less $f";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.previewer.keybinding

Key to bind to the script at previewer.source and -pipe through less. Setting to null will not bind any key.

Type: -null or string

Default: -null

Example: -"i"

Declared by:

+
+ +
+
+
+ + programs.lf.previewer.keybinding + + +
+
+

Key to bind to the script at previewer.source and +pipe through less. Setting to null will not bind any key.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"i"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.previewer.source

Script or executable to use to preview files. Sets lf’s -previewer option.

Type: -null or path

Default: -null

Example:

pkgs.writeShellScript "pv.sh" ''
+
+
+
+
+ + programs.lf.previewer.source + + +
+
+

Script or executable to use to preview files. Sets lf’s +previewer option.

+ +

Type: +null or path

+ +

Default: +null

+ +

Example:

pkgs.writeShellScript "pv.sh" ''
   #!/bin/sh
 
-  case "$1" in
-      *.tar*) tar tf "$1";;
-      *.zip) unzip -l "$1";;
-      *.rar) unrar l "$1";;
-      *.7z) 7z l "$1";;
-      *.pdf) pdftotext "$1" -;;
-      *) highlight -O ansi "$1" || cat "$1";;
+  case "$1" in
+      *.tar*) tar tf "$1";;
+      *.zip) unzip -l "$1";;
+      *.rar) unrar l "$1";;
+      *.7z) 7z l "$1";;
+      *.pdf) pdftotext "$1" -;;
+      *) highlight -O ansi "$1" || cat "$1";;
   esac
-''
+''
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.lf.settings

An attribute set of lf settings. See the lf documentation for + +

+
+
+ + programs.lf.settings + + +
+
+

An attribute set of lf settings. See the lf documentation for detailed descriptions of these options. Prefer programs.lf.previewer.* for setting lf’s previewer -option. All string options are quoted with double quotes.

Type: -attribute set of (string or signed integer or list of (string or signed integer) or boolean)

Default: -{ }

Example:

{
+option. All string options are quoted with double quotes.

+ +

Type: +attribute set of (string or signed integer or list of (string or signed integer) or boolean)

+ +

Default: +{ }

+ +

Example:

{
   number = true;
   ratios = [
     1
@@ -7054,52 +28904,222 @@ attribute set of (string or signed integer or list of (string or signed integer)
   ];
   tabstop = 4;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lf.nix> -
programs.librewolf.enable

Whether to enable Librewolf browser, a privacy enhanced Firefox fork.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.librewolf.enable + + +
+
+

Whether to enable Librewolf browser, a privacy enhanced Firefox fork.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/librewolf.nix> -
programs.librewolf.package

The LibreWolf package to use.

Type: -package

Default: -pkgs.librewolf

Declared by:

+
+ +
+
+
+ + programs.librewolf.package + + +
+
+

The LibreWolf package to use.

+ +

Type: +package

+ +

Default: +pkgs.librewolf

+ +

Declared by:

+ +
+ <home-manager/modules/programs/librewolf.nix> -
programs.librewolf.settings

Attribute set of LibreWolf settings and overrides. Refer to -https://librewolf.net/docs/settings/ -for details on supported values.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  "webgl.disabled" = false;
-  "privacy.resistFingerprinting" = false;
+
+
+
+
+ + programs.librewolf.settings + + +
+
+

Attribute set of LibreWolf settings and overrides. Refer to +https://librewolf.net/docs/settings/ +for details on supported values.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  "webgl.disabled" = false;
+  "privacy.resistFingerprinting" = false;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/librewolf.nix> -
programs.lieer.enable

Whether to enable lieer Gmail synchronization for notmuch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.lieer.enable + + +
+
+

Whether to enable lieer Gmail synchronization for notmuch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
programs.lieer.package

lieer package to use.

Type: -package

Default: -"pkgs.lieer"

Declared by:

+
+ +
+
+
+ + programs.lieer.package + + +
+
+

lieer package to use.

+ +

Type: +package

+ +

Default: +"pkgs.lieer"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lieer.nix> -
programs.looking-glass-client.enable

Whether to enable looking-glass-client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.looking-glass-client.enable + + +
+
+

Whether to enable looking-glass-client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/looking-glass-client.nix> -
programs.looking-glass-client.package

The looking-glass-client package to use.

Type: -package

Default: -pkgs.looking-glass-client

Declared by:

+
+ +
+
+
+ + programs.looking-glass-client.package + + +
+
+

The looking-glass-client package to use.

+ +

Type: +package

+ +

Default: +pkgs.looking-glass-client

+ +

Declared by:

+ +
+ <home-manager/modules/programs/looking-glass-client.nix> -
programs.looking-glass-client.settings

looking-glass-client settings.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+
+
+
+
+ + programs.looking-glass-client.settings + + +
+
+

looking-glass-client settings.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   app = {
     allowDMA = true;
-    shmFile = "/dev/kvmfr0";
+    shmFile = "/dev/kvmfr0";
   };
 
   win = {
@@ -7119,1662 +29139,7088 @@ attribute set of attribute set of (INI atom (null, bool, int, float or string))<
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/looking-glass-client.nix> -
programs.lsd.enable

Whether to enable lsd.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.lsd.enable + + +
+
+

Whether to enable lsd.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lsd.nix> -
programs.lsd.enableAliases

Whether to enable recommended lsd aliases.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.lsd.enableAliases + + +
+
+

Whether to enable recommended lsd aliases.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/lsd.nix> -
programs.lsd.colors

Configuration written to $XDG_CONFIG_HOME/lsd/colors.yaml. See -https://github.com/lsd-rs/lsd/tree/v1.0.0#color-theme-file-content for + +

+
+
+ + programs.lsd.colors + + +
+
+

Configuration written to $XDG_CONFIG_HOME/lsd/colors.yaml. See +https://github.com/lsd-rs/lsd/tree/v1.0.0#color-theme-file-content for supported colors.

If this option is non-empty then the color.theme option is -automatically set to "custom".

Type: -YAML value

Default: -{ }

Example:

{
+automatically set to "custom".

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   size = {
-    large = "dark_yellow";
-    none = "grey";
-    small = "yellow";
+    large = "dark_yellow";
+    none = "grey";
+    small = "yellow";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lsd.nix> -
programs.lsd.settings

Configuration written to + +

+
+
+ + programs.lsd.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/lsd/config.yaml. See -https://github.com/Peltoche/lsd#config-file-content -for supported values.

Type: -YAML value

Default: -{ }

Example:

{
-  date = "relative";
+https://github.com/Peltoche/lsd#config-file-content
+for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
+  date = "relative";
   ignore-globs = [
-    ".git"
-    ".hg"
+    ".git"
+    ".hg"
   ];
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/lsd.nix> -
programs.man.enable

Whether to enable manual pages and the man + +

+
+
+ + programs.man.enable + + +
+
+

Whether to enable manual pages and the man command. This also includes “man” outputs of all -home.packages.

Type: -boolean

Default: -true

Declared by:

+
+home.packages.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/man.nix> -
programs.man.package

The man package to use.

Type: -package

Default: -pkgs.man

Declared by:

+
+ +
+
+
+ + programs.man.package + + +
+
+

The man package to use.

+ +

Type: +package

+ +

Default: +pkgs.man

+ +

Declared by:

+ +
+ <home-manager/modules/programs/man.nix> -
programs.man.generateCaches

Whether to generate the manual page index caches using + +

+
+
+ + programs.man.generateCaches + + +
+
+

Whether to generate the manual page index caches using mandb(8). This allows searching for a page or keyword using utilities like apropos(1).

This feature is disabled by default because it slows down building. If you don’t mind waiting a few more seconds when Home Manager builds a new generation, you may safely enable -this option.

Type: -boolean

Default: -false

Declared by:

+
+this option.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/man.nix> -
programs.mangohud.enable

Whether to enable Mangohud.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mangohud.enable + + +
+
+

Whether to enable Mangohud.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mangohud.nix> -
programs.mangohud.enableSessionWide

Sets environment variables so that -MangoHud is started on any application that supports it.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.mangohud.enableSessionWide + + +
+
+

Sets environment variables so that +MangoHud is started on any application that supports it.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mangohud.nix> -
programs.mangohud.package

The Mangohud package to install.

Type: -package

Default: -pkgs.mangohud

Declared by:

+
+ +
+
+
+ + programs.mangohud.package + + +
+
+

The Mangohud package to install.

+ +

Type: +package

+ +

Default: +pkgs.mangohud

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mangohud.nix> -
programs.mangohud.settings

Configuration written to + +

+
+
+ + programs.mangohud.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/MangoHud/MangoHud.conf. See -https://github.com/flightlessmango/MangoHud/blob/master/data/MangoHud.conf -for the default configuration.

Type: -attribute set of (boolean or signed integer or floating point number or string or path or list of (signed integer or string))

Default: -{ }

Example:

{
+https://github.com/flightlessmango/MangoHud/blob/master/data/MangoHud.conf
+for the default configuration.

+ +

Type: +attribute set of (boolean or signed integer or floating point number or string or path or list of (signed integer or string))

+ +

Default: +{ }

+ +

Example:

{
   output_folder = ~/Documents/mangohud/;
   full = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mangohud.nix> -
programs.mangohud.settingsPerApplication

Sets MangoHud settings per application. + +

+
+
+ + programs.mangohud.settingsPerApplication + + +
+
+

Sets MangoHud settings per application. Configuration written to $XDG_CONFIG_HOME/MangoHud/{application_name}.conf. See -https://github.com/flightlessmango/MangoHud/blob/master/data/MangoHud.conf -for the default configuration.

Type: -attribute set of attribute set of (boolean or signed integer or floating point number or string or path or list of (signed integer or string))

Default: -{ }

Example:

{
+https://github.com/flightlessmango/MangoHud/blob/master/data/MangoHud.conf
+for the default configuration.

+ +

Type: +attribute set of attribute set of (boolean or signed integer or floating point number or string or path or list of (signed integer or string))

+ +

Default: +{ }

+ +

Example:

{
   mpv = {
     no_display = true;
   }
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mangohud.nix> -
programs.matplotlib.enable

Whether to enable matplotlib, a plotting library for python.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.matplotlib.enable + + +
+
+

Whether to enable matplotlib, a plotting library for python.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/matplotlib.nix> -
programs.matplotlib.config

Add terms to the matplotlibrc file to -control the default matplotlib behavior.

Type: -attribute set of anything

Default: -{ }

Example:

{
-  backend = "Qt5Agg";
+
+
+
+
+ + programs.matplotlib.config + + +
+
+

Add terms to the matplotlibrc file to +control the default matplotlib behavior.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  backend = "Qt5Agg";
   axes = {
     grid = true;
-    facecolor = "black";
-    edgecolor = "FF9900";
+    facecolor = "black";
+    edgecolor = "FF9900";
   };
-  grid.color = "FF9900";
+  grid.color = "FF9900";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/matplotlib.nix> -
programs.matplotlib.extraConfig

Additional commands for matplotlib that will be added to the -matplotlibrc file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.matplotlib.extraConfig + + +
+
+

Additional commands for matplotlib that will be added to the +matplotlibrc file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/matplotlib.nix> -
programs.mbsync.enable

Whether to enable mbsync IMAP4 and Maildir mailbox synchronizer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mbsync.enable + + +
+
+

Whether to enable mbsync IMAP4 and Maildir mailbox synchronizer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
programs.mbsync.package

The package to use for the mbsync binary.

Type: -package

Default: -pkgs.isync

Example: -pkgs.isync

Declared by:

+
+ +
+
+
+ + programs.mbsync.package + + +
+
+

The package to use for the mbsync binary.

+ +

Type: +package

+ +

Default: +pkgs.isync

+ +

Example: +pkgs.isync

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
programs.mbsync.extraConfig

Extra configuration lines to add to the mbsync configuration.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.mbsync.extraConfig + + +
+
+

Extra configuration lines to add to the mbsync configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
programs.mbsync.groups

Definition of groups.

Type: -attribute set of attribute set of list of string

Default: -{ }

Example:

{
+
+
+
+
+ + programs.mbsync.groups + + +
+
+

Definition of groups.

+ +

Type: +attribute set of attribute set of list of string

+ +

Default: +{ }

+ +

Example:

{
   inboxes = {
-    account1 = [ "Inbox" ];
-    account2 = [ "Inbox" ];
+    account1 = [ "Inbox" ];
+    account2 = [ "Inbox" ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mbsync.nix> -
programs.mcfly.enable

Whether to enable mcfly.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mcfly.enable + + +
+
+

Whether to enable mcfly.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mcfly.nix> -
programs.mcfly.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.mcfly.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mcfly.nix> -
programs.mcfly.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.mcfly.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mcfly.nix> -
programs.mcfly.enableLightTheme

Whether to enable light mode theme.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.mcfly.enableLightTheme + + +
+
+

Whether to enable light mode theme.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mcfly.nix> -
programs.mcfly.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.mcfly.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mcfly.nix> -
programs.mcfly.fuzzySearchFactor

Whether to enable fuzzy searching. + +

+
+
+ + programs.mcfly.fuzzySearchFactor + + +
+
+

Whether to enable fuzzy searching. 0 is off; higher numbers weight toward shorter matches. -Values in the 2-5 range get good results so far.

Type: -unsigned integer, meaning >=0

Default: -0

Declared by:

+
+Values in the 2-5 range get good results so far.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mcfly.nix> -
programs.mcfly.keyScheme

Key scheme to use.

Type: -one of “emacs”, “vim”

Default: -"emacs"

Declared by:

+
+ +
+
+
+ + programs.mcfly.keyScheme + + +
+
+

Key scheme to use.

+ +

Type: +one of “emacs”, “vim”

+ +

Default: +"emacs"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mcfly.nix> -
programs.mercurial.enable

Whether to enable Mercurial.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mercurial.enable + + +
+
+

Whether to enable Mercurial.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.mercurial.package

Mercurial package to install.

Type: -package

Default: -pkgs.mercurial

Declared by:

+
+ +
+
+
+ + programs.mercurial.package + + +
+
+

Mercurial package to install.

+ +

Type: +package

+ +

Default: +pkgs.mercurial

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.mercurial.aliases

Mercurial aliases to define.

Type: -attribute set of anything

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.mercurial.aliases + + +
+
+

Mercurial aliases to define.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.mercurial.extraConfig

Additional configuration to add.

Type: -(attribute set of anything) or strings concatenated with “\n”

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.mercurial.extraConfig + + +
+
+

Additional configuration to add.

+ +

Type: +(attribute set of anything) or strings concatenated with “\n”

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.mercurial.ignores

List of globs for files to be globally ignored.

Type: -list of string

Default: -[ ]

Example:

[
-  "*~"
-  "*.swp"
+
+
+
+
+ + programs.mercurial.ignores + + +
+
+

List of globs for files to be globally ignored.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "*~"
+  "*.swp"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.mercurial.ignoresRegexp

List of regular expressions for files to be globally ignored.

Type: -list of string

Default: -[ ]

Example:

[
-  "^.*~$"
-  "^.*\\.swp$"
+
+
+
+
+ + programs.mercurial.ignoresRegexp + + +
+
+

List of regular expressions for files to be globally ignored.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "^.*~$"
+  "^.*\\.swp$"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.mercurial.userEmail

Default user email to use.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.mercurial.userEmail + + +
+
+

Default user email to use.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.mercurial.userName

Default user name to use.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.mercurial.userName + + +
+
+

Default user name to use.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mercurial.nix> -
programs.micro.enable

Whether to enable micro, a terminal-based text editor.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.micro.enable + + +
+
+

Whether to enable micro, a terminal-based text editor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/micro.nix> -
programs.micro.settings

Configuration written to + +

+
+
+ + programs.micro.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/micro/settings.json. See -https://github.com/zyedidia/micro/blob/master/runtime/help/options.md -for supported values.

Type: -JSON value

Default: -{ }

Example:

{
+https://github.com/zyedidia/micro/blob/master/runtime/help/options.md
+for supported values.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
   autosu = false;
   cursorline = false;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/micro.nix> -
programs.mpv.enable

Whether to enable mpv.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mpv.enable + + +
+
+

Whether to enable mpv.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mpv.package

Package providing mpv.

Type: -package

Default: -<derivation mpv-with-scripts-0.36.0>

Example: -pkgs.wrapMpv (pkgs.mpv-unwrapped.override { vapoursynthSupport = true; }) { youtubeSupport = true; }

Declared by:

+
+ +
+
+
+ + programs.mpv.package + + +
+
+

Package providing mpv.

+ +

Type: +package

+ +

Default: +<derivation mpv-with-scripts-0.36.0>

+ +

Example: +pkgs.wrapMpv (pkgs.mpv-unwrapped.override { vapoursynthSupport = true; }) { youtubeSupport = true; }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mpv.bindings

Input configuration written to + +

+
+
+ + programs.mpv.bindings + + +
+
+

Input configuration written to $XDG_CONFIG_HOME/mpv/input.conf. See mpv(1) -for the full list of options.

Type: -attribute set of string

Default: -{ }

Example:

{
-  WHEEL_UP = "seek 10";
-  WHEEL_DOWN = "seek -10";
-  "Alt+0" = "set window-scale 0.5";
+for the full list of options.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  WHEEL_UP = "seek 10";
+  WHEEL_DOWN = "seek -10";
+  "Alt+0" = "set window-scale 0.5";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mpv.config

Configuration written to + +

+
+
+ + programs.mpv.config + + +
+
+

Configuration written to $XDG_CONFIG_HOME/mpv/mpv.conf. See mpv(1) -for the full list of options.

Type: -attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

Default: -{ }

Example:

{
-  profile = "gpu-hq";
+for the full list of options.

+ +

Type: +attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

+ +

Default: +{ }

+ +

Example:

{
+  profile = "gpu-hq";
   force-window = true;
-  ytdl-format = "bestvideo+bestaudio";
+  ytdl-format = "bestvideo+bestaudio";
   cache-default = 4000000;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mpv.defaultProfiles

Profiles to be applied by default. Options set by them are overridden -by options set in programs.mpv.config.

Type: -list of string

Default: -[ ]

Example:

[
-  "gpu-hq"
+
+
+
+
+ + programs.mpv.defaultProfiles + + +
+
+

Profiles to be applied by default. Options set by them are overridden +by options set in programs.mpv.config.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "gpu-hq"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mpv.profiles

Sub-configuration options for specific profiles written to + +

+
+
+ + programs.mpv.profiles + + +
+
+

Sub-configuration options for specific profiles written to $XDG_CONFIG_HOME/mpv/mpv.conf. See -programs.mpv.config for more information.

Type: -attribute set of attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

Default: -{ }

Example:

{
+programs.mpv.config for more information.

+ +

Type: +attribute set of attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

+ +

Default: +{ }

+ +

Example:

{
   fast = {
-    vo = "vdpau";
+    vo = "vdpau";
   };
-  "protocol.dvd" = {
-    profile-desc = "profile for dvd:// streams";
-    alang = "en";
+  "protocol.dvd" = {
+    profile-desc = "profile for dvd:// streams";
+    alang = "en";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mpv.scriptOpts

Script options added to + +

+
+
+ + programs.mpv.scriptOpts + + +
+
+

Script options added to $XDG_CONFIG_HOME/mpv/script-opts/. See mpv(1) -for the full list of options of builtin scripts.

Type: -attribute set of attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

Default: -{ }

Example:

{
+for the full list of options of builtin scripts.

+ +

Type: +attribute set of attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

+ +

Default: +{ }

+ +

Example:

{
   osc = {
     scalewindowed = 2.0;
     vidscale = false;
-    visibility = "always";
+    visibility = "always";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mpv.scripts

List of scripts to use with mpv.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.mpvScripts.mpris ]

Declared by:

+
+ +
+
+
+ + programs.mpv.scripts + + +
+
+

List of scripts to use with mpv.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.mpvScripts.mpris ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mpv.nix> -
programs.mr.enable

Whether to enable mr, a tool to manage all your version control repositories.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mr.enable + + +
+
+

Whether to enable mr, a tool to manage all your version control repositories.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mr.nix> -
programs.mr.package

The mr package to use.

Type: -package

Default: -pkgs.mr

Declared by:

+
+ +
+
+
+ + programs.mr.package + + +
+
+

The mr package to use.

+ +

Type: +package

+ +

Default: +pkgs.mr

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mr.nix> -
programs.mr.settings

Configuration written to $HOME/.mrconfig -See https://myrepos.branchable.com/ -for an example configuration.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string) or a non-empty list of them)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.mr.settings + + +
+
+

Configuration written to $HOME/.mrconfig +See https://myrepos.branchable.com/ +for an example configuration.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string) or a non-empty list of them)

+ +

Default: +{ }

+ +

Example:

{
   foo = {
-    checkout = "git clone git@github.com:joeyh/foo.git";
-    update = "git pull --rebase";
+    checkout = "git clone git@github.com:joeyh/foo.git";
+    update = "git pull --rebase";
   };
-  ".local/share/password-store" = {
-    checkout = "git clone git@github.com:myuser/password-store.git";
+  ".local/share/password-store" = {
+    checkout = "git clone git@github.com:myuser/password-store.git";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/mr.nix> -
programs.msmtp.enable

Whether to enable msmtp.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.msmtp.enable + + +
+
+

Whether to enable msmtp.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/msmtp.nix> -
programs.msmtp.extraAccounts

Extra configuration lines to add to the end of ~/.msmtprc. -See https://marlam.de/msmtp/msmtprc.txt for examples.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.msmtp.extraAccounts + + +
+
+

Extra configuration lines to add to the end of ~/.msmtprc. +See https://marlam.de/msmtp/msmtprc.txt for examples.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/msmtp.nix> -
programs.msmtp.extraConfig

Extra configuration lines to add to ~/.msmtprc. -See https://marlam.de/msmtp/msmtprc.txt for examples.

Note, if running msmtp fails with the error message “account default + +

+
+
+ + programs.msmtp.extraConfig + + +
+
+

Extra configuration lines to add to ~/.msmtprc. +See https://marlam.de/msmtp/msmtprc.txt for examples.

Note, if running msmtp fails with the error message “account default was already defined” then you probably have an account command here. Account commands should be placed in -accounts.email.accounts.<name>.msmtp.extraConfig.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+accounts.email.accounts.<name>.msmtp.extraConfig.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/msmtp.nix> -
programs.mu.enable

Whether to enable mu, a maildir indexer and searcher.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mu.enable + + +
+
+

Whether to enable mu, a maildir indexer and searcher.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mu.nix> -
programs.mu.package

The mu package to use.

Type: -package

Default: -pkgs.mu

Declared by:

+
+ +
+
+
+ + programs.mu.package + + +
+
+

The mu package to use.

+ +

Type: +package

+ +

Default: +pkgs.mu

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mu.nix> -
programs.mujmap.enable

Whether to enable mujmap Gmail synchronization for notmuch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.mujmap.enable + + +
+
+

Whether to enable mujmap Gmail synchronization for notmuch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
programs.mujmap.package

mujmap package to use.

Type: -package

Default: -"pkgs.mujmap"

Declared by:

+
+ +
+
+
+ + programs.mujmap.package + + +
+
+

mujmap package to use.

+ +

Type: +package

+ +

Default: +"pkgs.mujmap"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/mujmap.nix> -
programs.navi.enable

Whether to enable Navi.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.navi.enable + + +
+
+

Whether to enable Navi.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/navi.nix> -
programs.navi.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.navi.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/navi.nix> -
programs.navi.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.navi.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/navi.nix> -
programs.navi.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.navi.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/navi.nix> -
programs.navi.package

The package to use for the navi binary.

Type: -package

Default: -pkgs.navi

Declared by:

+
+ +
+
+
+ + programs.navi.package + + +
+
+

The package to use for the navi binary.

+ +

Type: +package

+ +

Default: +pkgs.navi

+ +

Declared by:

+ +
+ <home-manager/modules/programs/navi.nix> -
programs.navi.settings

Configuration written to + +

+
+
+ + programs.navi.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/navi/config.yaml on Linux or $HOME/Library/Application Support/navi/config.yaml on Darwin. See -https://github.com/denisidoro/navi/blob/master/docs/config_file.md -for more information.

Type: -YAML value

Default: -{ }

Example:

{
+https://github.com/denisidoro/navi/blob/master/docs/config_file.md
+for more information.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   cheats = {
     paths = [
-      "~/cheats/"
+      "~/cheats/"
     ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/navi.nix> -
programs.ncmpcpp.enable

Whether to enable ncmpcpp - an ncurses Music Player Daemon (MPD) client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.ncmpcpp.enable + + +
+
+

Whether to enable ncmpcpp - an ncurses Music Player Daemon (MPD) client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ncmpcpp.nix> -
programs.ncmpcpp.package

Package providing the ncmpcpp command.

Type: -package

Default: -pkgs.ncmpcpp

Example: -pkgs.ncmpcpp.override { visualizerSupport = true; }

Declared by:

+
+ +
+
+
+ + programs.ncmpcpp.package + + +
+
+

Package providing the ncmpcpp command.

+ +

Type: +package

+ +

Default: +pkgs.ncmpcpp

+ +

Example: +pkgs.ncmpcpp.override { visualizerSupport = true; }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ncmpcpp.nix> -
programs.ncmpcpp.bindings

List of keybindings.

Type: -list of (submodule)

Default: -[ ]

Example:

[
-  { key = "j"; command = "scroll_down"; }
-  { key = "k"; command = "scroll_up"; }
-  { key = "J"; command = [ "select_item" "scroll_down" ]; }
-  { key = "K"; command = [ "select_item" "scroll_up" ]; }
+
+
+
+
+ + programs.ncmpcpp.bindings + + +
+
+

List of keybindings.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
+  { key = "j"; command = "scroll_down"; }
+  { key = "k"; command = "scroll_up"; }
+  { key = "J"; command = [ "select_item" "scroll_down" ]; }
+  { key = "K"; command = [ "select_item" "scroll_up" ]; }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ncmpcpp.nix> -
programs.ncmpcpp.bindings.*.command

Command or sequence of commands to be executed.

Type: -string or list of string

Example: -"scroll_down"

Declared by:

+
+ +
+
+
+ + programs.ncmpcpp.bindings.*.command + + +
+
+

Command or sequence of commands to be executed.

+ +

Type: +string or list of string

+ +

Example: +"scroll_down"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ncmpcpp.nix> -
programs.ncmpcpp.bindings.*.key

Key to bind.

Type: -string

Example: -"j"

Declared by:

+
+ +
+
+
+ + programs.ncmpcpp.bindings.*.key + + +
+
+

Key to bind.

+ +

Type: +string

+ +

Example: +"j"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ncmpcpp.nix> -
programs.ncmpcpp.mpdMusicDir

Value of the mpd_music_dir setting. On Linux platforms the + +

+
+
+ + programs.ncmpcpp.mpdMusicDir + + +
+
+

Value of the mpd_music_dir setting. On Linux platforms the value of services.mpd.musicDirectory is used as the default if services.mpd.enable is -true.

Type: -null or (string or path convertible to it)

Default:

if pkgs.stdenv.hostPlatform.isLinux && config.services.mpd.enable then
+true.

+ +

Type: +null or (string or path convertible to it)

+ +

Default:

if pkgs.stdenv.hostPlatform.isLinux && config.services.mpd.enable then
   config.services.mpd.musicDirectory
 else
   null
 
-

Example: -"~/music"

Declared by:

+
+ + +

Example: +"~/music"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ncmpcpp.nix> -
programs.ncmpcpp.settings

Attribute set from name of a setting to its value. For available options + +

+
+
+ + programs.ncmpcpp.settings + + +
+
+

Attribute set from name of a setting to its value. For available options see -ncmpcpp(1).

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  ncmpcpp_directory = "~/.local/share/ncmpcpp";
+ncmpcpp(1).

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  ncmpcpp_directory = "~/.local/share/ncmpcpp";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ncmpcpp.nix> -
programs.ncspot.enable

Whether to enable ncspot.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.ncspot.enable + + +
+
+

Whether to enable ncspot.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ncspot.nix> -
programs.ncspot.package

The package to use for ncspot.

Type: -package

Default: -pkgs.ncspot

Declared by:

+
+ +
+
+
+ + programs.ncspot.package + + +
+
+

The package to use for ncspot.

+ +

Type: +package

+ +

Default: +pkgs.ncspot

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ncspot.nix> -
programs.ncspot.settings

Configuration written to -$XDG_CONFIG_HOME/ncspot/config.toml.

See https://github.com/hrkfdn/ncspot#configuration -for the full list of options.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.ncspot.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/ncspot/config.toml.

See https://github.com/hrkfdn/ncspot#configuration +for the full list of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   shuffle = true;
   gapless = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ncspot.nix> -
programs.ne.enable

Whether to enable ne.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.ne.enable + + +
+
+

Whether to enable ne.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ne.nix> -
programs.ne.automaticPreferences

Automatic preferences files for ne.

Type: -attribute set of strings concatenated with “\n”

Default: -{ }

Example:

{
-  nix = ''
+
+
+
+
+ + programs.ne.automaticPreferences + + +
+
+

Automatic preferences files for ne.

+ +

Type: +attribute set of strings concatenated with “\n”

+ +

Default: +{ }

+ +

Example:

{
+  nix = ''
     TAB 0
     TS 2
-  '';
-  js = ''
+  '';
+  js = ''
     TS 4
-  '';
+  '';
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ne.nix> -
programs.ne.defaultPreferences

Default preferences for ne.

Equivalent to programs.ne.automaticPreferences.".default".

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.ne.defaultPreferences + + +
+
+

Default preferences for ne.

Equivalent to programs.ne.automaticPreferences.".default".

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ne.nix> -
programs.ne.keybindings

Keybinding file for ne.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.ne.keybindings + + +
+
+

Keybinding file for ne.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   KEY 7f BS
-  SEQ "\x1b[1;5D" 7f
-''
-

Declared by:

+
+ SEQ "\x1b[1;5D" 7f +'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/ne.nix> -
programs.ne.menus

Menu configuration file for ne.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.ne.menus + + +
+
+

Menu configuration file for ne.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ne.nix> -
programs.ne.virtualExtensions

Virtual extensions configuration file for ne.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.ne.virtualExtensions + + +
+
+

Virtual extensions configuration file for ne.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   sh   1  ^#!\s*/.*\b(bash|sh|ksh|zsh)\s*
   csh  1  ^#!\s*/.*\b(csh|tcsh)\s*
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/ne.nix> -
programs.neomutt.enable

Whether to enable the NeoMutt mail client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.neomutt.enable + + +
+
+

Whether to enable the NeoMutt mail client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.package

The neomutt package to use.

Type: -package

Default: -pkgs.neomutt

Declared by:

+
+ +
+
+
+ + programs.neomutt.package + + +
+
+

The neomutt package to use.

+ +

Type: +package

+ +

Default: +pkgs.neomutt

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.binds

List of keybindings.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.neomutt.binds + + +
+
+

List of keybindings.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.binds.*.action

Specify the action to take.

Type: -string

Example: -"<enter-command>toggle sidebar_visible<enter><refresh>"

Declared by:

+
+ +
+
+
+ + programs.neomutt.binds.*.action + + +
+
+

Specify the action to take.

+ +

Type: +string

+ +

Example: +"<enter-command>toggle sidebar_visible<enter><refresh>"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.binds.*.key

The key to bind.

Type: -string

Example: -"<left>"

Declared by:

+
+ +
+
+
+ + programs.neomutt.binds.*.key + + +
+
+

The key to bind.

+ +

Type: +string

+ +

Example: +"<left>"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.binds.*.map

Select the menu to bind the command to.

Type: -one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime” or list of (one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime”)

Default: -"index"

Declared by:

+
+ +
+
+
+ + programs.neomutt.binds.*.map + + +
+
+

Select the menu to bind the command to.

+ +

Type: +one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime” or list of (one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime”)

+ +

Default: +"index"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.changeFolderWhenSourcingAccount

Whether to enable changing the folder when sourcing an account.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.neomutt.changeFolderWhenSourcingAccount + + +
+
+

Whether to enable changing the folder when sourcing an account.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.checkStatsInterval

Enable and set the interval of automatic mail check.

Type: -null or signed integer

Default: -null

Example: -60

Declared by:

+
+ +
+
+
+ + programs.neomutt.checkStatsInterval + + +
+
+

Enable and set the interval of automatic mail check.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +60

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.editor

Select the editor used for writing mail.

Type: -string

Default: -"$EDITOR"

Declared by:

+
+ +
+
+
+ + programs.neomutt.editor + + +
+
+

Select the editor used for writing mail.

+ +

Type: +string

+ +

Default: +"$EDITOR"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.extraConfig

Extra configuration appended to the end.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.neomutt.extraConfig + + +
+
+

Extra configuration appended to the end.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.macros

List of macros.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.neomutt.macros + + +
+
+

List of macros.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.macros.*.action

Specify the action to take.

Type: -string

Example: -"<enter-command>toggle sidebar_visible<enter><refresh>"

Declared by:

+
+ +
+
+
+ + programs.neomutt.macros.*.action + + +
+
+

Specify the action to take.

+ +

Type: +string

+ +

Example: +"<enter-command>toggle sidebar_visible<enter><refresh>"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.macros.*.key

The key to bind.

Type: -string

Example: -"<left>"

Declared by:

+
+ +
+
+
+ + programs.neomutt.macros.*.key + + +
+
+

The key to bind.

+ +

Type: +string

+ +

Example: +"<left>"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.macros.*.map

Select the menu to bind the command to.

Type: -one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime” or list of (one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime”)

Default: -"index"

Declared by:

+
+ +
+
+
+ + programs.neomutt.macros.*.map + + +
+
+

Select the menu to bind the command to.

+ +

Type: +one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime” or list of (one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime”)

+ +

Default: +"index"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.settings

Extra configuration appended to the end.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.neomutt.settings + + +
+
+

Extra configuration appended to the end.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.sidebar

Options related to the sidebar.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.neomutt.sidebar + + +
+
+

Options related to the sidebar.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.sidebar.enable

Whether to enable sidebar support.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.neomutt.sidebar.enable + + +
+
+

Whether to enable sidebar support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.sidebar.format

Sidebar format. Check neomutt documentation for details.

Type: -string

Default: -"%D%?F? [%F]?%* %?N?%N/?%S"

Declared by:

+
+ +
+
+
+ + programs.neomutt.sidebar.format + + +
+
+

Sidebar format. Check neomutt documentation for details.

+ +

Type: +string

+ +

Default: +"%D%?F? [%F]?%* %?N?%N/?%S"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.sidebar.shortPath

By default sidebar shows the full path of the mailbox, but -with this enabled only the relative name is shown.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.neomutt.sidebar.shortPath + + +
+
+

By default sidebar shows the full path of the mailbox, but +with this enabled only the relative name is shown.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.sidebar.width

Width of the sidebar

Type: -signed integer

Default: -22

Declared by:

+
+ +
+
+
+ + programs.neomutt.sidebar.width + + +
+
+

Width of the sidebar

+ +

Type: +signed integer

+ +

Default: +22

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.sort

Sorting method on messages.

Type: -one of “date”, “date-received”, “from”, “mailbox-order”, “score”, “size”, “spam”, “subject”, “threads”, “to”, “reverse-date”, “reverse-date-received”, “reverse-from”, “reverse-mailbox-order”, “reverse-score”, “reverse-size”, “reverse-spam”, “reverse-subject”, “reverse-threads”, “reverse-to”

Default: -"threads"

Declared by:

+
+ +
+
+
+ + programs.neomutt.sort + + +
+
+

Sorting method on messages.

+ +

Type: +one of “date”, “date-received”, “from”, “mailbox-order”, “score”, “size”, “spam”, “subject”, “threads”, “to”, “reverse-date”, “reverse-date-received”, “reverse-from”, “reverse-mailbox-order”, “reverse-score”, “reverse-size”, “reverse-spam”, “reverse-subject”, “reverse-threads”, “reverse-to”

+ +

Default: +"threads"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neomutt.vimKeys

Enable vim-like bindings.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.neomutt.vimKeys + + +
+
+

Enable vim-like bindings.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neomutt.nix> -
programs.neovim.enable

Whether to enable Neovim.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.neovim.enable + + +
+
+

Whether to enable Neovim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.package

The package to use for the neovim binary.

Type: -package

Default: -pkgs.neovim-unwrapped

Declared by:

+
+ +
+
+
+ + programs.neovim.package + + +
+
+

The package to use for the neovim binary.

+ +

Type: +package

+ +

Default: +pkgs.neovim-unwrapped

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.coc.enable

Whether to enable Coc.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.neovim.coc.enable + + +
+
+

Whether to enable Coc.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.coc.package

The package to use for the CoC plugin.

Type: -package

Default: -pkgs.vimPlugins.coc-nvim

Declared by:

+
+ +
+
+
+ + programs.neovim.coc.package + + +
+
+

The package to use for the CoC plugin.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.coc-nvim

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.coc.pluginConfig

Script to configure CoC. Must be viml.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.neovim.coc.pluginConfig + + +
+
+

Script to configure CoC. Must be viml.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.coc.settings

Extra configuration lines to add to + +

+
+
+ + programs.neovim.coc.settings + + +
+
+

Extra configuration lines to add to $XDG_CONFIG_HOME/nvim/coc-settings.json See -https://github.com/neoclide/coc.nvim/wiki/Using-the-configuration-file -for options.

Type: -JSON value

Default: -{ }

Example:

{
-  "suggest.noselect" = true;
-  "suggest.enablePreview" = true;
-  "suggest.enablePreselect" = false;
-  "suggest.disableKind" = true;
+https://github.com/neoclide/coc.nvim/wiki/Using-the-configuration-file
+for options.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
+  "suggest.noselect" = true;
+  "suggest.enablePreview" = true;
+  "suggest.enablePreselect" = false;
+  "suggest.disableKind" = true;
   languageserver = {
     haskell = {
-      command = "haskell-language-server-wrapper";
-      args = [ "--lsp" ];
+      command = "haskell-language-server-wrapper";
+      args = [ "--lsp" ];
       rootPatterns = [
-        "*.cabal"
-        "stack.yaml"
-        "cabal.project"
-        "package.yaml"
-        "hie.yaml"
+        "*.cabal"
+        "stack.yaml"
+        "cabal.project"
+        "package.yaml"
+        "hie.yaml"
       ];
-      filetypes = [ "haskell" "lhaskell" ];
+      filetypes = [ "haskell" "lhaskell" ];
     };
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.defaultEditor

Whether to configure nvim as the default -editor using the EDITOR environment variable.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.neovim.defaultEditor + + +
+
+

Whether to configure nvim as the default +editor using the EDITOR environment variable.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.extraConfig

Custom vimrc lines.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.neovim.extraConfig + + +
+
+

Custom vimrc lines.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   set nobackup
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.extraLuaConfig

Custom lua lines.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.neovim.extraLuaConfig + + +
+
+

Custom lua lines.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   vim.opt.nobackup = true
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.extraLuaPackages

The extra Lua packages required for your plugins to work. + +

+
+
+ + programs.neovim.extraLuaPackages + + +
+
+

The extra Lua packages required for your plugins to work. This option accepts a function that takes a Lua package set as an argument, and selects the required Lua packages from this package set. -See the example for more info.

Type: -(function that evaluates to a(n) list of package) or (list of package) convertible to it

Default: -ps: [ ]

Example: -luaPkgs: with luaPkgs; [ luautf8 ]

Declared by:

+
+See the example for more info.

+ +

Type: +(function that evaluates to a(n) list of package) or (list of package) convertible to it

+ +

Default: +ps: [ ]

+ +

Example: +luaPkgs: with luaPkgs; [ luautf8 ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.extraPackages

Extra packages available to nvim.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.shfmt ]

Declared by:

+
+ +
+
+
+ + programs.neovim.extraPackages + + +
+
+

Extra packages available to nvim.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.shfmt ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.extraPython3Packages

The extra Python 3 packages required for your plugins to work. + +

+
+
+ + programs.neovim.extraPython3Packages + + +
+
+

The extra Python 3 packages required for your plugins to work. This option accepts a function that takes a Python 3 package set as an argument, and selects the required Python 3 packages from this package set. -See the example for more info.

Type: -(function that evaluates to a(n) list of package) or (list of package) convertible to it

Default: -ps: [ ]

Example: -pyPkgs: with pyPkgs; [ python-language-server ]

Declared by:

-<home-manager/modules/programs/neovim.nix> -
programs.neovim.finalPackage

Resulting customized neovim package.

Type: -package (read only)

Declared by:

-<home-manager/modules/programs/neovim.nix> -
programs.neovim.generatedConfigViml

Generated vimscript config.

Type: -strings concatenated with “\n” (read only)

Declared by:

-<home-manager/modules/programs/neovim.nix> -
programs.neovim.generatedConfigs

Generated configurations with as key their language (set via type).

Type: -attribute set of strings concatenated with “\n” (read only)

Example:

{
-  viml = ''
-    " Generated by home-manager
-    map <leader> ,
-  '';
+See the example for more info.

- lua = '' - -- Generated by home-manager - vim.opt.background = "dark" - ''; -} -

Declared by:

+
+

Type: +(function that evaluates to a(n) list of package) or (list of package) convertible to it

+ +

Default: +ps: [ ]

+ +

Example: +pyPkgs: with pyPkgs; [ python-language-server ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.plugins

List of vim plugins to install optionally associated with -configuration to be placed in init.vim.

This option is mutually exclusive with configure.

Type: -list of (package or (submodule))

Default: -[ ]

Example:

with pkgs.vimPlugins; [
+
+
+
+
+ + programs.neovim.finalPackage + + +
+
+

Resulting customized neovim package.

+ +

Type: +package (read only)

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/neovim.nix> + +
+
+
+ + programs.neovim.generatedConfigViml + + +
+
+

Generated vimscript config.

+ +

Type: +strings concatenated with “\n” (read only)

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/neovim.nix> + +
+
+
+ + programs.neovim.generatedConfigs + + +
+
+

Generated configurations with as key their language (set via type).

+ +

Type: +attribute set of strings concatenated with “\n” (read only)

+ +

Example:

{
+  viml = ''
+    " Generated by home-manager
+    map <leader> ,
+  '';
+
+  lua = ''
+    -- Generated by home-manager
+    vim.opt.background = "dark"
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/neovim.nix> + +
+
+
+ + programs.neovim.plugins + + +
+
+

List of vim plugins to install optionally associated with +configuration to be placed in init.vim.

This option is mutually exclusive with configure.

+ +

Type: +list of (package or (submodule))

+ +

Default: +[ ]

+ +

Example:

with pkgs.vimPlugins; [
   yankring
   vim-nix
   { plugin = vim-startify;
-    config = "let g:startify_change_to_vcs_root = 0";
+    config = "let g:startify_change_to_vcs_root = 0";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.viAlias

Symlink vi to nvim binary.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.neovim.viAlias + + +
+
+

Symlink vi to nvim binary.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.vimAlias

Symlink vim to nvim binary.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.neovim.vimAlias + + +
+
+

Symlink vim to nvim binary.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.vimdiffAlias

Alias vimdiff to nvim -d.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.neovim.vimdiffAlias + + +
+
+

Alias vimdiff to nvim -d.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.withNodeJs

Enable node provider. Set to true to -use Node plugins.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.neovim.withNodeJs + + +
+
+

Enable node provider. Set to true to +use Node plugins.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.withPython3

Enable Python 3 provider. Set to true to -use Python 3 plugins.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.neovim.withPython3 + + +
+
+

Enable Python 3 provider. Set to true to +use Python 3 plugins.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.neovim.withRuby

Enable ruby provider.

Type: -null or boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.neovim.withRuby + + +
+
+

Enable ruby provider.

+ +

Type: +null or boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/neovim.nix> -
programs.newsboat.enable

Whether to enable the Newsboat feed reader.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.newsboat.enable + + +
+
+

Whether to enable the Newsboat feed reader.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.autoReload

Whether to enable automatic reloading while newsboat is running.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.newsboat.autoReload + + +
+
+

Whether to enable automatic reloading while newsboat is running.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.browser

External browser to use.

Type: -string

Default: -"\${pkgs.xdg-utils}/bin/xdg-open"

Declared by:

+
+ +
+
+
+ + programs.newsboat.browser + + +
+
+

External browser to use.

+ +

Type: +string

+ +

Default: +"\${pkgs.xdg-utils}/bin/xdg-open"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.extraConfig

Extra configuration values that will be appended to the end.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.newsboat.extraConfig + + +
+
+

Extra configuration values that will be appended to the end.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.maxItems

Maximum number of items per feed, 0 for infinite.

Type: -signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + programs.newsboat.maxItems + + +
+
+

Maximum number of items per feed, 0 for infinite.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.queries

A list of queries to use.

Type: -attribute set of string

Default: -{ }

Example:

{
-  foo = "rssurl =~ \"example.com\"";
+
+
+
+
+ + programs.newsboat.queries + + +
+
+

A list of queries to use.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  foo = "rssurl =~ \"example.com\"";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.reloadThreads

How many threads to use for updating the feeds.

Type: -signed integer

Default: -5

Declared by:

+
+ +
+
+
+ + programs.newsboat.reloadThreads + + +
+
+

How many threads to use for updating the feeds.

+ +

Type: +signed integer

+ +

Default: +5

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.reloadTime

Time in minutes between reloads.

Type: -null or signed integer

Default: -60

Declared by:

+
+ +
+
+
+ + programs.newsboat.reloadTime + + +
+
+

Time in minutes between reloads.

+ +

Type: +null or signed integer

+ +

Default: +60

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.urls

List of news feeds. Leave it empty if you want to manage feeds -imperatively, for example, using Syncthing.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.newsboat.urls + + +
+
+

List of news feeds. Leave it empty if you want to manage feeds +imperatively, for example, using Syncthing.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
     tags = [
-      "foo"
-      "bar"
+      "foo"
+      "bar"
     ];
-    url = "http://example.com";
+    url = "http://example.com";
   }
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.urls.*.tags

Feed tags.

Type: -list of string

Default: -[ ]

Example:

[
-  "foo"
-  "bar"
+
+
+
+
+ + programs.newsboat.urls.*.tags + + +
+
+

Feed tags.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "foo"
+  "bar"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.urls.*.title

Feed title.

Type: -null or string

Default: -null

Example: -"ORF News"

Declared by:

+
+ +
+
+
+ + programs.newsboat.urls.*.title + + +
+
+

Feed title.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"ORF News"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.newsboat.urls.*.url

Feed URL.

Type: -string

Example: -"http://example.com"

Declared by:

+
+ +
+
+
+ + programs.newsboat.urls.*.url + + +
+
+

Feed URL.

+ +

Type: +string

+ +

Example: +"http://example.com"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/newsboat.nix> -
programs.nheko.enable

Whether to enable Qt desktop client for Matrix.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nheko.enable + + +
+
+

Whether to enable Qt desktop client for Matrix.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nheko.nix> -
programs.nheko.package

The nheko package to use.

Type: -package

Default: -pkgs.nheko

Declared by:

+
+ +
+
+
+ + programs.nheko.package + + +
+
+

The nheko package to use.

+ +

Type: +package

+ +

Default: +pkgs.nheko

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nheko.nix> -
programs.nheko.settings

Attribute set of Nheko preferences (converted to an INI file).

For now, it is recommended to run nheko and sign-in before filling in + +

+
+
+ + programs.nheko.settings + + +
+
+

Attribute set of Nheko preferences (converted to an INI file).

For now, it is recommended to run nheko and sign-in before filling in the configuration settings in this module, as nheko writes the access token to $XDG_CONFIG_HOME/nheko/nheko.conf the first time we sign in, and we need that data into these settings for the correct functionality of the application.

This a temporary inconvenience, however, as nheko has plans to move the authentication stuff into the local database they currently use. Once -this happens, this will no longer be an issue.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+this happens, this will no longer be an issue.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   general.disableCertificateValidation = false;
   auth = {
-    accessToken = "SECRET";
-    deviceId = "MY_DEVICE";
-    homeServer = "https://matrix-client.matrix.org:443";
-    userId = "@@user:matrix.org";
+    accessToken = "SECRET";
+    deviceId = "MY_DEVICE";
+    homeServer = "https://matrix-client.matrix.org:443";
+    userId = "@@user:matrix.org";
   };
   settings.scaleFactor = 1.0;
   sidebar.width = 416;
   user = {
     alertOnNotification = true;
     animateImagesOnHover = false;
-    "sidebar\\roomListWidth" = 308;
+    "sidebar\\roomListWidth" = 308;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/nheko.nix> -
programs.nix-index.enable

Whether to enable nix-index, a file database for nixpkgs.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nix-index.enable + + +
+
+

Whether to enable nix-index, a file database for nixpkgs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nix-index.nix> -
programs.nix-index.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nix-index.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nix-index.nix> -
programs.nix-index.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nix-index.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nix-index.nix> -
programs.nix-index.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nix-index.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nix-index.nix> -
programs.nix-index.package

Package providing the nix-index tool.

Type: -package

Default: -pkgs.nix-index

Declared by:

+
+ +
+
+
+ + programs.nix-index.package + + +
+
+

Package providing the nix-index tool.

+ +

Type: +package

+ +

Default: +pkgs.nix-index

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nix-index.nix> -
programs.nnn.enable

Whether to enable nnn.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nnn.enable + + +
+
+

Whether to enable nnn.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nnn.nix> -
programs.nnn.package

Package containing the nnn program.

Type: -package

Default: -pkgs.nnn

Example: -pkgs.nnn.override ({ withNerdIcons = true; });

Declared by:

+
+ +
+
+
+ + programs.nnn.package + + +
+
+

Package containing the nnn program.

+ +

Type: +package

+ +

Default: +pkgs.nnn

+ +

Example: +pkgs.nnn.override ({ withNerdIcons = true; });

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nnn.nix> -
programs.nnn.bookmarks

Directory bookmarks.

Type: -attribute set of string

Default: -{ }

Example:

{
-  d = "~/Documents";
-  D = "~/Downloads";
-  p = "~/Pictures";
-  v = "~/Videos";
+
+
+
+
+ + programs.nnn.bookmarks + + +
+
+

Directory bookmarks.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  d = "~/Documents";
+  D = "~/Downloads";
+  p = "~/Pictures";
+  v = "~/Videos";
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/nnn.nix> -
programs.nnn.extraPackages

Extra packages available to nnn.

Type: -list of package

Default: -[ ]

Example: -with pkgs; [ ffmpegthumbnailer mediainfo sxiv ]

Declared by:

+
+ +
+
+
+ + programs.nnn.extraPackages + + +
+
+

Extra packages available to nnn.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +with pkgs; [ ffmpegthumbnailer mediainfo sxiv ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nnn.nix> -
programs.nnn.plugins

Manage nnn plugins.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.nnn.plugins + + +
+
+

Manage nnn plugins.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nnn.nix> -
programs.nnn.plugins.mappings

Key mappings to the plugins.

Type: -attribute set of string

Default: -{ }

Example:

{
-  c = "fzcd";
-  f = "finder";
-  v = "imgview";
+
+
+
+
+ + programs.nnn.plugins.mappings + + +
+
+

Key mappings to the plugins.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  c = "fzcd";
+  f = "finder";
+  v = "imgview";
 };
 
-

Declared by:

-<home-manager/modules/programs/nnn.nix> -
programs.nnn.plugins.src

Path to the plugin folder.

Type: -null or path

Default: -null

Example:

(pkgs.fetchFromGitHub {
-  owner = "jarun";
-  repo = "nnn";
-  rev = "v4.0";
-  sha256 = "sha256-Hpc8YaJeAzJoEi7aJ6DntH2VLkoR6ToP6tPYn3llR7k=";
-}) + "/plugins";
+
-

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/programs/nnn.nix> -
programs.noti.enable

Whether to enable Noti.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nnn.plugins.src + + +
+
+

Path to the plugin folder.

+ +

Type: +null or path

+ +

Default: +null

+ +

Example:

(pkgs.fetchFromGitHub {
+  owner = "jarun";
+  repo = "nnn";
+  rev = "v4.0";
+  sha256 = "sha256-Hpc8YaJeAzJoEi7aJ6DntH2VLkoR6ToP6tPYn3llR7k=";
+}) + "/plugins";
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/nnn.nix> + +
+
+
+ + programs.noti.enable + + +
+
+

Whether to enable Noti.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/noti.nix> -
programs.noti.settings

Configuration written to + +

+
+
+ + programs.noti.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/noti/noti.yaml.

See noti.yaml(5). -for the full list of options.

Type: -attribute set of attribute set of string

Default: -{ }

Example:

{
+for the full list of options.

+ +

Type: +attribute set of attribute set of string

+ +

Default: +{ }

+ +

Example:

{
   say = {
-    voice = "Alex";
+    voice = "Alex";
   };
   slack = {
-    token = "1234567890abcdefg";
-    channel = "@jaime";
+    token = "1234567890abcdefg";
+    channel = "@jaime";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/noti.nix> -
programs.notmuch.enable

Whether to enable Notmuch mail indexer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.notmuch.enable + + +
+
+

Whether to enable Notmuch mail indexer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.extraConfig

Options that should be appended to the notmuch configuration file.

Type: -attribute set of attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.notmuch.extraConfig + + +
+
+

Options that should be appended to the notmuch configuration file.

+ +

Type: +attribute set of attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.hooks.postInsert

Bash statements run after a message has been inserted -into the database and initial tags have been applied.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.notmuch.hooks.postInsert + + +
+
+

Bash statements run after a message has been inserted +into the database and initial tags have been applied.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.hooks.postNew

Bash statements run after new messages have been imported -into the database and initial tags have been applied.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.notmuch.hooks.postNew + + +
+
+

Bash statements run after new messages have been imported +into the database and initial tags have been applied.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   notmuch tag +nixos -- tag:new and from:nixos1@discoursemail.com
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.hooks.preNew

Bash statements run before scanning or importing new -messages into the database.

Type: -strings concatenated with “\n”

Default: -""

Example: -"mbsync --all"

Declared by:

+
+ +
+
+
+ + programs.notmuch.hooks.preNew + + +
+
+

Bash statements run before scanning or importing new +messages into the database.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"mbsync --all"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.maildir.synchronizeFlags

Whether to synchronize Maildir flags.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.notmuch.maildir.synchronizeFlags + + +
+
+

Whether to synchronize Maildir flags.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.new

Options related to email processing performed by -notmuch new.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.notmuch.new + + +
+
+

Options related to email processing performed by +notmuch new.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.new.ignore

A list to specify files and directories that will not be -searched for messages by notmuch new.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.notmuch.new.ignore + + +
+
+

A list to specify files and directories that will not be +searched for messages by notmuch new.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.new.tags

A list of tags that will be added to all messages -incorporated by notmuch new.

Type: -list of string

Default:

[
-  "unread"
-  "inbox"
+
+
+
+
+ + programs.notmuch.new.tags + + +
+
+

A list of tags that will be added to all messages +incorporated by notmuch new.

+ +

Type: +list of string

+ +

Default:

[
+  "unread"
+  "inbox"
 ]
-

Example:

[
-  "new"
+
+ +

Example:

[
+  "new"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.notmuch.search.excludeTags

A list of tags that will be excluded from search results by + +

+
+
+ + programs.notmuch.search.excludeTags + + +
+
+

A list of tags that will be excluded from search results by default. Using an excluded tag in a query will override that -exclusion.

Type: -list of string

Default:

[
-  "deleted"
-  "spam"
+exclusion.

+ +

Type: +list of string

+ +

Default:

[
+  "deleted"
+  "spam"
 ]
-

Example:

[
-  "trash"
-  "spam"
+
+ +

Example:

[
+  "trash"
+  "spam"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/notmuch.nix> -
programs.nushell.enable

Whether to enable nushell.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.nushell.enable + + +
+
+

Whether to enable nushell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.package

The package to use for nushell.

Type: -package

Default: -pkgs.nushell

Declared by:

+
+ +
+
+
+ + programs.nushell.package + + +
+
+

The package to use for nushell.

+ +

Type: +package

+ +

Default: +pkgs.nushell

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.configFile

The configuration file to be used for nushell.

See https://www.nushell.sh/book/configuration.html#configuration for more information.

Type: -null or (submodule)

Default: -null

Example:

{ text = ''
+
+
+
+
+ + programs.nushell.configFile + + +
+
+

The configuration file to be used for nushell.

See https://www.nushell.sh/book/configuration.html#configuration for more information.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

{ text = ''
     let $config = {
       filesize_metric: false
       table_mode: rounded
       use_ls_colors: true
     }
-  '';
+  '';
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.configFile.source

Path of the nushell config.nu file to use. -If the text option is set, it will be preferred.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + programs.nushell.configFile.source + + +
+
+

Path of the nushell config.nu file to use. +If the text option is set, it will be preferred.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.configFile.text

Text of the nushell config.nu file. -If unset then the source option will be preferred.

Type: -strings concatenated with “\n”

Default: -if source is defined, the content of source, otherwise empty

Declared by:

+
+ +
+
+
+ + programs.nushell.configFile.text + + +
+
+

Text of the nushell config.nu file. +If unset then the source option will be preferred.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +if source is defined, the content of source, otherwise empty

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.envFile

The environment variables file to be used for nushell.

See https://www.nushell.sh/book/configuration.html#configuration for more information.

Type: -null or (submodule)

Default: -null

Example:

''
-  $env.FOO = 'BAR'
-''
-

Declared by:

+
+ +
+
+
+ + programs.nushell.envFile + + +
+
+

The environment variables file to be used for nushell.

See https://www.nushell.sh/book/configuration.html#configuration for more information.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

''
+  $env.FOO = 'BAR'
+''
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.envFile.source

Path of the nushell env.nu file to use. -If the text option is set, it will be preferred.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + programs.nushell.envFile.source + + +
+
+

Path of the nushell env.nu file to use. +If the text option is set, it will be preferred.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.envFile.text

Text of the nushell env.nu file. -If unset then the source option will be preferred.

Type: -strings concatenated with “\n”

Default: -if source is defined, the content of source, otherwise empty

Declared by:

+
+ +
+
+
+ + programs.nushell.envFile.text + + +
+
+

Text of the nushell env.nu file. +If unset then the source option will be preferred.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +if source is defined, the content of source, otherwise empty

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.environmentVariables

An attribute set that maps an environment variable to a shell interpreted string.

Type: -attribute set of string

Default: -{ }

Example:

{
-  FOO = "BAR";
+
+
+
+
+ + programs.nushell.environmentVariables + + +
+
+

An attribute set that maps an environment variable to a shell interpreted string.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  FOO = "BAR";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.extraConfig

Additional configuration to add to the nushell configuration file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.nushell.extraConfig + + +
+
+

Additional configuration to add to the nushell configuration file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.extraEnv

Additional configuration to add to the nushell environment variables file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.nushell.extraEnv + + +
+
+

Additional configuration to add to the nushell environment variables file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.extraLogin

Additional configuration to add to the nushell login file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.nushell.extraLogin + + +
+
+

Additional configuration to add to the nushell login file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.loginFile

The login file to be used for nushell upon logging in.

See https://www.nushell.sh/book/configuration.html#configuring-nu-as-a-login-shell for more information.

Type: -null or (submodule)

Default: -null

Example:

''
-  # Prints "Hello, World" upon logging into tty1
-  if (tty) == "/dev/tty1" {
-    echo "Hello, World"
+
+
+
+
+ + programs.nushell.loginFile + + +
+
+

The login file to be used for nushell upon logging in.

See https://www.nushell.sh/book/configuration.html#configuring-nu-as-a-login-shell for more information.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Example:

''
+  # Prints "Hello, World" upon logging into tty1
+  if (tty) == "/dev/tty1" {
+    echo "Hello, World"
   }
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.loginFile.source

Path of the nushell login.nu file to use. -If the text option is set, it will be preferred.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + programs.nushell.loginFile.source + + +
+
+

Path of the nushell login.nu file to use. +If the text option is set, it will be preferred.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.loginFile.text

Text of the nushell login.nu file. -If unset then the source option will be preferred.

Type: -strings concatenated with “\n”

Default: -if source is defined, the content of source, otherwise empty

Declared by:

+
+ +
+
+
+ + programs.nushell.loginFile.text + + +
+
+

Text of the nushell login.nu file. +If unset then the source option will be preferred.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +if source is defined, the content of source, otherwise empty

+ +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.nushell.shellAliases

An attribute set that maps aliases (the top level attribute names in -this option) to command strings or directly to build outputs.

Type: -attribute set of string

Default: -{ }

Example:

{
-  ll = "ls -l";
+
+
+
+
+ + programs.nushell.shellAliases + + +
+
+

An attribute set that maps aliases (the top level attribute names in +this option) to command strings or directly to build outputs.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  ll = "ls -l";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/nushell.nix> -
programs.obs-studio.enable

Whether to enable obs-studio.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.obs-studio.enable + + +
+
+

Whether to enable obs-studio.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/obs-studio.nix> -
programs.obs-studio.package

OBS Studio package to install.

Type: -package

Default: -pkgs.obs-studio

Declared by:

+
+ +
+
+
+ + programs.obs-studio.package + + +
+
+

OBS Studio package to install.

+ +

Type: +package

+ +

Default: +pkgs.obs-studio

+ +

Declared by:

+ +
+ <home-manager/modules/programs/obs-studio.nix> -
programs.obs-studio.plugins

Optional OBS plugins.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.obs-studio-plugins.wlrobs ]

Declared by:

+
+ +
+
+
+ + programs.obs-studio.plugins + + +
+
+

Optional OBS plugins.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.obs-studio-plugins.wlrobs ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/obs-studio.nix> -
programs.octant.enable

Whether to enable octant.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.octant.enable + + +
+
+

Whether to enable octant.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/octant.nix> -
programs.octant.package

The Octant package to use.

Type: -package

Default: -pkgs.octant

Example: -pkgs.octant-other

Declared by:

+
+ +
+
+
+ + programs.octant.package + + +
+
+

The Octant package to use.

+ +

Type: +package

+ +

Default: +pkgs.octant

+ +

Example: +pkgs.octant-other

+ +

Declared by:

+ +
+ <home-manager/modules/programs/octant.nix> -
programs.octant.plugins

Optional Octant plugins.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.starboard-octant-plugin ]

Declared by:

+
+ +
+
+
+ + programs.octant.plugins + + +
+
+

Optional Octant plugins.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.starboard-octant-plugin ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/octant.nix> -
programs.offlineimap.enable

Whether to enable OfflineIMAP.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.offlineimap.enable + + +
+
+

Whether to enable OfflineIMAP.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
programs.offlineimap.package

The offlineimap package to use. Can be used to specify extensions.

Type: -package

Default: -pkgs.offlineimap

Example:

pkgs.offlineimap.overridePythonAttrs ( old: {
+
+
+
+
+ + programs.offlineimap.package + + +
+
+

The offlineimap package to use. Can be used to specify extensions.

+ +

Type: +package

+ +

Default: +pkgs.offlineimap

+ +

Example:

pkgs.offlineimap.overridePythonAttrs ( old: {
   propagatedBuildInputs = old.propagatedBuildInputs
     ++ (with pkgs.python3Packages; [
       requests_oauthlib xdg gpgme]);
 })
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
programs.offlineimap.extraConfig.default

Extra configuration options added to the -DEFAULT section.

Type: -attribute set of (string or signed integer or boolean)

Default: -{ }

Example:

{
-  gmailtrashfolder = "[Gmail]/Papierkorb";
+
+
+
+
+ + programs.offlineimap.extraConfig.default + + +
+
+

Extra configuration options added to the +DEFAULT section.

+ +

Type: +attribute set of (string or signed integer or boolean)

+ +

Default: +{ }

+ +

Example:

{
+  gmailtrashfolder = "[Gmail]/Papierkorb";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
programs.offlineimap.extraConfig.general

Extra configuration options added to the -general section.

Type: -attribute set of (string or signed integer or boolean)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.offlineimap.extraConfig.general + + +
+
+

Extra configuration options added to the +general section.

+ +

Type: +attribute set of (string or signed integer or boolean)

+ +

Default: +{ }

+ +

Example:

{
   maxage = 30;
-  ui = "blinkenlights";
+  ui = "blinkenlights";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
programs.offlineimap.extraConfig.mbnames

Extra configuration options added to the -mbnames section.

Type: -attribute set of (string or signed integer or boolean)

Default: -{ }

Example:

{
-  filename = "~/.config/mutt/mailboxes";
-  header = "'mailboxes '";
-  peritem = "'+%(accountname)s/%(foldername)s'";
-  sep = "' '";
-  footer = "'\\n'";
+
+
+
+
+ + programs.offlineimap.extraConfig.mbnames + + +
+
+

Extra configuration options added to the +mbnames section.

+ +

Type: +attribute set of (string or signed integer or boolean)

+ +

Default: +{ }

+ +

Example:

{
+  filename = "~/.config/mutt/mailboxes";
+  header = "'mailboxes '";
+  peritem = "'+%(accountname)s/%(foldername)s'";
+  sep = "' '";
+  footer = "'\\n'";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
programs.offlineimap.pythonFile

Python code that can then be used in other parts of the -configuration.

Type: -strings concatenated with “\n”

Default:

''
+
+
+
+
+ + programs.offlineimap.pythonFile + + +
+
+

Python code that can then be used in other parts of the +configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default:

''
   import subprocess
   
   def get_pass(service, cmd):
       return subprocess.check_output(cmd, )
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/offlineimap.nix> -
programs.oh-my-posh.enable

Whether to enable oh-my-posh, a prompt theme engine for any shell.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.oh-my-posh.enable + + +
+
+

Whether to enable oh-my-posh, a prompt theme engine for any shell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/oh-my-posh.nix> -
programs.oh-my-posh.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.oh-my-posh.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/oh-my-posh.nix> -
programs.oh-my-posh.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.oh-my-posh.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/oh-my-posh.nix> -
programs.oh-my-posh.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.oh-my-posh.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/oh-my-posh.nix> -
programs.oh-my-posh.package

The oh-my-posh package to use.

Type: -package

Default: -pkgs.oh-my-posh

Declared by:

+
+ +
+
+
+ + programs.oh-my-posh.package + + +
+
+

The oh-my-posh package to use.

+ +

Type: +package

+ +

Default: +pkgs.oh-my-posh

+ +

Declared by:

+ +
+ <home-manager/modules/programs/oh-my-posh.nix> -
programs.oh-my-posh.settings

Configuration written to + +

+
+
+ + programs.oh-my-posh.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/oh-my-posh/config.json. See -https://ohmyposh.dev/docs/configuration/overview +https://ohmyposh.dev/docs/configuration/overview for details. The useTheme option is ignored when this -option is used.

Type: -JSON value

Default: -{ }

Example: -builtins.fromJSON (builtins.unsafeDiscardStringContext (builtins.readFile "${pkgs.oh-my-posh}/share/oh-my-posh/themes/space.omp.json"))

Declared by:

+
+option is used.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example: +builtins.fromJSON (builtins.unsafeDiscardStringContext (builtins.readFile "${pkgs.oh-my-posh}/share/oh-my-posh/themes/space.omp.json"))

+ +

Declared by:

+ +
+ <home-manager/modules/programs/oh-my-posh.nix> -
programs.oh-my-posh.useTheme

Use one of the official themes. This should be a name from this list: -https://ohmyposh.dev/docs/themes. Because a theme + +

+
+
+ + programs.oh-my-posh.useTheme + + +
+
+

Use one of the official themes. This should be a name from this list: +https://ohmyposh.dev/docs/themes. Because a theme is essentially a configuration file, this option is not used when a -configFile is set.

Type: -null or string

Default: -null

Declared by:

+
+configFile is set.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/oh-my-posh.nix> -
programs.opam.enable

Whether to enable Opam.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.opam.enable + + +
+
+

Whether to enable Opam.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/opam.nix> -
programs.opam.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.opam.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/opam.nix> -
programs.opam.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.opam.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/opam.nix> -
programs.opam.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.opam.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/opam.nix> -
programs.opam.package

Opam package to install.

Type: -package

Default: -pkgs.opam

Declared by:

+
+ +
+
+
+ + programs.opam.package + + +
+
+

Opam package to install.

+ +

Type: +package

+ +

Default: +pkgs.opam

+ +

Declared by:

+ +
+ <home-manager/modules/programs/opam.nix> -
programs.openstackclient.enable

Whether to enable OpenStack command-line client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.openstackclient.enable + + +
+
+

Whether to enable OpenStack command-line client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/openstackclient.nix> -
programs.openstackclient.package

The openstackclient package to use.

Type: -package

Default: -pkgs.openstackclient

Declared by:

+
+ +
+
+
+ + programs.openstackclient.package + + +
+
+

The openstackclient package to use.

+ +

Type: +package

+ +

Default: +pkgs.openstackclient

+ +

Declared by:

+ +
+ <home-manager/modules/programs/openstackclient.nix> -
programs.openstackclient.clouds

Configuration needed to connect to one or more clouds.

Do not include passwords here as they will be publicly readable in the Nix store. + +

+
+
+ + programs.openstackclient.clouds + + +
+
+

Configuration needed to connect to one or more clouds.

Do not include passwords here as they will be publicly readable in the Nix store. Configuration written to $XDG_CONFIG_HOME/openstack/clouds.yaml. -See https://docs.openstack.org/python-openstackclient/latest/configuration/index.html#clouds-yaml.

Type: -YAML value

Default: -{ }

Example:

{
+See https://docs.openstack.org/python-openstackclient/latest/configuration/index.html#clouds-yaml.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   my-infra = {
-    cloud = "example-cloud";
+    cloud = "example-cloud";
     auth = {
-      project_id = "0123456789abcdef0123456789abcdef";
-      username = "openstack";
+      project_id = "0123456789abcdef0123456789abcdef";
+      username = "openstack";
     };
-    region_name = "XXX";
-    interface = "internal";
+    region_name = "XXX";
+    interface = "internal";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/openstackclient.nix> -
programs.openstackclient.publicClouds

Public information about clouds.

Configuration written to $XDG_CONFIG_HOME/openstack/clouds-public.yaml. -See https://docs.openstack.org/python-openstackclient/latest/configuration/index.html#clouds-public-yaml.

Type: -YAML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.openstackclient.publicClouds + + +
+
+

Public information about clouds.

Configuration written to $XDG_CONFIG_HOME/openstack/clouds-public.yaml. +See https://docs.openstack.org/python-openstackclient/latest/configuration/index.html#clouds-public-yaml.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   example-cloud = {
     auth = {
-      auth_url = "https://identity.cloud.example.com/v2.0";
+      auth_url = "https://identity.cloud.example.com/v2.0";
     };
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/openstackclient.nix> -
programs.pandoc.enable

Whether to enable pandoc.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pandoc.enable + + +
+
+

Whether to enable pandoc.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pandoc.nix> -
programs.pandoc.package

The pandoc package to use.

Type: -package

Default: -pkgs.pandoc

Declared by:

+
+ +
+
+
+ + programs.pandoc.package + + +
+
+

The pandoc package to use.

+ +

Type: +package

+ +

Default: +pkgs.pandoc

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pandoc.nix> -
programs.pandoc.citationStyles

List of .csl files to install.

Type: -list of path

Default: -[ ]

Example: -[ path/to/file.csl ]

Declared by:

+
+ +
+
+
+ + programs.pandoc.citationStyles + + +
+
+

List of .csl files to install.

+ +

Type: +list of path

+ +

Default: +[ ]

+ +

Example: +[ path/to/file.csl ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pandoc.nix> -
programs.pandoc.defaults

Options to set by default. + +

+
+
+ + programs.pandoc.defaults + + +
+
+

Options to set by default. These will be converted to JSON and written to a defaults -file (see Default files in pandoc documentation).

Type: -JSON value

Default: -{ }

Example:

{
+file (see Default files in pandoc documentation).

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
   metadata = {
-    author = "John Doe";
+    author = "John Doe";
   };
-  pdf-engine = "xelatex";
+  pdf-engine = "xelatex";
   citeproc = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/pandoc.nix> -
programs.pandoc.defaultsFile

Resulting defaults file.

Type: -path (read only)

Declared by:

+
+ +
+
+
+ + programs.pandoc.defaultsFile + + +
+
+

Resulting defaults file.

+ +

Type: +path (read only)

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pandoc.nix> -
programs.pandoc.finalPackage

Resulting package.

Type: -package (read only)

Declared by:

+
+ +
+
+
+ + programs.pandoc.finalPackage + + +
+
+

Resulting package.

+ +

Type: +package (read only)

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pandoc.nix> -
programs.pandoc.templates

Custom templates.

Type: -attribute set of path

Default: -{ }

Example:

{
-  "default.latex" = path/to/your/template;
+
+
+
+
+ + programs.pandoc.templates + + +
+
+

Custom templates.

+ +

Type: +attribute set of path

+ +

Default: +{ }

+ +

Example:

{
+  "default.latex" = path/to/your/template;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/pandoc.nix> -
programs.papis.enable

Whether to enable papis.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.papis.enable + + +
+
+

Whether to enable papis.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/papis.nix> -
programs.papis.libraries

Attribute set of papis libraries.

Type: -attribute set of (submodule)

Declared by:

+
+ +
+
+
+ + programs.papis.libraries + + +
+
+

Attribute set of papis libraries.

+ +

Type: +attribute set of (submodule)

+ +

Declared by:

+ +
+ <home-manager/modules/programs/papis.nix> -
programs.papis.libraries.<name>.isDefault

Whether this is a default library. There must be exactly one -default library.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.papis.libraries.<name>.isDefault + + +
+
+

Whether this is a default library. There must be exactly one +default library.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/papis.nix> -
programs.papis.libraries.<name>.name

This library’s name.

Type: -string (read only)

Default: -"‹name›"

Declared by:

+
+ +
+
+
+ + programs.papis.libraries.<name>.name + + +
+
+

This library’s name.

+ +

Type: +string (read only)

+ +

Default: +"‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/papis.nix> -
programs.papis.libraries.<name>.settings

Configuration for this library.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  dir = "~/papers/";
+
+
+
+
+ + programs.papis.libraries.<name>.settings + + +
+
+

Configuration for this library.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  dir = "~/papers/";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/papis.nix> -
programs.papis.settings

Configuration written to + +

+
+
+ + programs.papis.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/papis/config. See -https://papis.readthedocs.io/en/latest/configuration.html -for supported values.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  editor = "nvim";
-  file-browser = "ranger"
+https://papis.readthedocs.io/en/latest/configuration.html
+for supported values.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  editor = "nvim";
+  file-browser = "ranger"
   add-edit = true;
 }
 
-

Declared by:

-<home-manager/modules/programs/papis.nix> -
programs.password-store.enable

Whether to enable Password store.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/password-store.nix> -
programs.password-store.package

The pass package to use. -Can be used to specify extensions.

Type: -package

Default: -pkgs.pass

Example:

pkgs.pass.withExtensions (exts: [ exts.pass-otp ])
+
-

Declared by:

+
+

Declared by:

+ + +
+ +<home-manager/modules/programs/papis.nix> + +
+ +
+ + programs.password-store.enable + + +
+
+

Whether to enable Password store.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/password-store.nix> -
programs.password-store.settings

The pass environment variables dictionary.

See the “Environment variables” section of + +

+
+
+ + programs.password-store.package + + +
+
+

The pass package to use. +Can be used to specify extensions.

+ +

Type: +package

+ +

Default: +pkgs.pass

+ +

Example:

pkgs.pass.withExtensions (exts: [ exts.pass-otp ])
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/password-store.nix> + +
+
+
+ + programs.password-store.settings + + +
+
+

The pass environment variables dictionary.

See the “Environment variables” section of pass(1) and the extension man pages for more information about the -available keys.

Type: -attribute set of string

Default:

{ PASSWORD_STORE_DIR = "$XDG_DATA_HOME/password-store"; }
+available keys.

-

Example:

{
-  PASSWORD_STORE_DIR = "/some/directory";
-  PASSWORD_STORE_KEY = "12345678";
-  PASSWORD_STORE_CLIP_TIME = "60";
+

Type: +attribute set of string

+ +

Default:

{ PASSWORD_STORE_DIR = "$XDG_DATA_HOME/password-store"; }
+
+
+ +

Example:

{
+  PASSWORD_STORE_DIR = "/some/directory";
+  PASSWORD_STORE_KEY = "12345678";
+  PASSWORD_STORE_CLIP_TIME = "60";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/password-store.nix> -
programs.pazi.enable

Whether to enable pazi.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pazi.enable + + +
+
+

Whether to enable pazi.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pazi.nix> -
programs.pazi.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.pazi.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pazi.nix> -
programs.pazi.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.pazi.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pazi.nix> -
programs.pazi.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.pazi.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pazi.nix> -
programs.pet.enable

Whether to enable pet.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pet.enable + + +
+
+

Whether to enable pet.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pet.selectcmdPackage

The package needed for the settings.selectcmd.

Type: -package

Default: -pkgs.fzf

Declared by:

+
+ +
+
+
+ + programs.pet.selectcmdPackage + + +
+
+

The package needed for the settings.selectcmd.

+ +

Type: +package

+ +

Default: +pkgs.fzf

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pet.settings

Settings written to config.toml. See the pet -documentation for details.

Type: -TOML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.pet.settings + + +
+
+

Settings written to config.toml. See the pet +documentation for details.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pet.snippets

The snippets.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.pet.snippets + + +
+
+

The snippets.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pet.snippets.*.command

The command.

Type: -string

Default: -""

Example: -"git rev-list --count HEAD"

Declared by:

+
+ +
+
+
+ + programs.pet.snippets.*.command + + +
+
+

The command.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"git rev-list --count HEAD"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pet.snippets.*.description

Description of the snippet.

Type: -string

Default: -""

Example: -"Count the number of commits in the current branch"

Declared by:

+
+ +
+
+
+ + programs.pet.snippets.*.description + + +
+
+

Description of the snippet.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"Count the number of commits in the current branch"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pet.snippets.*.output

Example output of the command.

Type: -string

Default: -""

Example: -"473"

Declared by:

+
+ +
+
+
+ + programs.pet.snippets.*.output + + +
+
+

Example output of the command.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"473"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pet.snippets.*.tag

List of tags attached to the command.

Type: -list of string

Default: -[ ]

Example: -["git" "nixpkgs"]

Declared by:

+
+ +
+
+
+ + programs.pet.snippets.*.tag + + +
+
+

List of tags attached to the command.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +["git" "nixpkgs"]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pet.nix> -
programs.pidgin.enable

Whether to enable Pidgin messaging client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pidgin.enable + + +
+
+

Whether to enable Pidgin messaging client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pidgin.nix> -
programs.pidgin.package

The Pidgin package to use.

Type: -package

Default: -pkgs.pidgin

Declared by:

+
+ +
+
+
+ + programs.pidgin.package + + +
+
+

The Pidgin package to use.

+ +

Type: +package

+ +

Default: +pkgs.pidgin

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pidgin.nix> -
programs.pidgin.plugins

Plugins that should be available to Pidgin.

Type: -unspecified value

Default: -[ ]

Example: -[ pkgs.pidgin-otr pkgs.pidgin-osd ]

Declared by:

+
+ +
+
+
+ + programs.pidgin.plugins + + +
+
+

Plugins that should be available to Pidgin.

+ +

Type: +unspecified value

+ +

Default: +[ ]

+ +

Example: +[ pkgs.pidgin-otr pkgs.pidgin-osd ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pidgin.nix> -
programs.pistol.enable

Whether to enable file previewer for terminal file managers.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pistol.enable + + +
+
+

Whether to enable file previewer for terminal file managers.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pistol.nix> -
programs.pistol.associations

Associations written to the Pistol configuration at -$XDG_CONFIG_HOME/pistol/pistol.conf.

Type: -list of (submodule)

Default: -[ ]

Example:

[
-  { mime = "application/json"; command = "bat %pistol-filename%"; }
-  { mime = "application/*"; command = "hexyl %pistol-filename%"; }
-  { fpath = ".*.md$"; command = "sh: bat --paging=never --color=always %pistol-filename% | head -8"; }
+
+
+
+
+ + programs.pistol.associations + + +
+
+

Associations written to the Pistol configuration at +$XDG_CONFIG_HOME/pistol/pistol.conf.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
+  { mime = "application/json"; command = "bat %pistol-filename%"; }
+  { mime = "application/*"; command = "hexyl %pistol-filename%"; }
+  { fpath = ".*.md$"; command = "sh: bat --paging=never --color=always %pistol-filename% | head -8"; }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/pistol.nix> -
programs.pistol.associations.*.command

Preview command for files matched by this association.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.pistol.associations.*.command + + +
+
+

Preview command for files matched by this association.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pistol.nix> -
programs.pistol.associations.*.fpath

File path regex that this association should match.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + programs.pistol.associations.*.fpath + + +
+
+

File path regex that this association should match.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pistol.nix> -
programs.pistol.associations.*.mime

Mime type regex that this association should match.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + programs.pistol.associations.*.mime + + +
+
+

Mime type regex that this association should match.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pistol.nix> -
programs.piston-cli.enable

Whether to enable piston-cli, code runner.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.piston-cli.enable + + +
+
+

Whether to enable piston-cli, code runner.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/piston-cli.nix> -
programs.piston-cli.package

The piston-cli package to use.

Type: -package

Default: -pkgs.piston-cli

Declared by:

+
+ +
+
+
+ + programs.piston-cli.package + + +
+
+

The piston-cli package to use.

+ +

Type: +package

+ +

Default: +pkgs.piston-cli

+ +

Declared by:

+ +
+ <home-manager/modules/programs/piston-cli.nix> -
programs.piston-cli.settings

Configuration written to -$XDG_CONFIG_HOME/piston-cli/config.yml.

Type: -YAML value

Default: -{ }

Example:

{
-  theme = "emacs";
-  box_style = "MINIMAL_DOUBLE_HEAD";
-  prompt_continuation = "...";
-  prompt_start = ">>>";
+
+
+
+
+ + programs.piston-cli.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/piston-cli/config.yml.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
+  theme = "emacs";
+  box_style = "MINIMAL_DOUBLE_HEAD";
+  prompt_continuation = "...";
+  prompt_start = ">>>";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/piston-cli.nix> -
programs.pls.enable

Whether to enable pls, a modern replacement for ls.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pls.enable + + +
+
+

Whether to enable pls, a modern replacement for ls.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pls.nix> -
programs.pls.enableAliases

Whether to enable recommended pls aliases.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pls.enableAliases + + +
+
+

Whether to enable recommended pls aliases.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pls.nix> -
programs.pls.package

The pls package to use.

Type: -package

Default: -pkgs.pls

Declared by:

+
+ +
+
+
+ + programs.pls.package + + +
+
+

The pls package to use.

+ +

Type: +package

+ +

Default: +pkgs.pls

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pls.nix> -
programs.powerline-go.enable

Whether to enable Powerline-go, a beautiful and useful low-latency prompt for your shell.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.powerline-go.enable + + +
+
+

Whether to enable Powerline-go, a beautiful and useful low-latency prompt for your shell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/powerline-go.nix> -
programs.powerline-go.extraUpdatePS1

Shell code to execute after the prompt is set.

Type: -string

Default: -""

Example:

''
-  PS1=$PS1"NixOS> ";
-''
-

Declared by:

+
+ +
+
+
+ + programs.powerline-go.extraUpdatePS1 + + +
+
+

Shell code to execute after the prompt is set.

+ +

Type: +string

+ +

Default: +""

+ +

Example:

''
+  PS1=$PS1"NixOS> ";
+''
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/powerline-go.nix> -
programs.powerline-go.modules

List of module names to load. The list of all available + +

+
+
+ + programs.powerline-go.modules + + +
+
+

List of module names to load. The list of all available modules as well as the choice of default ones are at -https://github.com/justjanne/powerline-go.

Type: -null or (list of string)

Default: -null

Example:

[
-  "host"
-  "ssh"
-  "cwd"
-  "gitlite"
-  "jobs"
-  "exit"
+https://github.com/justjanne/powerline-go.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "host"
+  "ssh"
+  "cwd"
+  "gitlite"
+  "jobs"
+  "exit"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/powerline-go.nix> -
programs.powerline-go.modulesRight

List of module names to load to be displayed on the right side. + +

+
+
+ + programs.powerline-go.modulesRight + + +
+
+

List of module names to load to be displayed on the right side. Currently not supported by bash. Specifying a value for this option will force powerline-go to use the eval format to set -the prompt.

Type: -null or (list of string)

Default: -null

Example:

[
-  "host"
-  "venv"
-  "git"
-]
-

Declared by:

-<home-manager/modules/programs/powerline-go.nix> -
programs.powerline-go.newline

Set to true if the prompt should be on a line of its own.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/powerline-go.nix> -
programs.powerline-go.pathAliases

Pairs of full-path and corresponding desired short name. You -may use ‘~’ to represent your home directory but you should -protect it to avoid shell substitution.

Type: -null or (attribute set of string)

Default: -null

Example:

{ "\\~/projects/home-manager" = "prj:home-manager"; }
+the prompt.

-

Declared by:

+
+

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "host"
+  "venv"
+  "git"
+]
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/powerline-go.nix> -
programs.powerline-go.settings

This can be any key/value pair as described in -https://github.com/justjanne/powerline-go.

Type: -attribute set of (boolean or signed integer or string or list of string)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.powerline-go.newline + + +
+
+

Set to true if the prompt should be on a line of its own.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/powerline-go.nix> + +
+
+
+ + programs.powerline-go.pathAliases + + +
+
+

Pairs of full-path and corresponding desired short name. You +may use ‘~’ to represent your home directory but you should +protect it to avoid shell substitution.

+ +

Type: +null or (attribute set of string)

+ +

Default: +null

+ +

Example:

{ "\\~/projects/home-manager" = "prj:home-manager"; }
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/powerline-go.nix> + +
+
+
+ + programs.powerline-go.settings + + +
+
+

This can be any key/value pair as described in +https://github.com/justjanne/powerline-go.

+ +

Type: +attribute set of (boolean or signed integer or string or list of string)

+ +

Default: +{ }

+ +

Example:

{
   hostname-only-if-ssh = true;
   numeric-exit-codes = true;
   cwd-max-depth = 7;
-  ignore-repos = [ "/home/me/big-project" "/home/me/huge-project" ];
+  ignore-repos = [ "/home/me/big-project" "/home/me/huge-project" ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/powerline-go.nix> -
programs.pqiv.enable

Whether to enable pqiv image viewer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pqiv.enable + + +
+
+

Whether to enable pqiv image viewer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pqiv.nix> -
programs.pqiv.package

The pqiv package to install.

Type: -package

Default: -pkgs.pqiv

Declared by:

+
+ +
+
+
+ + programs.pqiv.package + + +
+
+

The pqiv package to install.

+ +

Type: +package

+ +

Default: +pkgs.pqiv

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pqiv.nix> -
programs.pqiv.settings

Configuration written to + +

+
+
+ + programs.pqiv.settings + + +
+
+

Configuration written to <filename>$XDG_CONFIG_HOME/pqivrc</filename>. See <link xlink:href=“https://github.com/phillipberndt/pqiv/blob/master/pqiv.1”/> -for a list of available options. To set a boolean flag, set the value to 1.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+for a list of available options. To set a boolean flag, set the value to 1.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   options = {
     lazy-load = 1;
     hide-info-box = 1;
-    background-pattern = "black";
-    thumbnail-size = "256x256";
-    command-1 = "thunar";
+    background-pattern = "black";
+    thumbnail-size = "256x256";
+    command-1 = "thunar";
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/pqiv.nix> -
programs.pubs.enable

Whether to enable pubs.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pubs.enable + + +
+
+

Whether to enable pubs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pubs.nix> -
programs.pubs.package

The package to use for the pubs script.

Type: -package

Default: -pkgs.pubs

Declared by:

+
+ +
+
+
+ + programs.pubs.package + + +
+
+

The package to use for the pubs script.

+ +

Type: +package

+ +

Default: +pkgs.pubs

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pubs.nix> -
programs.pubs.extraConfig

Configuration using syntax written to -$HOME/.pubsrc.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.pubs.extraConfig + + +
+
+

Configuration using syntax written to +$HOME/.pubsrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
 [main]
 pubsdir = ${config.home.homeDirectory}/.pubs
 docsdir = ${config.home.homeDirectory}/.pubs/doc
@@ -8794,107 +36240,517 @@ description = lists papers in lexicographic order
 quiet = True
 manual = False
 force_color = False
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/pubs.nix> -
programs.pyenv.enable

Whether to enable pyenv.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pyenv.enable + + +
+
+

Whether to enable pyenv.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pyenv.nix> -
programs.pyenv.enableBashIntegration

Whether to enable pyenv’s Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.pyenv.enableBashIntegration + + +
+
+

Whether to enable pyenv’s Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pyenv.nix> -
programs.pyenv.enableFishIntegration

Whether to enable pyenv’s Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.pyenv.enableFishIntegration + + +
+
+

Whether to enable pyenv’s Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pyenv.nix> -
programs.pyenv.enableZshIntegration

Whether to enable pyenv’s Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.pyenv.enableZshIntegration + + +
+
+

Whether to enable pyenv’s Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pyenv.nix> -
programs.pyenv.package

The package to use for pyenv.

Type: -package

Default: -pkgs.pyenv

Declared by:

+
+ +
+
+
+ + programs.pyenv.package + + +
+
+

The package to use for pyenv.

+ +

Type: +package

+ +

Default: +pkgs.pyenv

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pyenv.nix> -
programs.pyenv.rootDirectory

The pyenv root directory (PYENV_ROOT).

Note

This deviates from upstream, which uses $HOME/.pyenv. + +

+
+
+ + programs.pyenv.rootDirectory + + +
+
+

The pyenv root directory (PYENV_ROOT).

Note

This deviates from upstream, which uses $HOME/.pyenv. The default path in Home Manager is set according to the XDG -base directory specification.

Type: -path

Default: -"\${config.xdg.dataHome}/pyenv"

Declared by:

+
+base directory specification.

+ +

Type: +path

+ +

Default: +"\${config.xdg.dataHome}/pyenv"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pyenv.nix> -
programs.pylint.enable

Whether to enable the pylint Python linter.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pylint.enable + + +
+
+

Whether to enable the pylint Python linter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pylint.nix> -
programs.pylint.package

The pylint package to use.

Type: -package

Default: -pkgs.python3Packages.pylint

Declared by:

+
+ +
+
+
+ + programs.pylint.package + + +
+
+

The pylint package to use.

+ +

Type: +package

+ +

Default: +pkgs.python3Packages.pylint

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pylint.nix> -
programs.pylint.settings

The pylint configuration.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string) or a non-empty list of them)

Default: -{}

Declared by:

+
+ +
+
+
+ + programs.pylint.settings + + +
+
+

The pylint configuration.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string) or a non-empty list of them)

+ +

Default: +{}

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pylint.nix> -
programs.pywal.enable

Whether to enable pywal.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.pywal.enable + + +
+
+

Whether to enable pywal.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/pywal.nix> -
programs.qcal.enable

Whether to enable qcal, a CLI calendar application.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.qcal.enable + + +
+
+

Whether to enable qcal, a CLI calendar application.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qcal.nix> -
programs.qcal.defaultNumDays

Default number of days to show calendar entries for

Type: -positive integer, meaning >0

Default: -30

Declared by:

+
+ +
+
+
+ + programs.qcal.defaultNumDays + + +
+
+

Default number of days to show calendar entries for

+ +

Type: +positive integer, meaning >0

+ +

Default: +30

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qcal.nix> -
programs.qcal.timezone

Timezone to display calendar entries in

Type: -(optionally newline-terminated) single-line string

Default: -"Local"

Example: -"Europe/Vienna"

Declared by:

+
+ +
+
+
+ + programs.qcal.timezone + + +
+
+

Timezone to display calendar entries in

+ +

Type: +(optionally newline-terminated) single-line string

+ +

Default: +"Local"

+ +

Example: +"Europe/Vienna"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qcal.nix> -
programs.qutebrowser.enable

Whether to enable qutebrowser.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.qutebrowser.enable + + +
+
+

Whether to enable qutebrowser.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.enableDefaultBindings

Disable to prevent loading default key bindings.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.qutebrowser.enableDefaultBindings + + +
+
+

Disable to prevent loading default key bindings.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.package

Qutebrowser package to install.

Type: -package

Default: -pkgs.qutebrowser

Declared by:

+
+ +
+
+
+ + programs.qutebrowser.package + + +
+
+

Qutebrowser package to install.

+ +

Type: +package

+ +

Default: +pkgs.qutebrowser

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.aliases

Aliases for commands.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.qutebrowser.aliases + + +
+
+

Aliases for commands.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.extraConfig

Extra lines added to qutebrowser config.py file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.qutebrowser.extraConfig + + +
+
+

Extra lines added to qutebrowser config.py file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.greasemonkey

Greasemonkey userscripts to add to qutebrowser’s greasemonkey -directory.

Type: -list of package

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.qutebrowser.greasemonkey + + +
+
+

Greasemonkey userscripts to add to qutebrowser’s greasemonkey +directory.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example:

[
   (pkgs.fetchurl {
-    url = "https://raw.githubusercontent.com/afreakk/greasemonkeyscripts/1d1be041a65c251692ee082eda64d2637edf6444/youtube_sponsorblock.js";
-    sha256 = "sha256-e3QgDPa3AOpPyzwvVjPQyEsSUC9goisjBUDMxLwg8ZE=";
+    url = "https://raw.githubusercontent.com/afreakk/greasemonkeyscripts/1d1be041a65c251692ee082eda64d2637edf6444/youtube_sponsorblock.js";
+    sha256 = "sha256-e3QgDPa3AOpPyzwvVjPQyEsSUC9goisjBUDMxLwg8ZE=";
   })
-  (pkgs.writeText "some-script.js" ''
+  (pkgs.writeText "some-script.js" ''
     // ==UserScript==
     // @name  Some Greasemonkey script
     // ==/UserScript==
-  '')
+  '')
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.keyBindings

Key bindings mapping keys to commands in different modes. This setting + +

+
+
+ + programs.qutebrowser.keyBindings + + +
+
+

Key bindings mapping keys to commands in different modes. This setting is a dictionary containing mode names and dictionaries mapping keys to commands: {mode: {key: command}} If you want to map a key to another key, check the keyMappings setting @@ -8922,50 +36778,134 @@ mode.

command that single keys can’t be bound in this mode.

prompt

Entered when there’s a prompt to display, like for download locations or when invoked from JavaScript.

yesno

Entered when there’s a yes/no prompt displayed.

caret

Entered when pressing the v mode, used to select text using the keyboard.

register

Entered when qutebrowser is waiting for a register name/key for -commands like :set-mark.

Type: -attribute set of attribute set of strings concatenated with " ;; "

Default: -{ }

Example:

{
+commands like :set-mark.

+ +

Type: +attribute set of attribute set of strings concatenated with " ;; "

+ +

Default: +{ }

+ +

Example:

{
   normal = {
-    "<Ctrl-v>" = "spawn mpv {url}";
-    ",p" = "spawn --userscript qute-pass";
-    ",l" = ''config-cycle spellcheck.languages ["en-GB"] ["en-US"]'';
-    "<F1>" = mkMerge [
-      "config-cycle tabs.show never always"
-      "config-cycle statusbar.show in-mode always"
-      "config-cycle scrolling.bar never always"
+    "<Ctrl-v>" = "spawn mpv {url}";
+    ",p" = "spawn --userscript qute-pass";
+    ",l" = ''config-cycle spellcheck.languages ["en-GB"] ["en-US"]'';
+    "<F1>" = mkMerge [
+      "config-cycle tabs.show never always"
+      "config-cycle statusbar.show in-mode always"
+      "config-cycle scrolling.bar never always"
     ];
   };
   prompt = {
-    "<Ctrl-y>" = "prompt-yes";
+    "<Ctrl-y>" = "prompt-yes";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.keyMappings

This setting can be used to map keys to other keys. When the key used + +

+ +
+ + programs.qutebrowser.keyMappings + + +
+
+

This setting can be used to map keys to other keys. When the key used as dictionary-key is pressed, the binding for the key used as dictionary-value is invoked instead. This is useful for global remappings of keys, for example to map Ctrl-[ to Escape. Note that when a key is bound (via bindings.default or -bindings.commands), the mapping is ignored.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+bindings.commands), the mapping is ignored.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.loadAutoconfig

Load settings configured via the GUI.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.qutebrowser.loadAutoconfig + + +
+
+

Load settings configured via the GUI.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.quickmarks

Quickmarks to add to qutebrowser’s quickmarks file. -Note that when Home Manager manages your quickmarks, you cannot edit them at runtime.

Type: -attribute set of string

Default: -{ }

Example:

{
-  nixpkgs = "https://github.com/NixOS/nixpkgs";
-  home-manager = "https://github.com/nix-community/home-manager";
+
+
+
+
+ + programs.qutebrowser.quickmarks + + +
+
+

Quickmarks to add to qutebrowser’s quickmarks file. +Note that when Home Manager manages your quickmarks, you cannot edit them at runtime.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  nixpkgs = "https://github.com/NixOS/nixpkgs";
+  home-manager = "https://github.com/nix-community/home-manager";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.searchEngines

Search engines that can be used via the address bar. Maps a search + +

+
+
+ + programs.qutebrowser.searchEngines + + +
+
+

Search engines that can be used via the address bar. Maps a search engine name (such as DEFAULT, or ddg) to a URL with a {} placeholder. The placeholder will be replaced by the search term, use @@ -8975,354 +36915,1482 @@ placeholder. The placeholder will be replaced by the search term, use url.auto_search is turned on and something else than a URL was entered to be opened. Other search engines can be used by prepending the search engine name to the search term, for example -:open google qutebrowser.

Type: -attribute set of string

Default: -{ }

Example:

{
-  w = "https://en.wikipedia.org/wiki/Special:Search?search={}&go=Go&ns0=1";
-  aw = "https://wiki.archlinux.org/?search={}";
-  nw = "https://nixos.wiki/index.php?search={}";
-  g = "https://www.google.com/search?hl=en&q={}";
+:open google qutebrowser.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  w = "https://en.wikipedia.org/wiki/Special:Search?search={}&go=Go&ns0=1";
+  aw = "https://wiki.archlinux.org/?search={}";
+  nw = "https://nixos.wiki/index.php?search={}";
+  g = "https://www.google.com/search?hl=en&q={}";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.qutebrowser.settings

Options to add to qutebrowser config.py file. -See https://qutebrowser.org/doc/help/settings.html -for options.

Type: -attribute set of anything

Default: -{ }

Example:

{
+
+
+
+
+ + programs.qutebrowser.settings + + +
+
+

Options to add to qutebrowser config.py file. +See https://qutebrowser.org/doc/help/settings.html +for options.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
   colors = {
     hints = {
-      bg = "#000000";
-      fg = "#ffffff";
+      bg = "#000000";
+      fg = "#ffffff";
     };
-    tabs.bar.bg = "#000000";
+    tabs.bar.bg = "#000000";
   };
   tabs.tabs_are_windows = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/qutebrowser.nix> -
programs.rbenv.enable

Whether to enable rbenv.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rbenv.enable + + +
+
+

Whether to enable rbenv.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbenv.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rbenv.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbenv.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rbenv.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbenv.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rbenv.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbenv.package

The rbenv package to use.

Type: -package

Default: -pkgs.rbenv

Declared by:

+
+ +
+
+
+ + programs.rbenv.package + + +
+
+

The rbenv package to use.

+ +

Type: +package

+ +

Default: +pkgs.rbenv

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbenv.plugins

rbenv plugins to install in $HOME/.rbenv/plugins/.

See https://github.com/rbenv/rbenv/wiki/Plugins -for the full list of plugins.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.rbenv.plugins + + +
+
+

rbenv plugins to install in $HOME/.rbenv/plugins/.

See https://github.com/rbenv/rbenv/wiki/Plugins +for the full list of plugins.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    name = "ruby-build";
+    name = "ruby-build";
     src = pkgs.fetchFromGitHub {
-      owner = "rbenv";
-      repo = "ruby-build";
-      rev = "v20221225";
-      hash = "sha256-Kuq0Z1kh2mvq7rHEgwVG9XwzR5ZUtU/h8SQ7W4/mBU0=";
+      owner = "rbenv";
+      repo = "ruby-build";
+      rev = "v20221225";
+      hash = "sha256-Kuq0Z1kh2mvq7rHEgwVG9XwzR5ZUtU/h8SQ7W4/mBU0=";
     };
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbenv.plugins.*.name

Name of the plugin.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.rbenv.plugins.*.name + + +
+
+

Name of the plugin.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbenv.plugins.*.src

Path to the plugin folder.

Type: -path

Declared by:

+
+ +
+
+
+ + programs.rbenv.plugins.*.src + + +
+
+

Path to the plugin folder.

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbenv.nix> -
programs.rbw.enable

Whether to enable rbw, a CLI Bitwarden client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rbw.enable + + +
+
+

Whether to enable rbw, a CLI Bitwarden client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbw.nix> -
programs.rbw.package

Package providing the rbw tool and its -rbw-agent daemon.

Type: -package

Default: -pkgs.rbw

Declared by:

+
+ +
+
+
+ + programs.rbw.package + + +
+
+

Package providing the rbw tool and its +rbw-agent daemon.

+ +

Type: +package

+ +

Default: +pkgs.rbw

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbw.nix> -
programs.rbw.settings

rbw configuration, if not defined the configuration will not be -managed by Home Manager.

Type: -null or (JSON value)

Default: -null

Example:

{
-  email = "name@example.com";
+
+
+
+
+ + programs.rbw.settings + + +
+
+

rbw configuration, if not defined the configuration will not be +managed by Home Manager.

+ +

Type: +null or (JSON value)

+ +

Default: +null

+ +

Example:

{
+  email = "name@example.com";
   lock_timeout = 300;
-  pinentry = "gnome3";
+  pinentry = "gnome3";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/rbw.nix> -
programs.rbw.settings.base_url

The base-url for a self-hosted bitwarden installation.

Type: -null or string

Default: -null

Example: -"bitwarden.example.com"

Declared by:

+
+ +
+
+
+ + programs.rbw.settings.base_url + + +
+
+

The base-url for a self-hosted bitwarden installation.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"bitwarden.example.com"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbw.nix> -
programs.rbw.settings.email

The email address for your bitwarden account.

Type: -string

Example: -"name@example.com"

Declared by:

+
+ +
+
+
+ + programs.rbw.settings.email + + +
+
+

The email address for your bitwarden account.

+ +

Type: +string

+ +

Example: +"name@example.com"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbw.nix> -
programs.rbw.settings.identity_url

The identity url for your bitwarden installation.

Type: -null or string

Default: -null

Example: -"identity.example.com"

Declared by:

+
+ +
+
+
+ + programs.rbw.settings.identity_url + + +
+
+

The identity url for your bitwarden installation.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"identity.example.com"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbw.nix> -
programs.rbw.settings.lock_timeout

The amount of time that your login information should be cached.

Type: -unsigned integer, meaning >=0

Default: -3600

Example: -300

Declared by:

+
+ +
+
+
+ + programs.rbw.settings.lock_timeout + + +
+
+

The amount of time that your login information should be cached.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +3600

+ +

Example: +300

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rbw.nix> -
programs.rbw.settings.pinentry

Which pinentry interface to use. Beware that + +

+
+
+ + programs.rbw.settings.pinentry + + +
+
+

Which pinentry interface to use. Beware that pinentry-gnome3 may not work on non-Gnome systems. You can fix it by adding the following to your -system configuration:

services.dbus.packages = [ pkgs.gcr ];
-

For this reason, the default is gtk2 for -now.

Type: -package or one of “curses”, “tty”, “gtk2”, “emacs”, “gnome3”, “qt”

Default: -"gtk2"

Example: -"gnome3"

Declared by:

-<home-manager/modules/programs/rbw.nix> -
programs.readline.enable

Whether to enable readline.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/readline.nix> -
programs.readline.bindings

Readline bindings.

Type: -attribute set of string

Default: -{ }

Example:

{ "\\C-h" = "backward-kill-word"; }
+system configuration:

services.dbus.packages = [ pkgs.gcr ];
+

For this reason, the default is gtk2 for +now.

-

Declared by:

+
+

Type: +package or one of “curses”, “tty”, “gtk2”, “emacs”, “gnome3”, “qt”

+ +

Default: +"gtk2"

+ +

Example: +"gnome3"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/rbw.nix> + +
+ +
+ + programs.readline.enable + + +
+
+

Whether to enable readline.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/readline.nix> -
programs.readline.extraConfig

Configuration lines appended unchanged to the end of the -~/.inputrc file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.readline.bindings + + +
+
+

Readline bindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{ "\\C-h" = "backward-kill-word"; }
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/readline.nix> -
programs.readline.includeSystemConfig

Whether to include the system-wide configuration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.readline.extraConfig + + +
+
+

Configuration lines appended unchanged to the end of the +~/.inputrc file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/readline.nix> -
programs.readline.variables

Readline customization variable assignments.

Type: -attribute set of (string or signed integer or boolean)

Default: -{ }

Example:

{
+
+
+
+
+ + programs.readline.includeSystemConfig + + +
+
+

Whether to include the system-wide configuration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/readline.nix> + +
+
+
+ + programs.readline.variables + + +
+
+

Readline customization variable assignments.

+ +

Type: +attribute set of (string or signed integer or boolean)

+ +

Default: +{ }

+ +

Example:

{
   expand-tilde = true;
 }
-

Declared by:

-<home-manager/modules/programs/readline.nix> -
programs.rio.enable

Enable Rio, a terminal built to run everywhere, as a native desktop applications by -Rust/WebGPU or even in the browsers powered by WebAssembly/WebGPU.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/rio.nix> -
programs.rio.package

The rio package to use.

Type: -package

Default: -pkgs.rio

Declared by:

-<home-manager/modules/programs/rio.nix> -
programs.rio.settings

Configuration written to <filename>$XDG_CONFIG_HOME/rio/config.toml</filename> on Linux or -<filename>$HOME/Library/Application Support/rio/config.toml</filename> on Darwin. See -<link xlink:href=“https://raphamorim.io/rio/docs/#configuration-file”/> for options.

Type: -TOML value

Default: -{ }

Declared by:

-<home-manager/modules/programs/rio.nix> -
programs.ripgrep.enable

Whether to enable Ripgrep.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/ripgrep.nix> -
programs.ripgrep.package

The ripgrep package to use.

Type: -package

Default: -pkgs.ripgrep

Declared by:

-<home-manager/modules/programs/ripgrep.nix> -
programs.ripgrep.arguments

List of arguments to pass to ripgrep. Each item is given to ripgrep as -a single command line argument verbatim.

See https://github.com/BurntSushi/ripgrep/blob/master/GUIDE.md#configuration-file -for an example configuration.

Type: -list of string

Default: -[ ]

Example:

[
-  "--max-columns-preview"
-  "--colors=line:style:bold"
-]
-

Declared by:

-<home-manager/modules/programs/ripgrep.nix> -
programs.rofi.enable

Whether to enable Rofi: A window switcher, application launcher and dmenu replacement.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/rofi.nix> -
programs.rofi.package

Package providing the rofi binary.

Type: -package

Default: -<derivation rofi-1.7.5>

Example:

pkgs.rofi.override { plugins = [ pkgs.rofi-emoji ]; };
+
-

Declared by:

+
+

Declared by:

+ + +
+ +<home-manager/modules/programs/readline.nix> + +
+ +
+ + programs.rio.enable + + +
+
+

Enable Rio, a terminal built to run everywhere, as a native desktop applications by +Rust/WebGPU or even in the browsers powered by WebAssembly/WebGPU.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/rio.nix> + +
+
+
+ + programs.rio.package + + +
+
+

The rio package to use.

+ +

Type: +package

+ +

Default: +pkgs.rio

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/rio.nix> + +
+
+
+ + programs.rio.settings + + +
+
+

Configuration written to <filename>$XDG_CONFIG_HOME/rio/config.toml</filename> on Linux or +<filename>$HOME/Library/Application Support/rio/config.toml</filename> on Darwin. See +<link xlink:href=“https://raphamorim.io/rio/docs/#configuration-file”/> for options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/rio.nix> + +
+
+
+ + programs.ripgrep.enable + + +
+
+

Whether to enable Ripgrep.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ripgrep.nix> + +
+
+
+ + programs.ripgrep.package + + +
+
+

The ripgrep package to use.

+ +

Type: +package

+ +

Default: +pkgs.ripgrep

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ripgrep.nix> + +
+
+
+ + programs.ripgrep.arguments + + +
+
+

List of arguments to pass to ripgrep. Each item is given to ripgrep as +a single command line argument verbatim.

See https://github.com/BurntSushi/ripgrep/blob/master/GUIDE.md#configuration-file +for an example configuration.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--max-columns-preview"
+  "--colors=line:style:bold"
+]
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ripgrep.nix> + +
+
+
+ + programs.rofi.enable + + +
+
+

Whether to enable Rofi: A window switcher, application launcher and dmenu replacement.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.configPath

Path where to put generated configuration file.

Type: -string

Default: -"$XDG_CONFIG_HOME/rofi/config.rasi"

Declared by:

+
+ +
+
+
+ + programs.rofi.package + + +
+
+

Package providing the rofi binary.

+ +

Type: +package

+ +

Default: +<derivation rofi-1.7.5>

+ +

Example:

pkgs.rofi.override { plugins = [ pkgs.rofi-emoji ]; };
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.cycle

Whether to cycle through the results list.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.rofi.configPath + + +
+
+

Path where to put generated configuration file.

+ +

Type: +string

+ +

Default: +"$XDG_CONFIG_HOME/rofi/config.rasi"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.extraConfig

Additional configuration to add.

Type: -(attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string

Default: -{ }

Example:

{
-  modi = "drun,emoji,ssh";
-  kb-primary-paste = "Control+V,Shift+Insert";
-  kb-secondary-paste = "Control+v,Insert";
+
+
+
+
+ + programs.rofi.cycle + + +
+
+

Whether to cycle through the results list.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/rofi.nix> + +
+
+
+ + programs.rofi.extraConfig + + +
+
+

Additional configuration to add.

+ +

Type: +(attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string

+ +

Default: +{ }

+ +

Example:

{
+  modi = "drun,emoji,ssh";
+  kb-primary-paste = "Control+V,Shift+Insert";
+  kb-secondary-paste = "Control+v,Insert";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.finalPackage

Resulting customized rofi package.

Type: -package (read only)

Declared by:

+
+ +
+
+
+ + programs.rofi.finalPackage + + +
+
+

Resulting customized rofi package.

+ +

Type: +package (read only)

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.font

Font to use.

Type: -null or string

Default: -null

Example: -"Droid Sans Mono 14"

Declared by:

+
+ +
+
+
+ + programs.rofi.font + + +
+
+

Font to use.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"Droid Sans Mono 14"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.location

The location rofi appears on the screen.

Type: -one of “bottom”, “bottom-left”, “bottom-right”, “center”, “left”, “right”, “top”, “top-left”, “top-right”

Default: -"center"

Declared by:

+
+ +
+
+
+ + programs.rofi.location + + +
+
+

The location rofi appears on the screen.

+ +

Type: +one of “bottom”, “bottom-left”, “bottom-right”, “center”, “left”, “right”, “top”, “top-left”, “top-right”

+ +

Default: +"center"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.pass.enable

Whether to enable rofi integration with password-store.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rofi.pass.enable + + +
+
+

Whether to enable rofi integration with password-store.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi-pass.nix> -
programs.rofi.pass.package

The rofi-pass package to use.

Type: -package

Default: -pkgs.rofi-pass

Example: -pkgs.rofi-pass-wayland

Declared by:

+
+ +
+
+
+ + programs.rofi.pass.package + + +
+
+

The rofi-pass package to use.

+ +

Type: +package

+ +

Default: +pkgs.rofi-pass

+ +

Example: +pkgs.rofi-pass-wayland

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi-pass.nix> -
programs.rofi.pass.extraConfig

Extra configuration to be added at to the rofi-pass config file. + +

+
+
+ + programs.rofi.pass.extraConfig + + +
+
+

Extra configuration to be added at to the rofi-pass config file. Additional examples can be found at -https://github.com/carnager/rofi-pass/blob/master/config.example.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
-  URL_field='url'
-  USERNAME_field='user'
-  AUTOTYPE_field='autotype'
-''
-

Declared by:

+
+https://github.com/carnager/rofi-pass/blob/master/config.example.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
+  URL_field='url'
+  USERNAME_field='user'
+  AUTOTYPE_field='autotype'
+''
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi-pass.nix> -
programs.rofi.pass.stores

Directory roots of your password-stores.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.rofi.pass.stores + + +
+
+

Directory roots of your password-stores.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi-pass.nix> -
programs.rofi.plugins

List of rofi plugins to be installed.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.rofi-calc ]

Declared by:

+
+ +
+
+
+ + programs.rofi.plugins + + +
+
+

List of rofi plugins to be installed.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.rofi-calc ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.terminal

Path to the terminal which will be used to run console applications

Type: -null or string

Default: -null

Example: -"\${pkgs.gnome.gnome_terminal}/bin/gnome-terminal"

Declared by:

+
+ +
+
+
+ + programs.rofi.terminal + + +
+
+

Path to the terminal which will be used to run console applications

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"\${pkgs.gnome.gnome_terminal}/bin/gnome-terminal"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.theme

Name of theme or path to theme file in rasi format or attribute set with + +

+
+
+ + programs.rofi.theme + + +
+
+

Name of theme or path to theme file in rasi format or attribute set with theme configuration. Available named themes can be viewed using the -rofi-theme-selector tool.

Type: -null or string or path or attribute set of ((attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string)

Default: -null

Example:

let
+rofi-theme-selector tool.

+ +

Type: +null or string or path or attribute set of ((attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string)

+ +

Default: +null

+ +

Example:

let
   # Use `mkLiteral` for string-like values that should show without
   # quotes, e.g.:
   # {
-  #   foo = "abc"; => foo: "abc";
-  #   bar = mkLiteral "abc"; => bar: abc;
+  #   foo = "abc"; => foo: "abc";
+  #   bar = mkLiteral "abc"; => bar: abc;
   # };
   inherit (config.lib.formats.rasi) mkLiteral;
 in {
-  "*" = {
-    background-color = mkLiteral "#000000";
-    foreground-color = mkLiteral "rgba ( 250, 251, 252, 100 % )";
-    border-color = mkLiteral "#FFFFFF";
+  "*" = {
+    background-color = mkLiteral "#000000";
+    foreground-color = mkLiteral "rgba ( 250, 251, 252, 100 % )";
+    border-color = mkLiteral "#FFFFFF";
     width = 512;
   };
 
-  "#inputbar" = {
-    children = map mkLiteral [ "prompt" "entry" ];
+  "#inputbar" = {
+    children = map mkLiteral [ "prompt" "entry" ];
   };
 
-  "#textbox-prompt-colon" = {
+  "#textbox-prompt-colon" = {
     expand = false;
-    str = ":";
-    margin = mkLiteral "0px 0.3em 0em 0em";
-    text-color = mkLiteral "@foreground-color";
+    str = ":";
+    margin = mkLiteral "0px 0.3em 0em 0em";
+    text-color = mkLiteral "@foreground-color";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.xoffset

Offset in the x-axis in pixels relative to the chosen location.

Type: -signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + programs.rofi.xoffset + + +
+
+

Offset in the x-axis in pixels relative to the chosen location.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rofi.yoffset

Offset in the y-axis in pixels relative to the chosen location.

Type: -signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + programs.rofi.yoffset + + +
+
+

Offset in the y-axis in pixels relative to the chosen location.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rofi.nix> -
programs.rtorrent.enable

Whether to enable rTorrent.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rtorrent.enable + + +
+
+

Whether to enable rTorrent.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rtorrent.nix> -
programs.rtorrent.extraConfig

Configuration written to + +

+
+
+ + programs.rtorrent.extraConfig + + +
+
+

Configuration written to $XDG_CONFIG_HOME/rtorrent/rtorrent.rc. See -https://github.com/rakshasa/rtorrent/wiki/Config-Guide -for explanation about possible values.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+https://github.com/rakshasa/rtorrent/wiki/Config-Guide +for explanation about possible values.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rtorrent.nix> -
programs.rtx.enable

Whether to enable RTX. Runtime Executor (asdf Rust clone).

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rtx.enable + + +
+
+

Whether to enable RTX. Runtime Executor (asdf Rust clone).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rtx.nix> -
programs.rtx.enableBashIntegration

Whether to enable Bash Integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rtx.enableBashIntegration + + +
+
+

Whether to enable Bash Integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rtx.nix> -
programs.rtx.enableFishIntegration

Whether to enable Fish Integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rtx.enableFishIntegration + + +
+
+

Whether to enable Fish Integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rtx.nix> -
programs.rtx.enableZshIntegration

Whether to enable Zsh Integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.rtx.enableZshIntegration + + +
+
+

Whether to enable Zsh Integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rtx.nix> -
programs.rtx.package

The rtx package to use.

Type: -package

Default: -pkgs.rtx

Declared by:

+
+ +
+
+
+ + programs.rtx.package + + +
+
+

The rtx package to use.

+ +

Type: +package

+ +

Default: +pkgs.rtx

+ +

Declared by:

+ +
+ <home-manager/modules/programs/rtx.nix> -
programs.rtx.settings

Settings written to $XDG_CONFIG_HOME/rtx/config.toml.

See https://github.com/jdxcode/rtx#global-config-configrtxconfigtoml + +

+
+
+ + programs.rtx.settings + + +
+
+

Settings written to $XDG_CONFIG_HOME/rtx/config.toml.

See https://github.com/jdxcode/rtx#global-config-configrtxconfigtoml for details on supported values.

Warning

Modifying the tools section doesn’t make RTX install them. -You have to manually run rtx install to install the tools.

Type: -TOML value

Default: -{ }

Example:

tools = {
-  node = "lts";
-  python = ["3.10" "3.11"];
+You have to manually run rtx install to install the tools.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

tools = {
+  node = "lts";
+  python = ["3.10" "3.11"];
 };
 
 settings = {
@@ -9330,360 +38398,1576 @@ settings = {
   experimental = false;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/rtx.nix> -
programs.ruff.enable

Whether to enable ruff, an extremely fast Python linter and code formatter, written in Rust.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.ruff.enable + + +
+
+

Whether to enable ruff, an extremely fast Python linter and code formatter, written in Rust.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ruff.nix> -
programs.ruff.package

The ruff package to use.

Type: -package

Default: -pkgs.ruff

Declared by:

+
+ +
+
+
+ + programs.ruff.package + + +
+
+

The ruff package to use.

+ +

Type: +package

+ +

Default: +pkgs.ruff

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ruff.nix> -
programs.ruff.settings

Ruff configuration. -For available settings see https://docs.astral.sh/ruff/settings.

Type: -TOML value

Example:

{
+
+
+
+
+ + programs.ruff.settings + + +
+
+

Ruff configuration. +For available settings see https://docs.astral.sh/ruff/settings.

+ +

Type: +TOML value

+ +

Example:

{
   line-length = 100;
-  per-file-ignores = { "__init__.py" = [ "F401" ]; };
+  per-file-ignores = { "__init__.py" = [ "F401" ]; };
   lint = {
-    select = [ "E4" "E7" "E9" "F" ];
+    select = [ "E4" "E7" "E9" "F" ];
     ignore = [ ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ruff.nix> -
programs.sagemath.enable

Whether to enable SageMath, a mathematics software system.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.sagemath.enable + + +
+
+

Whether to enable SageMath, a mathematics software system.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sagemath.nix> -
programs.sagemath.package

The SageMath package to use.

Type: -package

Default: -pkgs.sage

Declared by:

+
+ +
+
+
+ + programs.sagemath.package + + +
+
+

The SageMath package to use.

+ +

Type: +package

+ +

Default: +pkgs.sage

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sagemath.nix> -
programs.sagemath.configDir

Directory where the sage.init file will be stored. + +

+
+
+ + programs.sagemath.configDir + + +
+
+

Directory where the sage.init file will be stored. Note that the upstream default is ~/.sage, -but our default is to follow XDG.

Type: -string

Default: -${config.xdg.configHome}/sage

Declared by:

+
+but our default is to follow XDG.

+ +

Type: +string

+ +

Default: +${config.xdg.configHome}/sage

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sagemath.nix> -
programs.sagemath.dataDir

Location for DOT_SAGE. + +

+
+
+ + programs.sagemath.dataDir + + +
+
+

Location for DOT_SAGE. Note that the upstream default is ~/.sage, -but our default is to follow XDG.

Type: -string

Default: -${config.xdg.dataHome}/sage

Declared by:

+
+but our default is to follow XDG.

+ +

Type: +string

+ +

Default: +${config.xdg.dataHome}/sage

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sagemath.nix> -
programs.sagemath.initScript

Contents of the init.sage file that is loaded on startup.

Type: -strings concatenated with “\n”

Default: -""

Example: -"%colors linux"

Declared by:

+
+ +
+
+
+ + programs.sagemath.initScript + + +
+
+

Contents of the init.sage file that is loaded on startup.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"%colors linux"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sagemath.nix> -
programs.sbt.enable

Whether to enable sbt.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.sbt.enable + + +
+
+

Whether to enable sbt.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.package

The package with sbt to be installed.

Type: -package

Default: -pkgs.sbt

Declared by:

+
+ +
+
+
+ + programs.sbt.package + + +
+
+

The package with sbt to be installed.

+ +

Type: +package

+ +

Default: +pkgs.sbt

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.baseUserConfigPath

Where the sbt configuration files should be located, relative -HOME.

Type: -string

Default: -".sbt"

Declared by:

+
+ +
+
+
+ + programs.sbt.baseUserConfigPath + + +
+
+

Where the sbt configuration files should be located, relative +HOME.

+ +

Type: +string

+ +

Default: +".sbt"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.credentials

A list of credentials to define in the sbt configuration directory.

Type: -list of (submodule)

Default: -[ ]

Example:

[{
-  realm = "Sonatype Nexus Repository Manager";
-  host = "example.com";
-  user = "user";
-  passwordCommand = "pass show sbt/user@example.com";
+
+
+
+
+ + programs.sbt.credentials + + +
+
+

A list of credentials to define in the sbt configuration directory.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[{
+  realm = "Sonatype Nexus Repository Manager";
+  host = "example.com";
+  user = "user";
+  passwordCommand = "pass show sbt/user@example.com";
 }]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.credentials.*.host

The hostname of the repository you’re authenticating to.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.sbt.credentials.*.host + + +
+
+

The hostname of the repository you’re authenticating to.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.credentials.*.passwordCommand

The command that provides the password or authentication token for -the repository.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.sbt.credentials.*.passwordCommand + + +
+
+

The command that provides the password or authentication token for +the repository.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.credentials.*.realm

The realm of the repository you’re authenticating to.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.sbt.credentials.*.realm + + +
+
+

The realm of the repository you’re authenticating to.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.credentials.*.user

The user you’re using to authenticate.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.sbt.credentials.*.user + + +
+
+

The user you’re using to authenticate.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.plugins

A list of plugins to place in the sbt configuration directory.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.sbt.plugins + + +
+
+

A list of plugins to place in the sbt configuration directory.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    org = "net.virtual-void";
-    artifact = "sbt-dependency-graph";
-    version = "0.10.0-RC1";
+    org = "net.virtual-void";
+    artifact = "sbt-dependency-graph";
+    version = "0.10.0-RC1";
   }
   {
-    org = "com.dwijnand";
-    artifact = "sbt-project-graph";
-    version = "0.4.0";
+    org = "com.dwijnand";
+    artifact = "sbt-project-graph";
+    version = "0.4.0";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.plugins.*.artifact

The name of the artifact.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.sbt.plugins.*.artifact + + +
+
+

The name of the artifact.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.plugins.*.org

The organization the artifact is published under.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.sbt.plugins.*.org + + +
+
+

The organization the artifact is published under.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.plugins.*.version

The version of the plugin.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.sbt.plugins.*.version + + +
+
+

The version of the plugin.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.sbt.repositories

A list of repositories to use when resolving dependencies. Defined as a + +

+
+
+ + programs.sbt.repositories + + +
+
+

A list of repositories to use when resolving dependencies. Defined as a list of pre-defined repository or custom repository as a set of name to URL. The list will be used populate the ~/.sbt/repositories file in the order specified.

Pre-defined repositories must be one of local, maven-local, maven-central.

Custom repositories are defined as -{ name-of-repo = "https://url.to.repo.com"}.

See -https://www.scala-sbt.org/1.x/docs/Launcher-Configuration.html#3.+Repositories+Section +{ name-of-repo = "https://url.to.repo.com"}.

See +https://www.scala-sbt.org/1.x/docs/Launcher-Configuration.html#3.+Repositories+Section about this configuration section and -https://www.scala-sbt.org/1.x/docs/Proxy-Repositories.html -to read about proxy repositories.

Type: -list of (one of “local”, “maven-central”, “maven-local” or attribute set of string)

Default: -[ ]

Example:

[
-  "local"
-  { my-ivy-proxy-releases = "http://repo.company.com/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]" }
-  { my-maven-proxy-releases = "http://repo.company.com/maven-releases/" }
-  "maven-central"
+https://www.scala-sbt.org/1.x/docs/Proxy-Repositories.html
+to read about proxy repositories.

+ +

Type: +list of (one of “local”, “maven-central”, “maven-local” or attribute set of string)

+ +

Default: +[ ]

+ +

Example:

[
+  "local"
+  { my-ivy-proxy-releases = "http://repo.company.com/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]" }
+  { my-maven-proxy-releases = "http://repo.company.com/maven-releases/" }
+  "maven-central"
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sbt.nix> -
programs.scmpuff.enable

Whether to enable scmpuff, a command line tool that allows you to work quicker with Git by -substituting numeric shortcuts for files.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.scmpuff.enable + + +
+
+

Whether to enable scmpuff, a command line tool that allows you to work quicker with Git by +substituting numeric shortcuts for files.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/scmpuff.nix> -
programs.scmpuff.enableAliases

Whether to enable aliases (e.g. gs, ga, gd, gco).

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.scmpuff.enableAliases + + +
+
+

Whether to enable aliases (e.g. gs, ga, gd, gco).

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/scmpuff.nix> -
programs.scmpuff.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.scmpuff.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/scmpuff.nix> -
programs.scmpuff.enableFishIntegration

Whether to enable fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.scmpuff.enableFishIntegration + + +
+
+

Whether to enable fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/scmpuff.nix> -
programs.scmpuff.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.scmpuff.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/scmpuff.nix> -
programs.scmpuff.package

Package providing the scmpuff tool.

Type: -package

Default: -pkgs.scmpuff

Declared by:

+
+ +
+
+
+ + programs.scmpuff.package + + +
+
+

Package providing the scmpuff tool.

+ +

Type: +package

+ +

Default: +pkgs.scmpuff

+ +

Declared by:

+ +
+ <home-manager/modules/programs/scmpuff.nix> -
programs.script-directory.enable

Whether to enable script-directory.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.script-directory.enable + + +
+
+

Whether to enable script-directory.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/script-directory.nix> -
programs.script-directory.package

The script-directory package to use.

Type: -package

Default: -pkgs.script-directory

Declared by:

+
+ +
+
+
+ + programs.script-directory.package + + +
+
+

The script-directory package to use.

+ +

Type: +package

+ +

Default: +pkgs.script-directory

+ +

Declared by:

+ +
+ <home-manager/modules/programs/script-directory.nix> -
programs.script-directory.settings

script-directory config, for options take a look at the documentation

Type: -attribute set of string

Default: -{ }

Example:

{
-  SD_ROOT = "${config.home.homeDirectory}/.sd";
-  SD_EDITOR = "nvim";
-  SD_CAT = "lolcat";
+
+
+
+
+ + programs.script-directory.settings + + +
+
+

script-directory config, for options take a look at the documentation

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  SD_ROOT = "${config.home.homeDirectory}/.sd";
+  SD_EDITOR = "nvim";
+  SD_CAT = "lolcat";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/script-directory.nix> -
programs.senpai.enable

Whether to enable senpai.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.senpai.enable + + +
+
+

Whether to enable senpai.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/senpai.nix> -
programs.senpai.package

The senpai package to use.

Type: -package

Default: -pkgs.senpai

Declared by:

+
+ +
+
+
+ + programs.senpai.package + + +
+
+

The senpai package to use.

+ +

Type: +package

+ +

Default: +pkgs.senpai

+ +

Declared by:

+ +
+ <home-manager/modules/programs/senpai.nix> -
programs.senpai.config

Configuration for senpai. For a complete list of options, see -senpai(5).

Type: -YAML value

Example:

{
-  addr = "libera.chat:6697";
-  nick = "nicholas";
-  password = "verysecurepassword";
+
+
+
+
+ + programs.senpai.config + + +
+
+

Configuration for senpai. For a complete list of options, see +senpai(5).

+ +

Type: +YAML value

+ +

Example:

{
+  addr = "libera.chat:6697";
+  nick = "nicholas";
+  password = "verysecurepassword";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/senpai.nix> -
programs.senpai.config.addr

The address (host[:port]) of the IRC server. senpai uses TLS + +

+
+
+ + programs.senpai.config.addr + + +
+
+

The address (host[:port]) of the IRC server. senpai uses TLS connections by default unless you specify no-tls option. TLS -connections default to port 6697, plain-text use port 6667.

Type: -string

Declared by:

+
+connections default to port 6697, plain-text use port 6667.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/senpai.nix> -
programs.senpai.config.nick

Your nickname, sent with a NICK IRC message. It mustn’t contain -spaces or colons (:).

Type: -string

Declared by:

+
+ +
+
+
+ + programs.senpai.config.nick + + +
+
+

Your nickname, sent with a NICK IRC message. It mustn’t contain +spaces or colons (:).

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/senpai.nix> -
programs.senpai.config.no-tls

Disables TLS encryption.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.senpai.config.no-tls + + +
+
+

Disables TLS encryption.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/senpai.nix> -
programs.senpai.config.password

Your password, used for SASL authentication. Note that it will -reside world-readable in the Nix store.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.senpai.config.password + + +
+
+

Your password, used for SASL authentication. Note that it will +reside world-readable in the Nix store.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/senpai.nix> -
programs.sioyek.enable

Whether to enable Sioyek, a PDF viewer designed for reading research papers and technical books.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.sioyek.enable + + +
+
+

Whether to enable Sioyek, a PDF viewer designed for reading research papers and technical books.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sioyek.nix> -
programs.sioyek.package

Package providing the sioyek binary

Type: -package

Default: -pkgs.sioyek

Declared by:

+
+ +
+
+
+ + programs.sioyek.package + + +
+
+

Package providing the sioyek binary

+ +

Type: +package

+ +

Default: +pkgs.sioyek

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sioyek.nix> -
programs.sioyek.bindings

Input configuration written to + +

+
+
+ + programs.sioyek.bindings + + +
+
+

Input configuration written to $XDG_CONFIG_HOME/sioyek/keys_user.config. -See https://github.com/ahrm/sioyek/blob/main/pdf_viewer/keys.config.

Each attribute could also accept a list of strings to set multiple -bindings of the same command.

Type: -attribute set of (string or list of string)

Default: -{ }

Example:

{
-  "move_up" = "k";
-  "move_down" = "j";
-  "move_left" = "h";
-  "move_right" = "l";
-  "screen_down" = [ "d" "<C-d>" ];
-  "screen_up" = [ "u" "<C-u>" ];
+See https://github.com/ahrm/sioyek/blob/main/pdf_viewer/keys.config.

Each attribute could also accept a list of strings to set multiple +bindings of the same command.

+ +

Type: +attribute set of (string or list of string)

+ +

Default: +{ }

+ +

Example:

{
+  "move_up" = "k";
+  "move_down" = "j";
+  "move_left" = "h";
+  "move_right" = "l";
+  "screen_down" = [ "d" "<C-d>" ];
+  "screen_up" = [ "u" "<C-u>" ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sioyek.nix> -
programs.sioyek.config

Input configuration written to + +

+
+
+ + programs.sioyek.config + + +
+
+

Input configuration written to $XDG_CONFIG_HOME/sioyek/prefs_user.config. -See https://github.com/ahrm/sioyek/blob/main/pdf_viewer/prefs.config.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "background_color" = "1.0 1.0 1.0";
-  "text_highlight_color" = "1.0 0.0 0.0";
+See https://github.com/ahrm/sioyek/blob/main/pdf_viewer/prefs.config.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "background_color" = "1.0 1.0 1.0";
+  "text_highlight_color" = "1.0 0.0 0.0";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sioyek.nix> -
programs.skim.enable

Whether to enable skim - a command-line fuzzy finder.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.skim.enable + + +
+
+

Whether to enable skim - a command-line fuzzy finder.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.skim.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.skim.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.skim.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.package

Package providing the skim tool.

Type: -package

Default: -pkgs.skim

Declared by:

+
+ +
+
+
+ + programs.skim.package + + +
+
+

Package providing the skim tool.

+ +

Type: +package

+ +

Default: +pkgs.skim

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.changeDirWidgetCommand

The command that gets executed as the source for skim for the -ALT-C keybinding.

Type: -null or string

Default: -null

Example: -"fd --type d"

Declared by:

+
+ +
+
+
+ + programs.skim.changeDirWidgetCommand + + +
+
+

The command that gets executed as the source for skim for the +ALT-C keybinding.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fd --type d"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.changeDirWidgetOptions

Command line options for the ALT-C keybinding.

Type: -list of string

Default: -[ ]

Example:

[
-  "--preview 'tree -C {} | head -200'"
+
+
+
+
+ + programs.skim.changeDirWidgetOptions + + +
+
+

Command line options for the ALT-C keybinding.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--preview 'tree -C {} | head -200'"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.defaultCommand

The command that gets executed as the default source for skim -when running.

Type: -null or string

Default: -null

Example: -"fd --type f"

Declared by:

+
+ +
+
+
+ + programs.skim.defaultCommand + + +
+
+

The command that gets executed as the default source for skim +when running.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fd --type f"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.defaultOptions

Extra command line options given to skim by default.

Type: -list of string

Default: -[ ]

Example:

[
-  "--height 40%"
-  "--prompt ⟫"
+
+
+
+
+ + programs.skim.defaultOptions + + +
+
+

Extra command line options given to skim by default.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--height 40%"
+  "--prompt ⟫"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.fileWidgetCommand

The command that gets executed as the source for skim for the -CTRL-T keybinding.

Type: -null or string

Default: -null

Example: -"fd --type f"

Declared by:

+
+ +
+
+
+ + programs.skim.fileWidgetCommand + + +
+
+

The command that gets executed as the source for skim for the +CTRL-T keybinding.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fd --type f"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.fileWidgetOptions

Command line options for the CTRL-T keybinding.

Type: -list of string

Default: -[ ]

Example:

[
-  "--preview 'head {}'"
+
+
+
+
+ + programs.skim.fileWidgetOptions + + +
+
+

Command line options for the CTRL-T keybinding.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--preview 'head {}'"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.skim.historyWidgetOptions

Command line options for the CTRL-R keybinding.

Type: -list of string

Default: -[ ]

Example:

[
-  "--tac"
-  "--exact"
+
+
+
+
+ + programs.skim.historyWidgetOptions + + +
+
+

Command line options for the CTRL-R keybinding.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--tac"
+  "--exact"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/skim.nix> -
programs.sm64ex.enable

Whether to enable sm64ex.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.sm64ex.enable + + +
+
+

Whether to enable sm64ex.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sm64ex.nix> -
programs.sm64ex.package

The sm64ex package to use.

Type: -package

Default: -<derivation sm64ex-unstable-2022-12-19>

Declared by:

+
+ +
+
+
+ + programs.sm64ex.package + + +
+
+

The sm64ex package to use.

+ +

Type: +package

+ +

Default: +<derivation sm64ex-unstable-2022-12-19>

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sm64ex.nix> -
programs.sm64ex.baserom

The path to the Super Mario 64 baserom to extract assets from.

Type: -null or path

Default: -null

Example: -/home/foo/baserom.us.z64

Declared by:

+
+ +
+
+
+ + programs.sm64ex.baserom + + +
+
+

The path to the Super Mario 64 baserom to extract assets from.

+ +

Type: +null or path

+ +

Default: +null

+ +

Example: +/home/foo/baserom.us.z64

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sm64ex.nix> -
programs.sm64ex.extraCompileFlags

Extra flags to pass to the compiler. See -https://github.com/sm64pc/sm64ex/wiki/Build-options -for more information.

Type: -null or (list of string)

Default: -null

Example:

[
-  "BETTERCAMERA=1"
-  "NODRAWINGDISTANCE=1"
+
+
+
+
+ + programs.sm64ex.extraCompileFlags + + +
+
+

Extra flags to pass to the compiler. See +https://github.com/sm64pc/sm64ex/wiki/Build-options +for more information.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "BETTERCAMERA=1"
+  "NODRAWINGDISTANCE=1"
 ];
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sm64ex.nix> -
programs.sm64ex.region

Your baserom’s region. Note that only “us”, “eu”, and “jp” are supported.

Type: -null or one of “us”, “eu”, “jp”

Default: -us

Example: -jp

Declared by:

+
+ +
+
+
+ + programs.sm64ex.region + + +
+
+

Your baserom’s region. Note that only “us”, “eu”, and “jp” are supported.

+ +

Type: +null or one of “us”, “eu”, “jp”

+ +

Default: +us

+ +

Example: +jp

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sm64ex.nix> -
programs.sm64ex.settings

Settings for sm64ex’s $XDG_DATA_HOME/sm64pc/sm64config.txt file.

Type: -null or (attribute set of (string or signed integer or boolean or list of string))

Default: -null

Example:

{
+
+
+
+
+ + programs.sm64ex.settings + + +
+
+

Settings for sm64ex’s $XDG_DATA_HOME/sm64pc/sm64config.txt file.

+ +

Type: +null or (attribute set of (string or signed integer or boolean or list of string))

+ +

Default: +null

+ +

Example:

{
   fullscreen = false;
   window_x = 0;
   window_y = 0;
@@ -9695,461 +39979,1863 @@ null or (attribute set of (string or signed integer or boolean or list of string
   music_volume = 127;
   sfx_volume = 127;
   env_volume = 127;
-  key_a = [ "0026" "1000" "1103" ];
-  key_b = [ "0033" "1002" "1101" ];
-  key_start = [ "0039" "1006" "ffff" ];
-  key_l = [ "0034" "1007" "1104" ];
-  key_r = [ "0036" "100a" "1105" ];
-  key_z = [ "0025" "1009" "1102" ];
-  key_cup = [ "100b" "ffff" "ffff" ];
-  key_cdown = [ "100c" "ffff" "ffff" ];
-  key_cleft = [ "100d" "ffff" "ffff" ];
-  key_cright = [ "100e" "ffff" "ffff" ];
-  key_stickup = [ "0011" "ffff" "ffff" ];
-  key_stickdown = [ "001f" "ffff" "ffff" ];
-  key_stickleft = [ "001e" "ffff" "ffff" ];
-  key_stickright = [ "0020" "ffff" "ffff" ];
+  key_a = [ "0026" "1000" "1103" ];
+  key_b = [ "0033" "1002" "1101" ];
+  key_start = [ "0039" "1006" "ffff" ];
+  key_l = [ "0034" "1007" "1104" ];
+  key_r = [ "0036" "100a" "1105" ];
+  key_z = [ "0025" "1009" "1102" ];
+  key_cup = [ "100b" "ffff" "ffff" ];
+  key_cdown = [ "100c" "ffff" "ffff" ];
+  key_cleft = [ "100d" "ffff" "ffff" ];
+  key_cright = [ "100e" "ffff" "ffff" ];
+  key_stickup = [ "0011" "ffff" "ffff" ];
+  key_stickdown = [ "001f" "ffff" "ffff" ];
+  key_stickleft = [ "001e" "ffff" "ffff" ];
+  key_stickright = [ "0020" "ffff" "ffff" ];
   stick_deadzone = 16;
   rumble_strength = 10;
   skip_intro = 1;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sm64ex.nix> -
programs.sqls.enable

Whether to enable sqls, a SQL language server written in Go.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.sqls.enable + + +
+
+

Whether to enable sqls, a SQL language server written in Go.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/sqls.nix> -
programs.sqls.settings

Configuration written to + +

+
+
+ + programs.sqls.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/sqls/config.yml. See -https://github.com/lighttiger2505/sqls#db-configuration -for supported values.

Type: -YAML value

Default: -{ }

Example:

{
+https://github.com/lighttiger2505/sqls#db-configuration
+for supported values.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
    lowercaseKeywords = true;
    connections = [
      {
-       driver = "mysql";
-       dataSourceName = "root:root@tcp(127.0.0.1:13306)/world";
+       driver = "mysql";
+       dataSourceName = "root:root@tcp(127.0.0.1:13306)/world";
      }
    ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/sqls.nix> -
programs.ssh.enable

Whether to enable SSH client configuration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.ssh.enable + + +
+
+

Whether to enable SSH client configuration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.package

The openssh package to use. By default, the client provided by your system is used.

Type: -null or package

Default: -null

Declared by:

+
+ +
+
+
+ + programs.ssh.package + + +
+
+

The openssh package to use. By default, the client provided by your system is used.

+ +

Type: +null or package

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.compression

Specifies whether to use compression.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.ssh.compression + + +
+
+

Specifies whether to use compression.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.controlMaster

Configure sharing of multiple sessions over a single network connection.

Type: -one of “yes”, “no”, “ask”, “auto”, “autoask”

Default: -"no"

Declared by:

+
+ +
+
+
+ + programs.ssh.controlMaster + + +
+
+

Configure sharing of multiple sessions over a single network connection.

+ +

Type: +one of “yes”, “no”, “ask”, “auto”, “autoask”

+ +

Default: +"no"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.controlPath

Specify path to the control socket used for connection sharing.

Type: -string

Default: -"~/.ssh/master-%r@%n:%p"

Declared by:

+
+ +
+
+
+ + programs.ssh.controlPath + + +
+
+

Specify path to the control socket used for connection sharing.

+ +

Type: +string

+ +

Default: +"~/.ssh/master-%r@%n:%p"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.controlPersist

Whether control socket should remain open in the background.

Type: -string

Default: -"no"

Example: -"10m"

Declared by:

+
+ +
+
+
+ + programs.ssh.controlPersist + + +
+
+

Whether control socket should remain open in the background.

+ +

Type: +string

+ +

Default: +"no"

+ +

Example: +"10m"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.extraConfig

Extra configuration.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.ssh.extraConfig + + +
+
+

Extra configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.extraOptionOverrides

Extra SSH configuration options that take precedence over any -host specific configuration.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.ssh.extraOptionOverrides + + +
+
+

Extra SSH configuration options that take precedence over any +host specific configuration.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.forwardAgent

Whether the connection to the authentication agent (if any) -will be forwarded to the remote machine.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.ssh.forwardAgent + + +
+
+

Whether the connection to the authentication agent (if any) +will be forwarded to the remote machine.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.hashKnownHosts

Indicates that + +

+
+
+ + programs.ssh.hashKnownHosts + + +
+
+

Indicates that ssh(1) should hash host names and addresses when they are added to -the known hosts file.

Type: -boolean

Default: -false

Declared by:

+
+the known hosts file.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.includes

File globs of ssh config files that should be included via the + +

+
+
+ + programs.ssh.includes + + +
+
+

File globs of ssh config files that should be included via the Include directive.

See ssh_config(5) -for more information.

Type: -list of string

Default: -[ ]

Declared by:

+
+for more information.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks

Specify per-host settings. Note, if the order of rules matter + +

+
+
+ + programs.ssh.matchBlocks + + +
+
+

Specify per-host settings. Note, if the order of rules matter then use the DAG functions to express the dependencies as shown in the example.

See ssh_config(5) -for more information.

Type: -DAG of submodule

Default: -{ }

Example:

{
-  "john.example.com" = {
-    hostname = "example.com";
-    user = "john";
+for more information.

+ +

Type: +DAG of submodule

+ +

Default: +{ }

+ +

Example:

{
+  "john.example.com" = {
+    hostname = "example.com";
+    user = "john";
   };
-  foo = lib.hm.dag.entryBefore ["john.example.com"] {
-    hostname = "example.com";
-    identityFile = "/home/john/.ssh/foo_rsa";
+  foo = lib.hm.dag.entryBefore ["john.example.com"] {
+    hostname = "example.com";
+    identityFile = "/home/john/.ssh/foo_rsa";
   };
 };
 
-

Declared by:

-<home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.addressFamily

Specifies which address family to use when connecting.

Type: -null or one of “any”, “inet”, “inet6”

Default: -null

Declared by:

-<home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.certificateFile

Specifies files from which the user certificate is read.

Type: -(list of string) or null or string

Default: -[ ]

Declared by:

-<home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.checkHostIP

Check the host IP address in the -known_hosts file.

Type: -boolean

Default: -true

Declared by:

-<home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.compression

Specifies whether to use compression. Omitted from the host -block when null.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.dynamicForwards

Specify dynamic port forwardings. See -ssh_config(5) for DynamicForward.

Type: -list of (submodule)

Default: -[ ]

Example:

[ { port = 8080; } ];
+
-

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.dynamicForwards.*.address

The address where to bind the port.

Type: -string

Default: -"localhost"

Example: -"example.org"

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.addressFamily + + +
+
+

Specifies which address family to use when connecting.

+ +

Type: +null or one of “any”, “inet”, “inet6”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.dynamicForwards.*.port

Specifies port number to bind on bind address.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -8080

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.certificateFile + + +
+
+

Specifies files from which the user certificate is read.

+ +

Type: +(list of string) or null or string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.extraOptions

Extra configuration options for the host.

Type: -attribute set of string

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.checkHostIP + + +
+
+

Check the host IP address in the +known_hosts file.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.forwardAgent

Whether the connection to the authentication agent (if any) -will be forwarded to the remote machine.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.compression + + +
+
+

Specifies whether to use compression. Omitted from the host +block when null.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.forwardX11

Specifies whether X11 connections will be automatically redirected -over the secure channel and DISPLAY set.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.dynamicForwards + + +
+
+

Specify dynamic port forwardings. See +ssh_config(5) for DynamicForward.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[ { port = 8080; } ];
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.forwardX11Trusted

Specifies whether remote X11 clients will have full access to the -original X11 display.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.dynamicForwards.*.address + + +
+
+

The address where to bind the port.

+ +

Type: +string

+ +

Default: +"localhost"

+ +

Example: +"example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.host

Host pattern used by this conditional block. + +

+
+
+ + programs.ssh.matchBlocks.<name>.dynamicForwards.*.port + + +
+
+

Specifies port number to bind on bind address.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +8080

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ssh.nix> + +
+
+
+ + programs.ssh.matchBlocks.<name>.extraOptions + + +
+
+

Extra configuration options for the host.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ssh.nix> + +
+
+
+ + programs.ssh.matchBlocks.<name>.forwardAgent + + +
+
+

Whether the connection to the authentication agent (if any) +will be forwarded to the remote machine.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ssh.nix> + +
+
+
+ + programs.ssh.matchBlocks.<name>.forwardX11 + + +
+
+

Specifies whether X11 connections will be automatically redirected +over the secure channel and DISPLAY set.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ssh.nix> + +
+
+
+ + programs.ssh.matchBlocks.<name>.forwardX11Trusted + + +
+
+

Specifies whether remote X11 clients will have full access to the +original X11 display.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/ssh.nix> + +
+
+
+ + programs.ssh.matchBlocks.<name>.host + + +
+
+

Host pattern used by this conditional block. See ssh_config(5) for Host block details. This option is ignored if ssh.matchBlocks.*.match -if defined.

Type: -null or string

Default: -null

Example: -"*.example.org"

Declared by:

+
+if defined.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"*.example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.hostname

Specifies the real host name to log into.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.hostname + + +
+
+

Specifies the real host name to log into.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.identitiesOnly

Specifies that ssh should only use the authentication + +

+
+
+ + programs.ssh.matchBlocks.<name>.identitiesOnly + + +
+
+

Specifies that ssh should only use the authentication identity explicitly configured in the ~/.ssh/config files or passed on the ssh command-line, even if ssh-agent -offers more identities.

Type: -boolean

Default: -false

Declared by:

+
+offers more identities.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.identityFile

Specifies files from which the user identity is read. -Identities will be tried in the given order.

Type: -(list of string) or null or string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.identityFile + + +
+
+

Specifies files from which the user identity is read. +Identities will be tried in the given order.

+ +

Type: +(list of string) or null or string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.localForwards

Specify local port forwardings. See -ssh_config(5) for LocalForward.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.ssh.matchBlocks.<name>.localForwards + + +
+
+

Specify local port forwardings. See +ssh_config(5) for LocalForward.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
     bind.port = 8080;
-    host.address = "10.0.0.13";
+    host.address = "10.0.0.13";
     host.port = 80;
   }
 ];
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.localForwards.*.bind.address

The address where to bind the port.

Type: -string

Default: -"localhost"

Example: -"example.org"

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.localForwards.*.bind.address + + +
+
+

The address where to bind the port.

+ +

Type: +string

+ +

Default: +"localhost"

+ +

Example: +"example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.localForwards.*.bind.port

Specifies port number to bind on bind address.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -8080

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.localForwards.*.bind.port + + +
+
+

Specifies port number to bind on bind address.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +8080

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.localForwards.*.host.address

The address where to forward the traffic to.

Type: -null or string

Default: -null

Example: -"example.org"

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.localForwards.*.host.address + + +
+
+

The address where to forward the traffic to.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.localForwards.*.host.port

Specifies port number to forward the traffic to.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -80

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.localForwards.*.host.port + + +
+
+

Specifies port number to forward the traffic to.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +80

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.match

Match block conditions used by this block. See + +

+
+
+ + programs.ssh.matchBlocks.<name>.match + + +
+
+

Match block conditions used by this block. See ssh_config(5) for Match block details. This option takes precedence over ssh.matchBlocks.*.host -if defined.

Type: -null or string

Default: -null

Example:

''
+if defined.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example:

''
   host <hostname> canonical
-  host <hostname> exec "ping -c1 -q 192.168.17.1"''
-

Declared by:

+
+ host <hostname> exec "ping -c1 -q 192.168.17.1"'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.port

Specifies port number to connect on remote host.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.port + + +
+
+

Specifies port number to connect on remote host.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.proxyCommand

The command to use to connect to the server.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.proxyCommand + + +
+
+

The command to use to connect to the server.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.proxyJump

The proxy host to use to connect to the server.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.proxyJump + + +
+
+

The proxy host to use to connect to the server.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.remoteForwards

Specify remote port forwardings. See -ssh_config(5) for RemoteForward.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.ssh.matchBlocks.<name>.remoteForwards + + +
+
+

Specify remote port forwardings. See +ssh_config(5) for RemoteForward.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
     bind.port = 8080;
-    host.address = "10.0.0.13";
+    host.address = "10.0.0.13";
     host.port = 80;
   }
 ];
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.remoteForwards.*.bind.address

The address where to bind the port.

Type: -string

Default: -"localhost"

Example: -"example.org"

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.remoteForwards.*.bind.address + + +
+
+

The address where to bind the port.

+ +

Type: +string

+ +

Default: +"localhost"

+ +

Example: +"example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.remoteForwards.*.bind.port

Specifies port number to bind on bind address.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -8080

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.remoteForwards.*.bind.port + + +
+
+

Specifies port number to bind on bind address.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +8080

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.remoteForwards.*.host.address

The address where to forward the traffic to.

Type: -null or string

Default: -null

Example: -"example.org"

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.remoteForwards.*.host.address + + +
+
+

The address where to forward the traffic to.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"example.org"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.remoteForwards.*.host.port

Specifies port number to forward the traffic to.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -80

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.remoteForwards.*.host.port + + +
+
+

Specifies port number to forward the traffic to.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +80

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.sendEnv

Environment variables to send from the local host to the -server.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.sendEnv + + +
+
+

Environment variables to send from the local host to the +server.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.serverAliveCountMax

Sets the number of server alive messages which may be sent -without SSH receiving any messages back from the server.

Type: -positive integer, meaning >0

Default: -3

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.serverAliveCountMax + + +
+
+

Sets the number of server alive messages which may be sent +without SSH receiving any messages back from the server.

+ +

Type: +positive integer, meaning >0

+ +

Default: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.serverAliveInterval

Set timeout in seconds after which response will be requested.

Type: -signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.serverAliveInterval + + +
+
+

Set timeout in seconds after which response will be requested.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.setEnv

Environment variables and their value to send to the server.

Type: -attribute set of (string or path or signed integer or floating point number)

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.setEnv + + +
+
+

Environment variables and their value to send to the server.

+ +

Type: +attribute set of (string or path or signed integer or floating point number)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.matchBlocks.<name>.user

Specifies the user to log in as.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.ssh.matchBlocks.<name>.user + + +
+
+

Specifies the user to log in as.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.serverAliveCountMax

Sets the default number of server alive messages which may be -sent without SSH receiving any messages back from the server.

Type: -positive integer, meaning >0

Default: -3

Declared by:

+
+ +
+
+
+ + programs.ssh.serverAliveCountMax + + +
+
+

Sets the default number of server alive messages which may be +sent without SSH receiving any messages back from the server.

+ +

Type: +positive integer, meaning >0

+ +

Default: +3

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.serverAliveInterval

Set default timeout in seconds after which response will be requested.

Type: -signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + programs.ssh.serverAliveInterval + + +
+
+

Set default timeout in seconds after which response will be requested.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.ssh.userKnownHostsFile

Specifies one or more files to use for the user host key + +

+
+
+ + programs.ssh.userKnownHostsFile + + +
+
+

Specifies one or more files to use for the user host key database, separated by whitespace. The default is -~/.ssh/known_hosts.

Type: -string

Default: -"~/.ssh/known_hosts"

Declared by:

+
+~/.ssh/known_hosts.

+ +

Type: +string

+ +

Default: +"~/.ssh/known_hosts"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/ssh.nix> -
programs.starship.enable

Whether to enable starship.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.starship.enable + + +
+
+

Whether to enable starship.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.starship.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.starship.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.enableIonIntegration

Whether to enable Ion integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.starship.enableIonIntegration + + +
+
+

Whether to enable Ion integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.starship.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.enableTransience

The TransientPrompt feature of Starship replaces previous prompts with a + +

+
+
+ + programs.starship.enableTransience + + +
+
+

The TransientPrompt feature of Starship replaces previous prompts with a custom string. This is only a valid option for the Fish shell.

For documentation on how to change the default replacement string and for more information visit -https://starship.rs/advanced-config/#transientprompt-and-transientrightprompt-in-cmd

Type: -boolean

Default: -false

Declared by:

+
+https://starship.rs/advanced-config/#transientprompt-and-transientrightprompt-in-cmd

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.starship.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.package

The package to use for the starship binary.

Type: -package

Default: -pkgs.starship

Declared by:

+
+ +
+
+
+ + programs.starship.package + + +
+
+

The package to use for the starship binary.

+ +

Type: +package

+ +

Default: +pkgs.starship

+ +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.starship.settings

Configuration written to -$XDG_CONFIG_HOME/starship.toml.

See https://starship.rs/config/ for the full list -of options.

Type: -Starship configuration

Default: -{ }

Example:

{
+
+
+
+
+ + programs.starship.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/starship.toml.

See https://starship.rs/config/ for the full list +of options.

+ +

Type: +Starship configuration

+ +

Default: +{ }

+ +

Example:

{
   add_newline = false;
   format = lib.concatStrings [
-    "$line_break"
-    "$package"
-    "$line_break"
-    "$character"
+    "$line_break"
+    "$package"
+    "$line_break"
+    "$character"
   ];
   scan_timeout = 10;
   character = {
-    success_symbol = "➜";
-    error_symbol = "➜";
+    success_symbol = "➜";
+    error_symbol = "➜";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/starship.nix> -
programs.swaylock.enable

Whether to enable swaylock.

Note that PAM must be configured to enable swaylock to perform + +

+
+
+ + programs.swaylock.enable + + +
+
+

Whether to enable swaylock.

Note that PAM must be configured to enable swaylock to perform authentication. The package installed through home-manager will not be able to unlock the session without this configuration.

On NixOS, this is by default enabled with the sway module, but -for other compositors it can currently be enabled using:

security.pam.services.swaylock = {};
-

Type: -boolean

Default:

true  if state version < 23.05 and settings ≠ { },
+for other compositors it can currently be enabled using:

security.pam.services.swaylock = {};
+
+ +

Type: +boolean

+ +

Default:

true  if state version < 23.05 and settings ≠ { },
 false otherwise
 
-

Example: -true

Declared by:

+
+ + +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/swaylock.nix> -
programs.swaylock.package

The swaylock package to use.

Type: -package

Default: -pkgs.swaylock

Declared by:

+
+ +
+
+
+ + programs.swaylock.package + + +
+
+

The swaylock package to use.

+ +

Type: +package

+ +

Default: +pkgs.swaylock

+ +

Declared by:

+ +
+ <home-manager/modules/programs/swaylock.nix> -
programs.swaylock.settings

Default arguments to swaylock. An empty set -disables configuration generation.

Type: -attribute set of (boolean or floating point number or signed integer or string)

Default: -{ }

Example:

{
-  color = "808080";
+
+
+
+
+ + programs.swaylock.settings + + +
+
+

Default arguments to swaylock. An empty set +disables configuration generation.

+ +

Type: +attribute set of (boolean or floating point number or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  color = "808080";
   font-size = 24;
   indicator-idle-visible = false;
   indicator-radius = 100;
-  line-color = "ffffff";
+  line-color = "ffffff";
   show-failed-attempts = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/swaylock.nix> -
programs.swayr.enable

Whether to enable the swayr service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.swayr.enable + + +
+
+

Whether to enable the swayr service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/swayr.nix> -
programs.swayr.package

swayr package to use.

Type: -package

Default: -pkgs.swayr

Declared by:

+
+ +
+
+
+ + programs.swayr.package + + +
+
+

swayr package to use.

+ +

Type: +package

+ +

Default: +pkgs.swayr

+ +

Declared by:

+ +
+ <home-manager/modules/programs/swayr.nix> -
programs.swayr.extraConfig

Extra configuration lines to append to the swayr -configuration file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.swayr.extraConfig + + +
+
+

Extra configuration lines to append to the swayr +configuration file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/swayr.nix> -
programs.swayr.settings

Configuration included in config.toml. -For available options see https://git.sr.ht/~tsdh/swayr#swayr-configuration

Type: -null or TOML value

Default: -{ }

Example:

menu = {
-  executable = "${pkgs.wofi}/bin/wofi";
+
+
+
+
+ + programs.swayr.settings + + +
+
+

Configuration included in config.toml. +For available options see https://git.sr.ht/~tsdh/swayr#swayr-configuration

+ +

Type: +null or TOML value

+ +

Default: +{ }

+ +

Example:

menu = {
+  executable = "${pkgs.wofi}/bin/wofi";
   args = [
-    "--show=dmenu"
-    "--allow-markup"
-    "--allow-images"
-    "--insensitive"
-    "--cache-file=/dev/null"
-    "--parse-search"
-    "--height=40%"
-    "--prompt={prompt}"
+    "--show=dmenu"
+    "--allow-markup"
+    "--allow-images"
+    "--insensitive"
+    "--cache-file=/dev/null"
+    "--parse-search"
+    "--height=40%"
+    "--prompt={prompt}"
   ];
 };
 
 format = {
-  output_format = "{indent}<b>Output {name}</b>    <span alpha=\"20000\">({id})</span>";
-  workspace_format = "{indent}<b>Workspace {name} [{layout}]</b> on output {output_name}    <span alpha=\"20000\">({id})</span>";
-  container_format = "{indent}<b>Container [{layout}]</b> <i>{marks}</i> on workspace {workspace_name}    <span alpha=\"20000\">({id})</span>";
-  window_format = "img:{app_icon}:text:{indent}<i>{app_name}</i> — {urgency_start}<b>“{title}”</b>{urgency_end} <i>{marks}</i> on workspace {workspace_name} / {output_name}    <span alpha=\"20000\">({id})</span>";
-  indent = "    ";
-  urgency_start = "<span background=\"darkred\" foreground=\"yellow\">";
-  urgency_end = "</span>";
+  output_format = "{indent}<b>Output {name}</b>    <span alpha=\"20000\">({id})</span>";
+  workspace_format = "{indent}<b>Workspace {name} [{layout}]</b> on output {output_name}    <span alpha=\"20000\">({id})</span>";
+  container_format = "{indent}<b>Container [{layout}]</b> <i>{marks}</i> on workspace {workspace_name}    <span alpha=\"20000\">({id})</span>";
+  window_format = "img:{app_icon}:text:{indent}<i>{app_name}</i> — {urgency_start}<b>“{title}”</b>{urgency_end} <i>{marks}</i> on workspace {workspace_name} / {output_name}    <span alpha=\"20000\">({id})</span>";
+  indent = "    ";
+  urgency_start = "<span background=\"darkred\" foreground=\"yellow\">";
+  urgency_end = "</span>";
   html_escape = true;
 };
 
@@ -10182,73 +41868,285 @@ misc = {
   seq_inhibit = false;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/swayr.nix> -
programs.swayr.systemd.enable

Whether to enable swayr systemd integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.swayr.systemd.enable + + +
+
+

Whether to enable swayr systemd integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/swayr.nix> -
programs.swayr.systemd.target

Systemd target to bind to.

Type: -string

Default: -"graphical-session.target"

Declared by:

+
+ +
+
+
+ + programs.swayr.systemd.target + + +
+
+

Systemd target to bind to.

+ +

Type: +string

+ +

Default: +"graphical-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/swayr.nix> -
programs.taskwarrior.enable

Whether to enable Task Warrior.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.taskwarrior.enable + + +
+
+

Whether to enable Task Warrior.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/taskwarrior.nix> -
programs.taskwarrior.package

The taskwarrior package to use.

Type: -package

Default: -pkgs.taskwarrior

Declared by:

+
+ +
+
+
+ + programs.taskwarrior.package + + +
+
+

The taskwarrior package to use.

+ +

Type: +package

+ +

Default: +pkgs.taskwarrior

+ +

Declared by:

+ +
+ <home-manager/modules/programs/taskwarrior.nix> -
programs.taskwarrior.colorTheme

Either one of the default provided theme as string, or a -path to a theme configuration file.

Type: -null or string or path

Default: -null

Example: -"dark-blue-256"

Declared by:

+
+ +
+
+
+ + programs.taskwarrior.colorTheme + + +
+
+

Either one of the default provided theme as string, or a +path to a theme configuration file.

+ +

Type: +null or string or path

+ +

Default: +null

+ +

Example: +"dark-blue-256"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/taskwarrior.nix> -
programs.taskwarrior.config

Key-value configuration written to -$XDG_CONFIG_HOME/task/taskrc.

Type: -attribute set of anything

Default: -{ }

Example:

{
+
+
+
+
+ + programs.taskwarrior.config + + +
+
+

Key-value configuration written to +$XDG_CONFIG_HOME/task/taskrc.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
   confirmation = false;
-  report.minimal.filter = "status:pending";
-  report.active.columns = [ "id" "start" "entry.age" "priority" "project" "due" "description" ];
-  report.active.labels  = [ "ID" "Started" "Age" "Priority" "Project" "Due" "Description" ];
+  report.minimal.filter = "status:pending";
+  report.active.columns = [ "id" "start" "entry.age" "priority" "project" "due" "description" ];
+  report.active.labels  = [ "ID" "Started" "Age" "Priority" "Project" "Due" "Description" ];
   taskd = {
-    certificate = "/path/to/cert";
-    key = "/path/to/key";
-    ca = "/path/to/ca";
-    server = "host.domain:53589";
-    credentials = "Org/First Last/cf31f287-ee9e-43a8-843e-e8bbd5de4294";
+    certificate = "/path/to/cert";
+    key = "/path/to/key";
+    ca = "/path/to/ca";
+    server = "host.domain:53589";
+    credentials = "Org/First Last/cf31f287-ee9e-43a8-843e-e8bbd5de4294";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/taskwarrior.nix> -
programs.taskwarrior.dataLocation

Location where Task Warrior will store its data.

Home Manager will attempt to create this directory.

Type: -string

Default: -"$XDG_DATA_HOME/task"

Declared by:

+
+ +
+
+
+ + programs.taskwarrior.dataLocation + + +
+
+

Location where Task Warrior will store its data.

Home Manager will attempt to create this directory.

+ +

Type: +string

+ +

Default: +"$XDG_DATA_HOME/task"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/taskwarrior.nix> -
programs.taskwarrior.extraConfig

Additional content written at the end of -$XDG_CONFIG_HOME/task/taskrc.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.taskwarrior.extraConfig + + +
+
+

Additional content written at the end of +$XDG_CONFIG_HOME/task/taskrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/taskwarrior.nix> -
programs.tealdeer.enable

Whether to enable Tealdeer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.tealdeer.enable + + +
+
+

Whether to enable Tealdeer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tealdeer.nix> -
programs.tealdeer.settings

Configuration written to + +

+
+
+ + programs.tealdeer.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/tealdeer/config.toml on Linux or $HOME/Library/Application Support/tealdeer/config.toml on Darwin. See -https://dbrgn.github.io/tealdeer/config.html -for more information.

Type: -TOML value

Default: -{ }

Example:

{
+https://dbrgn.github.io/tealdeer/config.html
+for more information.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   display = {
     compact = false;
     use_pager = true;
@@ -10258,974 +42156,4490 @@ TOML value

Default: }; }; -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/tealdeer.nix> -
programs.terminator.enable

Whether to enable terminator, a tiling terminal emulator.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.terminator.enable + + +
+
+

Whether to enable terminator, a tiling terminal emulator.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/terminator.nix> -
programs.terminator.package

terminator package to install.

Type: -package

Default: -<derivation terminator-2.1.3>

Example: -pkgs.terminator

Declared by:

+
+ +
+
+
+ + programs.terminator.package + + +
+
+

terminator package to install.

+ +

Type: +package

+ +

Default: +<derivation terminator-2.1.3>

+ +

Example: +pkgs.terminator

+ +

Declared by:

+ +
+ <home-manager/modules/programs/terminator.nix> -
programs.terminator.config

configuration for terminator.

For a list of all possible options refer to the + +

+
+
+ + programs.terminator.config + + +
+
+

configuration for terminator.

For a list of all possible options refer to the terminator_config(5) -man page.

Type: -attribute set of anything

Default: -{ }

Example:

{
+man page.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
   global_config.borderless = true;
-  profiles.default.background_color = "#002b36";
+  profiles.default.background_color = "#002b36";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/terminator.nix> -
programs.termite.enable

Whether to enable Termite VTE-based terminal.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.termite.enable + + +
+
+

Whether to enable Termite VTE-based terminal.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/termite.nix> -
programs.termite.enableVteIntegration

Whether to enable Shell VTE integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.termite.enableVteIntegration + + +
+
+

Whether to enable Shell VTE integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/termite.nix> -
programs.termite.allowBold

Allow the output of bold characters when the bold escape sequence appears.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.termite.allowBold + + +
+
+

Allow the output of bold characters when the bold escape sequence appears.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/termite.nix> -
programs.termite.audibleBell

Have the terminal beep on the terminal bell.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.termite.audibleBell + + +
+
+

Have the terminal beep on the terminal bell.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/termite.nix> -
programs.termite.backgroundColor

Background color value.

Type: -null or string

Default: -null

Example: -"rgba(63, 63, 63, 0.8)"

Declared by:

+
+ +
+
+
+ + programs.termite.backgroundColor + + +
+
+

Background color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"rgba(63, 63, 63, 0.8)"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/termite.nix> -
programs.termite.browser

Set the default browser for opening links. If its not set, $BROWSER is read. -If that’s not set, url hints will be disabled.

Type: -null or string

Default: -null

Example: -"\${pkgs.xdg-utils}/xdg-open"

Declared by:

+
+ +
+
+
+ + programs.termite.browser + + +
+
+

Set the default browser for opening links. If its not set, $BROWSER is read. +If that’s not set, url hints will be disabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"\${pkgs.xdg-utils}/xdg-open"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/termite.nix> -
programs.termite.clickableUrl

Auto-detected URLs can be clicked on to open them in your browser. -Only enabled if a browser is configured or detected.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.termite.clickableUrl + + +
+
+

Auto-detected URLs can be clicked on to open them in your browser. +Only enabled if a browser is configured or detected.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/termite.nix> -
programs.termite.colorsExtra

Extra colors options that should be added to [colors] section.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.termite.colorsExtra + + +
+
+

Extra colors options that should be added to [colors] section.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   color0 = #3f3f3f
   color1 = #705050
   color2 = #60b48a
-''
-

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.cursorBlink

Specify the how the terminal’s cursor should behave. -Accepts system to respect the gtk global configuration, -on and off to explicitly enable or disable them.

Type: -null or one of “system”, “on”, “off”

Default: -null

Example: -"system"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.cursorColor

Cursor color value.

Type: -null or string

Default: -null

Example: -"#dcdccc"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.cursorForegroundColor

Cursor foreground color value.

Type: -null or string

Default: -null

Example: -"#dcdccc"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.cursorShape

Specify how the cursor should look. Accepts block, ibeam and underline.

Type: -null or one of “block”, “underline”, “ibeam”

Default: -null

Example: -"block"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.dynamicTitle

Settings dynamic title allows the terminal and the shell to -update the terminal’s title.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.filterUnmatchedUrls

Whether to hide url hints not matching input in url hints mode.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.font

The font description for the terminal’s font.

Type: -null or string

Default: -null

Example: -"Monospace 12"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.foregroundBoldColor

Foreground bold color value.

Type: -null or string

Default: -null

Example: -"#ffffff"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.foregroundColor

Foreground color value.

Type: -null or string

Default: -null

Example: -"#dcdccc"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.fullscreen

Enables entering fullscreen mode by pressing F11.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.geometry

The default window geometry for new terminal windows.

Type: -null or string

Default: -null

Example: -"640x480"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.highlightColor

highlight color value.

Type: -null or string

Default: -null

Example: -"#2f2f2f"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsActiveBackgroundColor

Hints active background color value.

Type: -null or string

Default: -null

Example: -"#3f3f3f"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsActiveForegroundColor

Hints active foreground color value.

Type: -null or string

Default: -null

Example: -"#e68080"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsBackgroundColor

Hints background color value.

Type: -null or string

Default: -null

Example: -"#3f3f3f"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsBorderColor

Hints border color value.

Type: -null or string

Default: -null

Example: -"#3f3f3f"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsBorderWidth

Hints border width.

Type: -null or string

Default: -null

Example: -"0.5"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsExtra

Extra hints options that should be added to [hints] section.

Type: -strings concatenated with “\n”

Default: -""

Example: -"border = #3f3f3f"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsFont

The font description for the hints font.

Type: -null or string

Default: -null

Example: -"Monospace 12"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsForegroundColor

Hints foreground color value.

Type: -null or string

Default: -null

Example: -"#dcdccc"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsPadding

Hints padding.

Type: -null or signed integer

Default: -null

Example: -2

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.hintsRoundness

Hints roundness.

Type: -null or string

Default: -null

Example: -"0.2"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.iconName

The name of the icon to be used for the terminal process.

Type: -null or string

Default: -null

Example: -"terminal"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.modifyOtherKeys

Emit escape sequences for extra keys, -like the modifyOtherKeys resource for -xterm(1).

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.mouseAutohide

Automatically hide the mouse pointer when you start typing.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.optionsExtra

Extra options that should be added to [options] section.

Type: -strings concatenated with “\n”

Default: -""

Example: -"fullscreen = true"

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.scrollOnKeystroke

Scroll to the bottom automatically when a key is pressed.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.scrollOnOutput

Scroll to the bottom when the shell generates output.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.scrollbackLines

Set the number of lines to limit the terminal’s scrollback.

Type: -null or signed integer

Default: -null

Example: -10000

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.scrollbar

Scrollbar position.

Type: -null or one of “off”, “left”, “right”

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.searchWrap

Search from top again when you hit the bottom.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.sizeHints

Enable size hints. Locks the terminal resizing -to increments of the terminal’s cell size. -Requires a window manager that respects scroll hints.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.termite.urgentOnBell

Sets the window as urgent on the terminal bell.

Type: -null or boolean

Default: -null

Declared by:

-<home-manager/modules/programs/termite.nix> -
programs.texlive.enable

Whether to enable TeX Live.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/texlive.nix> -
programs.texlive.package

Resulting customized TeX Live package.

Type: -package (read only)

Declared by:

-<home-manager/modules/programs/texlive.nix> -
programs.texlive.packageSet

TeX Live package set to use.

Type: -unspecified value

Default: -pkgs.texlive

Declared by:

-<home-manager/modules/programs/texlive.nix> -
programs.texlive.extraPackages

Extra packages available to TeX Live.

Type: -unspecified value

Default: -"tpkgs: { inherit (tpkgs) collection-basic; }"

Example:

tpkgs: { inherit (tpkgs) collection-fontsrecommended algorithms; }
+''
+
-

Declared by:

+
+

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+ +
+ + programs.termite.cursorBlink + + +
+
+

Specify the how the terminal’s cursor should behave. +Accepts system to respect the gtk global configuration, +on and off to explicitly enable or disable them.

+ +

Type: +null or one of “system”, “on”, “off”

+ +

Default: +null

+ +

Example: +"system"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.cursorColor + + +
+
+

Cursor color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#dcdccc"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.cursorForegroundColor + + +
+
+

Cursor foreground color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#dcdccc"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.cursorShape + + +
+
+

Specify how the cursor should look. Accepts block, ibeam and underline.

+ +

Type: +null or one of “block”, “underline”, “ibeam”

+ +

Default: +null

+ +

Example: +"block"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.dynamicTitle + + +
+
+

Settings dynamic title allows the terminal and the shell to +update the terminal’s title.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.filterUnmatchedUrls + + +
+
+

Whether to hide url hints not matching input in url hints mode.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.font + + +
+
+

The font description for the terminal’s font.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"Monospace 12"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.foregroundBoldColor + + +
+
+

Foreground bold color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#ffffff"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.foregroundColor + + +
+
+

Foreground color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#dcdccc"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.fullscreen + + +
+
+

Enables entering fullscreen mode by pressing F11.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.geometry + + +
+
+

The default window geometry for new terminal windows.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"640x480"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.highlightColor + + +
+
+

highlight color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#2f2f2f"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsActiveBackgroundColor + + +
+
+

Hints active background color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#3f3f3f"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsActiveForegroundColor + + +
+
+

Hints active foreground color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#e68080"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsBackgroundColor + + +
+
+

Hints background color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#3f3f3f"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsBorderColor + + +
+
+

Hints border color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#3f3f3f"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsBorderWidth + + +
+
+

Hints border width.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"0.5"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsExtra + + +
+
+

Extra hints options that should be added to [hints] section.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"border = #3f3f3f"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsFont + + +
+
+

The font description for the hints font.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"Monospace 12"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsForegroundColor + + +
+
+

Hints foreground color value.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#dcdccc"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsPadding + + +
+
+

Hints padding.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +2

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.hintsRoundness + + +
+
+

Hints roundness.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"0.2"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.iconName + + +
+
+

The name of the icon to be used for the terminal process.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"terminal"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.modifyOtherKeys + + +
+
+

Emit escape sequences for extra keys, +like the modifyOtherKeys resource for +xterm(1).

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.mouseAutohide + + +
+
+

Automatically hide the mouse pointer when you start typing.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.optionsExtra + + +
+
+

Extra options that should be added to [options] section.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"fullscreen = true"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.scrollOnKeystroke + + +
+
+

Scroll to the bottom automatically when a key is pressed.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.scrollOnOutput + + +
+
+

Scroll to the bottom when the shell generates output.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.scrollbackLines + + +
+
+

Set the number of lines to limit the terminal’s scrollback.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +10000

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.scrollbar + + +
+
+

Scrollbar position.

+ +

Type: +null or one of “off”, “left”, “right”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.searchWrap + + +
+
+

Search from top again when you hit the bottom.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.sizeHints + + +
+
+

Enable size hints. Locks the terminal resizing +to increments of the terminal’s cell size. +Requires a window manager that respects scroll hints.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.termite.urgentOnBell + + +
+
+

Sets the window as urgent on the terminal bell.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/termite.nix> + +
+
+
+ + programs.texlive.enable + + +
+
+

Whether to enable TeX Live.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/texlive.nix> -
programs.thefuck.enable

Whether to enable thefuck - magnificent app that corrects your previous console command.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.texlive.package + + +
+
+

Resulting customized TeX Live package.

+ +

Type: +package (read only)

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/texlive.nix> + +
+
+
+ + programs.texlive.packageSet + + +
+
+

TeX Live package set to use.

+ +

Type: +unspecified value

+ +

Default: +pkgs.texlive

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/texlive.nix> + +
+
+
+ + programs.texlive.extraPackages + + +
+
+

Extra packages available to TeX Live.

+ +

Type: +unspecified value

+ +

Default: +"tpkgs: { inherit (tpkgs) collection-basic; }"

+ +

Example:

tpkgs: { inherit (tpkgs) collection-fontsrecommended algorithms; }
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/texlive.nix> + +
+
+
+ + programs.thefuck.enable + + +
+
+

Whether to enable thefuck - magnificent app that corrects your previous console command.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thefuck.nix> -
programs.thefuck.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.thefuck.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thefuck.nix> -
programs.thefuck.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.thefuck.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thefuck.nix> -
programs.thefuck.enableInstantMode

Whether to enable thefuck’s experimental instant mode.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.thefuck.enableInstantMode + + +
+
+

Whether to enable thefuck’s experimental instant mode.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thefuck.nix> -
programs.thefuck.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.thefuck.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thefuck.nix> -
programs.thefuck.package

The thefuck package to use.

Type: -package

Default: -pkgs.thefuck

Declared by:

+
+ +
+
+
+ + programs.thefuck.package + + +
+
+

The thefuck package to use.

+ +

Type: +package

+ +

Default: +pkgs.thefuck

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thefuck.nix> -
programs.thunderbird.enable

Whether to enable Thunderbird.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.thunderbird.enable + + +
+
+

Whether to enable Thunderbird.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.package

The Thunderbird package to use.

Type: -package

Default: -pkgs.thunderbird

Example: -pkgs.thunderbird-91

Declared by:

+
+ +
+
+
+ + programs.thunderbird.package + + +
+
+

The Thunderbird package to use.

+ +

Type: +package

+ +

Default: +pkgs.thunderbird

+ +

Example: +pkgs.thunderbird-91

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles

Attribute set of Thunderbird profiles.

Type: -attribute set of (submodule)

Declared by:

+
+ +
+
+
+ + programs.thunderbird.profiles + + +
+
+

Attribute set of Thunderbird profiles.

+ +

Type: +attribute set of (submodule)

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles.<name>.extraConfig

Extra preferences to add to user.js.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.thunderbird.profiles.<name>.extraConfig + + +
+
+

Extra preferences to add to user.js.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles.<name>.isDefault

Whether this is a default profile. There must be exactly one -default profile.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.thunderbird.profiles.<name>.isDefault + + +
+
+

Whether this is a default profile. There must be exactly one +default profile.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles.<name>.name

This profile’s name.

Type: -string (read only)

Default: -"‹name›"

Declared by:

+
+ +
+
+
+ + programs.thunderbird.profiles.<name>.name + + +
+
+

This profile’s name.

+ +

Type: +string (read only)

+ +

Default: +"‹name›"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles.<name>.settings

Preferences to add to this profile’s -user.js.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  "mail.spellcheck.inline" = false;
+
+
+
+
+ + programs.thunderbird.profiles.<name>.settings + + +
+
+

Preferences to add to this profile’s +user.js.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  "mail.spellcheck.inline" = false;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles.<name>.userChrome

Custom Thunderbird user chrome CSS.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.thunderbird.profiles.<name>.userChrome + + +
+
+

Custom Thunderbird user chrome CSS.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   /* Hide tab bar in Thunderbird */
   #tabs-toolbar {
     visibility: collapse !important;
   }
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles.<name>.userContent

Custom Thunderbird user content CSS.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.thunderbird.profiles.<name>.userContent + + +
+
+

Custom Thunderbird user content CSS.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   /* Hide scrollbar on Thunderbird pages */
   *{scrollbar-width:none !important}
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.profiles.<name>.withExternalGnupg

Allow using external GPG keys with GPGME.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.thunderbird.profiles.<name>.withExternalGnupg + + +
+
+

Allow using external GPG keys with GPGME.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/thunderbird.nix> -
programs.thunderbird.settings

Attribute set of Thunderbird preferences to be added to -all profiles.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  "general.useragent.override" = "";
-  "privacy.donottrackheader.enabled" = true;
+
+
+
+
+ + programs.thunderbird.settings + + +
+
+

Attribute set of Thunderbird preferences to be added to +all profiles.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  "general.useragent.override" = "";
+  "privacy.donottrackheader.enabled" = true;
 }
 
-

Declared by:

-<home-manager/modules/programs/thunderbird.nix> -
programs.timidity.enable

Whether to enable timidity, a software MIDI renderer.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/programs/timidity.nix> -
programs.timidity.package

The timidity package to use.

Type: -package

Default: -pkgs.timidity

Declared by:

-<home-manager/modules/programs/timidity.nix> -
programs.timidity.extraConfig

Extra configuration.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
-  soundfont ${pkgs.soundfont-fluid}/share/soundfonts/FluidR3_GM2-2.sf2
-''
+
-

Declared by:

+
+

Declared by:

+ + +
+ +<home-manager/modules/programs/thunderbird.nix> + +
+ +
+ + programs.timidity.enable + + +
+
+

Whether to enable timidity, a software MIDI renderer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/timidity.nix> -
programs.timidity.finalPackage

Resulting package.

Type: -package (read only)

Declared by:

+
+ +
+
+
+ + programs.timidity.package + + +
+
+

The timidity package to use.

+ +

Type: +package

+ +

Default: +pkgs.timidity

+ +

Declared by:

+ +
+ <home-manager/modules/programs/timidity.nix> -
programs.tint2.enable

Whether to enable tint2, a simple, unobtrusive and light panel for Xorg.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.timidity.extraConfig + + +
+
+

Extra configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
+  soundfont ${pkgs.soundfont-fluid}/share/soundfonts/FluidR3_GM2-2.sf2
+''
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/timidity.nix> + +
+
+
+ + programs.timidity.finalPackage + + +
+
+

Resulting package.

+ +

Type: +package (read only)

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/timidity.nix> + +
+
+
+ + programs.tint2.enable + + +
+
+

Whether to enable tint2, a simple, unobtrusive and light panel for Xorg.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tint2.nix> -
programs.tint2.package

Tint2 package to install.

Type: -package

Default: -pkgs.tint2

Declared by:

+
+ +
+
+
+ + programs.tint2.package + + +
+
+

Tint2 package to install.

+ +

Type: +package

+ +

Default: +pkgs.tint2

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tint2.nix> -
programs.tint2.extraConfig

Commands for tint2 that will be add to the tint2rc -file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.tint2.extraConfig + + +
+
+

Commands for tint2 that will be add to the tint2rc +file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tint2.nix> -
programs.tiny.enable

Whether to enable tiny, a TUI IRC client written in Rust.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.tiny.enable + + +
+
+

Whether to enable tiny, a TUI IRC client written in Rust.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tiny.nix> -
programs.tiny.package

The tiny package to install.

Type: -package

Default: -pkgs.tiny

Declared by:

+
+ +
+
+
+ + programs.tiny.package + + +
+
+

The tiny package to install.

+ +

Type: +package

+ +

Default: +pkgs.tiny

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tiny.nix> -
programs.tiny.settings

Configuration written to + +

+
+
+ + programs.tiny.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/tiny/config.yml. See -https://github.com/osa1/tiny/blob/master/crates/tiny/config.yml -for the default configuration.

Type: -YAML value

Default: -{ }

Example:

{
+https://github.com/osa1/tiny/blob/master/crates/tiny/config.yml
+for the default configuration.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   servers = [
     {
-      addr = "irc.libera.chat";
+      addr = "irc.libera.chat";
       port = 6697;
       tls = true;
-      realname = "John Doe";
-      nicks = [ "tinyuser" ];
+      realname = "John Doe";
+      nicks = [ "tinyuser" ];
     }
   ];
   defaults = {
-    nicks = [ "tinyuser" ];
-    realname = "John Doe";
+    nicks = [ "tinyuser" ];
+    realname = "John Doe";
     join = [];
     tls = true;
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/tiny.nix> -
programs.tmate.enable

Whether to enable tmate.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.tmate.enable + + +
+
+

Whether to enable tmate.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmate.nix> -
programs.tmate.package

The tmate package to install.

Type: -package

Default: -pkgs.tmate

Example: -pkgs.tmate

Declared by:

+
+ +
+
+
+ + programs.tmate.package + + +
+
+

The tmate package to install.

+ +

Type: +package

+ +

Default: +pkgs.tmate

+ +

Example: +pkgs.tmate

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmate.nix> -
programs.tmate.dsaFingerprint

Tmate server EdDSA key fingerprint.

Type: -null or string

Default: -null

Example: -SHA256:1111111111111111111111111111111111111111111

Declared by:

+
+ +
+
+
+ + programs.tmate.dsaFingerprint + + +
+
+

Tmate server EdDSA key fingerprint.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +SHA256:1111111111111111111111111111111111111111111

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmate.nix> -
programs.tmate.extraConfig

Additional content written at the end of -~/.tmate.conf.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.tmate.extraConfig + + +
+
+

Additional content written at the end of +~/.tmate.conf.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmate.nix> -
programs.tmate.host

Tmate server address.

Type: -null or string

Default: -null

Example: -tmate.io

Declared by:

+
+ +
+
+
+ + programs.tmate.host + + +
+
+

Tmate server address.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +tmate.io

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmate.nix> -
programs.tmate.port

Tmate server port.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Example: -2222

Declared by:

+
+ +
+
+
+ + programs.tmate.port + + +
+
+

Tmate server port.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Example: +2222

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmate.nix> -
programs.tmate.rsaFingerprint

Tmate server RSA key fingerprint.

Type: -null or string

Default: -null

Example: -SHA256:1111111111111111111111111111111111111111111

Declared by:

+
+ +
+
+
+ + programs.tmate.rsaFingerprint + + +
+
+

Tmate server RSA key fingerprint.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +SHA256:1111111111111111111111111111111111111111111

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmate.nix> -
programs.tmux.enable

Whether to enable tmux.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.tmux.enable + + +
+
+

Whether to enable tmux.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.package

The tmux package to install

Type: -package

Default: -pkgs.tmux

Example: -pkgs.tmux

Declared by:

+
+ +
+
+
+ + programs.tmux.package + + +
+
+

The tmux package to install

+ +

Type: +package

+ +

Default: +pkgs.tmux

+ +

Example: +pkgs.tmux

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.aggressiveResize

Resize the window to the size of the smallest session for -which it is the current window.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.tmux.aggressiveResize + + +
+
+

Resize the window to the size of the smallest session for +which it is the current window.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.baseIndex

Base index for windows and panes.

Type: -unsigned integer, meaning >=0

Default: -0

Example: -1

Declared by:

+
+ +
+
+
+ + programs.tmux.baseIndex + + +
+
+

Base index for windows and panes.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +0

+ +

Example: +1

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.clock24

Use 24 hour clock.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.tmux.clock24 + + +
+
+

Use 24 hour clock.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.customPaneNavigationAndResize

Override the hjkl and HJKL bindings for pane navigation and -resizing in VI mode.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.tmux.customPaneNavigationAndResize + + +
+
+

Override the hjkl and HJKL bindings for pane navigation and +resizing in VI mode.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.disableConfirmationPrompt

Disable confirmation prompt before killing a pane or window

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.tmux.disableConfirmationPrompt + + +
+
+

Disable confirmation prompt before killing a pane or window

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.escapeTime

Time in milliseconds for which tmux waits after an escape is -input.

Type: -unsigned integer, meaning >=0

Default: -500

Example: -0

Declared by:

+
+ +
+
+
+ + programs.tmux.escapeTime + + +
+
+

Time in milliseconds for which tmux waits after an escape is +input.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +500

+ +

Example: +0

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.extraConfig

Additional configuration to add to -tmux.conf.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.tmux.extraConfig + + +
+
+

Additional configuration to add to +tmux.conf.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.historyLimit

Maximum number of lines held in window history.

Type: -positive integer, meaning >0

Default: -2000

Example: -5000

Declared by:

+
+ +
+
+
+ + programs.tmux.historyLimit + + +
+
+

Maximum number of lines held in window history.

+ +

Type: +positive integer, meaning >0

+ +

Default: +2000

+ +

Example: +5000

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.keyMode

VI or Emacs style shortcuts.

Type: -one of “emacs”, “vi”

Default: -"emacs"

Example: -"vi"

Declared by:

+
+ +
+
+
+ + programs.tmux.keyMode + + +
+
+

VI or Emacs style shortcuts.

+ +

Type: +one of “emacs”, “vi”

+ +

Default: +"emacs"

+ +

Example: +"vi"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.mouse

Whether to enable mouse support.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.tmux.mouse + + +
+
+

Whether to enable mouse support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.newSession

Automatically spawn a session if trying to attach and none -are running.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.tmux.newSession + + +
+
+

Automatically spawn a session if trying to attach and none +are running.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.plugins

List of tmux plugins to be included at the end of your tmux + +

+
+
+ + programs.tmux.plugins + + +
+
+

List of tmux plugins to be included at the end of your tmux configuration. The sensible plugin, however, is defaulted to -run at the top of your configuration.

Type: -list of plugin packages or submodules

Default: -[ ]

Example:

with pkgs; [
+run at the top of your configuration.

+ +

Type: +list of plugin packages or submodules

+ +

Default: +[ ]

+ +

Example:

with pkgs; [
   tmuxPlugins.cpu
   {
     plugin = tmuxPlugins.resurrect;
-    extraConfig = "set -g @resurrect-strategy-nvim 'session'";
+    extraConfig = "set -g @resurrect-strategy-nvim 'session'";
   }
   {
     plugin = tmuxPlugins.continuum;
-    extraConfig = ''
-      set -g @continuum-restore 'on'
-      set -g @continuum-save-interval '60' # minutes
-    '';
+    extraConfig = ''
+      set -g @continuum-restore 'on'
+      set -g @continuum-save-interval '60' # minutes
+    '';
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.prefix

Set the prefix key. Overrules the “shortcut” option when set.

Type: -null or string

Default: -null

Example: -"C-a"

Declared by:

+
+ +
+
+
+ + programs.tmux.prefix + + +
+
+

Set the prefix key. Overrules the “shortcut” option when set.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"C-a"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.resizeAmount

Number of lines/columns when resizing.

Type: -positive integer, meaning >0

Default: -5

Example: -10

Declared by:

+
+ +
+
+
+ + programs.tmux.resizeAmount + + +
+
+

Number of lines/columns when resizing.

+ +

Type: +positive integer, meaning >0

+ +

Default: +5

+ +

Example: +10

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.reverseSplit

Reverse the window split shortcuts.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.tmux.reverseSplit + + +
+
+

Reverse the window split shortcuts.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.secureSocket

Store tmux socket under /run, which is more + +

+
+
+ + programs.tmux.secureSocket + + +
+
+

Store tmux socket under /run, which is more secure than /tmp, but as a downside it doesn’t -survive user logout.

Type: -boolean

Default: -true

Declared by:

+
+survive user logout.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.sensibleOnTop

Run the sensible plugin at the top of the configuration. It + +

+
+
+ + programs.tmux.sensibleOnTop + + +
+
+

Run the sensible plugin at the top of the configuration. It is possible to override the sensible settings using the -programs.tmux.extraConfig option.

Type: -boolean

Default: -true

Declared by:

+
+programs.tmux.extraConfig option.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.shell

Set the default-shell tmux variable.

Type: -null or string

Default: -null

Example: -"\${pkgs.zsh}/bin/zsh"

Declared by:

+
+ +
+
+
+ + programs.tmux.shell + + +
+
+

Set the default-shell tmux variable.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"\${pkgs.zsh}/bin/zsh"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.shortcut

CTRL following by this key is used as the main shortcut.

Type: -string

Default: -"b"

Example: -"a"

Declared by:

+
+ +
+
+
+ + programs.tmux.shortcut + + +
+
+

CTRL following by this key is used as the main shortcut.

+ +

Type: +string

+ +

Default: +"b"

+ +

Example: +"a"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.terminal

Set the $TERM variable.

Type: -string

Default: -"screen"

Example: -"screen-256color"

Declared by:

+
+ +
+
+
+ + programs.tmux.terminal + + +
+
+

Set the $TERM variable.

+ +

Type: +string

+ +

Default: +"screen"

+ +

Example: +"screen-256color"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.tmuxinator.enable

Whether to enable tmuxinator.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.tmux.tmuxinator.enable + + +
+
+

Whether to enable tmuxinator.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.tmux.tmuxp.enable

Whether to enable tmuxp.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.tmux.tmuxp.enable + + +
+
+

Whether to enable tmuxp.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/tmux.nix> -
programs.topgrade.enable

Whether to enable topgrade.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.topgrade.enable + + +
+
+

Whether to enable topgrade.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/topgrade.nix> -
programs.topgrade.package

The package to use for the topgrade binary.

Type: -package

Default: -pkgs.topgrade

Declared by:

+
+ +
+
+
+ + programs.topgrade.package + + +
+
+

The package to use for the topgrade binary.

+ +

Type: +package

+ +

Default: +pkgs.topgrade

+ +

Declared by:

+ +
+ <home-manager/modules/programs/topgrade.nix> -
programs.topgrade.settings

Configuration written to -$XDG_CONFIG_HOME/topgrade.toml.

See https://github.com/r-darwish/topgrade/wiki/Step-list for the full list -of options.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.topgrade.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/topgrade.toml.

See https://github.com/r-darwish/topgrade/wiki/Step-list for the full list +of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   assume_yes = true;
   disable = [
-    "flutter"
-    "node"
+    "flutter"
+    "node"
   ];
   set_title = false;
   cleanup = true;
   commands = {
-    "Run garbage collection on Nix store" = "nix-collect-garbage";
+    "Run garbage collection on Nix store" = "nix-collect-garbage";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/topgrade.nix> -
programs.translate-shell.enable

Whether to enable translate-shell.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.translate-shell.enable + + +
+
+

Whether to enable translate-shell.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/translate-shell.nix> -
programs.translate-shell.settings

Options to add to $XDG_CONFIG_HOME/translate-shell/init.trans file. -See https://github.com/soimort/translate-shell/wiki/Configuration -for options.

Type: -attribute set of (boolean or string or list of string)

Default: -{ }

Example:

{
-  hl = "en";
+
+
+
+
+ + programs.translate-shell.settings + + +
+
+

Options to add to $XDG_CONFIG_HOME/translate-shell/init.trans file. +See https://github.com/soimort/translate-shell/wiki/Configuration +for options.

+ +

Type: +attribute set of (boolean or string or list of string)

+ +

Default: +{ }

+ +

Example:

{
+  hl = "en";
   tl = [
-    "es"
-    "fr"
+    "es"
+    "fr"
   ];
   verbose = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/translate-shell.nix> -
programs.urxvt.enable

Whether to enable rxvt-unicode terminal emulator.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.urxvt.enable + + +
+
+

Whether to enable rxvt-unicode terminal emulator.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.package

rxvt-unicode package to install.

Type: -package

Default: -pkgs.rxvt-unicode

Declared by:

+
+ +
+
+
+ + programs.urxvt.package + + +
+
+

rxvt-unicode package to install.

+ +

Type: +package

+ +

Default: +pkgs.rxvt-unicode

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.extraConfig

Additional configuration to add.

Type: -attribute set of anything

Default: -{ }

Example:

{
+
+
+
+
+ + programs.urxvt.extraConfig + + +
+
+

Additional configuration to add.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
   shading = 15;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.fonts

List of fonts to be used.

Type: -list of string

Default: -[ ]

Example:

[
-  "xft:Droid Sans Mono Nerd Font:size=9"
+
+
+
+
+ + programs.urxvt.fonts + + +
+
+

List of fonts to be used.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "xft:Droid Sans Mono Nerd Font:size=9"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.iso14755

ISO14755 support for viewing and entering unicode characters.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.urxvt.iso14755 + + +
+
+

ISO14755 support for viewing and entering unicode characters.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.keybindings

Mapping of keybindings to actions

Type: -attribute set of string

Default: -{ }

Example:

{
-  "Shift-Control-C" = "eval:selection_to_clipboard";
-  "Shift-Control-V" = "eval:paste_clipboard";
+
+
+
+
+ + programs.urxvt.keybindings + + +
+
+

Mapping of keybindings to actions

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "Shift-Control-C" = "eval:selection_to_clipboard";
+  "Shift-Control-V" = "eval:paste_clipboard";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.bar

Scrollbar settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.bar + + +
+
+

Scrollbar settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.bar.enable

Whether to enable the scrollbar

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.bar.enable + + +
+
+

Whether to enable the scrollbar

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.bar.align

Scrollbar alignment.

Type: -one of “top”, “bottom”, “center”

Default: -"center"

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.bar.align + + +
+
+

Scrollbar alignment.

+ +

Type: +one of “top”, “bottom”, “center”

+ +

Default: +"center"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.bar.floating

Whether to display an rxvt scrollbar without a trough.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.bar.floating + + +
+
+

Whether to display an rxvt scrollbar without a trough.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.bar.position

Scrollbar position.

Type: -one of “left”, “right”

Default: -"right"

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.bar.position + + +
+
+

Scrollbar position.

+ +

Type: +one of “left”, “right”

+ +

Default: +"right"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.bar.style

Scrollbar style.

Type: -one of “rxvt”, “plain”, “next”, “xterm”

Default: -"plain"

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.bar.style + + +
+
+

Scrollbar style.

+ +

Type: +one of “rxvt”, “plain”, “next”, “xterm”

+ +

Default: +"plain"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.keepPosition

Whether to keep a scroll position when TTY receives new lines.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.keepPosition + + +
+
+

Whether to keep a scroll position when TTY receives new lines.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.lines

Number of lines to save in the scrollback buffer.

Type: -unsigned integer, meaning >=0

Default: -10000

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.lines + + +
+
+

Number of lines to save in the scrollback buffer.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +10000

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.scrollOnKeystroke

Whether to scroll to bottom on keyboard input.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.scrollOnKeystroke + + +
+
+

Whether to scroll to bottom on keyboard input.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.scroll.scrollOnOutput

Whether to scroll to bottom on TTY output.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.urxvt.scroll.scrollOnOutput + + +
+
+

Whether to scroll to bottom on TTY output.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.shading

Darken (0 to 99) or lighten (101 to 200) the transparent background.

Type: -integer between 0 and 200 (both inclusive)

Default: -100

Declared by:

+
+ +
+
+
+ + programs.urxvt.shading + + +
+
+

Darken (0 to 99) or lighten (101 to 200) the transparent background.

+ +

Type: +integer between 0 and 200 (both inclusive)

+ +

Default: +100

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.urxvt.transparent

Whether to enable pseudo-transparency.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.urxvt.transparent + + +
+
+

Whether to enable pseudo-transparency.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/urxvt.nix> -
programs.vdirsyncer.enable

Whether to enable vdirsyncer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.vdirsyncer.enable + + +
+
+

Whether to enable vdirsyncer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vdirsyncer.nix> -
programs.vdirsyncer.package

vdirsyncer package to use.

Type: -package

Default: -"pkgs.vdirsyncer"

Declared by:

+
+ +
+
+
+ + programs.vdirsyncer.package + + +
+
+

vdirsyncer package to use.

+ +

Type: +package

+ +

Default: +"pkgs.vdirsyncer"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vdirsyncer.nix> -
programs.vdirsyncer.statusPath

A directory where vdirsyncer will store some additional data for the next sync.

For more information, see the -vdirsyncer manual.

Type: -string

Default: -"$XDG_DATA_HOME/vdirsyncer/status"

Declared by:

+
+ +
+
+
+ + programs.vdirsyncer.statusPath + + +
+
+

A directory where vdirsyncer will store some additional data for the next sync.

For more information, see the +vdirsyncer manual.

+ +

Type: +string

+ +

Default: +"$XDG_DATA_HOME/vdirsyncer/status"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vdirsyncer.nix> -
programs.vim.enable

Whether to enable Vim.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.vim.enable + + +
+
+

Whether to enable Vim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim.nix> -
programs.vim.package

Resulting customized vim package

Type: -package (read only)

Declared by:

+
+ +
+
+
+ + programs.vim.package + + +
+
+

Resulting customized vim package

+ +

Type: +package (read only)

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim.nix> -
programs.vim.packageConfigurable

Vim package to customize

Type: -package

Default: -pkgs.vim-full

Example: -pkgs.vim

Declared by:

+
+ +
+
+
+ + programs.vim.packageConfigurable + + +
+
+

Vim package to customize

+ +

Type: +package

+ +

Default: +pkgs.vim-full

+ +

Example: +pkgs.vim

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim.nix> -
programs.vim.defaultEditor

Whether to configure vim as the default -editor using the EDITOR environment variable.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.vim.defaultEditor + + +
+
+

Whether to configure vim as the default +editor using the EDITOR environment variable.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim.nix> -
programs.vim.extraConfig

Custom .vimrc lines

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.vim.extraConfig + + +
+
+

Custom .vimrc lines

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   set nocompatible
   set nobackup
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/vim.nix> -
programs.vim.plugins

List of vim plugins to install. To get a list of supported plugins run: -nix-env -f '<nixpkgs>' -qaP -A vimPlugins.

Note: String values are deprecated, please use actual packages.

Type: -list of (string or package)

Default:

[
+
+
+
+
+ + programs.vim.plugins + + +
+
+

List of vim plugins to install. To get a list of supported plugins run: +nix-env -f '<nixpkgs>' -qaP -A vimPlugins.

Note: String values are deprecated, please use actual packages.

+ +

Type: +list of (string or package)

+ +

Default:

[
   <derivation vimplugin-vim-sensible-2023-03-29>
 ]
-

Example: -[ pkgs.vimPlugins.YankRing ]

Declared by:

+
+ + +

Example: +[ pkgs.vimPlugins.YankRing ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim.nix> -
programs.vim.settings

At attribute set of Vim settings. The attribute names and + +

+
+
+ + programs.vim.settings + + +
+
+

At attribute set of Vim settings. The attribute names and corresponding values must be among the following supported options.

background

one of “dark”, “light”

backupdir

list of string

copyindent

boolean

directory

list of string

expandtab

boolean

hidden

boolean

history

signed integer

ignorecase

boolean

modeline

boolean

mouse

one of “n”, “v”, “i”, “c”, “h”, “a”, “r”

mousefocus

boolean

mousehide

boolean

mousemodel

one of “extend”, “popup”, “popup_setpos”

number

boolean

relativenumber

boolean

shiftwidth

signed integer

smartcase

boolean

tabstop

signed integer

undodir

list of string

undofile

boolean

See the Vim documentation for detailed descriptions of these -options. Use programs.vim.extraConfig to manually -set any options not listed above.

Type: -submodule

Default: -{ }

Example:

{
+options. Use programs.vim.extraConfig to manually
+set any options not listed above.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Example:

{
   expandtab = true;
   history = 1000;
-  background = "dark";
+  background = "dark";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/vim.nix> -
programs.vim-vint.enable

Whether to enable the Vint linter for Vimscript.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.vim-vint.enable + + +
+
+

Whether to enable the Vint linter for Vimscript.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim-vint.nix> -
programs.vim-vint.package

The vim-vint package to use.

Type: -package

Default: -pkgs.vim-vint

Declared by:

+
+ +
+
+
+ + programs.vim-vint.package + + +
+
+

The vim-vint package to use.

+ +

Type: +package

+ +

Default: +pkgs.vim-vint

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim-vint.nix> -
programs.vim-vint.settings

Configuration written to -$XDG_CONFIG_HOME/.vintrc.yaml

Type: -YAML value

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.vim-vint.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/.vintrc.yaml

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vim-vint.nix> -
programs.vscode.enable

Whether to enable Visual Studio Code.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.vscode.enable + + +
+
+

Whether to enable Visual Studio Code.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.enableExtensionUpdateCheck

Whether to enable update notifications for extensions.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.vscode.enableExtensionUpdateCheck + + +
+
+

Whether to enable update notifications for extensions.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.enableUpdateCheck

Whether to enable update checks/notifications.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.vscode.enableUpdateCheck + + +
+
+

Whether to enable update checks/notifications.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.package

Version of Visual Studio Code to install.

Type: -package

Default: -pkgs.vscode

Example: -pkgs.vscodium

Declared by:

+
+ +
+
+
+ + programs.vscode.package + + +
+
+

Version of Visual Studio Code to install.

+ +

Type: +package

+ +

Default: +pkgs.vscode

+ +

Example: +pkgs.vscodium

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.extensions

The extensions Visual Studio Code should be started with.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.vscode-extensions.bbenoist.nix ]

Declared by:

+
+ +
+
+
+ + programs.vscode.extensions + + +
+
+

The extensions Visual Studio Code should be started with.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.vscode-extensions.bbenoist.nix ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.globalSnippets

Defines global user snippets.

Type: -JSON value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.vscode.globalSnippets + + +
+
+

Defines global user snippets.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
   fixme = {
     body = [
-      "$LINE_COMMENT FIXME: $0"
+      "$LINE_COMMENT FIXME: $0"
     ];
-    description = "Insert a FIXME remark";
+    description = "Insert a FIXME remark";
     prefix = [
-      "fixme"
+      "fixme"
     ];
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.haskell.enable

Whether to enable Haskell integration for Visual Studio Code.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.vscode.haskell.enable + + +
+
+

Whether to enable Haskell integration for Visual Studio Code.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode/haskell.nix> -
programs.vscode.haskell.hie.enable

Whether to enable Haskell IDE engine integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.vscode.haskell.hie.enable + + +
+
+

Whether to enable Haskell IDE engine integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode/haskell.nix> -
programs.vscode.haskell.hie.executablePath

The path to the Haskell IDE Engine executable.

Because hie-nix is not packaged in Nixpkgs, you need to add it as an -overlay or set this option. Example overlay configuration:

nixpkgs.overlays = [
+
+
+
+
+ + programs.vscode.haskell.hie.executablePath + + +
+
+

The path to the Haskell IDE Engine executable.

Because hie-nix is not packaged in Nixpkgs, you need to add it as an +overlay or set this option. Example overlay configuration:

nixpkgs.overlays = [
   (self: super: { hie-nix = import ~/src/hie-nix {}; })
 ]
 
-

Type: -path

Default: -"${pkgs.hie-nix.hies}/bin/hie-wrapper"

Example:

(import ~/src/haskell-ide-engine {}).hies + "/bin/hie-wrapper";
+
-

Declared by:

+
+

Type: +path

+ +

Default: +"${pkgs.hie-nix.hies}/bin/hie-wrapper"

+ +

Example:

(import ~/src/haskell-ide-engine {}).hies + "/bin/hie-wrapper";
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode/haskell.nix> -
programs.vscode.keybindings

Keybindings written to Visual Studio Code’s -keybindings.json.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.vscode.keybindings + + +
+
+

Keybindings written to Visual Studio Code’s +keybindings.json.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    key = "ctrl+c";
-    command = "editor.action.clipboardCopyAction";
-    when = "textInputFocus";
+    key = "ctrl+c";
+    command = "editor.action.clipboardCopyAction";
+    when = "textInputFocus";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.keybindings.*.args

Optional arguments for a command.

Type: -null or JSON value

Default: -null

Example:

{
-  direction = "up";
+
+
+
+
+ + programs.vscode.keybindings.*.args + + +
+
+

Optional arguments for a command.

+ +

Type: +null or JSON value

+ +

Default: +null

+ +

Example:

{
+  direction = "up";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.keybindings.*.command

The VS Code command to execute.

Type: -string

Example: -"editor.action.clipboardCopyAction"

Declared by:

+
+ +
+
+
+ + programs.vscode.keybindings.*.command + + +
+
+

The VS Code command to execute.

+ +

Type: +string

+ +

Example: +"editor.action.clipboardCopyAction"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.keybindings.*.key

The key or key-combination to bind.

Type: -string

Example: -"ctrl+c"

Declared by:

+
+ +
+
+
+ + programs.vscode.keybindings.*.key + + +
+
+

The key or key-combination to bind.

+ +

Type: +string

+ +

Example: +"ctrl+c"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.keybindings.*.when

Optional context filter.

Type: -null or string

Default: -null

Example: -"textInputFocus"

Declared by:

+
+ +
+
+
+ + programs.vscode.keybindings.*.when + + +
+
+

Optional context filter.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"textInputFocus"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.languageSnippets

Defines user snippets for different languages.

Type: -JSON value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.vscode.languageSnippets + + +
+
+

Defines user snippets for different languages.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
   haskell = {
     fixme = {
       body = [
-        "$LINE_COMMENT FIXME: $0"
+        "$LINE_COMMENT FIXME: $0"
       ];
-      description = "Insert a FIXME remark";
+      description = "Insert a FIXME remark";
       prefix = [
-        "fixme"
+        "fixme"
       ];
     };
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.mutableExtensionsDir

Whether extensions can be installed or updated manually -or by Visual Studio Code.

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+ +
+
+
+ + programs.vscode.mutableExtensionsDir + + +
+
+

Whether extensions can be installed or updated manually +or by Visual Studio Code.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.userSettings

Configuration written to Visual Studio Code’s -settings.json.

Type: -JSON value

Default: -{ }

Example:

{
-  "files.autoSave" = "off";
-  "[nix]"."editor.tabSize" = 2;
+
+
+
+
+ + programs.vscode.userSettings + + +
+
+

Configuration written to Visual Studio Code’s +settings.json.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
+  "files.autoSave" = "off";
+  "[nix]"."editor.tabSize" = 2;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.vscode.userTasks

Configuration written to Visual Studio Code’s -tasks.json.

Type: -JSON value

Default: -{ }

Example:

{
-  version = "2.0.0";
+
+
+
+
+ + programs.vscode.userTasks + + +
+
+

Configuration written to Visual Studio Code’s +tasks.json.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
+  version = "2.0.0";
   tasks = [
     {
-      type = "shell";
-      label = "Hello task";
-      command = "hello";
+      type = "shell";
+      label = "Hello task";
+      command = "hello";
     }
   ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/vscode.nix> -
programs.watson.enable

Whether to enable watson, a wonderful CLI to track your time.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.watson.enable + + +
+
+

Whether to enable watson, a wonderful CLI to track your time.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/watson.nix> -
programs.watson.enableBashIntegration

Whether to enable watson’s bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.watson.enableBashIntegration + + +
+
+

Whether to enable watson’s bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/watson.nix> -
programs.watson.enableFishIntegration

Whether to enable watson’s fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.watson.enableFishIntegration + + +
+
+

Whether to enable watson’s fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/watson.nix> -
programs.watson.enableZshIntegration

Whether to enable watson’s zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.watson.enableZshIntegration + + +
+
+

Whether to enable watson’s zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/watson.nix> -
programs.watson.package

Package providing the watson.

Type: -package

Default: -pkgs.watson

Declared by:

+
+ +
+
+
+ + programs.watson.package + + +
+
+

Package providing the watson.

+ +

Type: +package

+ +

Default: +pkgs.watson

+ +

Declared by:

+ +
+ <home-manager/modules/programs/watson.nix> -
programs.watson.settings

Configuration written to + +

+
+
+ + programs.watson.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/watson/config on Linux or -$HOME/Library/Application Support/watson/config on Darwin.

See https://github.com/TailorDev/Watson/blob/master/docs/user-guide/configuration.md -for an example configuration.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+$HOME/Library/Application Support/watson/config on Darwin.

See https://github.com/TailorDev/Watson/blob/master/docs/user-guide/configuration.md +for an example configuration.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   backend = {
-    url = "https://api.crick.fr";
-    token = "yourapitoken";
+    url = "https://api.crick.fr";
+    token = "yourapitoken";
   };
 
   options = {
     stop_on_start = true;
     stop_on_restart = false;
-    date_format = "%Y.%m.%d";
-    time_format = "%H:%M:%S%z";
-    week_start = "monday";
+    date_format = "%Y.%m.%d";
+    time_format = "%H:%M:%S%z";
+    week_start = "monday";
     log_current = false;
     pager = true;
     report_current = false;
@@ -11233,54 +46647,140 @@ attribute set of attribute set of (INI atom (null, bool, int, float or string))<
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/watson.nix> -
programs.waybar.enable

Whether to enable Waybar.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.waybar.enable + + +
+
+

Whether to enable Waybar.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/waybar.nix> -
programs.waybar.package

Waybar package to use. Set to null to use the default package.

Type: -package

Default: -pkgs.waybar

Declared by:

+
+ +
+
+
+ + programs.waybar.package + + +
+
+

Waybar package to use. Set to null to use the default package.

+ +

Type: +package

+ +

Default: +pkgs.waybar

+ +

Declared by:

+ +
+ <home-manager/modules/programs/waybar.nix> -
programs.waybar.settings

Configuration for Waybar, see https://github.com/Alexays/Waybar/wiki/Configuration -for supported values.

Type: -(list of (JSON value)) or attribute set of (JSON value)

Default: -[ ]

Example:

{
+
+
+
+
+ + programs.waybar.settings + + +
+
+

Configuration for Waybar, see https://github.com/Alexays/Waybar/wiki/Configuration +for supported values.

+ +

Type: +(list of (JSON value)) or attribute set of (JSON value)

+ +

Default: +[ ]

+ +

Example:

{
   mainBar = {
-    layer = "top";
-    position = "top";
+    layer = "top";
+    position = "top";
     height = 30;
     output = [
-      "eDP-1"
-      "HDMI-A-1"
+      "eDP-1"
+      "HDMI-A-1"
     ];
-    modules-left = [ "sway/workspaces" "sway/mode" "wlr/taskbar" ];
-    modules-center = [ "sway/window" "custom/hello-from-waybar" ];
-    modules-right = [ "mpd" "custom/mymodule#with-css-id" "temperature" ];
+    modules-left = [ "sway/workspaces" "sway/mode" "wlr/taskbar" ];
+    modules-center = [ "sway/window" "custom/hello-from-waybar" ];
+    modules-right = [ "mpd" "custom/mymodule#with-css-id" "temperature" ];
 
-    "sway/workspaces" = {
+    "sway/workspaces" = {
       disable-scroll = true;
       all-outputs = true;
     };
-    "custom/hello-from-waybar" = {
-      format = "hello {}";
+    "custom/hello-from-waybar" = {
+      format = "hello {}";
       max-length = 40;
-      interval = "once";
-      exec = pkgs.writeShellScript "hello-from-waybar" ''
-        echo "from within waybar"
-      '';
+      interval = "once";
+      exec = pkgs.writeShellScript "hello-from-waybar" ''
+        echo "from within waybar"
+      '';
     };
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/waybar.nix> -
programs.waybar.style

CSS style of the bar.

See https://github.com/Alexays/Waybar/wiki/Configuration -for the documentation.

If the value is set to a path literal, then the path will be used as the css file.

Type: -null or path or strings concatenated with “\n”

Default: -null

Example:

''
+
+
+
+
+ + programs.waybar.style + + +
+
+

CSS style of the bar.

See https://github.com/Alexays/Waybar/wiki/Configuration +for the documentation.

If the value is set to a path literal, then the path will be used as the css file.

+ +

Type: +null or path or strings concatenated with “\n”

+ +

Default: +null

+ +

Example:

''
   * {
     border: none;
     border-radius: 0;
@@ -11293,151 +46793,565 @@ null or path or strings concatenated with “\n”

#workspaces button { padding: 0 5px; } -'' -

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/waybar.nix> -
programs.waybar.systemd.enable

Whether to enable Waybar systemd integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.waybar.systemd.enable + + +
+
+

Whether to enable Waybar systemd integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/waybar.nix> -
programs.waybar.systemd.target

The systemd target that will automatically start the Waybar service.

When setting this value to "sway-session.target", + +

+
+
+ + programs.waybar.systemd.target + + +
+
+

The systemd target that will automatically start the Waybar service.

When setting this value to "sway-session.target", make sure to also enable wayland.windowManager.sway.systemd.enable, -otherwise the service may never be started.

Type: -string

Default: -"graphical-session.target"

Example: -"sway-session.target"

Declared by:

+
+otherwise the service may never be started.

+ +

Type: +string

+ +

Default: +"graphical-session.target"

+ +

Example: +"sway-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/waybar.nix> -
programs.wezterm.enable

Whether to enable wezterm.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.wezterm.enable + + +
+
+

Whether to enable wezterm.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wezterm.nix> -
programs.wezterm.enableBashIntegration

Whether to enable WezTerm’s Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.wezterm.enableBashIntegration + + +
+
+

Whether to enable WezTerm’s Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wezterm.nix> -
programs.wezterm.enableZshIntegration

Whether to enable WezTerm’s Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + programs.wezterm.enableZshIntegration + + +
+
+

Whether to enable WezTerm’s Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wezterm.nix> -
programs.wezterm.package

The Wezterm package to install.

Type: -package

Default: -pkgs.wezterm

Declared by:

+
+ +
+
+
+ + programs.wezterm.package + + +
+
+

The Wezterm package to install.

+ +

Type: +package

+ +

Default: +pkgs.wezterm

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wezterm.nix> -
programs.wezterm.colorSchemes

Attribute set of additional color schemes to be written to + +

+
+
+ + programs.wezterm.colorSchemes + + +
+
+

Attribute set of additional color schemes to be written to $XDG_CONFIG_HOME/wezterm/colors, where each key is taken as the name of the corresponding color scheme. See -https://wezfurlong.org/wezterm/config/appearance.html#defining-a-color-scheme-in-a-separate-file -for more details of the TOML color scheme format.

Type: -attribute set of (TOML value)

Default: -{ }

Example:

myCoolTheme = {
+https://wezfurlong.org/wezterm/config/appearance.html#defining-a-color-scheme-in-a-separate-file
+for more details of the TOML color scheme format.

+ +

Type: +attribute set of (TOML value)

+ +

Default: +{ }

+ +

Example:

myCoolTheme = {
   ansi = [
-    "#222222" "#D14949" "#48874F" "#AFA75A"
-    "#599797" "#8F6089" "#5C9FA8" "#8C8C8C"
+    "#222222" "#D14949" "#48874F" "#AFA75A"
+    "#599797" "#8F6089" "#5C9FA8" "#8C8C8C"
   ];
   brights = [
-    "#444444" "#FF6D6D" "#89FF95" "#FFF484"
-    "#97DDFF" "#FDAAF2" "#85F5DA" "#E9E9E9"
+    "#444444" "#FF6D6D" "#89FF95" "#FFF484"
+    "#97DDFF" "#FDAAF2" "#85F5DA" "#E9E9E9"
   ];
-  background = "#1B1B1B";
-  cursor_bg = "#BEAF8A";
-  cursor_border = "#BEAF8A";
-  cursor_fg = "#1B1B1B";
-  foreground = "#BEAF8A";
-  selection_bg = "#444444";
-  selection_fg = "#E9E9E9";
+  background = "#1B1B1B";
+  cursor_bg = "#BEAF8A";
+  cursor_border = "#BEAF8A";
+  cursor_fg = "#1B1B1B";
+  foreground = "#BEAF8A";
+  selection_bg = "#444444";
+  selection_fg = "#E9E9E9";
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/wezterm.nix> -
programs.wezterm.extraConfig

Extra configuration written to + +

+
+
+ + programs.wezterm.extraConfig + + +
+
+

Extra configuration written to $XDG_CONFIG_HOME/wezterm/wezterm.lua. See -https://wezfurlong.org/wezterm/config/files.html -how to configure.

Type: -strings concatenated with “\n”

Default:

''
+https://wezfurlong.org/wezterm/config/files.html
+how to configure.

+ +

Type: +strings concatenated with “\n”

+ +

Default:

''
   return {}
-''
-

Example:

-- Your lua code / config here
-local mylib = require 'mylib';
+''
+
+ +

Example:

-- Your lua code / config here
+local mylib = require 'mylib';
 return {
   usemylib = mylib.do_fun();
-  font = wezterm.font("JetBrains Mono"),
+  font = wezterm.font("JetBrains Mono"),
   font_size = 16.0,
-  color_scheme = "Tomorrow Night",
+  color_scheme = "Tomorrow Night",
   hide_tab_bar_if_only_one_tab = true,
-  default_prog = { "zsh", "--login", "-c", "tmux attach -t dev || tmux new -s dev" },
+  default_prog = { "zsh", "--login", "-c", "tmux attach -t dev || tmux new -s dev" },
   keys = {
-    {key="n", mods="SHIFT|CTRL", action="ToggleFullScreen"},
+    {key="n", mods="SHIFT|CTRL", action="ToggleFullScreen"},
   }
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/wezterm.nix> -
programs.wlogout.enable

Whether to enable wlogout.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.wlogout.enable + + +
+
+

Whether to enable wlogout.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.package

The wlogout package to use.

Type: -package

Default: -pkgs.wlogout

Declared by:

+
+ +
+
+
+ + programs.wlogout.package + + +
+
+

The wlogout package to use.

+ +

Type: +package

+ +

Default: +pkgs.wlogout

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout

Layout configuration for wlogout, see https://github.com/ArtsyMacaw/wlogout#config -for supported values.

Type: -list of (JSON value)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.wlogout.layout + + +
+
+

Layout configuration for wlogout, see https://github.com/ArtsyMacaw/wlogout#config +for supported values.

+ +

Type: +list of (JSON value)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    label = "shutdown";
-    action = "systemctl poweroff";
-    text = "Shutdown";
-    keybind = "s";
+    label = "shutdown";
+    action = "systemctl poweroff";
+    text = "Shutdown";
+    keybind = "s";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout.*.action

Command to execute when clicked.

Type: -path or string

Default: -""

Example: -"systemctl poweroff"

Declared by:

+
+ +
+
+
+ + programs.wlogout.layout.*.action + + +
+
+

Command to execute when clicked.

+ +

Type: +path or string

+ +

Default: +""

+ +

Example: +"systemctl poweroff"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout.*.circular

Make button circular.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.wlogout.layout.*.circular + + +
+
+

Make button circular.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout.*.height

Relative height of tile.

Type: -null or integer or floating point number between 0 and 1 (both inclusive)

Default: -null

Example: -0.5

Declared by:

+
+ +
+
+
+ + programs.wlogout.layout.*.height + + +
+
+

Relative height of tile.

+ +

Type: +null or integer or floating point number between 0 and 1 (both inclusive)

+ +

Default: +null

+ +

Example: +0.5

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout.*.keybind

Keyboard character to trigger this action.

Type: -string

Default: -""

Example: -"s"

Declared by:

+
+ +
+
+
+ + programs.wlogout.layout.*.keybind + + +
+
+

Keyboard character to trigger this action.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"s"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout.*.label

CSS label of button.

Type: -string

Default: -""

Example: -"shutdown"

Declared by:

+
+ +
+
+
+ + programs.wlogout.layout.*.label + + +
+
+

CSS label of button.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"shutdown"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout.*.text

Text displayed on button.

Type: -string

Default: -""

Example: -"Shutdown"

Declared by:

+
+ +
+
+
+ + programs.wlogout.layout.*.text + + +
+
+

Text displayed on button.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"Shutdown"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.layout.*.width

Relative width of tile.

Type: -null or integer or floating point number between 0 and 1 (both inclusive)

Default: -null

Example: -0.5

Declared by:

+
+ +
+
+
+ + programs.wlogout.layout.*.width + + +
+
+

Relative width of tile.

+ +

Type: +null or integer or floating point number between 0 and 1 (both inclusive)

+ +

Default: +null

+ +

Example: +0.5

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wlogout.style

CSS style of the bar.

See https://github.com/ArtsyMacaw/wlogout#style -for the documentation.

If the value is set to a path literal, then the path will be used as the css file.

Type: -null or path or string

Default: -null

Example:

''
+
+
+
+
+ + programs.wlogout.style + + +
+
+

CSS style of the bar.

See https://github.com/ArtsyMacaw/wlogout#style +for the documentation.

If the value is set to a path literal, then the path will be used as the css file.

+ +

Type: +null or path or string

+ +

Default: +null

+ +

Example:

''
   window {
     background: #16191C;
   }
@@ -11445,33 +47359,119 @@ null or path or string

Default: button { color: #AAB2BF; } -'' -

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/wlogout.nix> -
programs.wofi.enable

Whether to enable wofi: a launcher/menu program for wlroots based wayland compositors such as sway.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.wofi.enable + + +
+
+

Whether to enable wofi: a launcher/menu program for wlroots based wayland compositors such as sway.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wofi.nix> -
programs.wofi.package

The wofi package to use.

Type: -package

Default: -pkgs.wofi

Declared by:

+
+ +
+
+
+ + programs.wofi.package + + +
+
+

The wofi package to use.

+ +

Type: +package

+ +

Default: +pkgs.wofi

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wofi.nix> -
programs.wofi.settings

Configuration options for wofi. See -wofi(5).

Type: -attribute set

Default: -{ }

Example:

{
-  location = "bottom-right";
+
+
+
+
+ + programs.wofi.settings + + +
+
+

Configuration options for wofi. See +wofi(5).

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example:

{
+  location = "bottom-right";
   allow_markup = true;
   width = 250;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/wofi.nix> -
programs.wofi.style

CSS style for wofi to use as a stylesheet. See -wofi(7).

Type: -null or string

Default: -null

Example:

''
+
+
+
+
+ + programs.wofi.style + + +
+
+

CSS style for wofi to use as a stylesheet. See +wofi(7).

+ +

Type: +null or string

+ +

Default: +null

+ +

Example:

''
   * {
       font-family: monospace;
   }
@@ -11479,1033 +47479,4449 @@ null or string

Default: window { background-color: #7c818c; } -'' -

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/wofi.nix> -
programs.wpaperd.enable

Whether to enable wpaperd.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.wpaperd.enable + + +
+
+

Whether to enable wpaperd.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wpaperd.nix> -
programs.wpaperd.package

The wpaperd package to use.

Type: -package

Default: -pkgs.wpaperd

Declared by:

+
+ +
+
+
+ + programs.wpaperd.package + + +
+
+

The wpaperd package to use.

+ +

Type: +package

+ +

Default: +pkgs.wpaperd

+ +

Declared by:

+ +
+ <home-manager/modules/programs/wpaperd.nix> -
programs.wpaperd.settings

Configuration written to + +

+
+
+ + programs.wpaperd.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/wpaperd/wallpaper.toml. -See https://github.com/danyspin97/wpaperd#wallpaper-configuration -for the full list of options.

Type: -TOML value

Default: -{ }

Example:

{
+See https://github.com/danyspin97/wpaperd#wallpaper-configuration
+for the full list of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   eDP-1 = {
-    path = "/home/foo/Pictures/Wallpaper";
+    path = "/home/foo/Pictures/Wallpaper";
     apply-shadow = true;
   };
   DP-2 = {
-    path = "/home/foo/Pictures/Anime";
-    sorting = "descending";
+    path = "/home/foo/Pictures/Anime";
+    sorting = "descending";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/wpaperd.nix> -
programs.xmobar.enable

Whether to enable Xmobar, a minimalistic status bar.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.xmobar.enable + + +
+
+

Whether to enable Xmobar, a minimalistic status bar.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/xmobar.nix> -
programs.xmobar.package

Package providing the xmobar binary.

Type: -package

Default: -pkgs.haskellPackages.xmobar

Declared by:

+
+ +
+
+
+ + programs.xmobar.package + + +
+
+

Package providing the xmobar binary.

+ +

Type: +package

+ +

Default: +pkgs.haskellPackages.xmobar

+ +

Declared by:

+ +
+ <home-manager/modules/programs/xmobar.nix> -
programs.xmobar.extraConfig

Extra configuration lines to add to + +

+
+
+ + programs.xmobar.extraConfig + + +
+
+

Extra configuration lines to add to $XDG_CONFIG_HOME/xmobar/.xmobarrc. See -https://xmobar.org/#configuration -for options.

Type: -strings concatenated with “\n”

Default: -""

Example:

Config
-  { font        = "Fira Code"
-  , borderColor = "#d0d0d0"
+https://xmobar.org/#configuration
+for options.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

Config
+  { font        = "Fira Code"
+  , borderColor = "#d0d0d0"
   , border      = FullB
   , borderWidth = 3
-  , bgColor     = "#222"
-  , fgColor     = "grey"
+  , bgColor     = "#222"
+  , fgColor     = "grey"
   , position    = TopSize C 99 30
   , commands    =
-      [ Run Cpu ["-t", "cpu: <fc=#4eb4fa><bar> <total>%</fc>"] 10
-      , Run Network "enp3s0" ["-S", "True", "-t", "eth: <fc=#4eb4fa><rx></fc>/<fc=#4eb4fa><tx></fc>"] 10
-      , Run Memory ["-t","mem: <fc=#4eb4fa><usedbar> <usedratio>%</fc>"] 10
-      , Run Date "date: <fc=#4eb4fa>%a %d %b %Y %H:%M:%S </fc>" "date" 10
+      [ Run Cpu ["-t", "cpu: <fc=#4eb4fa><bar> <total>%</fc>"] 10
+      , Run Network "enp3s0" ["-S", "True", "-t", "eth: <fc=#4eb4fa><rx></fc>/<fc=#4eb4fa><tx></fc>"] 10
+      , Run Memory ["-t","mem: <fc=#4eb4fa><usedbar> <usedratio>%</fc>"] 10
+      , Run Date "date: <fc=#4eb4fa>%a %d %b %Y %H:%M:%S </fc>" "date" 10
       , Run StdinReader
       ]
-  , sepChar     = "%"
-  , alignSep    = "}{"
-  , template    = "  %StdinReader% | %cpu% | %memory% | %enp3s0%  }{%date%  "
+  , sepChar     = "%"
+  , alignSep    = "}{"
+  , template    = "  %StdinReader% | %cpu% | %memory% | %enp3s0%  }{%date%  "
   }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/xmobar.nix> -
programs.xplr.enable

Whether to enable xplr, terminal UI based file explorer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.xplr.enable + + +
+
+

Whether to enable xplr, terminal UI based file explorer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/xplr.nix> -
programs.xplr.package

The xplr package to use.

Type: -package

Default: -pkgs.xplr

Declared by:

+
+ +
+
+
+ + programs.xplr.package + + +
+
+

The xplr package to use.

+ +

Type: +package

+ +

Default: +pkgs.xplr

+ +

Declared by:

+ +
+ <home-manager/modules/programs/xplr.nix> -
programs.xplr.extraConfig

Extra xplr configuration.

Type: -strings concatenated with “\n”

Default: -""

Example:

require("wl-clipboard").setup {
-  copy_command = "wl-copy -t text/uri-list",
-  paste_command = "wl-paste",
+
+
+
+
+ + programs.xplr.extraConfig + + +
+
+

Extra xplr configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

require("wl-clipboard").setup {
+  copy_command = "wl-copy -t text/uri-list",
+  paste_command = "wl-paste",
   keep_selection = true,
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/xplr.nix> -
programs.xplr.plugins

Plugins to be added to your configuration file.

Must be a package, an absolute plugin path, or string to be recognized + +

+
+
+ + programs.xplr.plugins + + +
+
+

Plugins to be added to your configuration file.

Must be a package, an absolute plugin path, or string to be recognized by xplr. Paths will be relative to -$XDG_CONFIG_HOME/xplr/init.lua unless they are absolute.

Type: -null or (list of (package or string))

Default: -[]

Declared by:

+
+$XDG_CONFIG_HOME/xplr/init.lua unless they are absolute.

+ +

Type: +null or (list of (package or string))

+ +

Default: +[]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/xplr.nix> -
programs.yazi.enable

Whether to enable yazi.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.yazi.enable + + +
+
+

Whether to enable yazi.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.yazi.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.yazi.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.yazi.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.yazi.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.package

Yazi package to install.

Type: -package

Default: -pkgs.yazi

Declared by:

+
+ +
+
+
+ + programs.yazi.package + + +
+
+

Yazi package to install.

+ +

Type: +package

+ +

Default: +pkgs.yazi

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.keymap

Configuration written to -$XDG_CONFIG_HOME/yazi/keymap.toml.

See https://yazi-rs.github.io/docs/configuration/keymap -for the full list of options.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.yazi.keymap + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/yazi/keymap.toml.

See https://yazi-rs.github.io/docs/configuration/keymap +for the full list of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   input.keymap = [
-    { exec = "close"; on = [ "<C-q>" ]; }
-    { exec = "close --submit"; on = [ "<Enter>" ]; }
-    { exec = "escape"; on = [ "<Esc>" ]; }
-    { exec = "backspace"; on = [ "<Backspace>" ]; }
+    { exec = "close"; on = [ "<C-q>" ]; }
+    { exec = "close --submit"; on = [ "<Enter>" ]; }
+    { exec = "escape"; on = [ "<Esc>" ]; }
+    { exec = "backspace"; on = [ "<Backspace>" ]; }
   ];
   manager.keymap = [
-    { exec = "escape"; on = [ "<Esc>" ]; }
-    { exec = "quit"; on = [ "q" ]; }
-    { exec = "close"; on = [ "<C-q>" ]; }
+    { exec = "escape"; on = [ "<Esc>" ]; }
+    { exec = "quit"; on = [ "q" ]; }
+    { exec = "close"; on = [ "<C-q>" ]; }
   ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.settings

Configuration written to -$XDG_CONFIG_HOME/yazi/yazi.toml.

See https://yazi-rs.github.io/docs/configuration/yazi -for the full list of options.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.yazi.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/yazi/yazi.toml.

See https://yazi-rs.github.io/docs/configuration/yazi +for the full list of options.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   log = {
     enabled = false;
   };
   manager = {
     show_hidden = false;
-    sort_by = "modified";
+    sort_by = "modified";
     sort_dir_first = true;
     sort_reverse = true;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yazi.theme

Configuration written to -$XDG_CONFIG_HOME/yazi/theme.toml.

See https://yazi-rs.github.io/docs/configuration/theme -for the full list of options

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + programs.yazi.theme + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/yazi/theme.toml.

See https://yazi-rs.github.io/docs/configuration/theme +for the full list of options

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   filetype = {
     rules = [
-      { fg = "#7AD9E5"; mime = "image/*"; }
-      { fg = "#F3D398"; mime = "video/*"; }
-      { fg = "#F3D398"; mime = "audio/*"; }
-      { fg = "#CD9EFC"; mime = "application/x-bzip"; }
+      { fg = "#7AD9E5"; mime = "image/*"; }
+      { fg = "#F3D398"; mime = "video/*"; }
+      { fg = "#F3D398"; mime = "audio/*"; }
+      { fg = "#CD9EFC"; mime = "application/x-bzip"; }
     ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/yazi.nix> -
programs.yt-dlp.enable

Whether to enable yt-dlp.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.yt-dlp.enable + + +
+
+

Whether to enable yt-dlp.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yt-dlp.nix> -
programs.yt-dlp.package

Package providing the yt-dlp tool.

Type: -package

Default: -pkgs.yt-dlp

Declared by:

+
+ +
+
+
+ + programs.yt-dlp.package + + +
+
+

Package providing the yt-dlp tool.

+ +

Type: +package

+ +

Default: +pkgs.yt-dlp

+ +

Declared by:

+ +
+ <home-manager/modules/programs/yt-dlp.nix> -
programs.yt-dlp.extraConfig

Extra configuration to add to -$XDG_CONFIG_HOME/yt-dlp/config.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.yt-dlp.extraConfig + + +
+
+

Extra configuration to add to +$XDG_CONFIG_HOME/yt-dlp/config.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   --update
   -F
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/yt-dlp.nix> -
programs.yt-dlp.settings

Configuration written to + +

+
+
+ + programs.yt-dlp.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/yt-dlp/config.

Options must be specified in their “long form”, for example, update = true; instead of U = true;. Short options can be specified in the extraConfig option. -See https://github.com/yt-dlp/yt-dlp#configuration -for explanation about possible values.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
+See https://github.com/yt-dlp/yt-dlp#configuration
+for explanation about possible values.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
   embed-thumbnail = true;
   embed-subs = true;
-  sub-langs = "all";
-  downloader = "aria2c";
-  downloader-args = "aria2c:'-c -x8 -s8 -k1M'";
+  sub-langs = "all";
+  downloader = "aria2c";
+  downloader-args = "aria2c:'-c -x8 -s8 -k1M'";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/yt-dlp.nix> -
programs.z-lua.enable

Whether to enable z.lua.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.z-lua.enable + + +
+
+

Whether to enable z.lua.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/z-lua.nix> -
programs.z-lua.enableAliases

Whether to enable recommended z.lua aliases.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + programs.z-lua.enableAliases + + +
+
+

Whether to enable recommended z.lua aliases.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/z-lua.nix> -
programs.z-lua.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.z-lua.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/z-lua.nix> -
programs.z-lua.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.z-lua.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/z-lua.nix> -
programs.z-lua.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.z-lua.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/z-lua.nix> -
programs.z-lua.options

List of options to pass to z.lua.

Type: -list of string

Default: -[ ]

Example:

[
-  "enhanced"
-  "once"
-  "fzf"
+
+
+
+
+ + programs.z-lua.options + + +
+
+

List of options to pass to z.lua.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "enhanced"
+  "once"
+  "fzf"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/z-lua.nix> -
programs.zathura.enable

Whether to enable Zathura, a highly customizable and functional document viewer -focused on keyboard interaction.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zathura.enable + + +
+
+

Whether to enable Zathura, a highly customizable and functional document viewer +focused on keyboard interaction.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zathura.nix> -
programs.zathura.package

The Zathura package to use

Type: -package

Default: -"pkgs.zathura"

Declared by:

+
+ +
+
+
+ + programs.zathura.package + + +
+
+

The Zathura package to use

+ +

Type: +package

+ +

Default: +"pkgs.zathura"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zathura.nix> -
programs.zathura.extraConfig

Additional commands for zathura that will be added to the -zathurarc file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zathura.extraConfig + + +
+
+

Additional commands for zathura that will be added to the +zathurarc file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zathura.nix> -
programs.zathura.mappings

Add :map mappings to zathura and make + +

+
+
+ + programs.zathura.mappings + + +
+
+

Add :map mappings to zathura and make them permanent. See zathurarc(5) for the full list of possible mappings.

You can create a mode-specific mapping by specifying the mode before the key: -"[normal] <C-b>" = "scroll left";

Type: -attribute set of string

Default: -{ }

Example:

{
-  "<Right>" = "navigate next";
-  D = "toggle_page_mode";
-  "[fullscreen] <C-i>" = "zoom in";
+"[normal] <C-b>" = "scroll left";

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "<Right>" = "navigate next";
+  D = "toggle_page_mode";
+  "[fullscreen] <C-i>" = "zoom in";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zathura.nix> -
programs.zathura.options

Add :set command options to zathura and make + +

+
+
+ + programs.zathura.options + + +
+
+

Add :set command options to zathura and make them permanent. See zathurarc(5) -for the full list of options.

Type: -attribute set of (string or boolean or signed integer)

Default: -{ }

Example:

{
-  default-bg = "#000000";
-  default-fg = "#FFFFFF";
+for the full list of options.

+ +

Type: +attribute set of (string or boolean or signed integer)

+ +

Default: +{ }

+ +

Example:

{
+  default-bg = "#000000";
+  default-fg = "#FFFFFF";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zathura.nix> -
programs.zellij.enable

Whether to enable zellij.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zellij.enable + + +
+
+

Whether to enable zellij.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zellij.nix> -
programs.zellij.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zellij.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zellij.nix> -
programs.zellij.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zellij.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zellij.nix> -
programs.zellij.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zellij.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zellij.nix> -
programs.zellij.package

The zellij package to install.

Type: -package

Default: -pkgs.zellij

Declared by:

+
+ +
+
+
+ + programs.zellij.package + + +
+
+

The zellij package to install.

+ +

Type: +package

+ +

Default: +pkgs.zellij

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zellij.nix> -
programs.zellij.settings

Configuration written to -$XDG_CONFIG_HOME/zellij/config.yaml.

See https://zellij.dev/documentation for the full -list of options.

Type: -YAML value

Default: -{ }

Example:

{
-  theme = "custom";
-  themes.custom.fg = "#ffffff";
+
+
+
+
+ + programs.zellij.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/zellij/config.yaml.

See https://zellij.dev/documentation for the full +list of options.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
+  theme = "custom";
+  themes.custom.fg = "#ffffff";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zellij.nix> -
programs.zoxide.enable

Whether to enable zoxide.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zoxide.enable + + +
+
+

Whether to enable zoxide.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zoxide.nix> -
programs.zoxide.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.zoxide.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zoxide.nix> -
programs.zoxide.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.zoxide.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zoxide.nix> -
programs.zoxide.enableNushellIntegration

Whether to enable Nushell integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.zoxide.enableNushellIntegration + + +
+
+

Whether to enable Nushell integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zoxide.nix> -
programs.zoxide.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.zoxide.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zoxide.nix> -
programs.zoxide.package

Zoxide package to install.

Type: -package

Default: -pkgs.zoxide

Declared by:

+
+ +
+
+
+ + programs.zoxide.package + + +
+
+

Zoxide package to install.

+ +

Type: +package

+ +

Default: +pkgs.zoxide

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zoxide.nix> -
programs.zoxide.options

List of options to pass to zoxide.

Type: -list of string

Default: -[ ]

Example:

[
-  "--no-aliases"
+
+
+
+
+ + programs.zoxide.options + + +
+
+

List of options to pass to zoxide.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--no-aliases"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zoxide.nix> -
programs.zsh.enable

Whether to enable Z shell (Zsh).

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.enable + + +
+
+

Whether to enable Z shell (Zsh).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.enableAutosuggestions

Enable zsh autosuggestions

Type: -unspecified value

Default: -false

Declared by:

+
+ +
+
+
+ + programs.zsh.enableAutosuggestions + + +
+
+

Enable zsh autosuggestions

+ +

Type: +unspecified value

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.enableCompletion

Enable zsh completion. Don’t forget to add

  environment.pathsToLink = [ "/share/zsh" ];
-

to your system configuration to get completion for system packages (e.g. systemd).

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.enableCompletion + + +
+
+

Enable zsh completion. Don’t forget to add

  environment.pathsToLink = [ "/share/zsh" ];
+

to your system configuration to get completion for system packages (e.g. systemd).

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.enableVteIntegration

Whether to enable integration with terminals using the VTE + +

+
+
+ + programs.zsh.enableVteIntegration + + +
+
+

Whether to enable integration with terminals using the VTE library. This will let the terminal track the current working -directory.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+directory.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/vte.nix> -
programs.zsh.package

The zsh package to use.

Type: -package

Default: -pkgs.zsh

Declared by:

+
+ +
+
+
+ + programs.zsh.package + + +
+
+

The zsh package to use.

+ +

Type: +package

+ +

Default: +pkgs.zsh

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.antidote.enable

Whether to enable antidote - a zsh plugin manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.antidote.enable + + +
+
+

Whether to enable antidote - a zsh plugin manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/antidote.nix> -
programs.zsh.antidote.package

The antidote package to use.

Type: -package

Default: -pkgs.antidote

Declared by:

+
+ +
+
+
+ + programs.zsh.antidote.package + + +
+
+

The antidote package to use.

+ +

Type: +package

+ +

Default: +pkgs.antidote

+ +

Declared by:

+ +
+ <home-manager/modules/programs/antidote.nix> -
programs.zsh.antidote.plugins

List of antidote plugins.

Type: -list of string

Default: -[ ]

Example:

[
-  "zsh-users/zsh-autosuggestions"
+
+
+
+
+ + programs.zsh.antidote.plugins + + +
+
+

List of antidote plugins.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "zsh-users/zsh-autosuggestions"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/antidote.nix> -
programs.zsh.antidote.useFriendlyNames

Whether to enable friendly names.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.antidote.useFriendlyNames + + +
+
+

Whether to enable friendly names.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/antidote.nix> -
programs.zsh.autocd

Automatically enter into a directory if typed directly into shell.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + programs.zsh.autocd + + +
+
+

Automatically enter into a directory if typed directly into shell.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.cdpath

List of paths to autocomplete calls to cd.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.zsh.cdpath + + +
+
+

List of paths to autocomplete calls to cd.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.completionInit

Initialization commands to run when completion is enabled.

Type: -strings concatenated with “\n”

Default: -"autoload -U compinit && compinit"

Declared by:

+
+ +
+
+
+ + programs.zsh.completionInit + + +
+
+

Initialization commands to run when completion is enabled.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +"autoload -U compinit && compinit"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.defaultKeymap

The default base keymap to use.

Type: -null or one of “emacs”, “vicmd”, “viins”

Default: -null

Example: -"emacs"

Declared by:

+
+ +
+
+
+ + programs.zsh.defaultKeymap + + +
+
+

The default base keymap to use.

+ +

Type: +null or one of “emacs”, “vicmd”, “viins”

+ +

Default: +null

+ +

Example: +"emacs"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.dirHashes

An attribute set that adds to named directory hash table.

Type: -attribute set of string

Default: -{ }

Example:

{
-  docs  = "$HOME/Documents";
-  vids  = "$HOME/Videos";
-  dl    = "$HOME/Downloads";
+
+
+
+
+ + programs.zsh.dirHashes + + +
+
+

An attribute set that adds to named directory hash table.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  docs  = "$HOME/Documents";
+  vids  = "$HOME/Videos";
+  dl    = "$HOME/Downloads";
 }
 
-

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.dotDir

Directory where the zsh configuration and more should be located, -relative to the users home directory. The default is the home -directory.

Type: -null or string

Default: -null

Example: -".config/zsh"

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.envExtra

Extra commands that should be added to .zshenv.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history

Options related to commands history configuration.

Type: -submodule

Default: -{ }

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history.expireDuplicatesFirst

Expire duplicates first.

Type: -boolean

Default: -false

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history.extended

Save timestamp into the history file.

Type: -boolean

Default: -false

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history.ignoreAllDups

If a new command line being added to the history list -duplicates an older one, the older command is removed -from the list (even if it is not the previous event).

Type: -boolean

Default: -false

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history.ignoreDups

Do not enter command lines into the history list -if they are duplicates of the previous event.

Type: -boolean

Default: -true

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history.ignorePatterns

Do not enter command lines into the history list -if they match any one of the given shell patterns.

Type: -list of string

Default: -[ ]

Example: -[ "rm *" "pkill *" ]

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history.ignoreSpace

Do not enter command lines into the history list -if the first character is a space.

Type: -boolean

Default: -true

Declared by:

-<home-manager/modules/programs/zsh.nix> -
programs.zsh.history.path

History file location

Type: -string

Default:

"$HOME/.zsh_history" if state version ≥ 20.03,
-"$ZDOTDIR/.zsh_history" otherwise
+
-

Example: -"${config.xdg.dataHome}/zsh/zsh_history"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.history.save

Number of history lines to save.

Type: -signed integer

Default: -10000

Declared by:

+
+ +
+
+
+ + programs.zsh.dotDir + + +
+
+

Directory where the zsh configuration and more should be located, +relative to the users home directory. The default is the home +directory.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +".config/zsh"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.history.share

Share command history between zsh sessions.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.envExtra + + +
+
+

Extra commands that should be added to .zshenv.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.history.size

Number of history lines to keep.

Type: -signed integer

Default: -10000

Declared by:

+
+ +
+
+
+ + programs.zsh.history + + +
+
+

Options related to commands history configuration.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.historySubstringSearch

Options related to zsh-history-substring-search.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.zsh.history.expireDuplicatesFirst + + +
+
+

Expire duplicates first.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.historySubstringSearch.enable

Whether to enable history substring search.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.history.extended + + +
+
+

Save timestamp into the history file.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.historySubstringSearch.searchDownKey

The key codes to be used when searching down. + +

+
+
+ + programs.zsh.history.ignoreAllDups + + +
+
+

If a new command line being added to the history list +duplicates an older one, the older command is removed +from the list (even if it is not the previous event).

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.history.ignoreDups + + +
+
+

Do not enter command lines into the history list +if they are duplicates of the previous event.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.history.ignorePatterns + + +
+
+

Do not enter command lines into the history list +if they match any one of the given shell patterns.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +[ "rm *" "pkill *" ]

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.history.ignoreSpace + + +
+
+

Do not enter command lines into the history list +if the first character is a space.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.history.path + + +
+
+

History file location

+ +

Type: +string

+ +

Default:

"$HOME/.zsh_history" if state version ≥ 20.03,
+"$ZDOTDIR/.zsh_history" otherwise
+
+
+ +

Example: +"${config.xdg.dataHome}/zsh/zsh_history"

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.history.save + + +
+
+

Number of history lines to save.

+ +

Type: +signed integer

+ +

Default: +10000

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.history.share + + +
+
+

Share command history between zsh sessions.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.history.size + + +
+
+

Number of history lines to keep.

+ +

Type: +signed integer

+ +

Default: +10000

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.historySubstringSearch + + +
+
+

Options related to zsh-history-substring-search.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.historySubstringSearch.enable + + +
+
+

Whether to enable history substring search.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/zsh.nix> + +
+
+
+ + programs.zsh.historySubstringSearch.searchDownKey + + +
+
+

The key codes to be used when searching down. The default of ^[[B may correspond to the DOWN key – if not, try -$terminfo[kcud1].

Type: -(list of string) or string

Default:

[
-  "^[[B"
+$terminfo[kcud1].

+ +

Type: +(list of string) or string

+ +

Default:

[
+  "^[[B"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.historySubstringSearch.searchUpKey

The key codes to be used when searching up. + +

+
+
+ + programs.zsh.historySubstringSearch.searchUpKey + + +
+
+

The key codes to be used when searching up. The default of ^[[A may correspond to the UP key – if not, try -$terminfo[kcuu1].

Type: -(list of string) or string

Default:

[
-  "^[[A"
+$terminfo[kcuu1].

+ +

Type: +(list of string) or string

+ +

Default:

[
+  "^[[A"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.initExtra

Extra commands that should be added to .zshrc.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zsh.initExtra + + +
+
+

Extra commands that should be added to .zshrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.initExtraBeforeCompInit

Extra commands that should be added to .zshrc before compinit.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zsh.initExtraBeforeCompInit + + +
+
+

Extra commands that should be added to .zshrc before compinit.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.initExtraFirst

Commands that should be added to top of .zshrc.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zsh.initExtraFirst + + +
+
+

Commands that should be added to top of .zshrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.localVariables

Extra local variables defined at the top of .zshrc.

Type: -attribute set

Default: -{ }

Example:

{
+
+
+
+
+ + programs.zsh.localVariables + + +
+
+

Extra local variables defined at the top of .zshrc.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example:

{
   POWERLEVEL9K_LEFT_PROMPT_ELEMENTS = [
-    "dir"
-    "vcs"
+    "dir"
+    "vcs"
   ];
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.loginExtra

Extra commands that should be added to .zlogin.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zsh.loginExtra + + +
+
+

Extra commands that should be added to .zlogin.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.logoutExtra

Extra commands that should be added to .zlogout.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zsh.logoutExtra + + +
+
+

Extra commands that should be added to .zlogout.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.oh-my-zsh

Options to configure oh-my-zsh.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.zsh.oh-my-zsh + + +
+
+

Options to configure oh-my-zsh.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.oh-my-zsh.enable

Whether to enable oh-my-zsh.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.oh-my-zsh.enable + + +
+
+

Whether to enable oh-my-zsh.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.oh-my-zsh.package

The oh-my-zsh package to use.

Type: -package

Default: -pkgs.oh-my-zsh

Declared by:

+
+ +
+
+
+ + programs.zsh.oh-my-zsh.package + + +
+
+

The oh-my-zsh package to use.

+ +

Type: +package

+ +

Default: +pkgs.oh-my-zsh

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.oh-my-zsh.custom

Path to a custom oh-my-zsh package to override config of -oh-my-zsh. See https://github.com/robbyrussell/oh-my-zsh/wiki/Customization -for more information.

Type: -string

Default: -""

Example: -"$HOME/my_customizations"

Declared by:

+
+ +
+
+
+ + programs.zsh.oh-my-zsh.custom + + +
+
+

Path to a custom oh-my-zsh package to override config of +oh-my-zsh. See https://github.com/robbyrussell/oh-my-zsh/wiki/Customization +for more information.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"$HOME/my_customizations"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.oh-my-zsh.extraConfig

Extra settings for plugins.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + programs.zsh.oh-my-zsh.extraConfig + + +
+
+

Extra settings for plugins.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   zstyle :omz:plugins:ssh-agent identities id_rsa id_rsa2 id_github
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.oh-my-zsh.plugins

List of oh-my-zsh plugins

Type: -list of string

Default: -[ ]

Example:

[
-  "git"
-  "sudo"
+
+
+
+
+ + programs.zsh.oh-my-zsh.plugins + + +
+
+

List of oh-my-zsh plugins

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "git"
+  "sudo"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.oh-my-zsh.theme

Name of the theme to be used by oh-my-zsh.

Type: -string

Default: -""

Example: -"robbyrussell"

Declared by:

+
+ +
+
+
+ + programs.zsh.oh-my-zsh.theme + + +
+
+

Name of the theme to be used by oh-my-zsh.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"robbyrussell"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.plugins

Plugins to source in .zshrc.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + programs.zsh.plugins + + +
+
+

Plugins to source in .zshrc.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
     # will source zsh-autosuggestions.plugin.zsh
-    name = "zsh-autosuggestions";
+    name = "zsh-autosuggestions";
     src = pkgs.fetchFromGitHub {
-      owner = "zsh-users";
-      repo = "zsh-autosuggestions";
-      rev = "v0.4.0";
-      sha256 = "0z6i9wjjklb4lvr7zjhbphibsyx51psv50gm07mbb0kj9058j6kc";
+      owner = "zsh-users";
+      repo = "zsh-autosuggestions";
+      rev = "v0.4.0";
+      sha256 = "0z6i9wjjklb4lvr7zjhbphibsyx51psv50gm07mbb0kj9058j6kc";
     };
   }
   {
-    name = "enhancd";
-    file = "init.sh";
+    name = "enhancd";
+    file = "init.sh";
     src = pkgs.fetchFromGitHub {
-      owner = "b4b4r07";
-      repo = "enhancd";
-      rev = "v2.2.1";
-      sha256 = "0iqa9j09fwm6nj5rpip87x3hnvbbz9w9ajgm6wkrd5fls8fn8i5g";
+      owner = "b4b4r07";
+      repo = "enhancd";
+      rev = "v2.2.1";
+      sha256 = "0iqa9j09fwm6nj5rpip87x3hnvbbz9w9ajgm6wkrd5fls8fn8i5g";
     };
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.plugins.*.file

The plugin script to source.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.zsh.plugins.*.file + + +
+
+

The plugin script to source.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.plugins.*.name

The name of the plugin.

Don’t forget to add file -if the script name does not follow convention.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.zsh.plugins.*.name + + +
+
+

The name of the plugin.

Don’t forget to add file +if the script name does not follow convention.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.plugins.*.src

Path to the plugin folder.

Will be added to fpath and PATH.

Type: -path

Declared by:

+
+ +
+
+
+ + programs.zsh.plugins.*.src + + +
+
+

Path to the plugin folder.

Will be added to fpath and PATH.

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.prezto

Options to configure prezto.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto + + +
+
+

Options to configure prezto.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.enable

Whether to enable prezto.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.enable + + +
+
+

Whether to enable prezto.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.autosuggestions.color

Set the query found color.

Type: -null or string

Default: -null

Example: -"fg=blue"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.autosuggestions.color + + +
+
+

Set the query found color.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fg=blue"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.caseSensitive

Set case-sensitivity for completion, history lookup, etc.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.caseSensitive + + +
+
+

Set case-sensitivity for completion, history lookup, etc.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.color

Color output (automatically set to false on dumb terminals).

Type: -null or boolean

Default: -true

Example: -false

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.color + + +
+
+

Color output (automatically set to false on dumb terminals).

+ +

Type: +null or boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.completions.ignoredHosts

Set the entries to ignore in static /etc/hosts for -host completion.

Type: -list of string

Default: -[ ]

Example:

[
-  "0.0.0.0"
-  "127.0.0.1"
+
+
+
+
+ + programs.zsh.prezto.completions.ignoredHosts + + +
+
+

Set the entries to ignore in static /etc/hosts for +host completion.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "0.0.0.0"
+  "127.0.0.1"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.editor.dotExpansion

Automatically convert .... to ../..

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.editor.dotExpansion + + +
+
+

Automatically convert .... to ../..

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.editor.keymap

Set the key mapping style to emacs or vi.

Type: -null or one of “emacs”, “vi”

Default: -"emacs"

Example: -"vi"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.editor.keymap + + +
+
+

Set the key mapping style to emacs or vi.

+ +

Type: +null or one of “emacs”, “vi”

+ +

Default: +"emacs"

+ +

Example: +"vi"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.editor.promptContext

Allow the Zsh prompt context to be shown.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.editor.promptContext + + +
+
+

Allow the Zsh prompt context to be shown.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.extraConfig

Additional configuration to add to .zpreztorc.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.extraConfig + + +
+
+

Additional configuration to add to .zpreztorc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.extraFunctions

Set the Zsh functions to load (zshcontrib(1)).

Type: -list of string

Default: -[ ]

Example:

[
-  "zargs"
-  "zmv"
+
+
+
+
+ + programs.zsh.prezto.extraFunctions + + +
+
+

Set the Zsh functions to load (zshcontrib(1)).

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "zargs"
+  "zmv"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.extraModules

Set the Zsh modules to load (zshmodules(1)).

Type: -list of string

Default: -[ ]

Example:

[
-  "attr"
-  "stat"
+
+
+
+
+ + programs.zsh.prezto.extraModules + + +
+
+

Set the Zsh modules to load (zshmodules(1)).

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "attr"
+  "stat"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.git.submoduleIgnore

Ignore submodules when they are dirty, untracked, all, -or none.

Type: -null or one of “dirty”, “untracked”, “all”, “none”

Default: -null

Example: -"all"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.git.submoduleIgnore + + +
+
+

Ignore submodules when they are dirty, untracked, all, +or none.

+ +

Type: +null or one of “dirty”, “untracked”, “all”, “none”

+ +

Default: +null

+ +

Example: +"all"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.gnuUtility.prefix

Set the command prefix on non-GNU systems.

Type: -null or string

Default: -null

Example: -"g"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.gnuUtility.prefix + + +
+
+

Set the command prefix on non-GNU systems.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"g"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.historySubstring.foundColor

Set the query found color.

Type: -null or string

Default: -null

Example: -"fg=blue"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.historySubstring.foundColor + + +
+
+

Set the query found color.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fg=blue"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.historySubstring.globbingFlags

Set the search globbing flags.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.historySubstring.globbingFlags + + +
+
+

Set the search globbing flags.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.historySubstring.notFoundColor

Set the query not found color.

Type: -null or string

Default: -null

Example: -"fg=red"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.historySubstring.notFoundColor + + +
+
+

Set the query not found color.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"fg=red"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.macOS.dashKeyword

Set the keyword used by mand to open man pages -in Dash.app.

Type: -null or string

Default: -null

Example: -"manpages"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.macOS.dashKeyword + + +
+
+

Set the keyword used by mand to open man pages +in Dash.app.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"manpages"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.pmoduleDirs

Add additional directories to load prezto modules from.

Type: -list of path

Default: -[ ]

Example:

[
-  "$HOME/.zprezto-contrib"
+
+
+
+
+ + programs.zsh.prezto.pmoduleDirs + + +
+
+

Add additional directories to load prezto modules from.

+ +

Type: +list of path

+ +

Default: +[ ]

+ +

Example:

[
+  "$HOME/.zprezto-contrib"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.pmodules

Set the Prezto modules to load (browse modules). The order matters.

Type: -list of string

Default:

[
-  "environment"
-  "terminal"
-  "editor"
-  "history"
-  "directory"
-  "spectrum"
-  "utility"
-  "completion"
-  "prompt"
+
+
+
+
+ + programs.zsh.prezto.pmodules + + +
+
+

Set the Prezto modules to load (browse modules). The order matters.

+ +

Type: +list of string

+ +

Default:

[
+  "environment"
+  "terminal"
+  "editor"
+  "history"
+  "directory"
+  "spectrum"
+  "utility"
+  "completion"
+  "prompt"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.prompt.pwdLength

Set the working directory prompt display length. By + +

+
+
+ + programs.zsh.prezto.prompt.pwdLength + + +
+
+

Set the working directory prompt display length. By default, it is set to short. Set it to long (without ~ expansion) for longer or full (with ~ expansion) for -even longer prompt display.

Type: -null or one of “short”, “long”, “full”

Default: -null

Example: -"short"

Declared by:

+
+even longer prompt display.

+ +

Type: +null or one of “short”, “long”, “full”

+ +

Default: +null

+ +

Example: +"short"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.prompt.showReturnVal

Set the prompt to display the return code along with an -indicator for non-zero return codes. This is not supported by all prompts.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.prompt.showReturnVal + + +
+
+

Set the prompt to display the return code along with an +indicator for non-zero return codes. This is not supported by all prompts.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.prompt.theme

Set the prompt theme to load. Setting it to random + +

+
+
+ + programs.zsh.prezto.prompt.theme + + +
+
+

Set the prompt theme to load. Setting it to random loads a random theme. Automatically set to off on dumb -terminals.

Type: -null or string

Default: -"sorin"

Example: -"pure"

Declared by:

+
+terminals.

+ +

Type: +null or string

+ +

Default: +"sorin"

+ +

Example: +"pure"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.python.virtualenvAutoSwitch

Auto switch to Python virtualenv on directory change.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.python.virtualenvAutoSwitch + + +
+
+

Auto switch to Python virtualenv on directory change.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.python.virtualenvInitialize

Automatically initialize virtualenvwrapper if pre-requisites are met.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.python.virtualenvInitialize + + +
+
+

Automatically initialize virtualenvwrapper if pre-requisites are met.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.ruby.chrubyAutoSwitch

Auto switch the Ruby version on directory change.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.ruby.chrubyAutoSwitch + + +
+
+

Auto switch the Ruby version on directory change.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.screen.autoStartLocal

Auto start a session when Zsh is launched in a local terminal.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.screen.autoStartLocal + + +
+
+

Auto start a session when Zsh is launched in a local terminal.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.screen.autoStartRemote

Auto start a session when Zsh is launched in a SSH connection.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.screen.autoStartRemote + + +
+
+

Auto start a session when Zsh is launched in a SSH connection.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.ssh.identities

Set the SSH identities to load into the agent.

Type: -list of string

Default: -[ ]

Example:

[
-  "id_rsa"
-  "id_rsa2"
-  "id_github"
+
+
+
+
+ + programs.zsh.prezto.ssh.identities + + +
+
+

Set the SSH identities to load into the agent.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "id_rsa"
+  "id_rsa2"
+  "id_github"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.syntaxHighlighting.highlighters

Set syntax highlighters. By default, only the main -highlighter is enabled.

Type: -list of string

Default: -[ ]

Example:

[
-  "main"
-  "brackets"
-  "pattern"
-  "line"
-  "cursor"
-  "root"
+
+
+
+
+ + programs.zsh.prezto.syntaxHighlighting.highlighters + + +
+
+

Set syntax highlighters. By default, only the main +highlighter is enabled.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "main"
+  "brackets"
+  "pattern"
+  "line"
+  "cursor"
+  "root"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.syntaxHighlighting.pattern

Set syntax pattern styles.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "rm*-rf*" = "fg=white,bold,bg=red";
+
+
+
+
+ + programs.zsh.prezto.syntaxHighlighting.pattern + + +
+
+

Set syntax pattern styles.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "rm*-rf*" = "fg=white,bold,bg=red";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.syntaxHighlighting.styles

Set syntax highlighting styles.

Type: -attribute set of string

Default: -{ }

Example:

{
-  builtin = "bg=blue";
-  command = "bg=blue";
-  function = "bg=blue";
+
+
+
+
+ + programs.zsh.prezto.syntaxHighlighting.styles + + +
+
+

Set syntax highlighting styles.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  builtin = "bg=blue";
+  command = "bg=blue";
+  function = "bg=blue";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.terminal.autoTitle

Auto set the tab and window titles.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.terminal.autoTitle + + +
+
+

Auto set the tab and window titles.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.terminal.multiplexerTitleFormat

Set the multiplexer title format.

Type: -null or string

Default: -null

Example: -"%s"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.terminal.multiplexerTitleFormat + + +
+
+

Set the multiplexer title format.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"%s"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.terminal.tabTitleFormat

Set the tab title format.

Type: -null or string

Default: -null

Example: -"%m: %s"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.terminal.tabTitleFormat + + +
+
+

Set the tab title format.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"%m: %s"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.terminal.windowTitleFormat

Set the window title format.

Type: -null or string

Default: -null

Example: -"%n@%m: %s"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.terminal.windowTitleFormat + + +
+
+

Set the window title format.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"%n@%m: %s"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.tmux.autoStartLocal

Auto start a session when Zsh is launched in a local terminal.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.tmux.autoStartLocal + + +
+
+

Auto start a session when Zsh is launched in a local terminal.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.tmux.autoStartRemote

Auto start a session when Zsh is launched in a SSH connection.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.tmux.autoStartRemote + + +
+
+

Auto start a session when Zsh is launched in a SSH connection.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.tmux.defaultSessionName

Set the default session name.

Type: -null or string

Default: -null

Example: -"YOUR DEFAULT SESSION NAME"

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.tmux.defaultSessionName + + +
+
+

Set the default session name.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"YOUR DEFAULT SESSION NAME"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.tmux.itermIntegration

Integrate with iTerm2.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.prezto.tmux.itermIntegration + + +
+
+

Integrate with iTerm2.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.prezto.utility.safeOps

Enabled safe options. This aliases cp, + +

+
+
+ + programs.zsh.prezto.utility.safeOps + + +
+
+

Enabled safe options. This aliases cp, ln, mv and rm so that they prompt before deleting or overwriting files. Set to no to -disable this safer behavior.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+disable this safer behavior.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/prezto.nix> -
programs.zsh.profileExtra

Extra commands that should be added to .zprofile.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + programs.zsh.profileExtra + + +
+
+

Extra commands that should be added to .zprofile.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.sessionVariables

Environment variables that will be set for zsh session.

Type: -attribute set

Default: -{ }

Example:

{
+
+
+
+
+ + programs.zsh.sessionVariables + + +
+
+

Environment variables that will be set for zsh session.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example:

{
   MAILCHECK = 30;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.shellAliases

An attribute set that maps aliases (the top level attribute names in -this option) to command strings or directly to build outputs.

Type: -attribute set of string

Default: -{ }

Example:

{
-  ll = "ls -l";
-  ".." = "cd ..";
+
+
+
+
+ + programs.zsh.shellAliases + + +
+
+

An attribute set that maps aliases (the top level attribute names in +this option) to command strings or directly to build outputs.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  ll = "ls -l";
+  ".." = "cd ..";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.shellGlobalAliases

Similar to programs.zsh.shellAliases, -but are substituted anywhere on a line.

Type: -attribute set of string

Default: -{ }

Example:

{
-  UUID = "$(uuidgen | tr -d \\n)";
-  G = "| grep";
+
+
+
+
+ + programs.zsh.shellGlobalAliases + + +
+
+

Similar to programs.zsh.shellAliases, +but are substituted anywhere on a line.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  UUID = "$(uuidgen | tr -d \\n)";
+  G = "| grep";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.syntaxHighlighting

Options related to zsh-syntax-highlighting.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + programs.zsh.syntaxHighlighting + + +
+
+

Options related to zsh-syntax-highlighting.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.syntaxHighlighting.enable

Whether to enable zsh syntax highlighting.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.syntaxHighlighting.enable + + +
+
+

Whether to enable zsh syntax highlighting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.syntaxHighlighting.package

The zsh-syntax-highlighting package to use.

Type: -package

Default: -pkgs.zsh-syntax-highlighting

Declared by:

+
+ +
+
+
+ + programs.zsh.syntaxHighlighting.package + + +
+
+

The zsh-syntax-highlighting package to use.

+ +

Type: +package

+ +

Default: +pkgs.zsh-syntax-highlighting

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.syntaxHighlighting.highlighters

Highlighters to enable -See the list of highlighters: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md

Type: -list of string

Default: -[ ]

Example:

[
-  "brackets"
+
+
+
+
+ + programs.zsh.syntaxHighlighting.highlighters + + +
+
+

Highlighters to enable +See the list of highlighters: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "brackets"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.syntaxHighlighting.styles

Custom styles for syntax highlighting. -See each highlighter’s options: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md

Type: -attribute set of string

Default: -{ }

Example:

{
-  comment = "fg=black,bold";
+
+
+
+
+ + programs.zsh.syntaxHighlighting.styles + + +
+
+

Custom styles for syntax highlighting. +See each highlighter’s options: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  comment = "fg=black,bold";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh.nix> -
programs.zsh.zplug.enable

Whether to enable zplug - a zsh plugin manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.zplug.enable + + +
+
+

Whether to enable zplug - a zsh plugin manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zplug.nix> -
programs.zsh.zplug.plugins

List of zplug plugins.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.zsh.zplug.plugins + + +
+
+

List of zplug plugins.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zplug.nix> -
programs.zsh.zplug.plugins.*.name

The name of the plugin.

Type: -string

Declared by:

+
+ +
+
+
+ + programs.zsh.zplug.plugins.*.name + + +
+
+

The name of the plugin.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zplug.nix> -
programs.zsh.zplug.plugins.*.tags

The plugin tags.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + programs.zsh.zplug.plugins.*.tags + + +
+
+

The plugin tags.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zplug.nix> -
programs.zsh.zplug.zplugHome

Path to zplug home directory.

Type: -path

Default: -"~/.zplug"

Declared by:

+
+ +
+
+
+ + programs.zsh.zplug.zplugHome + + +
+
+

Path to zplug home directory.

+ +

Type: +path

+ +

Default: +"~/.zplug"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zplug.nix> -
programs.zsh.zsh-abbr.enable

Whether to enable zsh-abbr - zsh manager for auto-expanding abbreviations.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + programs.zsh.zsh-abbr.enable + + +
+
+

Whether to enable zsh-abbr - zsh manager for auto-expanding abbreviations.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/zsh-abbr.nix> -
programs.zsh.zsh-abbr.abbreviations

An attribute set that maps aliases (the top level attribute names + +

+
+
+ + programs.zsh.zsh-abbr.abbreviations + + +
+
+

An attribute set that maps aliases (the top level attribute names in this option) to abbreviations. Abbreviations are expanded with -the longer phrase after they are entered.

Type: -attribute set of string

Default: -{ }

Example:

{
-  gco = "git checkout";
-  l = "less";
+the longer phrase after they are entered.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  gco = "git checkout";
+  l = "less";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/zsh/zsh-abbr.nix> -
qt.enable

Whether to enable Qt 5 and 6 configuration.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + qt.enable + + +
+
+

Whether to enable Qt 5 and 6 configuration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/qt.nix> -
qt.platformTheme

Platform theme to use for Qt applications.

The options are

gtk

Use GTK theme with -qtstyleplugins

gtk3

Use GTK3 integration + +

+
+
+ + qt.platformTheme + + +
+
+

Platform theme to use for Qt applications.

The options are

gtk

Use GTK theme with +qtstyleplugins

gtk3

Use GTK3 integration for file picker dialogs, font and theme configuration

gnome

Use GNOME theme with -qgnomeplatform

lxqt

Use LXQt theme style set using the -lxqt-config-appearance +qgnomeplatform

lxqt

Use LXQt theme style set using the +lxqt-config-appearance application

qtct

Use Qt style set using -qt5ct -and qt6ct -applications

kde

Use Qt settings from Plasma

Type: -null or one of “gtk”, “gtk3”, “gnome”, “lxqt”, “qtct”, “kde”

Default: -null

Example: -"gnome"

- Related packages: -

Declared by:

+
+qt5ct +and qt6ct +applications

kde

Use Qt settings from Plasma

+ +

Type: +null or one of “gtk”, “gtk3”, “gnome”, “lxqt”, “qtct”, “kde”

+ +

Default: +null

+ +

Example: +"gnome"

+ +

Related packages:

+ + +

Declared by:

+ +
+ <home-manager/modules/misc/qt.nix> -
qt.style.package

Theme package to be used in Qt5/Qt6 applications. -Auto-detected from qt.style.name if possible.

Type: -null or package or list of package

Default: -null

Example: -pkgs.adwaita-qt

Declared by:

+
+ +
+
+
+ + qt.style.package + + +
+
+

Theme package to be used in Qt5/Qt6 applications. +Auto-detected from qt.style.name if possible.

+ +

Type: +null or package or list of package

+ +

Default: +null

+ +

Example: +pkgs.adwaita-qt

+ +

Declared by:

+ +
+ <home-manager/modules/misc/qt.nix> -
qt.style.name

Style to use for Qt5/Qt6 applications. Case-insensitive.

Some examples are

adwaita, adwaita-dark, adwaita-highcontrast, adwaita-highcontrastinverse

Use the Adwaita style from -adwaita-qt

breeze

Use the Breeze style from -breeze

bb10bright, bb10dark, cde, cleanlooks, gtk2, motif, plastique

Use styles from -qtstyleplugins

kvantum

Use styles from -kvantum

Type: -null or string

Default: -null

Example: -"adwaita-dark"

- Related packages: -

Declared by:

+
+ +
+
+
+ + qt.style.name + + +
+
+

Style to use for Qt5/Qt6 applications. Case-insensitive.

Some examples are

adwaita, adwaita-dark, adwaita-highcontrast, adwaita-highcontrastinverse

Use the Adwaita style from +adwaita-qt

breeze

Use the Breeze style from +breeze

bb10bright, bb10dark, cde, cleanlooks, gtk2, motif, plastique

Use styles from +qtstyleplugins

kvantum

Use styles from +kvantum

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"adwaita-dark"

+ +

Related packages:

+ + +

Declared by:

+ +
+ <home-manager/modules/misc/qt.nix> -
services.autorandr.enable

Whether to enable the Autorandr systemd service. + +

+
+
+ + services.autorandr.enable + + +
+
+

Whether to enable the Autorandr systemd service. This module is complementary to programs.autorandr -which handles the configuration (profiles).

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+which handles the configuration (profiles).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/autorandr.nix> -
services.autorandr.ignoreLid

Treat outputs as connected even if their lids are closed.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.autorandr.ignoreLid + + +
+
+

Treat outputs as connected even if their lids are closed.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/autorandr.nix> -
services.avizo.enable

Whether to enable avizo, a simple notification daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.avizo.enable + + +
+
+

Whether to enable avizo, a simple notification daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/avizo.nix> -
services.avizo.package

The avizo package to use.

Type: -package

Default: -pkgs.avizo

Example:

pkgs.avizo.overrideAttrs (final: prev: {
-  patchPhase = "cp ${./images}/*.png data/images/";
+
+
+
+
+ + services.avizo.package + + +
+
+

The avizo package to use.

+ +

Type: +package

+ +

Default: +pkgs.avizo

+ +

Example:

pkgs.avizo.overrideAttrs (final: prev: {
+  patchPhase = "cp ${./images}/*.png data/images/";
 })
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/avizo.nix> -
services.avizo.settings

The settings that will be written to the avizo configuration file.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+
+
+
+
+ + services.avizo.settings + + +
+
+

The settings that will be written to the avizo configuration file.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   default = {
     time = 1.0;
     y-offset = 0.5;
@@ -12515,689 +51931,2957 @@ attribute set of attribute set of (INI atom (null, bool, int, float or string))<
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/avizo.nix> -
services.barrier.client.enable

Whether to enable Barrier Client daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.barrier.client.enable + + +
+
+

Whether to enable Barrier Client daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/barrier.nix> -
services.barrier.client.enableCrypto

Whether to enable crypto (SSL) plugin.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + services.barrier.client.enableCrypto + + +
+
+

Whether to enable crypto (SSL) plugin.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/barrier.nix> -
services.barrier.client.enableDragDrop

Whether to enable file drag & drop.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.barrier.client.enableDragDrop + + +
+
+

Whether to enable file drag & drop.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/barrier.nix> -
services.barrier.client.extraFlags

Additional flags to pass to barrierc. -See barrierc --help.

Type: -list of string

Default: -[ "-f" ]

Declared by:

+
+ +
+
+
+ + services.barrier.client.extraFlags + + +
+
+

Additional flags to pass to barrierc. +See barrierc --help.

+ +

Type: +list of string

+ +

Default: +[ "-f" ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/barrier.nix> -
services.barrier.client.name

Screen name of client. Defaults to hostname.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.barrier.client.name + + +
+
+

Screen name of client. Defaults to hostname.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/barrier.nix> -
services.barrier.client.server

Server to connect to formatted as + +

+
+
+ + services.barrier.client.server + + +
+
+

Server to connect to formatted as <host>[:<port>]. -Port defaults to 24800.

Type: -string

Declared by:

+
+Port defaults to 24800.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/barrier.nix> -
services.batsignal.enable

Whether to enable Batsignal Battery Daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.batsignal.enable + + +
+
+

Whether to enable Batsignal Battery Daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/batsignal.nix> -
services.batsignal.package

The batsignal package to use.

Type: -package

Default: -pkgs.batsignal

Declared by:

+
+ +
+
+
+ + services.batsignal.package + + +
+
+

The batsignal package to use.

+ +

Type: +package

+ +

Default: +pkgs.batsignal

+ +

Declared by:

+ +
+ <home-manager/modules/services/batsignal.nix> -
services.batsignal.extraArgs

Extra arguments to be passed to the batsignal executable.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.batsignal.extraArgs + + +
+
+

Extra arguments to be passed to the batsignal executable.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/batsignal.nix> -
services.betterlockscreen.enable

Whether to enable betterlockscreen, a screen-locker module.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.betterlockscreen.enable + + +
+
+

Whether to enable betterlockscreen, a screen-locker module.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/betterlockscreen.nix> -
services.betterlockscreen.package

Package providing betterlockscreen.

Type: -package

Default: -pkgs.betterlockscreen

Declared by:

+
+ +
+
+
+ + services.betterlockscreen.package + + +
+
+

Package providing betterlockscreen.

+ +

Type: +package

+ +

Default: +pkgs.betterlockscreen

+ +

Declared by:

+ +
+ <home-manager/modules/services/betterlockscreen.nix> -
services.betterlockscreen.arguments

List of arguments appended to ./betterlockscreen --lock [args]

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.betterlockscreen.arguments + + +
+
+

List of arguments appended to ./betterlockscreen --lock [args]

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/betterlockscreen.nix> -
services.betterlockscreen.inactiveInterval

Value used for services.screen-locker.inactiveInterval.

Type: -signed integer

Default: -10

Declared by:

+
+ +
+
+
+ + services.betterlockscreen.inactiveInterval + + +
+
+

Value used for services.screen-locker.inactiveInterval.

+ +

Type: +signed integer

+ +

Default: +10

+ +

Declared by:

+ +
+ <home-manager/modules/services/betterlockscreen.nix> -
services.blueman-applet.enable

Whether to enable the Blueman applet.

Note that for the applet to work, the blueman service should + +

+
+
+ + services.blueman-applet.enable + + +
+
+

Whether to enable the Blueman applet.

Note that for the applet to work, the blueman service should be enabled system-wide. You can enable it in the system -configuration using

services.blueman.enable = true;
-

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+configuration using

services.blueman.enable = true;
+
+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/blueman-applet.nix> -
services.borgmatic.enable

Whether to enable Borgmatic service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.borgmatic.enable + + +
+
+

Whether to enable Borgmatic service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/borgmatic.nix> -
services.borgmatic.frequency

How often to run borgmatic when + +

+
+
+ + services.borgmatic.frequency + + +
+
+

How often to run borgmatic when services.borgmatic.enable = true. This value is passed to the systemd timer configuration as the onCalendar option. See systemd.time(7) -for more information about the format.

Type: -string

Default: -"hourly"

Declared by:

+
+for more information about the format.

+ +

Type: +string

+ +

Default: +"hourly"

+ +

Declared by:

+ +
+ <home-manager/modules/services/borgmatic.nix> -
services.cachix-agent.enable

Whether to enable Cachix Deploy Agent: https://docs.cachix.org/deploy/.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.cachix-agent.enable + + +
+
+

Whether to enable Cachix Deploy Agent: https://docs.cachix.org/deploy/.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/cachix-agent.nix> -
services.cachix-agent.package

The cachix package to use.

Type: -package

Default: -pkgs.cachix

Declared by:

+
+ +
+
+
+ + services.cachix-agent.package + + +
+
+

The cachix package to use.

+ +

Type: +package

+ +

Default: +pkgs.cachix

+ +

Declared by:

+ +
+ <home-manager/modules/services/cachix-agent.nix> -
services.cachix-agent.credentialsFile

Required file that needs to contain -CACHIX_AGENT_TOKEN=....

Type: -path

Default: -"${config.xdg.configHome}/cachix-agent.token"

Declared by:

+
+ +
+
+
+ + services.cachix-agent.credentialsFile + + +
+
+

Required file that needs to contain +CACHIX_AGENT_TOKEN=....

+ +

Type: +path

+ +

Default: +"${config.xdg.configHome}/cachix-agent.token"

+ +

Declared by:

+ +
+ <home-manager/modules/services/cachix-agent.nix> -
services.cachix-agent.host

Cachix URI to use.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.cachix-agent.host + + +
+
+

Cachix URI to use.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/cachix-agent.nix> -
services.cachix-agent.name

The unique agent name.

Type: -string

Declared by:

+
+ +
+
+
+ + services.cachix-agent.name + + +
+
+

The unique agent name.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/cachix-agent.nix> -
services.cachix-agent.profile

The Nix profile name.

Type: -string

Default: -"home-manager"

Declared by:

+
+ +
+
+
+ + services.cachix-agent.profile + + +
+
+

The Nix profile name.

+ +

Type: +string

+ +

Default: +"home-manager"

+ +

Declared by:

+ +
+ <home-manager/modules/services/cachix-agent.nix> -
services.cachix-agent.verbose

Whether to enable verbose output.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.cachix-agent.verbose + + +
+
+

Whether to enable verbose output.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/cachix-agent.nix> -
services.caffeine.enable

Whether to enable Caffeine service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.caffeine.enable + + +
+
+

Whether to enable Caffeine service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/caffeine.nix> -
services.cbatticon.enable

Whether to enable cbatticon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.cbatticon.enable + + +
+
+

Whether to enable cbatticon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.batteryId

ID of the battery to monitor. List with cbatticon -p. -Defaults to the first entry in the list.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.cbatticon.batteryId + + +
+
+

ID of the battery to monitor. List with cbatticon -p. +Defaults to the first entry in the list.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.commandCriticalLevel

Command to execute when the critical battery level is reached.

Type: -null or strings concatenated with “\n”

Default: -null

Example:

''
-  notify-send "battery critical!"
-''
-

Declared by:

+
+ +
+
+
+ + services.cbatticon.commandCriticalLevel + + +
+
+

Command to execute when the critical battery level is reached.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Example:

''
+  notify-send "battery critical!"
+''
+
+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.commandLeftClick

Command to execute when left clicking on the tray icon.

Type: -null or strings concatenated with “\n”

Default: -null

Declared by:

+
+ +
+
+
+ + services.cbatticon.commandLeftClick + + +
+
+

Command to execute when left clicking on the tray icon.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.criticalLevelPercent

Critical level percentage of the battery in percent (without -the percent symbol).

Type: -null or integer between 0 and 100 (both inclusive)

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + services.cbatticon.criticalLevelPercent + + +
+
+

Critical level percentage of the battery in percent (without +the percent symbol).

+ +

Type: +null or integer between 0 and 100 (both inclusive)

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.hideNotification

Hide the notification popups.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + services.cbatticon.hideNotification + + +
+
+

Hide the notification popups.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.iconType

Icon type to display in the system tray.

Type: -null or one of “standard”, “notification”, “symbolic”

Default: -null

Example: -"symbolic"

Declared by:

+
+ +
+
+
+ + services.cbatticon.iconType + + +
+
+

Icon type to display in the system tray.

+ +

Type: +null or one of “standard”, “notification”, “symbolic”

+ +

Default: +null

+ +

Example: +"symbolic"

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.lowLevelPercent

Low level percentage of the battery in percent (without the -percent symbol).

Type: -null or integer between 0 and 100 (both inclusive)

Default: -null

Example: -20

Declared by:

+
+ +
+
+
+ + services.cbatticon.lowLevelPercent + + +
+
+

Low level percentage of the battery in percent (without the +percent symbol).

+ +

Type: +null or integer between 0 and 100 (both inclusive)

+ +

Default: +null

+ +

Example: +20

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cbatticon.updateIntervalSeconds

Number of seconds between updates of the battery information.

Type: -null or positive integer, meaning >0

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + services.cbatticon.updateIntervalSeconds + + +
+
+

Number of seconds between updates of the battery information.

+ +

Type: +null or positive integer, meaning >0

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/cbatticon.nix> -
services.cliphist.enable

Whether to enable cliphist, a clipboard history “manager” for wayland.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.cliphist.enable + + +
+
+

Whether to enable cliphist, a clipboard history “manager” for wayland.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/cliphist.nix> -
services.cliphist.package

The cliphist package to use.

Type: -package

Default: -pkgs.cliphist

Declared by:

+
+ +
+
+
+ + services.cliphist.package + + +
+
+

The cliphist package to use.

+ +

Type: +package

+ +

Default: +pkgs.cliphist

+ +

Declared by:

+ +
+ <home-manager/modules/services/cliphist.nix> -
services.cliphist.systemdTarget

The systemd target that will automatically start the cliphist service.

When setting this value to "sway-session.target", + +

+
+
+ + services.cliphist.systemdTarget + + +
+
+

The systemd target that will automatically start the cliphist service.

When setting this value to "sway-session.target", make sure to also enable wayland.windowManager.sway.systemd.enable, -otherwise the service may never be started.

Type: -string

Default: -"graphical-session.target"

Example: -"sway-session.target"

Declared by:

+
+otherwise the service may never be started.

+ +

Type: +string

+ +

Default: +"graphical-session.target"

+ +

Example: +"sway-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/services/cliphist.nix> -
services.clipman.enable

Whether to enable clipman, a simple clipboard manager for Wayland.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.clipman.enable + + +
+
+

Whether to enable clipman, a simple clipboard manager for Wayland.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/clipman.nix> -
services.clipman.package

The clipman package to use.

Type: -package

Default: -pkgs.clipman

Declared by:

+
+ +
+
+
+ + services.clipman.package + + +
+
+

The clipman package to use.

+ +

Type: +package

+ +

Default: +pkgs.clipman

+ +

Declared by:

+ +
+ <home-manager/modules/services/clipman.nix> -
services.clipman.systemdTarget

The systemd target that will automatically start the clipman service.

When setting this value to "sway-session.target", + +

+
+
+ + services.clipman.systemdTarget + + +
+
+

The systemd target that will automatically start the clipman service.

When setting this value to "sway-session.target", make sure to also enable wayland.windowManager.sway.systemd.enable, -otherwise the service may never be started.

Type: -string

Default: -"graphical-session.target"

Example: -"sway-session.target"

Declared by:

+
+otherwise the service may never be started.

+ +

Type: +string

+ +

Default: +"graphical-session.target"

+ +

Example: +"sway-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/services/clipman.nix> -
services.clipmenu.enable

Whether to enable clipmenu, the clipboard management daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.clipmenu.enable + + +
+
+

Whether to enable clipmenu, the clipboard management daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/clipmenu.nix> -
services.clipmenu.package

clipmenu derivation to use.

Type: -package

Default: -"pkgs.clipmenu"

Declared by:

+
+ +
+
+
+ + services.clipmenu.package + + +
+
+

clipmenu derivation to use.

+ +

Type: +package

+ +

Default: +"pkgs.clipmenu"

+ +

Declared by:

+ +
+ <home-manager/modules/services/clipmenu.nix> -
services.clipmenu.launcher

Launcher command, if not set, dmenu -will be used by default.

Type: -null or string

Default: -null

Example: -"rofi"

Declared by:

+
+ +
+
+
+ + services.clipmenu.launcher + + +
+
+

Launcher command, if not set, dmenu +will be used by default.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"rofi"

+ +

Declared by:

+ +
+ <home-manager/modules/services/clipmenu.nix> -
services.comodoro.enable

Whether to enable Comodoro server.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.comodoro.enable + + +
+
+

Whether to enable Comodoro server.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/comodoro.nix> -
services.comodoro.package

The comodoro package to use.

Type: -package

Default: -pkgs.comodoro

Declared by:

+
+ +
+
+
+ + services.comodoro.package + + +
+
+

The comodoro package to use.

+ +

Type: +package

+ +

Default: +pkgs.comodoro

+ +

Declared by:

+ +
+ <home-manager/modules/services/comodoro.nix> -
services.comodoro.environment

Extra environment variables to be exported in the service.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "PASSWORD_STORE_DIR" = "~/.password-store";
+
+
+
+
+ + services.comodoro.environment + + +
+
+

Extra environment variables to be exported in the service.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "PASSWORD_STORE_DIR" = "~/.password-store";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/comodoro.nix> -
services.comodoro.preset

Use configuration from the given preset as defined in the configuration file.

Type: -non-empty string

Declared by:

+
+ +
+
+
+ + services.comodoro.preset + + +
+
+

Use configuration from the given preset as defined in the configuration file.

+ +

Type: +non-empty string

+ +

Declared by:

+ +
+ <home-manager/modules/services/comodoro.nix> -
services.comodoro.protocols

Define protocols the server should use to accept requests.

Type: -non-empty (list of non-empty string)

Declared by:

+
+ +
+
+
+ + services.comodoro.protocols + + +
+
+

Define protocols the server should use to accept requests.

+ +

Type: +non-empty (list of non-empty string)

+ +

Declared by:

+ +
+ <home-manager/modules/services/comodoro.nix> -
services.copyq.enable

Whether to enable CopyQ, a clipboard manager with advanced features.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.copyq.enable + + +
+
+

Whether to enable CopyQ, a clipboard manager with advanced features.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/copyq.nix> -
services.copyq.package

The copyq package to use.

Type: -package

Default: -pkgs.copyq

Declared by:

+
+ +
+
+
+ + services.copyq.package + + +
+
+

The copyq package to use.

+ +

Type: +package

+ +

Default: +pkgs.copyq

+ +

Declared by:

+ +
+ <home-manager/modules/services/copyq.nix> -
services.copyq.systemdTarget

The systemd target that will automatically start the CopyQ service.

When setting this value to "sway-session.target", + +

+
+
+ + services.copyq.systemdTarget + + +
+
+

The systemd target that will automatically start the CopyQ service.

When setting this value to "sway-session.target", make sure to also enable wayland.windowManager.sway.systemd.enable, -otherwise the service may never be started.

Type: -string

Default: -"graphical-session.target"

Example: -"sway-session.target"

Declared by:

+
+otherwise the service may never be started.

+ +

Type: +string

+ +

Default: +"graphical-session.target"

+ +

Example: +"sway-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/services/copyq.nix> -
services.darkman.enable

Whether to enable darkman, a tool that automatically switches dark-mode on and off based on -the time of the day.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.darkman.enable + + +
+
+

Whether to enable darkman, a tool that automatically switches dark-mode on and off based on +the time of the day.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/darkman.nix> -
services.darkman.package

The darkman package to use.

Type: -package

Default: -pkgs.darkman

Declared by:

+
+ +
+
+
+ + services.darkman.package + + +
+
+

The darkman package to use.

+ +

Type: +package

+ +

Default: +pkgs.darkman

+ +

Declared by:

+ +
+ <home-manager/modules/services/darkman.nix> -
services.darkman.darkModeScripts

Scripts to run when switching to “dark mode”.

Multiline strings are interpreted as Bash shell scripts and a shebang is -not required.

Type: -attribute set of (path or strings concatenated with “\n”)

Default: -{ }

Example:

{
-  gtk-theme = ''
+
+
+
+
+ + services.darkman.darkModeScripts + + +
+
+

Scripts to run when switching to “dark mode”.

Multiline strings are interpreted as Bash shell scripts and a shebang is +not required.

+ +

Type: +attribute set of (path or strings concatenated with “\n”)

+ +

Default: +{ }

+ +

Example:

{
+  gtk-theme = ''
     ${pkgs.dconf}/bin/dconf write \
-        /org/gnome/desktop/interface/color-scheme "'prefer-dark'"
-  '';
-  my-python-script = pkgs.writers.writePython3 "my-python-script" { } ''
-    print('Do something!')
-  '';
+        /org/gnome/desktop/interface/color-scheme "'prefer-dark'"
+  '';
+  my-python-script = pkgs.writers.writePython3 "my-python-script" { } ''
+    print('Do something!')
+  '';
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/darkman.nix> -
services.darkman.lightModeScripts

Scripts to run when switching to “light mode”.

Multiline strings are interpreted as Bash shell scripts and a shebang is -not required.

Type: -attribute set of (path or strings concatenated with “\n”)

Default: -{ }

Example:

{
-  gtk-theme = ''
+
+
+
+
+ + services.darkman.lightModeScripts + + +
+
+

Scripts to run when switching to “light mode”.

Multiline strings are interpreted as Bash shell scripts and a shebang is +not required.

+ +

Type: +attribute set of (path or strings concatenated with “\n”)

+ +

Default: +{ }

+ +

Example:

{
+  gtk-theme = ''
     ${pkgs.dconf}/bin/dconf write \
-        /org/gnome/desktop/interface/color-scheme "'prefer-light'"
-  '';
-  my-python-script = pkgs.writers.writePython3 "my-python-script" { } ''
-    print('Do something!')
-  '';
+        /org/gnome/desktop/interface/color-scheme "'prefer-light'"
+  '';
+  my-python-script = pkgs.writers.writePython3 "my-python-script" { } ''
+    print('Do something!')
+  '';
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/darkman.nix> -
services.darkman.settings

Settings for the darkman command. See -https://darkman.whynothugo.nl/#CONFIGURATION for details.

Type: -YAML value

Example:

{
+
+
+
+
+ + services.darkman.settings + + +
+
+

Settings for the darkman command. See +https://darkman.whynothugo.nl/#CONFIGURATION for details.

+ +

Type: +YAML value

+ +

Example:

{
   lat = 52.3;
   lng = 4.8;
   usegeoclue = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/darkman.nix> -
services.devilspie2.enable

Whether to enable Devilspie2, a window matching utility, allowing the user to -perform scripted actions on windows as they are created.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.devilspie2.enable + + +
+
+

Whether to enable Devilspie2, a window matching utility, allowing the user to +perform scripted actions on windows as they are created.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/devilspie2.nix> -
services.devilspie2.config

Content of file placed in the devilspie2 config directory.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
-  if (get_window_class() == "Gnome-terminal") then
+
+
+
+
+ + services.devilspie2.config + + +
+
+

Content of file placed in the devilspie2 config directory.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
+  if (get_window_class() == "Gnome-terminal") then
       make_always_on_top();
   end
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/devilspie2.nix> -
services.dropbox.enable

Whether to enable Dropbox daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.dropbox.enable + + +
+
+

Whether to enable Dropbox daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/dropbox.nix> -
services.dropbox.path

Where to put the Dropbox directory.

Type: -path

Default: -"${config.home.homeDirectory}/Dropbox"

Declared by:

+
+ +
+
+
+ + services.dropbox.path + + +
+
+

Where to put the Dropbox directory.

+ +

Type: +path

+ +

Default: +"${config.home.homeDirectory}/Dropbox"

+ +

Declared by:

+ +
+ <home-manager/modules/services/dropbox.nix> -
services.dunst.enable

Whether to enable the dunst notification daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.dunst.enable + + +
+
+

Whether to enable the dunst notification daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.package

Package providing dunst.

Type: -package

Default: -pkgs.dunst

Declared by:

+
+ +
+
+
+ + services.dunst.package + + +
+
+

Package providing dunst.

+ +

Type: +package

+ +

Default: +pkgs.dunst

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.configFile

Path to the configuration file read by dunst.

Note that the configuration generated by Home Manager will be + +

+
+
+ + services.dunst.configFile + + +
+
+

Path to the configuration file read by dunst.

Note that the configuration generated by Home Manager will be written to $XDG_CONFIG_HOME/dunst/dunstrc regardless. This allows using a mutable configuration file generated from the immutable one, useful in scenarios where live reloading is -desired.

Type: -string or path

Default: -"$XDG_CONFIG_HOME/dunst/dunstrc"

Declared by:

+
+desired.

+ +

Type: +string or path

+ +

Default: +"$XDG_CONFIG_HOME/dunst/dunstrc"

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.iconTheme

Set the icon theme.

Type: -submodule

Default:

{
-  name = "hicolor";
+
+
+
+
+ + services.dunst.iconTheme + + +
+
+

Set the icon theme.

+ +

Type: +submodule

+ +

Default:

{
+  name = "hicolor";
   package = <derivation hicolor-icon-theme-0.17>;
-  size = "32x32";
+  size = "32x32";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.iconTheme.package

Package providing the theme.

Type: -package

Example: -pkgs.gnome.adwaita-icon-theme

Declared by:

+
+ +
+
+
+ + services.dunst.iconTheme.package + + +
+
+

Package providing the theme.

+ +

Type: +package

+ +

Example: +pkgs.gnome.adwaita-icon-theme

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.iconTheme.name

The name of the theme within the package.

Type: -string

Example: -"Adwaita"

Declared by:

+
+ +
+
+
+ + services.dunst.iconTheme.name + + +
+
+

The name of the theme within the package.

+ +

Type: +string

+ +

Example: +"Adwaita"

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.iconTheme.size

The desired icon size.

Type: -string

Default: -"32x32"

Example: -"16x16"

Declared by:

+
+ +
+
+
+ + services.dunst.iconTheme.size + + +
+
+

The desired icon size.

+ +

Type: +string

+ +

Default: +"32x32"

+ +

Example: +"16x16"

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.settings

Configuration written to $XDG_CONFIG_HOME/dunst/dunstrc.

Type: -attribute set of attribute set of (string or boolean or signed integer or list of string)

Default: -{ }

Example:

{
+
+
+
+
+ + services.dunst.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/dunst/dunstrc.

+ +

Type: +attribute set of attribute set of (string or boolean or signed integer or list of string)

+ +

Default: +{ }

+ +

Example:

{
   global = {
     width = 300;
     height = 300;
-    offset = "30x50";
-    origin = "top-right";
+    offset = "30x50";
+    origin = "top-right";
     transparency = 10;
-    frame_color = "#eceff1";
-    font = "Droid Sans 9";
+    frame_color = "#eceff1";
+    font = "Droid Sans 9";
   };
 
   urgency_normal = {
-    background = "#37474f";
-    foreground = "#eceff1";
+    background = "#37474f";
+    foreground = "#eceff1";
     timeout = 10;
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.settings.global.icon_path

Paths where dunst will look for icons.

Type: -strings concatenated with “:”

Declared by:

+
+ +
+
+
+ + services.dunst.settings.global.icon_path + + +
+
+

Paths where dunst will look for icons.

+ +

Type: +strings concatenated with “:”

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dunst.waylandDisplay

Set the service’s WAYLAND_DISPLAY environment variable.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + services.dunst.waylandDisplay + + +
+
+

Set the service’s WAYLAND_DISPLAY environment variable.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/dunst.nix> -
services.dwm-status.enable

Whether to enable dwm-status user service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.dwm-status.enable + + +
+
+

Whether to enable dwm-status user service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/dwm-status.nix> -
services.dwm-status.package

Which dwm-status package to use.

Type: -package

Default: -pkgs.dwm-status

Example: -"pkgs.dwm-status.override { enableAlsaUtils = false; }"

Declared by:

+
+ +
+
+
+ + services.dwm-status.package + + +
+
+

Which dwm-status package to use.

+ +

Type: +package

+ +

Default: +pkgs.dwm-status

+ +

Example: +"pkgs.dwm-status.override { enableAlsaUtils = false; }"

+ +

Declared by:

+ +
+ <home-manager/modules/services/dwm-status.nix> -
services.dwm-status.extraConfig

Extra config of dwm-status.

Type: -JSON value

Default: -{ }

Example:

{
-  separator = "#";
+
+
+
+
+ + services.dwm-status.extraConfig + + +
+
+

Extra config of dwm-status.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
+  separator = "#";
 
   battery = {
     notifier_levels = [ 2 5 10 15 20 ];
   };
 
   time = {
-    format = "%H:%M";
+    format = "%H:%M";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/dwm-status.nix> -
services.dwm-status.order

List of enabled features in order.

Type: -list of (one of “audio”, “backlight”, “battery”, “cpu_load”, “network”, “time”)

Declared by:

+
+ +
+
+
+ + services.dwm-status.order + + +
+
+

List of enabled features in order.

+ +

Type: +list of (one of “audio”, “backlight”, “battery”, “cpu_load”, “network”, “time”)

+ +

Declared by:

+ +
+ <home-manager/modules/services/dwm-status.nix> -
services.easyeffects.enable

Whether to enable Easyeffects daemon. -Note, it is necessary to add

programs.dconf.enable = true;
-

to your system configuration for the daemon to work correctly.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.easyeffects.enable + + +
+
+

Whether to enable Easyeffects daemon. +Note, it is necessary to add

programs.dconf.enable = true;
+

to your system configuration for the daemon to work correctly.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/easyeffects.nix> -
services.easyeffects.package

The easyeffects package to use.

Type: -package

Default: -pkgs.easyeffects

Declared by:

+
+ +
+
+
+ + services.easyeffects.package + + +
+
+

The easyeffects package to use.

+ +

Type: +package

+ +

Default: +pkgs.easyeffects

+ +

Declared by:

+ +
+ <home-manager/modules/services/easyeffects.nix> -
services.easyeffects.preset

Which preset to use when starting easyeffects. -Will likely need to launch easyeffects to initially create preset.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + services.easyeffects.preset + + +
+
+

Which preset to use when starting easyeffects. +Will likely need to launch easyeffects to initially create preset.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/easyeffects.nix> -
services.emacs.enable

Whether to enable the Emacs daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.emacs.enable + + +
+
+

Whether to enable the Emacs daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.emacs.package

The Emacs package to use.

Type: -package

Default:

if config.programs.emacs.enable then config.programs.emacs.finalPackage
+
+
+
+
+ + services.emacs.package + + +
+
+

The Emacs package to use.

+ +

Type: +package

+ +

Default:

if config.programs.emacs.enable then config.programs.emacs.finalPackage
 else pkgs.emacs
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.emacs.client.enable

Whether to enable generation of Emacs client desktop file.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.emacs.client.enable + + +
+
+

Whether to enable generation of Emacs client desktop file.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.emacs.client.arguments

Command-line arguments to pass to emacsclient.

Type: -list of string

Default:

[
-  "-c"
+
+
+
+
+ + services.emacs.client.arguments + + +
+
+

Command-line arguments to pass to emacsclient.

+ +

Type: +list of string

+ +

Default:

[
+  "-c"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.emacs.defaultEditor

Whether to configure emacsclient as the default -editor using the EDITOR environment variable.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.emacs.defaultEditor + + +
+
+

Whether to configure emacsclient as the default +editor using the EDITOR environment variable.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.emacs.extraOptions

Extra command-line arguments to pass to emacs.

Type: -list of string

Default: -[ ]

Example:

[
-  "-f"
-  "exwm-enable"
+
+
+
+
+ + services.emacs.extraOptions + + +
+
+

Extra command-line arguments to pass to emacs.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "-f"
+  "exwm-enable"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.emacs.socketActivation.enable

Whether to enable systemd socket activation for the Emacs service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.emacs.socketActivation.enable + + +
+
+

Whether to enable systemd socket activation for the Emacs service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.emacs.startWithUserSession

Whether to launch Emacs service with the systemd user session. If it is + +

+
+
+ + services.emacs.startWithUserSession + + +
+
+

Whether to launch Emacs service with the systemd user session. If it is true, Emacs service is started by default.target. If it is -"graphical", Emacs service is started by -graphical-session.target.

Type: -boolean or value “graphical” (singular enum)

Default: -!config.services.emacs.socketActivation.enable

Example: -"graphical"

Declared by:

+
+"graphical", Emacs service is started by +graphical-session.target.

+ +

Type: +boolean or value “graphical” (singular enum)

+ +

Default: +!config.services.emacs.socketActivation.enable

+ +

Example: +"graphical"

+ +

Declared by:

+ +
+ <home-manager/modules/services/emacs.nix> -
services.espanso.enable

Whether to enable Espanso: cross platform text expander in Rust.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.espanso.enable + + +
+
+

Whether to enable Espanso: cross platform text expander in Rust.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/espanso.nix> -
services.espanso.package

Which espanso package to use

Type: -package

Default: -pkgs.espanso

Declared by:

+
+ +
+
+
+ + services.espanso.package + + +
+
+

Which espanso package to use

+ +

Type: +package

+ +

Default: +pkgs.espanso

+ +

Declared by:

+ +
+ <home-manager/modules/services/espanso.nix> -
services.espanso.configs

The Espanso configuration to use. See -https://espanso.org/docs/configuration/basics/ -for a description of available options.

Type: -YAML value

Default:

{
+
+
+
+
+ + services.espanso.configs + + +
+
+

The Espanso configuration to use. See +https://espanso.org/docs/configuration/basics/ +for a description of available options.

+ +

Type: +YAML value

+ +

Default:

{
   default = { };
 }
-

Example:

{
+
+ +

Example:

{
   default = {
     show_notifications = false;
   };
   vscode = {
-    filter_title = "Visual Studio Code$";
-    backend = "Clipboard";
+    filter_title = "Visual Studio Code$";
+    backend = "Clipboard";
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/espanso.nix> -
services.espanso.matches

The Espanso matches to use. See -https://espanso.org/docs/matches/basics/ -for a description of available options.

Type: -YAML value

Default:

{
+
+
+
+
+ + services.espanso.matches + + +
+
+

The Espanso matches to use. See +https://espanso.org/docs/matches/basics/ +for a description of available options.

+ +

Type: +YAML value

+ +

Default:

{
   default = {
     matches = [ ];
   };
 }
-

Example:

{
+
+ +

Example:

{
   base = {
     matches = [
       {
-        trigger = ":now";
-        replace = "It's {{currentdate}} {{currenttime}}";
+        trigger = ":now";
+        replace = "It's {{currentdate}} {{currenttime}}";
       }
       {
-        trigger = ":hello";
-        replace = "line1\nline2";
+        trigger = ":hello";
+        replace = "line1\nline2";
       }
       {
-        regex = ":hi(?P<person>.*)\\.";
-        replace = "Hi {{person}}!";
+        regex = ":hi(?P<person>.*)\\.";
+        replace = "Hi {{person}}!";
       }
     ];
   };
   global_vars = {
     global_vars = [
       {
-        name = "currentdate";
-        type = "date";
-        params = {format = "%d/%m/%Y";};
+        name = "currentdate";
+        type = "date";
+        params = {format = "%d/%m/%Y";};
       }
       {
-        name = "currenttime";
-        type = "date";
-        params = {format = "%R";};
+        name = "currenttime";
+        type = "date";
+        params = {format = "%R";};
       }
     ];
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/espanso.nix> -
services.etesync-dav.enable

Whether to enable etesync-dav.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.etesync-dav.enable + + +
+
+

Whether to enable etesync-dav.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/etesync-dav.nix> -
services.etesync-dav.package

The etesync-dav derivation to use.

Type: -package

Default: -"pkgs.etesync-dav"

Declared by:

+
+ +
+
+
+ + services.etesync-dav.package + + +
+
+

The etesync-dav derivation to use.

+ +

Type: +package

+ +

Default: +"pkgs.etesync-dav"

+ +

Declared by:

+ +
+ <home-manager/modules/services/etesync-dav.nix> -
services.etesync-dav.serverUrl

The URL to the etesync server.

Type: -string

Default: -"https://api.etesync.com/"

Declared by:

+
+ +
+
+
+ + services.etesync-dav.serverUrl + + +
+
+

The URL to the etesync server.

+ +

Type: +string

+ +

Default: +"https://api.etesync.com/"

+ +

Declared by:

+ +
+ <home-manager/modules/services/etesync-dav.nix> -
services.etesync-dav.settings

Settings for etesync-dav, passed as environment variables.

Type: -attribute set of (string or signed integer)

Default: -{ }

Example:

{
-  ETESYNC_LISTEN_ADDRESS = "localhost";
+
+
+
+
+ + services.etesync-dav.settings + + +
+
+

Settings for etesync-dav, passed as environment variables.

+ +

Type: +attribute set of (string or signed integer)

+ +

Default: +{ }

+ +

Example:

{
+  ETESYNC_LISTEN_ADDRESS = "localhost";
   ETESYNC_LISTEN_PORT = 37358;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/etesync-dav.nix> -
services.flameshot.enable

Whether to enable Flameshot.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.flameshot.enable + + +
+
+

Whether to enable Flameshot.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/flameshot.nix> -
services.flameshot.package

Package providing flameshot.

Type: -package

Default: -pkgs.flameshot

Declared by:

+
+ +
+
+
+ + services.flameshot.package + + +
+
+

Package providing flameshot.

+ +

Type: +package

+ +

Default: +pkgs.flameshot

+ +

Declared by:

+ +
+ <home-manager/modules/services/flameshot.nix> -
services.flameshot.settings

Configuration to use for Flameshot. See -https://github.com/flameshot-org/flameshot/blob/master/flameshot.example.ini -for available options.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+
+
+
+
+ + services.flameshot.settings + + +
+
+

Configuration to use for Flameshot. See +https://github.com/flameshot-org/flameshot/blob/master/flameshot.example.ini +for available options.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   General = {
     disabledTrayIcon = true;
     showStartupLaunchMessage = false;
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/flameshot.nix> -
services.fluidsynth.enable

Whether to enable fluidsynth midi synthesizer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.fluidsynth.enable + + +
+
+

Whether to enable fluidsynth midi synthesizer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/fluidsynth.nix> -
services.fluidsynth.extraOptions

Extra arguments, added verbatim to the fluidsynth command. See -fluidsynth.conf(1).

Type: -list of string

Default: -[ ]

Example:

[
-  "--sample-rate 96000"
+
+
+
+
+ + services.fluidsynth.extraOptions + + +
+
+

Extra arguments, added verbatim to the fluidsynth command. See +fluidsynth.conf(1).

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--sample-rate 96000"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/fluidsynth.nix> -
services.fluidsynth.soundFont

The soundfont file to use, in SoundFont 2 format.

Type: -path

Default: -"\${pkgs.soundfont-fluid}/share/soundfonts/FluidR3_GM2-2.sf2"

Declared by:

+
+ +
+
+
+ + services.fluidsynth.soundFont + + +
+
+

The soundfont file to use, in SoundFont 2 format.

+ +

Type: +path

+ +

Default: +"\${pkgs.soundfont-fluid}/share/soundfonts/FluidR3_GM2-2.sf2"

+ +

Declared by:

+ +
+ <home-manager/modules/services/fluidsynth.nix> -
services.fluidsynth.soundService

The systemd sound service to depend on.

Type: -one of “jack”, “pipewire-pulse”, “pulseaudio”

Default: -"pulseaudio"

Example: -"pipewire-pulse"

Declared by:

+
+ +
+
+
+ + services.fluidsynth.soundService + + +
+
+

The systemd sound service to depend on.

+ +

Type: +one of “jack”, “pipewire-pulse”, “pulseaudio”

+ +

Default: +"pulseaudio"

+ +

Example: +"pipewire-pulse"

+ +

Declared by:

+ +
+ <home-manager/modules/services/fluidsynth.nix> -
services.fnott.enable

Whether to enable fnott, a lightweight Wayland notification daemon for wlroots-based compositors -.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.fnott.enable + + +
+
+

Whether to enable fnott, a lightweight Wayland notification daemon for wlroots-based compositors +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/fnott.nix> -
services.fnott.package

Package providing fnott.

Type: -package

Default: -pkgs.fnott

Declared by:

+
+ +
+
+
+ + services.fnott.package + + +
+
+

Package providing fnott.

+ +

Type: +package

+ +

Default: +pkgs.fnott

+ +

Declared by:

+ +
+ <home-manager/modules/services/fnott.nix> -
services.fnott.configFile

Path to the configuration file read by fnott.

Note that environment variables in the path won’t be properly expanded.

The configuration specified under + +

+
+
+ + services.fnott.configFile + + +
+
+

Path to the configuration file read by fnott.

Note that environment variables in the path won’t be properly expanded.

The configuration specified under services.fnott.settings will be generated and written to $XDG_CONFIG_HOME/fnott/fnott.ini regardless of this option. This allows using a mutable configuration file -generated from the immutable one, useful in scenarios where live reloading is desired.

Type: -string or path

Default: -"$XDG_CONFIG_HOME/fnott/fnott.ini"

Declared by:

+
+generated from the immutable one, useful in scenarios where live reloading is desired.

+ +

Type: +string or path

+ +

Default: +"$XDG_CONFIG_HOME/fnott/fnott.ini"

+ +

Declared by:

+ +
+ <home-manager/modules/services/fnott.nix> -
services.fnott.extraFlags

Extra arguments to use for executing fnott.

Type: -list of string

Default: -[ ]

Example:

[
-  "-s"
+
+
+
+
+ + services.fnott.extraFlags + + +
+
+

Extra arguments to use for executing fnott.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "-s"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/fnott.nix> -
services.fnott.settings

Configuration written to + +

+
+
+ + services.fnott.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/fnott/fnott.ini.

See -fnott.ini(5) for a list of available options and https://codeberg.org/dnkl/fnott/src/branch/master/fnott.ini -for an example configuration.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+fnott.ini(5) for a list of available options and https://codeberg.org/dnkl/fnott/src/branch/master/fnott.ini
+for an example configuration.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   main = {
     notification-margin = 5;
   };
 
   low = {
     timeout = 5;
-    title-font = "Dina:weight=bold:slant=italic";
-    title-color = "ffffff";
+    title-font = "Dina:weight=bold:slant=italic";
+    title-color = "ffffff";
   };
 }
 
-

Declared by:

-<home-manager/modules/services/fnott.nix> -
services.fusuma.enable

Whether to enable the fusuma systemd service to automatically enable touchpad gesture.

Type: -boolean

Default: -false

Example: -true

Declared by:

-<home-manager/modules/services/fusuma.nix> -
services.fusuma.package

Package providing fusuma.

Type: -package

Default: -pkgs.fusuma

Declared by:

-<home-manager/modules/services/fusuma.nix> -
services.fusuma.extraPackages

Extra packages needs to bring to the scope of fusuma service.

Type: -list of package

Default: -pkgs.coreutils

Example:

with pkgs; [ coreutils xdotool ];
+
-

Declared by:

+
+

Declared by:

+ + +
+ +<home-manager/modules/services/fnott.nix> + +
+ +
+ + services.fusuma.enable + + +
+
+

Whether to enable the fusuma systemd service to automatically enable touchpad gesture.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/fusuma.nix> -
services.fusuma.settings

YAML config that will override the default fusuma configuration.

Type: -YAML value

Example:

{
+
+
+
+
+ + services.fusuma.package + + +
+
+

Package providing fusuma.

+ +

Type: +package

+ +

Default: +pkgs.fusuma

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/fusuma.nix> + +
+
+
+ + services.fusuma.extraPackages + + +
+
+

Extra packages needs to bring to the scope of fusuma service.

+ +

Type: +list of package

+ +

Default: +pkgs.coreutils

+ +

Example:

with pkgs; [ coreutils xdotool ];
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/services/fusuma.nix> + +
+
+
+ + services.fusuma.settings + + +
+
+

YAML config that will override the default fusuma configuration.

+ +

Type: +YAML value

+ +

Example:

{
   threshold = {
     swipe = 0.1;
   };
@@ -13205,1460 +54889,6308 @@ YAML value

Example:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/fusuma.nix> -
services.gammastep.enable

Whether to enable Gammastep.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.gammastep.enable + + +
+
+

Whether to enable Gammastep.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.enableVerboseLogging

Whether to enable verbose service logging.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.gammastep.enableVerboseLogging + + +
+
+

Whether to enable verbose service logging.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.package

Gammastep derivation to use.

Type: -package

Default: -pkgs.gammastep

Declared by:

+
+ +
+
+
+ + services.gammastep.package + + +
+
+

Gammastep derivation to use.

+ +

Type: +package

+ +

Default: +pkgs.gammastep

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.dawnTime

Set the time interval of dawn manually. -The times must be specified as HH:MM in 24-hour format.

Type: -null or string

Default: -null

Example: -"6:00-7:45"

Declared by:

+
+ +
+
+
+ + services.gammastep.dawnTime + + +
+
+

Set the time interval of dawn manually. +The times must be specified as HH:MM in 24-hour format.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"6:00-7:45"

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.duskTime

Set the time interval of dusk manually. -The times must be specified as HH:MM in 24-hour format.

Type: -null or string

Default: -null

Example: -"18:35-20:15"

Declared by:

+
+ +
+
+
+ + services.gammastep.duskTime + + +
+
+

Set the time interval of dusk manually. +The times must be specified as HH:MM in 24-hour format.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"18:35-20:15"

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.latitude

Your current latitude, between -90.0 and + +

+
+
+ + services.gammastep.latitude + + +
+
+

Your current latitude, between -90.0 and 90.0. Must be provided along with -longitude.

Type: -null or string or floating point number

Default: -null

Declared by:

+
+longitude.

+ +

Type: +null or string or floating point number

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.longitude

Your current longitude, between -180.0 and + +

+
+
+ + services.gammastep.longitude + + +
+
+

Your current longitude, between -180.0 and 180.0. Must be provided along with -latitude.

Type: -null or string or floating point number

Default: -null

Declared by:

+
+latitude.

+ +

Type: +null or string or floating point number

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.provider

The location provider to use for determining your location. If set to + +

+
+
+ + services.gammastep.provider + + +
+
+

The location provider to use for determining your location. If set to manual you must also provide latitude/longitude. If set to geoclue2, you must also enable the global -geoclue2 service.

Type: -one of “manual”, “geoclue2”

Default: -"manual"

Declared by:

+
+geoclue2 service.

+ +

Type: +one of “manual”, “geoclue2”

+ +

Default: +"manual"

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.settings

The configuration to pass to Gammastep. + +

+
+
+ + services.gammastep.settings + + +
+
+

The configuration to pass to Gammastep. Available options for Gammastep described in -gammastep(1).

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+gammastep(1).

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   general = {
-    adjustment-method = "randr";
+    adjustment-method = "randr";
   };
   randr = {
     screen = 0;
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.temperature.day

Colour temperature to use during the day, between -1000 and 25000 K.

Type: -signed integer

Default: -5500

Declared by:

+
+ +
+
+
+ + services.gammastep.temperature.day + + +
+
+

Colour temperature to use during the day, between +1000 and 25000 K.

+ +

Type: +signed integer

+ +

Default: +5500

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.temperature.night

Colour temperature to use at night, between -1000 and 25000 K.

Type: -signed integer

Default: -3700

Declared by:

+
+ +
+
+
+ + services.gammastep.temperature.night + + +
+
+

Colour temperature to use at night, between +1000 and 25000 K.

+ +

Type: +signed integer

+ +

Default: +3700

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.gammastep.tray

Start the gammastep-indicator tray applet.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.gammastep.tray + + +
+
+

Start the gammastep-indicator tray applet.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/gammastep.nix> -
services.getmail.enable

Whether to enable the getmail systemd service to automatically retrieve mail.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.getmail.enable + + +
+
+

Whether to enable the getmail systemd service to automatically retrieve mail.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/getmail.nix> -
services.getmail.frequency

The refresh frequency. Check man systemd.time for + +

+
+
+ + services.getmail.frequency + + +
+
+

The refresh frequency. Check man systemd.time for more information on the syntax. If you use a gpg-agent in combination with the passwordCommand, keep the poll frequency below the cache-ttl value (as set by the default) to avoid pinentry asking -permanently for a password.

Type: -string

Default: -"*:0/5"

Example: -"hourly"

Declared by:

+
+permanently for a password.

+ +

Type: +string

+ +

Default: +"*:0/5"

+ +

Example: +"hourly"

+ +

Declared by:

+ +
+ <home-manager/modules/services/getmail.nix> -
services.git-sync.enable

Whether to enable git-sync services.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.git-sync.enable + + +
+
+

Whether to enable git-sync services.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/git-sync.nix> -
services.git-sync.package

Package containing the git-sync program.

Type: -package

Default: -pkgs.git-sync

Declared by:

+
+ +
+
+
+ + services.git-sync.package + + +
+
+

Package containing the git-sync program.

+ +

Type: +package

+ +

Default: +pkgs.git-sync

+ +

Declared by:

+ +
+ <home-manager/modules/services/git-sync.nix> -
services.git-sync.repositories

The repositories that should be synchronized.

Type: -attribute set of (submodule)

Declared by:

+
+ +
+
+
+ + services.git-sync.repositories + + +
+
+

The repositories that should be synchronized.

+ +

Type: +attribute set of (submodule)

+ +

Declared by:

+ +
+ <home-manager/modules/services/git-sync.nix> -
services.git-sync.repositories.<name>.interval

The interval, specified in seconds, at which the synchronization will -be triggered even without filesystem changes.

Type: -signed integer

Default: -500

Declared by:

+
+ +
+
+
+ + services.git-sync.repositories.<name>.interval + + +
+
+

The interval, specified in seconds, at which the synchronization will +be triggered even without filesystem changes.

+ +

Type: +signed integer

+ +

Default: +500

+ +

Declared by:

+ +
+ <home-manager/modules/services/git-sync.nix> -
services.git-sync.repositories.<name>.path

The path at which to sync the repository

Type: -path

Declared by:

+
+ +
+
+
+ + services.git-sync.repositories.<name>.path + + +
+
+

The path at which to sync the repository

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/services/git-sync.nix> -
services.git-sync.repositories.<name>.uri

The URI of the remote to be synchronized. This is only used in the + +

+
+
+ + services.git-sync.repositories.<name>.uri + + +
+
+

The URI of the remote to be synchronized. This is only used in the event that the directory does not already exist. See -https://git-scm.com/docs/git-clone#_git_urls -for the supported URIs.

This option is not supported on Darwin.

Type: -string

Example: -"git+ssh://user@example.com:/~[user]/path/to/repo.git"

Declared by:

+
+https://git-scm.com/docs/git-clone#_git_urls +for the supported URIs.

This option is not supported on Darwin.

+ +

Type: +string

+ +

Example: +"git+ssh://user@example.com:/~[user]/path/to/repo.git"

+ +

Declared by:

+ +
+ <home-manager/modules/services/git-sync.nix> -
services.gnome-keyring.enable

Whether to enable GNOME Keyring.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.gnome-keyring.enable + + +
+
+

Whether to enable GNOME Keyring.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gnome-keyring.nix> -
services.gnome-keyring.components

The GNOME keyring components to start. If empty then the -default set of components will be started.

Type: -list of (one of “pkcs11”, “secrets”, “ssh”)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.gnome-keyring.components + + +
+
+

The GNOME keyring components to start. If empty then the +default set of components will be started.

+ +

Type: +list of (one of “pkcs11”, “secrets”, “ssh”)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/gnome-keyring.nix> -
services.gpg-agent.enable

Whether to enable GnuPG private key agent.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.gpg-agent.enable + + +
+
+

Whether to enable GnuPG private key agent.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.enableBashIntegration

Whether to enable Bash integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + services.gpg-agent.enableBashIntegration + + +
+
+

Whether to enable Bash integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.enableExtraSocket

Whether to enable extra socket of the GnuPG key agent (useful for GPG -Agent forwarding).

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.gpg-agent.enableExtraSocket + + +
+
+

Whether to enable extra socket of the GnuPG key agent (useful for GPG +Agent forwarding).

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.enableFishIntegration

Whether to enable Fish integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + services.gpg-agent.enableFishIntegration + + +
+
+

Whether to enable Fish integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.enableScDaemon

Make use of the scdaemon tool. This option has the effect of + +

+
+
+ + services.gpg-agent.enableScDaemon + + +
+
+

Make use of the scdaemon tool. This option has the effect of enabling the ability to do smartcard operations. When disabled, this option passes -disable-scdaemon setting to gpg-agent.

Type: -boolean

Default: -true

Declared by:

+
+disable-scdaemon setting to gpg-agent.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.enableSshSupport

Whether to use the GnuPG key agent for SSH keys.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.gpg-agent.enableSshSupport + + +
+
+

Whether to use the GnuPG key agent for SSH keys.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.enableZshIntegration

Whether to enable Zsh integration.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + services.gpg-agent.enableZshIntegration + + +
+
+

Whether to enable Zsh integration.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.defaultCacheTtl

Set the time a cache entry is valid to the given number of -seconds.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + services.gpg-agent.defaultCacheTtl + + +
+
+

Set the time a cache entry is valid to the given number of +seconds.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.defaultCacheTtlSsh

Set the time a cache entry used for SSH keys is valid to the -given number of seconds.

Type: -null or signed integer

Default: -null

Declared by:

+
+ +
+
+
+ + services.gpg-agent.defaultCacheTtlSsh + + +
+
+

Set the time a cache entry used for SSH keys is valid to the +given number of seconds.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.extraConfig

Extra configuration lines to append to the gpg-agent -configuration file.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + services.gpg-agent.extraConfig + + +
+
+

Extra configuration lines to append to the gpg-agent +configuration file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   allow-emacs-pinentry
   allow-loopback-pinentry
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.grabKeyboardAndMouse

Tell the pinentry to grab the keyboard and mouse. This + +

+
+
+ + services.gpg-agent.grabKeyboardAndMouse + + +
+
+

Tell the pinentry to grab the keyboard and mouse. This option should in general be used to avoid X-sniffing attacks. When disabled, this option passes -no-grab setting to gpg-agent.

Type: -boolean

Default: -true

Declared by:

+
+no-grab setting to gpg-agent.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.maxCacheTtl

Set the maximum time a cache entry is valid to n seconds. After this + +

+
+
+ + services.gpg-agent.maxCacheTtl + + +
+
+

Set the maximum time a cache entry is valid to n seconds. After this time a cache entry will be expired even if it has been accessed recently or has been set using gpg-preset-passphrase. The default is -2 hours (7200 seconds).

Type: -null or signed integer

Default: -null

Declared by:

+
+2 hours (7200 seconds).

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.maxCacheTtlSsh

Set the maximum time a cache entry used for SSH keys is valid to n + +

+
+
+ + services.gpg-agent.maxCacheTtlSsh + + +
+
+

Set the maximum time a cache entry used for SSH keys is valid to n seconds. After this time a cache entry will be expired even if it has been accessed recently or has been set using gpg-preset-passphrase. -The default is 2 hours (7200 seconds).

Type: -null or signed integer

Default: -null

Declared by:

+
+The default is 2 hours (7200 seconds).

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.pinentryFlavor

Which pinentry interface to use. If not + +

+
+
+ + services.gpg-agent.pinentryFlavor + + +
+
+

Which pinentry interface to use. If not null, it sets pinentry-program in gpg-agent.conf. Beware that pinentry-gnome3 may not work on non-Gnome systems. You can fix it by adding the following to your -system configuration:

services.dbus.packages = [ pkgs.gcr ];
-

For this reason, the default is gtk2 for -now.

Type: -null or one of “curses”, “tty”, “gtk2”, “emacs”, “gnome3”, “qt”

Default: -"gtk2"

Example: -"gnome3"

Declared by:

+
+system configuration:

services.dbus.packages = [ pkgs.gcr ];
+

For this reason, the default is gtk2 for +now.

+ +

Type: +null or one of “curses”, “tty”, “gtk2”, “emacs”, “gnome3”, “qt”

+ +

Default: +"gtk2"

+ +

Example: +"gnome3"

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.sshKeys

Which GPG keys (by keygrip) to expose as SSH keys.

Type: -null or (list of string)

Default: -null

Declared by:

+
+ +
+
+
+ + services.gpg-agent.sshKeys + + +
+
+

Which GPG keys (by keygrip) to expose as SSH keys.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.gpg-agent.verbose

Whether to produce verbose output.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.gpg-agent.verbose + + +
+
+

Whether to produce verbose output.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/gpg-agent.nix> -
services.grobi.enable

Whether to enable the grobi display setup daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.grobi.enable + + +
+
+

Whether to enable the grobi display setup daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/grobi.nix> -
services.grobi.executeAfter

Commands to be run after an output configuration was + +

+
+
+ + services.grobi.executeAfter + + +
+
+

Commands to be run after an output configuration was changed. The Nix value declared here will be translated to JSON and written to the execute_after key -in $XDG_CONFIG_HOME/grobi.conf.

Type: -list of string

Default: -[ ]

Example:

[
-  "setxkbmap dvorak"
+in $XDG_CONFIG_HOME/grobi.conf.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "setxkbmap dvorak"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/grobi.nix> -
services.grobi.rules

These are the rules grobi tries to match to the current + +

+
+
+ + services.grobi.rules + + +
+
+

These are the rules grobi tries to match to the current output configuration. The rules are evaluated top to bottom, the first matching rule is applied and processing stops. See -https://github.com/fd0/grobi/blob/master/doc/grobi.conf +https://github.com/fd0/grobi/blob/master/doc/grobi.conf for more information. The Nix value declared here will be translated to JSON and written to the rules -key in $XDG_CONFIG_HOME/grobi.conf.

Type: -list of attribute set of (string or boolean or signed integer or list of string)

Default: -[ ]

Example:

[
+key in $XDG_CONFIG_HOME/grobi.conf.

+ +

Type: +list of attribute set of (string or boolean or signed integer or list of string)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    name = "Home";
-    outputs_connected = [ "DP-2" ];
-    configure_single = "DP-2";
+    name = "Home";
+    outputs_connected = [ "DP-2" ];
+    configure_single = "DP-2";
     primary = true;
     atomic = true;
     execute_after = [
-      "${pkgs.xorg.xrandr}/bin/xrandr --dpi 96"
-      "${pkgs.xmonad-with-packages}/bin/xmonad --restart";
+      "${pkgs.xorg.xrandr}/bin/xrandr --dpi 96"
+      "${pkgs.xmonad-with-packages}/bin/xmonad --restart";
     ];
   }
   {
-    name = "Mobile";
-    outputs_disconnected = [ "DP-2" ];
-    configure_single = "eDP-1";
+    name = "Mobile";
+    outputs_disconnected = [ "DP-2" ];
+    configure_single = "eDP-1";
     primary = true;
     atomic = true;
     execute_after = [
-      "${pkgs.xorg.xrandr}/bin/xrandr --dpi 120"
-      "${pkgs.xmonad-with-packages}/bin/xmonad --restart";
+      "${pkgs.xorg.xrandr}/bin/xrandr --dpi 120"
+      "${pkgs.xmonad-with-packages}/bin/xmonad --restart";
     ];
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/grobi.nix> -
services.gromit-mpx.enable

Whether to enable Gromit-MPX annotation tool.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.enable + + +
+
+

Whether to enable Gromit-MPX annotation tool.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.package

The gromit-mpx package to use.

Type: -package

Default: -"pkgs.gromit-mpx"

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.package + + +
+
+

The gromit-mpx package to use.

+ +

Type: +package

+ +

Default: +"pkgs.gromit-mpx"

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.hotKey

A keysym or raw keycode that toggles the activation state of + +

+
+
+ + services.gromit-mpx.hotKey + + +
+
+

A keysym or raw keycode that toggles the activation state of gromit-mpx. Set to null to disable the hotkey in which case you’ll have to activate gromit-mpx -manually using the command line.

Type: -null or string or positive integer, meaning >0

Default: -"F9"

Example: -"Insert"

Declared by:

+
+manually using the command line.

+ +

Type: +null or string or positive integer, meaning >0

+ +

Default: +"F9"

+ +

Example: +"Insert"

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.opacity

Opacity of the drawing overlay.

Type: -float between 0.0 and 1.0 (inclusive)

Default: -0.75

Example: -1.0

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.opacity + + +
+
+

Opacity of the drawing overlay.

+ +

Type: +float between 0.0 and 1.0 (inclusive)

+ +

Default: +0.75

+ +

Example: +1.0

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.tools

Tool definitions for gromit-mpx to use.

Type: -list of (submodule)

Default:

[
+
+
+
+
+ + services.gromit-mpx.tools + + +
+
+

Tool definitions for gromit-mpx to use.

+ +

Type: +list of (submodule)

+ +

Default:

[
   {
-    color = "red";
-    device = "default";
+    color = "red";
+    device = "default";
     size = 5;
-    type = "pen";
+    type = "pen";
   }
   {
-    color = "blue";
-    device = "default";
+    color = "blue";
+    device = "default";
     modifiers = [
-      "SHIFT"
+      "SHIFT"
     ];
     size = 5;
-    type = "pen";
+    type = "pen";
   }
   {
-    color = "yellow";
-    device = "default";
+    color = "yellow";
+    device = "default";
     modifiers = [
-      "CONTROL"
+      "CONTROL"
     ];
     size = 5;
-    type = "pen";
+    type = "pen";
   }
   {
     arrowSize = 1;
-    color = "green";
-    device = "default";
+    color = "green";
+    device = "default";
     modifiers = [
-      "2"
+      "2"
     ];
     size = 6;
-    type = "pen";
+    type = "pen";
   }
   {
-    device = "default";
+    device = "default";
     modifiers = [
-      "3"
+      "3"
     ];
     size = 75;
-    type = "eraser";
+    type = "eraser";
   }
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.tools.*.arrowSize

If not null, automatically draw an arrow -at the end of a stroke with the given size.

Type: -null or positive integer, meaning >0

Default: -null

Example: -2

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.tools.*.arrowSize + + +
+
+

If not null, automatically draw an arrow +at the end of a stroke with the given size.

+ +

Type: +null or positive integer, meaning >0

+ +

Default: +null

+ +

Example: +2

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.tools.*.color

The stroke (or recolor) color of the tool.

Type: -string

Default: -"red"

Example: -"#ff00ff"

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.tools.*.color + + +
+
+

The stroke (or recolor) color of the tool.

+ +

Type: +string

+ +

Default: +"red"

+ +

Example: +"#ff00ff"

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.tools.*.device

Use this tool with the given xinput device. The device with -the name default works with any input.

Type: -string

Example: -"default"

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.tools.*.device + + +
+
+

Use this tool with the given xinput device. The device with +the name default works with any input.

+ +

Type: +string

+ +

Example: +"default"

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.tools.*.modifiers

Only activate this tool if the given modifiers are also active.

Type: -list of (one of “1”, “2”, “3”, “4”, “5”, “SHIFT”, “CONTROL”, “ALT”, “META”)

Default: -[ ]

Example:

[
-  "SHIFT"
+
+
+
+
+ + services.gromit-mpx.tools.*.modifiers + + +
+
+

Only activate this tool if the given modifiers are also active.

+ +

Type: +list of (one of “1”, “2”, “3”, “4”, “5”, “SHIFT”, “CONTROL”, “ALT”, “META”)

+ +

Default: +[ ]

+ +

Example:

[
+  "SHIFT"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.tools.*.size

The tool size.

Type: -positive integer, meaning >0

Default: -5

Example: -3

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.tools.*.size + + +
+
+

The tool size.

+ +

Type: +positive integer, meaning >0

+ +

Default: +5

+ +

Example: +3

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.tools.*.type

Which type of tool this is.

Type: -one of “pen”, “eraser”, “recolor”

Default: -"pen"

Example: -"eraser"

Declared by:

+
+ +
+
+
+ + services.gromit-mpx.tools.*.type + + +
+
+

Which type of tool this is.

+ +

Type: +one of “pen”, “eraser”, “recolor”

+ +

Default: +"pen"

+ +

Example: +"eraser"

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.gromit-mpx.undoKey

A keysym or raw keycode that causes gromit-mpx to undo the + +

+
+
+ + services.gromit-mpx.undoKey + + +
+
+

A keysym or raw keycode that causes gromit-mpx to undo the last stroke. Use this key along with the shift key to redo an undone stoke. Set to null to disable the -undo hotkey.

Type: -null or string or positive integer, meaning >0

Default: -"F10"

Declared by:

+
+undo hotkey.

+ +

Type: +null or string or positive integer, meaning >0

+ +

Default: +"F10"

+ +

Declared by:

+ +
+ <home-manager/modules/services/gromit-mpx.nix> -
services.himalaya-notify.enable

Whether to enable the Himalaya new emails notifier service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.himalaya-notify.enable + + +
+
+

Whether to enable the Himalaya new emails notifier service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.himalaya-notify.environment

Extra environment variables to be exported in the service.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "PASSWORD_STORE_DIR" = "~/.password-store";
+
+
+
+
+ + services.himalaya-notify.environment + + +
+
+

Extra environment variables to be exported in the service.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "PASSWORD_STORE_DIR" = "~/.password-store";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.himalaya-notify.settings.account

Name of the account the notifier should be started for. If -no account is given, the default one is used.

Type: -null or string

Default: -null

Example: -"gmail"

Declared by:

+
+ +
+
+
+ + services.himalaya-notify.settings.account + + +
+
+

Name of the account the notifier should be started for. If +no account is given, the default one is used.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"gmail"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.himalaya-notify.settings.keepalive

Notifier lifetime of the IDLE session (in seconds).

Type: -null or signed integer

Default: -null

Example: -"500"

Declared by:

+
+ +
+
+
+ + services.himalaya-notify.settings.keepalive + + +
+
+

Notifier lifetime of the IDLE session (in seconds).

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +"500"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.himalaya-watch.enable

Whether to enable the Himalaya folder changes watcher service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.himalaya-watch.enable + + +
+
+

Whether to enable the Himalaya folder changes watcher service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.himalaya-watch.environment

Extra environment variables to be exported in the service.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "PASSWORD_STORE_DIR" = "~/.password-store";
+
+
+
+
+ + services.himalaya-watch.environment + + +
+
+

Extra environment variables to be exported in the service.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "PASSWORD_STORE_DIR" = "~/.password-store";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.himalaya-watch.settings.account

Name of the account the watcher should be started for. If -no account is given, the default one is used.

Type: -null or string

Default: -null

Example: -"gmail"

Declared by:

+
+ +
+
+
+ + services.himalaya-watch.settings.account + + +
+
+

Name of the account the watcher should be started for. If +no account is given, the default one is used.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"gmail"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.himalaya-watch.settings.keepalive

Watcher lifetime of the IDLE session (in seconds).

Type: -null or signed integer

Default: -null

Example: -"500"

Declared by:

+
+ +
+
+
+ + services.himalaya-watch.settings.keepalive + + +
+
+

Watcher lifetime of the IDLE session (in seconds).

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +"500"

+ +

Declared by:

+ +
+ <home-manager/modules/programs/himalaya.nix> -
services.home-manager.autoUpgrade.enable

Whether to enable the Home Manager upgrade service that periodically updates your Nix -channels before running home-manager switch.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.home-manager.autoUpgrade.enable + + +
+
+

Whether to enable the Home Manager upgrade service that periodically updates your Nix +channels before running home-manager switch.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/home-manager-auto-upgrade.nix> -
services.home-manager.autoUpgrade.frequency

The interval at which the Home Manager auto upgrade is run. + +

+
+
+ + services.home-manager.autoUpgrade.frequency + + +
+
+

The interval at which the Home Manager auto upgrade is run. This value is passed to the systemd timer configuration as the OnCalendar option. The format is described in -systemd.time(7).

Type: -string

Example: -"weekly"

Declared by:

+
+systemd.time(7).

+ +

Type: +string

+ +

Example: +"weekly"

+ +

Declared by:

+ +
+ <home-manager/modules/services/home-manager-auto-upgrade.nix> -
services.hound.enable

Whether to enable hound.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.hound.enable + + +
+
+

Whether to enable hound.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/hound.nix> -
services.hound.databasePath

The Hound database path.

Type: -path

Default: -"$XDG_DATA_HOME/hound"

Declared by:

+
+ +
+
+
+ + services.hound.databasePath + + +
+
+

The Hound database path.

+ +

Type: +path

+ +

Default: +"$XDG_DATA_HOME/hound"

+ +

Declared by:

+ +
+ <home-manager/modules/services/hound.nix> -
services.hound.listenAddress

Listen address of the Hound daemon.

Type: -string

Default: -"localhost:6080"

Declared by:

+
+ +
+
+
+ + services.hound.listenAddress + + +
+
+

Listen address of the Hound daemon.

+ +

Type: +string

+ +

Default: +"localhost:6080"

+ +

Declared by:

+ +
+ <home-manager/modules/services/hound.nix> -
services.hound.maxConcurrentIndexers

Limit the amount of concurrent indexers.

Type: -positive integer, meaning >0

Default: -2

Declared by:

+
+ +
+
+
+ + services.hound.maxConcurrentIndexers + + +
+
+

Limit the amount of concurrent indexers.

+ +

Type: +positive integer, meaning >0

+ +

Default: +2

+ +

Declared by:

+ +
+ <home-manager/modules/services/hound.nix> -
services.hound.repositories

The repository configuration.

Type: -attribute set of (JSON value)

Default: -{ }

Example:

{
+
+
+
+
+ + services.hound.repositories + + +
+
+

The repository configuration.

+ +

Type: +attribute set of (JSON value)

+ +

Default: +{ }

+ +

Example:

{
   SomeGitRepo = {
-    url = "https://www.github.com/YourOrganization/RepoOne.git";
+    url = "https://www.github.com/YourOrganization/RepoOne.git";
     ms-between-poll = 10000;
     exclude-dot-files = true;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/hound.nix> -
services.imapnotify.enable

Whether to enable imapnotify.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.imapnotify.enable + + +
+
+

Whether to enable imapnotify.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/imapnotify.nix> -
services.imapnotify.package

The imapnotify package to use

Type: -package

Default: -pkgs.goimapnotify

Example: -pkgs.imapnotify

Declared by:

+
+ +
+
+
+ + services.imapnotify.package + + +
+
+

The imapnotify package to use

+ +

Type: +package

+ +

Default: +pkgs.goimapnotify

+ +

Example: +pkgs.imapnotify

+ +

Declared by:

+ +
+ <home-manager/modules/services/imapnotify.nix> -
services.kanshi.enable

Whether to enable kanshi, a Wayland daemon that automatically configures outputs.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.kanshi.enable + + +
+
+

Whether to enable kanshi, a Wayland daemon that automatically configures outputs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.package

kanshi derivation to use.

Type: -package

Default: -pkgs.kanshi

Declared by:

+
+ +
+
+
+ + services.kanshi.package + + +
+
+

kanshi derivation to use.

+ +

Type: +package

+ +

Default: +pkgs.kanshi

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.extraConfig

Extra configuration lines to append to the kanshi -configuration file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + services.kanshi.extraConfig + + +
+
+

Extra configuration lines to append to the kanshi +configuration file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles

List of profiles.

Type: -attribute set of (submodule)

Default: -{ }

Example:

undocked = {
+
+
+
+
+ + services.kanshi.profiles + + +
+
+

List of profiles.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

undocked = {
   outputs = [
     {
-      criteria = "eDP-1";
+      criteria = "eDP-1";
     }
   ];
 };
 docked = {
   outputs = [
     {
-      criteria = "eDP-1";
+      criteria = "eDP-1";
     }
     {
-      criteria = "Some Company ASDF 4242";
-      transform = "90";
+      criteria = "Some Company ASDF 4242";
+      transform = "90";
     }
   ];
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.exec

Commands executed after the profile is successfully applied. + +

+
+
+ + services.kanshi.profiles.<name>.exec + + +
+
+

Commands executed after the profile is successfully applied. Note that if you provide multiple commands, they will be -executed asynchronously with no guaranteed ordering.

Type: -(list of string) or string convertible to it

Default: -[ ]

Example: -"[ \${pkg.sway}/bin/swaymsg workspace 1, move workspace to eDP-1 ]"

Declared by:

+
+executed asynchronously with no guaranteed ordering.

+ +

Type: +(list of string) or string convertible to it

+ +

Default: +[ ]

+ +

Example: +"[ \${pkg.sway}/bin/swaymsg workspace 1, move workspace to eDP-1 ]"

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs

Outputs configuration.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.kanshi.profiles.<name>.outputs + + +
+
+

Outputs configuration.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs.*.adaptiveSync

Enables or disables adaptive synchronization -(aka. Variable Refresh Rate).

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + services.kanshi.profiles.<name>.outputs.*.adaptiveSync + + +
+
+

Enables or disables adaptive synchronization +(aka. Variable Refresh Rate).

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs.*.criteria

The criteria can either be an output name, an output description or “*”. + +

+
+
+ + services.kanshi.profiles.<name>.outputs.*.criteria + + +
+
+

The criteria can either be an output name, an output description or “*”. The latter can be used to match any output.

On sway(1), output names and descriptions can be obtained via -swaymsg -t get_outputs.

Type: -string

Declared by:

+
+swaymsg -t get_outputs.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs.*.mode

<width>x<height>[@<rate>[Hz]]

Configures the specified output to use the specified mode. + +

+
+
+ + services.kanshi.profiles.<name>.outputs.*.mode + + +
+
+

<width>x<height>[@<rate>[Hz]]

Configures the specified output to use the specified mode. Modes are a combination of width and height (in pixels) and -a refresh rate (in Hz) that your display can be configured to use.

Type: -null or string

Default: -null

Example: -"1920x1080@60Hz"

Declared by:

+
+a refresh rate (in Hz) that your display can be configured to use.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"1920x1080@60Hz"

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs.*.position

<x>,<y>

Places the output at the specified position in the global coordinates -space.

Type: -null or string

Default: -null

Example: -"1600,0"

Declared by:

+
+ +
+
+
+ + services.kanshi.profiles.<name>.outputs.*.position + + +
+
+

<x>,<y>

Places the output at the specified position in the global coordinates +space.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"1600,0"

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs.*.scale

Scales the output by the specified scale factor.

Type: -null or floating point number

Default: -null

Example: -2

Declared by:

+
+ +
+
+
+ + services.kanshi.profiles.<name>.outputs.*.scale + + +
+
+

Scales the output by the specified scale factor.

+ +

Type: +null or floating point number

+ +

Default: +null

+ +

Example: +2

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs.*.status

Enables or disables the specified output.

Type: -null or one of “enable”, “disable”

Default: -null

Declared by:

+
+ +
+
+
+ + services.kanshi.profiles.<name>.outputs.*.status + + +
+
+

Enables or disables the specified output.

+ +

Type: +null or one of “enable”, “disable”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.profiles.<name>.outputs.*.transform

Sets the output transform.

Type: -null or one of “normal”, “90”, “180”, “270”, “flipped”, “flipped-90”, “flipped-180”, “flipped-270”

Default: -null

Declared by:

+
+ +
+
+
+ + services.kanshi.profiles.<name>.outputs.*.transform + + +
+
+

Sets the output transform.

+ +

Type: +null or one of “normal”, “90”, “180”, “270”, “flipped”, “flipped-90”, “flipped-180”, “flipped-270”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kanshi.systemdTarget

Systemd target to bind to.

Type: -string

Default: -"sway-session.target"

Declared by:

+
+ +
+
+
+ + services.kanshi.systemdTarget + + +
+
+

Systemd target to bind to.

+ +

Type: +string

+ +

Default: +"sway-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/services/kanshi.nix> -
services.kbfs.enable

Whether to enable Keybase File System.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.kbfs.enable + + +
+
+

Whether to enable Keybase File System.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/kbfs.nix> -
services.kbfs.extraFlags

Additional flags to pass to the Keybase filesystem on launch.

Type: -list of string

Default: -[ ]

Example:

[
-  "-label kbfs"
-  "-mount-type normal"
+
+
+
+
+ + services.kbfs.extraFlags + + +
+
+

Additional flags to pass to the Keybase filesystem on launch.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "-label kbfs"
+  "-mount-type normal"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/kbfs.nix> -
services.kbfs.mountPoint

Mount point for the Keybase filesystem, relative to -HOME.

Type: -string

Default: -"keybase"

Declared by:

+
+ +
+
+
+ + services.kbfs.mountPoint + + +
+
+

Mount point for the Keybase filesystem, relative to +HOME.

+ +

Type: +string

+ +

Default: +"keybase"

+ +

Declared by:

+ +
+ <home-manager/modules/services/kbfs.nix> -
services.kdeconnect.enable

Whether to enable KDE connect.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.kdeconnect.enable + + +
+
+

Whether to enable KDE connect.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/kdeconnect.nix> -
services.kdeconnect.indicator

Whether to enable kdeconnect-indicator service.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.kdeconnect.indicator + + +
+
+

Whether to enable kdeconnect-indicator service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/kdeconnect.nix> -
services.keepassx.enable

Whether to enable the KeePassX password manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.keepassx.enable + + +
+
+

Whether to enable the KeePassX password manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/keepassx.nix> -
services.keybase.enable

Whether to enable Keybase.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.keybase.enable + + +
+
+

Whether to enable Keybase.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/keybase.nix> -
services.keynav.enable

Whether to enable keynav.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.keynav.enable + + +
+
+

Whether to enable keynav.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/keynav.nix> -
services.lieer.enable

Whether to enable lieer Gmail synchronization service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.lieer.enable + + +
+
+

Whether to enable lieer Gmail synchronization service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/lieer.nix> -
services.listenbrainz-mpd.enable

Whether to enable listenbrainz-mpd.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.listenbrainz-mpd.enable + + +
+
+

Whether to enable listenbrainz-mpd.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/listenbrainz-mpd.nix> -
services.listenbrainz-mpd.package

The listenbrainz-mpd package to use.

Type: -package

Default: -pkgs.listenbrainz-mpd

Declared by:

+
+ +
+
+
+ + services.listenbrainz-mpd.package + + +
+
+

The listenbrainz-mpd package to use.

+ +

Type: +package

+ +

Default: +pkgs.listenbrainz-mpd

+ +

Declared by:

+ +
+ <home-manager/modules/services/listenbrainz-mpd.nix> -
services.listenbrainz-mpd.settings

Configuration for listenbrainz-mpd written to -$XDG_CONFIG_HOME/listenbrainz-mpd/config.toml.

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + services.listenbrainz-mpd.settings + + +
+
+

Configuration for listenbrainz-mpd written to +$XDG_CONFIG_HOME/listenbrainz-mpd/config.toml.

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   submission = {
-    tokenFile = "/run/secrets/listenbrainz-mpd";
+    tokenFile = "/run/secrets/listenbrainz-mpd";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/listenbrainz-mpd.nix> -
services.lorri.enable

Whether to enable lorri build daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.lorri.enable + + +
+
+

Whether to enable lorri build daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/lorri.nix> -
services.lorri.enableNotifications

Whether to enable lorri build notifications.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.lorri.enableNotifications + + +
+
+

Whether to enable lorri build notifications.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/lorri.nix> -
services.lorri.package

Which lorri package to install.

Type: -package

Default: -pkgs.lorri

Declared by:

+
+ +
+
+
+ + services.lorri.package + + +
+
+

Which lorri package to install.

+ +

Type: +package

+ +

Default: +pkgs.lorri

+ +

Declared by:

+ +
+ <home-manager/modules/services/lorri.nix> -
services.lorri.nixPackage

Which nix package to use.

Type: -package

Default: -pkgs.nix

Example: -pkgs.nixVersions.unstable

Declared by:

+
+ +
+
+
+ + services.lorri.nixPackage + + +
+
+

Which nix package to use.

+ +

Type: +package

+ +

Default: +pkgs.nix

+ +

Example: +pkgs.nixVersions.unstable

+ +

Declared by:

+ +
+ <home-manager/modules/services/lorri.nix> -
services.mako.enable

Whether to enable Mako, lightweight notification daemon for Wayland -.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mako.enable + + +
+
+

Whether to enable Mako, lightweight notification daemon for Wayland +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.package

The mako package to use.

Type: -package

Default: -pkgs.mako

Declared by:

+
+ +
+
+
+ + services.mako.package + + +
+
+

The mako package to use.

+ +

Type: +package

+ +

Default: +pkgs.mako

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.actions

Applications may request an action to be associated with activating a -notification. Disabling this will cause mako to ignore these requests.

Type: -null or boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.mako.actions + + +
+
+

Applications may request an action to be associated with activating a +notification. Disabling this will cause mako to ignore these requests.

+ +

Type: +null or boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.anchor

Show notifications at the specified position on the output. + +

+
+
+ + services.mako.anchor + + +
+
+

Show notifications at the specified position on the output. Supported values are top-right, top-center, top-left, bottom-right, -bottom-center, bottom-left, and center.

Type: -null or one of “top-right”, “top-center”, “top-left”, “bottom-right”, “bottom-center”, “bottom-left”, “center”

Default: -"top-right"

Declared by:

+
+bottom-center, bottom-left, and center.

+ +

Type: +null or one of “top-right”, “top-center”, “top-left”, “bottom-right”, “bottom-center”, “bottom-left”, “center”

+ +

Default: +"top-right"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.backgroundColor

Set popup background color to a specific color, represented in hex -color code.

Type: -null or string

Default: -"#285577FF"

Declared by:

+
+ +
+
+
+ + services.mako.backgroundColor + + +
+
+

Set popup background color to a specific color, represented in hex +color code.

+ +

Type: +null or string

+ +

Default: +"#285577FF"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.borderColor

Set popup border color to a specific color, represented in hex color -code.

Type: -null or string

Default: -"#4C7899FF"

Declared by:

+
+ +
+
+
+ + services.mako.borderColor + + +
+
+

Set popup border color to a specific color, represented in hex color +code.

+ +

Type: +null or string

+ +

Default: +"#4C7899FF"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.borderRadius

Set popup corner radius to the specified number of pixels.

Type: -null or signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + services.mako.borderRadius + + +
+
+

Set popup corner radius to the specified number of pixels.

+ +

Type: +null or signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.borderSize

Set popup border size to the specified number of pixels.

Type: -null or signed integer

Default: -1

Declared by:

+
+ +
+
+
+ + services.mako.borderSize + + +
+
+

Set popup border size to the specified number of pixels.

+ +

Type: +null or signed integer

+ +

Default: +1

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.defaultTimeout

Set the default timeout to timeout in milliseconds. To disable the -timeout, set it to zero.

Type: -null or signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + services.mako.defaultTimeout + + +
+
+

Set the default timeout to timeout in milliseconds. To disable the +timeout, set it to zero.

+ +

Type: +null or signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.extraConfig

Additional configuration.

Type: -strings concatenated with “\n”

Default: -""

Example:

[urgency=low]
+
+
+
+
+ + services.mako.extraConfig + + +
+
+

Additional configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

[urgency=low]
 border-color=#b8bb26
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.font

Font to use, in Pango format.

Type: -null or string

Default: -"monospace 10"

Declared by:

+
+ +
+
+
+ + services.mako.font + + +
+
+

Font to use, in Pango format.

+ +

Type: +null or string

+ +

Default: +"monospace 10"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.format

Set notification format string to format. See FORMAT SPECIFIERS for + +

+
+
+ + services.mako.format + + +
+
+

Set notification format string to format. See FORMAT SPECIFIERS for more information. To change this for grouped notifications, set it -within a grouped criteria.

Type: -null or string

Default: -"<b>%s</b>\\n%b"

Declared by:

+
+within a grouped criteria.

+ +

Type: +null or string

+ +

Default: +"<b>%s</b>\\n%b"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.groupBy

A comma-separated list of criteria fields that will be compared to + +

+
+
+ + services.mako.groupBy + + +
+
+

A comma-separated list of criteria fields that will be compared to other visible notifications to determine if this one should form a group with them. All listed criteria must be exactly equal for two -notifications to group.

Type: -null or string

Default: -null

Declared by:

+
+notifications to group.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.height

Set maximum height of notification popups. Notifications whose text -takes up less space are shrunk to fit.

Type: -null or signed integer

Default: -100

Declared by:

+
+ +
+
+
+ + services.mako.height + + +
+
+

Set maximum height of notification popups. Notifications whose text +takes up less space are shrunk to fit.

+ +

Type: +null or signed integer

+ +

Default: +100

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.iconPath

Paths to search for icons when a notification specifies a name + +

+
+
+ + services.mako.iconPath + + +
+
+

Paths to search for icons when a notification specifies a name instead of a full path. Colon-delimited. This approximates the search algorithm used by the XDG Icon Theme Specification, but does not support any of the theme metadata. Therefore, if you want to search parent themes, you’ll need to add them to the path manually.

The /usr/share/icons/hicolor and /usr/share/pixmaps directories are -always searched.

Type: -null or string

Default: -null

Declared by:

+
+always searched.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.icons

Whether or not to show icons in notifications.

Type: -null or boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.mako.icons + + +
+
+

Whether or not to show icons in notifications.

+ +

Type: +null or boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.ignoreTimeout

If set, mako will ignore the expire timeout sent by notifications -and use the one provided by default-timeout instead.

Type: -null or boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.mako.ignoreTimeout + + +
+
+

If set, mako will ignore the expire timeout sent by notifications +and use the one provided by default-timeout instead.

+ +

Type: +null or boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.layer

Arrange mako at the specified layer, relative to normal windows. + +

+
+
+ + services.mako.layer + + +
+
+

Arrange mako at the specified layer, relative to normal windows. Supported values are background, bottom, top, and overlay. Using overlay will cause notifications to be displayed above fullscreen windows, though this may also occur at top depending on your -compositor.

Type: -null or one of “background”, “bottom”, “top”, “overlay”

Default: -"top"

Declared by:

+
+compositor.

+ +

Type: +null or one of “background”, “bottom”, “top”, “overlay”

+ +

Default: +"top"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.margin

Set margin of each edge specified in pixels. Specify single value to + +

+
+
+ + services.mako.margin + + +
+
+

Set margin of each edge specified in pixels. Specify single value to apply margin on all sides. Two comma-separated values will set vertical and horizontal edges separately. Four comma-separated will give each edge a separate value. For example: 10,20,5 will set top margin to 10, left and right to 20 -and bottom to five.

Type: -null or string

Default: -"10"

Declared by:

+
+and bottom to five.

+ +

Type: +null or string

+ +

Default: +"10"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.markup

If 1, enable Pango markup. If 0, disable Pango markup. If enabled, + +

+
+
+ + services.mako.markup + + +
+
+

If 1, enable Pango markup. If 0, disable Pango markup. If enabled, Pango markup will be interpreted in your format specifier and in the -body of notifications.

Type: -null or boolean

Default: -true

Declared by:

+
+body of notifications.

+ +

Type: +null or boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.maxIconSize

Set maximum icon size to the specified number of pixels.

Type: -null or signed integer

Default: -64

Declared by:

+
+ +
+
+
+ + services.mako.maxIconSize + + +
+
+

Set maximum icon size to the specified number of pixels.

+ +

Type: +null or signed integer

+ +

Default: +64

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.maxVisible

Set maximum number of visible notifications. Set -1 to show all.

Type: -null or signed integer

Default: -5

Declared by:

+
+ +
+
+
+ + services.mako.maxVisible + + +
+
+

Set maximum number of visible notifications. Set -1 to show all.

+ +

Type: +null or signed integer

+ +

Default: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.output

Show notifications on the specified output. If empty, notifications + +

+
+
+ + services.mako.output + + +
+
+

Show notifications on the specified output. If empty, notifications will appear on the focused output. Requires the compositor to support -the Wayland protocol xdg-output-unstable-v1 version 2.

Type: -null or string

Default: -null

Declared by:

+
+the Wayland protocol xdg-output-unstable-v1 version 2.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.padding

Set padding of each edge specified in pixels. Specify single value to + +

+
+
+ + services.mako.padding + + +
+
+

Set padding of each edge specified in pixels. Specify single value to apply margin on all sides. Two comma-separated values will set vertical and horizontal edges separately. Four comma-separated will give each edge a separate value. For example: 10,20,5 will set top margin to 10, left and right to 20 -and bottom to five.

Type: -null or string

Default: -"5"

Declared by:

+
+and bottom to five.

+ +

Type: +null or string

+ +

Default: +"5"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.progressColor

Set popup progress indicator color to a specific color, + +

+
+
+ + services.mako.progressColor + + +
+
+

Set popup progress indicator color to a specific color, represented in hex color code. To draw the progress indicator on top of the background color, use the over attribute. To replace the background color, use the source attribute (this can -be useful when the notification is semi-transparent).

Type: -null or string

Default: -"over #5588AAFF"

Declared by:

+
+be useful when the notification is semi-transparent).

+ +

Type: +null or string

+ +

Default: +"over #5588AAFF"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.sort

Sorts incoming notifications by time and/or priority in ascending(+) -or descending(-) order.

Type: -null or one of “+time”, “-time”, “+priority”, “-priority”

Default: -"-time"

Declared by:

+
+ +
+
+
+ + services.mako.sort + + +
+
+

Sorts incoming notifications by time and/or priority in ascending(+) +or descending(-) order.

+ +

Type: +null or one of “+time”, “-time”, “+priority”, “-priority”

+ +

Default: +"-time"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.textColor

Set popup text color to a specific color, represented in hex color -code.

Type: -null or string

Default: -"#FFFFFFFF"

Declared by:

+
+ +
+
+
+ + services.mako.textColor + + +
+
+

Set popup text color to a specific color, represented in hex color +code.

+ +

Type: +null or string

+ +

Default: +"#FFFFFFFF"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mako.width

Set width of notification popups in specified number of pixels.

Type: -null or signed integer

Default: -300

Declared by:

+
+ +
+
+
+ + services.mako.width + + +
+
+

Set width of notification popups in specified number of pixels.

+ +

Type: +null or signed integer

+ +

Default: +300

+ +

Declared by:

+ +
+ <home-manager/modules/services/mako.nix> -
services.mbsync.enable

Whether to enable mbsync.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mbsync.enable + + +
+
+

Whether to enable mbsync.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mbsync.nix> -
services.mbsync.package

The package to use for the mbsync binary.

Type: -package

Default: -pkgs.isync

Example: -pkgs.isync

Declared by:

+
+ +
+
+
+ + services.mbsync.package + + +
+
+

The package to use for the mbsync binary.

+ +

Type: +package

+ +

Default: +pkgs.isync

+ +

Example: +pkgs.isync

+ +

Declared by:

+ +
+ <home-manager/modules/services/mbsync.nix> -
services.mbsync.configFile

Optional configuration file to link to use instead of -the default file (~/.mbsyncrc).

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + services.mbsync.configFile + + +
+
+

Optional configuration file to link to use instead of +the default file (~/.mbsyncrc).

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mbsync.nix> -
services.mbsync.frequency

How often to run mbsync. This value is passed to the systemd + +

+
+
+ + services.mbsync.frequency + + +
+
+

How often to run mbsync. This value is passed to the systemd timer configuration as the onCalendar option. See systemd.time(7) -for more information about the format.

Type: -string

Default: -"*:0/5"

Declared by:

+
+for more information about the format.

+ +

Type: +string

+ +

Default: +"*:0/5"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mbsync.nix> -
services.mbsync.postExec

An optional command to run after mbsync executes successfully. -This is useful for running mailbox indexing tools.

Type: -null or string

Default: -null

Example: -"\${pkgs.mu}/bin/mu index"

Declared by:

+
+ +
+
+
+ + services.mbsync.postExec + + +
+
+

An optional command to run after mbsync executes successfully. +This is useful for running mailbox indexing tools.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"\${pkgs.mu}/bin/mu index"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mbsync.nix> -
services.mbsync.preExec

An optional command to run before mbsync executes. This is -useful for creating the directories mbsync is going to use.

Type: -null or string

Default: -null

Example: -"mkdir -p %h/mail"

Declared by:

+
+ +
+
+
+ + services.mbsync.preExec + + +
+
+

An optional command to run before mbsync executes. This is +useful for creating the directories mbsync is going to use.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"mkdir -p %h/mail"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mbsync.nix> -
services.mbsync.verbose

Whether mbsync should produce verbose output.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.mbsync.verbose + + +
+
+

Whether mbsync should produce verbose output.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mbsync.nix> -
services.megasync.enable

Whether to enable Megasync client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.megasync.enable + + +
+
+

Whether to enable Megasync client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/megasync.nix> -
services.megasync.package

The megasync package to use.

Type: -package

Default: -pkgs.megasync

Declared by:

+
+ +
+
+
+ + services.megasync.package + + +
+
+

The megasync package to use.

+ +

Type: +package

+ +

Default: +pkgs.megasync

+ +

Declared by:

+ +
+ <home-manager/modules/services/megasync.nix> -
services.mopidy.enable

Whether to enable Mopidy music player daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mopidy.enable + + +
+
+

Whether to enable Mopidy music player daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mopidy.nix> -
services.mopidy.extensionPackages

Mopidy extensions that should be loaded by the service.

Type: -list of package

Default: -[ ]

Example: -with pkgs; [ mopidy-spotify mopidy-mpd mopidy-mpris ]

Declared by:

+
+ +
+
+
+ + services.mopidy.extensionPackages + + +
+
+

Mopidy extensions that should be loaded by the service.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +with pkgs; [ mopidy-spotify mopidy-mpd mopidy-mpris ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/mopidy.nix> -
services.mopidy.extraConfigFiles

Extra configuration files read by Mopidy when the service starts. + +

+
+
+ + services.mopidy.extraConfigFiles + + +
+
+

Extra configuration files read by Mopidy when the service starts. Later files in the list override earlier configuration files and -structured settings.

Type: -list of path

Default: -[ ]

Declared by:

+
+structured settings.

+ +

Type: +list of path

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/mopidy.nix> -
services.mopidy.settings

Configuration written to -$XDG_CONFIG_HOME/mopidy/mopidy.conf.

See https://docs.mopidy.com/en/latest/config/ for -more details.

Type: -attribute set of attribute set of (Mopidy config value)

Default: -{ }

Example:

{
+
+
+
+
+ + services.mopidy.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/mopidy/mopidy.conf.

See https://docs.mopidy.com/en/latest/config/ for +more details.

+ +

Type: +attribute set of attribute set of (Mopidy config value)

+ +

Default: +{ }

+ +

Example:

{
   file = {
     media_dirs = [
-      "$XDG_MUSIC_DIR|Music"
-      "~/library|Library"
+      "$XDG_MUSIC_DIR|Music"
+      "~/library|Library"
     ];
     follow_symlinks = true;
     excluded_file_extensions = [
-      ".html"
-      ".zip"
-      ".jpg"
-      ".jpeg"
-      ".png"
+      ".html"
+      ".zip"
+      ".jpg"
+      ".jpeg"
+      ".png"
     ];
   };
 
-  # Please don't put your mopidy-spotify configuration in the public. :)
+  # Please don't put your mopidy-spotify configuration in the public. :)
   # Think of your Spotify Premium subscription!
   spotify = {
-    client_id = "CLIENT_ID";
-    client_secret = "CLIENT_SECRET";
+    client_id = "CLIENT_ID";
+    client_secret = "CLIENT_SECRET";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/mopidy.nix> -
services.mpd.enable

Whether to enable MPD, the music player daemon.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.mpd.enable + + +
+
+

Whether to enable MPD, the music player daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.package

The MPD package to run.

Type: -package

Default: -"pkgs.mpd"

Declared by:

+
+ +
+
+
+ + services.mpd.package + + +
+
+

The MPD package to run.

+ +

Type: +package

+ +

Default: +"pkgs.mpd"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.dataDir

The directory where MPD stores its state, tag cache, -playlists etc.

Type: -path

Default: -"$XDG_DATA_HOME/mpd"

Declared by:

+
+ +
+
+
+ + services.mpd.dataDir + + +
+
+

The directory where MPD stores its state, tag cache, +playlists etc.

+ +

Type: +path

+ +

Default: +"$XDG_DATA_HOME/mpd"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.dbFile

The path to MPD’s database. If set to + +

+
+
+ + services.mpd.dbFile + + +
+
+

The path to MPD’s database. If set to null the parameter is omitted from the -configuration.

Type: -null or string

Default: -"\${dataDir}/tag_cache"

Declared by:

+
+configuration.

+ +

Type: +null or string

+ +

Default: +"\${dataDir}/tag_cache"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.extraArgs

Extra command-line arguments to pass to MPD.

Type: -list of string

Default: -[ ]

Example:

[
-  "--verbose"
+
+
+
+
+ + services.mpd.extraArgs + + +
+
+

Extra command-line arguments to pass to MPD.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--verbose"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.extraConfig

Extra directives added to to the end of MPD’s configuration + +

+
+
+ + services.mpd.extraConfig + + +
+
+

Extra directives added to to the end of MPD’s configuration file, mpd.conf. Basic configuration like file location and uid/gid is added automatically to the beginning of the file. For available options see -mpd.conf(5).

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+mpd.conf(5).

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.musicDirectory

The directory where mpd reads music from.

If xdg.userDirs.enable is + +

+
+
+ + services.mpd.musicDirectory + + +
+
+

The directory where mpd reads music from.

If xdg.userDirs.enable is true then the defined XDG music directory is used. -Otherwise, you must explicitly specify a value.

Type: -path or string

Default:

${home.homeDirectory}/music    if state version < 22.11
+Otherwise, you must explicitly specify a value.

+ +

Type: +path or string

+ +

Default:

${home.homeDirectory}/music    if state version < 22.11
 ${xdg.userDirs.music}          if xdg.userDirs.enable == true
 undefined                      otherwise
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.network.listenAddress

The address for the daemon to listen on. -Use any to listen on all addresses.

Type: -string

Default: -"127.0.0.1"

Example: -"any"

Declared by:

+
+ +
+
+
+ + services.mpd.network.listenAddress + + +
+
+

The address for the daemon to listen on. +Use any to listen on all addresses.

+ +

Type: +string

+ +

Default: +"127.0.0.1"

+ +

Example: +"any"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.network.port

The TCP port on which the the daemon will listen.

Type: -16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -6600

Declared by:

+
+ +
+
+
+ + services.mpd.network.port + + +
+
+

The TCP port on which the the daemon will listen.

+ +

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +6600

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.network.startWhenNeeded

Enable systemd socket activation.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.mpd.network.startWhenNeeded + + +
+
+

Enable systemd socket activation.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd.playlistDirectory

The directory where mpd stores playlists.

Type: -path

Default: -"\${dataDir}/playlists"

Declared by:

+
+ +
+
+
+ + services.mpd.playlistDirectory + + +
+
+

The directory where mpd stores playlists.

+ +

Type: +path

+ +

Default: +"\${dataDir}/playlists"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd.nix> -
services.mpd-discord-rpc.enable

Whether to enable the mpd-discord-rpc service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mpd-discord-rpc.enable + + +
+
+

Whether to enable the mpd-discord-rpc service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-discord-rpc.nix> -
services.mpd-discord-rpc.package

mpd-discord-rpc package to use.

Type: -package

Default: -pkgs.mpd-discord-rpc

Declared by:

+
+ +
+
+
+ + services.mpd-discord-rpc.package + + +
+
+

mpd-discord-rpc package to use.

+ +

Type: +package

+ +

Default: +pkgs.mpd-discord-rpc

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-discord-rpc.nix> -
services.mpd-discord-rpc.settings

Configuration included in config.toml. -For available options see https://github.com/JakeStanger/mpd-discord-rpc#configuration

Type: -TOML value

Default: -{ }

Example:

{
-  hosts = [ "localhost:6600" ];
+
+
+
+
+ + services.mpd-discord-rpc.settings + + +
+
+

Configuration included in config.toml. +For available options see https://github.com/JakeStanger/mpd-discord-rpc#configuration

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
+  hosts = [ "localhost:6600" ];
   format = {
-    details = "$title";
-    state = "On $album by $artist";
+    details = "$title";
+    state = "On $album by $artist";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/mpd-discord-rpc.nix> -
services.mpd-mpris.enable

Whether to enable mpd-mpris: An implementation of the MPRIS protocol for MPD.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mpd-mpris.enable + + +
+
+

Whether to enable mpd-mpris: An implementation of the MPRIS protocol for MPD.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-mpris.nix> -
services.mpd-mpris.package

The mpd-mpris package to use.

Type: -package

Default: -pkgs.mpd-mpris

Declared by:

+
+ +
+
+
+ + services.mpd-mpris.package + + +
+
+

The mpd-mpris package to use.

+ +

Type: +package

+ +

Default: +pkgs.mpd-mpris

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-mpris.nix> -
services.mpd-mpris.mpd.host

The address where MPD is listening for connections.

Type: -null or string

Default: -null

Example: -"192.168.1.1"

Declared by:

+
+ +
+
+
+ + services.mpd-mpris.mpd.host + + +
+
+

The address where MPD is listening for connections.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"192.168.1.1"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-mpris.nix> -
services.mpd-mpris.mpd.network

The network used to dial to the MPD server. Check -https://golang.org/pkg/net/#Dial -for available values (most common are “tcp” and “unix”)

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.mpd-mpris.mpd.network + + +
+
+

The network used to dial to the MPD server. Check +https://golang.org/pkg/net/#Dial +for available values (most common are “tcp” and “unix”)

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-mpris.nix> -
services.mpd-mpris.mpd.password

The password to connect to MPD.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.mpd-mpris.mpd.password + + +
+
+

The password to connect to MPD.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-mpris.nix> -
services.mpd-mpris.mpd.port

The port number where MPD is listening for connections.

Type: -null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -null

Declared by:

+
+ +
+
+
+ + services.mpd-mpris.mpd.port + + +
+
+

The port number where MPD is listening for connections.

+ +

Type: +null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-mpris.nix> -
services.mpd-mpris.mpd.useLocal

Whether to configure for the local MPD daemon. If + +

+
+
+ + services.mpd-mpris.mpd.useLocal + + +
+
+

Whether to configure for the local MPD daemon. If true the network, host, and port -settings are ignored.

Type: -boolean

Default: -config.services.mpd.enable

Declared by:

+
+settings are ignored.

+ +

Type: +boolean

+ +

Default: +config.services.mpd.enable

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpd-mpris.nix> -
services.mpdris2.enable

Whether to enable mpDris2 the MPD to MPRIS2 bridge.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mpdris2.enable + + +
+
+

Whether to enable mpDris2 the MPD to MPRIS2 bridge.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpdris2.package

The mpDris2 package to use.

Type: -package

Default: -pkgs.mpdris2

Declared by:

+
+ +
+
+
+ + services.mpdris2.package + + +
+
+

The mpDris2 package to use.

+ +

Type: +package

+ +

Default: +pkgs.mpdris2

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpdris2.mpd.host

The address where MPD is listening for connections.

Type: -string

Default: -"config.services.mpd.network.listenAddress"

Example: -"192.168.1.1"

Declared by:

+
+ +
+
+
+ + services.mpdris2.mpd.host + + +
+
+

The address where MPD is listening for connections.

+ +

Type: +string

+ +

Default: +"config.services.mpd.network.listenAddress"

+ +

Example: +"192.168.1.1"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpdris2.mpd.musicDirectory

If set, mpDris2 will use this directory to access music artwork.

Type: -null or path

Default: -"config.services.mpd.musicDirectory"

Declared by:

+
+ +
+
+
+ + services.mpdris2.mpd.musicDirectory + + +
+
+

If set, mpDris2 will use this directory to access music artwork.

+ +

Type: +null or path

+ +

Default: +"config.services.mpd.musicDirectory"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpdris2.mpd.password

The password to connect to MPD.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.mpdris2.mpd.password + + +
+
+

The password to connect to MPD.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpdris2.mpd.port

The port number where MPD is listening for connections.

Type: -16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -"config.services.mpd.network.port"

Declared by:

+
+ +
+
+
+ + services.mpdris2.mpd.port + + +
+
+

The port number where MPD is listening for connections.

+ +

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +"config.services.mpd.network.port"

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpdris2.multimediaKeys

Whether to enable multimedia key support.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mpdris2.multimediaKeys + + +
+
+

Whether to enable multimedia key support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpdris2.notifications

Whether to enable song change notifications.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mpdris2.notifications + + +
+
+

Whether to enable song change notifications.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpdris2.nix> -
services.mpris-proxy.enable

Whether to enable a proxy forwarding Bluetooth MIDI controls via MPRIS2 to control media players.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.mpris-proxy.enable + + +
+
+

Whether to enable a proxy forwarding Bluetooth MIDI controls via MPRIS2 to control media players.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/mpris-proxy.nix> -
services.muchsync.remotes

Muchsync remotes to synchronise with.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
+
+
+
+
+ + services.muchsync.remotes + + +
+
+

Muchsync remotes to synchronise with.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
   server = {
-    frequency = "*:0/10";
-    remote.host = "server.tld";
+    frequency = "*:0/10";
+    remote.host = "server.tld";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.frequency

How often to run muchsync. This + +

+
+
+ + services.muchsync.remotes.<name>.frequency + + +
+
+

How often to run muchsync. This value is passed to the systemd timer configuration as the OnCalendar option. See systemd.time(7) -for more information about the format.

Type: -string

Default: -"*:0/5"

Declared by:

+
+for more information about the format.

+ +

Type: +string

+ +

Default: +"*:0/5"

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.local.checkForModifiedFiles

Check for locally modified files. + +

+
+
+ + services.muchsync.remotes.<name>.local.checkForModifiedFiles + + +
+
+

Check for locally modified files. Without this option, muchsync assumes that files in a maildir are never edited.

checkForModifiedFiles disables certain optimizations so as to make muchsync at least check the timestamp on every file, which will detect modified files at the cost of a longer startup time.

This option is useful if your software regularly modifies the contents of mail files (e.g., because you are running offlineimap -with “synclabels = yes”).

Type: -boolean

Default: -false

Declared by:

+
+with “synclabels = yes”).

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.local.importNew

Whether to begin the synchronisation by running -notmuch new locally.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.muchsync.remotes.<name>.local.importNew + + +
+
+

Whether to begin the synchronisation by running +notmuch new locally.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.remote.checkForModifiedFiles

Check for modified files on the remote side. + +

+
+
+ + services.muchsync.remotes.<name>.remote.checkForModifiedFiles + + +
+
+

Check for modified files on the remote side. Without this option, muchsync assumes that files in a maildir are never edited.

checkForModifiedFiles disables certain optimizations so as to make muchsync at least check the timestamp on every file, which will detect modified files at the cost of a longer startup time.

This option is useful if your software regularly modifies the contents of mail files (e.g., because you are running offlineimap -with “synclabels = yes”).

Type: -boolean

Default: -false

Declared by:

+
+with “synclabels = yes”).

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.remote.host

Remote SSH host to synchronize with.

Type: -string

Declared by:

+
+ +
+
+
+ + services.muchsync.remotes.<name>.remote.host + + +
+
+

Remote SSH host to synchronize with.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.remote.importNew

Whether to begin the synchronisation by running -notmuch new on the remote side.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.muchsync.remotes.<name>.remote.importNew + + +
+
+

Whether to begin the synchronisation by running +notmuch new on the remote side.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.remote.muchsyncPath

Specifies the path to muchsync on the server. + +

+
+
+ + services.muchsync.remotes.<name>.remote.muchsyncPath + + +
+
+

Specifies the path to muchsync on the server. Ordinarily, muchsync should be in the default PATH on the server so this option is not required. However, this option is useful if you have to install muchsync in a non-standard place or wish to test development versions of the -code.

Type: -string

Default: -"$PATH/muchsync"

Declared by:

+
+code.

+ +

Type: +string

+ +

Default: +"$PATH/muchsync"

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.sshCommand

Specifies a command line to pass to /bin/sh + +

+
+
+ + services.muchsync.remotes.<name>.sshCommand + + +
+
+

Specifies a command line to pass to /bin/sh to execute a command on another machine.

Note that because this string is passed to the shell, -special characters including spaces may need to be escaped.

Type: -string

Default: -"ssh -CTaxq"

Declared by:

+
+special characters including spaces may need to be escaped.

+ +

Type: +string

+ +

Default: +"ssh -CTaxq"

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.muchsync.remotes.<name>.upload

Whether to propagate local changes to the remote.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.muchsync.remotes.<name>.upload + + +
+
+

Whether to propagate local changes to the remote.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/muchsync.nix> -
services.network-manager-applet.enable

Whether to enable the Network Manager applet.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.network-manager-applet.enable + + +
+
+

Whether to enable the Network Manager applet.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/network-manager-applet.nix> -
services.nextcloud-client.enable

Whether to enable Nextcloud Client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.nextcloud-client.enable + + +
+
+

Whether to enable Nextcloud Client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/nextcloud-client.nix> -
services.nextcloud-client.package

The package to use for the nextcloud client binary.

Type: -package

Default: -pkgs.nextcloud-client

Declared by:

+
+ +
+
+
+ + services.nextcloud-client.package + + +
+
+

The package to use for the nextcloud client binary.

+ +

Type: +package

+ +

Default: +pkgs.nextcloud-client

+ +

Declared by:

+ +
+ <home-manager/modules/services/nextcloud-client.nix> -
services.nextcloud-client.startInBackground

Whether to start the Nextcloud client in the background.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.nextcloud-client.startInBackground + + +
+
+

Whether to start the Nextcloud client in the background.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/nextcloud-client.nix> -
services.notify-osd.enable

Whether to enable notify-osd.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.notify-osd.enable + + +
+
+

Whether to enable notify-osd.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/notify-osd.nix> -
services.notify-osd.package

Package containing the notify-osd program.

Type: -package

Default: -pkgs.notify-osd

Declared by:

+
+ +
+
+
+ + services.notify-osd.package + + +
+
+

Package containing the notify-osd program.

+ +

Type: +package

+ +

Default: +pkgs.notify-osd

+ +

Declared by:

+ +
+ <home-manager/modules/services/notify-osd.nix> -
services.opensnitch-ui.enable

Whether to enable Opensnitch client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.opensnitch-ui.enable + + +
+
+

Whether to enable Opensnitch client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/opensnitch-ui.nix> -
services.owncloud-client.enable

Whether to enable Owncloud Client.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.owncloud-client.enable + + +
+
+

Whether to enable Owncloud Client.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/owncloud-client.nix> -
services.owncloud-client.package

The owncloud-client package to use.

Type: -package

Default: -pkgs.owncloud-client

Declared by:

+
+ +
+
+
+ + services.owncloud-client.package + + +
+
+

The owncloud-client package to use.

+ +

Type: +package

+ +

Default: +pkgs.owncloud-client

+ +

Declared by:

+ +
+ <home-manager/modules/services/owncloud-client.nix> -
services.pantalaimon.enable

Whether to enable Pantalaimon, an E2EE aware proxy daemon for matrix clients.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.pantalaimon.enable + + +
+
+

Whether to enable Pantalaimon, an E2EE aware proxy daemon for matrix clients.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/pantalaimon.nix> -
services.pantalaimon.package

Package providing the pantalaimon executable to use.

Type: -package

Default: -pkgs.pantalaimon

Declared by:

+
+ +
+
+
+ + services.pantalaimon.package + + +
+
+

Package providing the pantalaimon executable to use.

+ +

Type: +package

+ +

Default: +pkgs.pantalaimon

+ +

Declared by:

+ +
+ <home-manager/modules/services/pantalaimon.nix> -
services.pantalaimon.settings

Configuration written to -$XDG_CONFIG_HOME/pantalaimon/pantalaimon.conf.

See https://github.com/matrix-org/pantalaimon/blob/master/docs/manpantalaimon.5.md or + +

+
+
+ + services.pantalaimon.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/pantalaimon/pantalaimon.conf.

See https://github.com/matrix-org/pantalaimon/blob/master/docs/manpantalaimon.5.md or pantalaimon(5) -for options.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+for options.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   Default = {
-    LogLevel = "Debug";
+    LogLevel = "Debug";
     SSL = true;
   };
   local-matrix = {
-    Homeserver = "https://matrix.org";
-    ListenAddress = "127.0.0.1";
+    Homeserver = "https://matrix.org";
+    ListenAddress = "127.0.0.1";
     ListenPort = 8008;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/pantalaimon.nix> -
services.parcellite.enable

Whether to enable Parcellite.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.parcellite.enable + + +
+
+

Whether to enable Parcellite.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/parcellite.nix> -
services.parcellite.package

Parcellite derivation to use.

Type: -package

Default: -pkgs.parcellite

Example: -pkgs.clipit

Declared by:

+
+ +
+
+
+ + services.parcellite.package + + +
+
+

Parcellite derivation to use.

+ +

Type: +package

+ +

Default: +pkgs.parcellite

+ +

Example: +pkgs.clipit

+ +

Declared by:

+ +
+ <home-manager/modules/services/parcellite.nix> -
services.parcellite.extraOptions

Command line arguments passed to Parcellite.

Type: -list of string

Default: -[ ]

Example:

[
-  "--no-icon"
+
+
+
+
+ + services.parcellite.extraOptions + + +
+
+

Command line arguments passed to Parcellite.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--no-icon"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/parcellite.nix> -
services.pass-secret-service.enable

Whether to enable Pass libsecret service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.pass-secret-service.enable + + +
+
+

Whether to enable Pass libsecret service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/pass-secret-service.nix> -
services.pass-secret-service.package

The pass-secret-service package to use.

Type: -package

Default: -pkgs.pass-secret-service

Declared by:

+
+ +
+
+
+ + services.pass-secret-service.package + + +
+
+

The pass-secret-service package to use.

+ +

Type: +package

+ +

Default: +pkgs.pass-secret-service

+ +

Declared by:

+ +
+ <home-manager/modules/services/pass-secret-service.nix> -
services.pass-secret-service.storePath

Absolute path to password store. Defaults to + +

+
+
+ + services.pass-secret-service.storePath + + +
+
+

Absolute path to password store. Defaults to $HOME/.password-store if the programs.password-store module is not enabled, and -programs.password-store.settings.PASSWORD_STORE_DIR if it is.

Type: -null or string

Default: -"$HOME/.password-store"

Example: -"/home/user/.local/share/password-store"

Declared by:

+
+programs.password-store.settings.PASSWORD_STORE_DIR if it is.

+ +

Type: +null or string

+ +

Default: +"$HOME/.password-store"

+ +

Example: +"/home/user/.local/share/password-store"

+ +

Declared by:

+ +
+ <home-manager/modules/services/pass-secret-service.nix> -
services.pasystray.enable

Whether to enable PulseAudio system tray.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.pasystray.enable + + +
+
+

Whether to enable PulseAudio system tray.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/pasystray.nix> -
services.pasystray.extraOptions

Extra command-line arguments to pass to pasystray.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.pasystray.extraOptions + + +
+
+

Extra command-line arguments to pass to pasystray.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/pasystray.nix> -
services.pbgopy.enable

Whether to enable pbgopy.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.pbgopy.enable + + +
+
+

Whether to enable pbgopy.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/pbgopy.nix> -
services.pbgopy.cache.ttl

The TTL for the cache. Use "0s" to disable it.

Type: -string

Default: -"24h"

Example: -"10m"

Declared by:

+
+ +
+
+
+ + services.pbgopy.cache.ttl + + +
+
+

The TTL for the cache. Use "0s" to disable it.

+ +

Type: +string

+ +

Default: +"24h"

+ +

Example: +"10m"

+ +

Declared by:

+ +
+ <home-manager/modules/services/pbgopy.nix> -
services.pbgopy.httpAuth

Basic HTTP authentication’s username and password. Both the username and -password are escaped.

Type: -null or string

Default: -null

Example: -"user:pass"

Declared by:

+
+ +
+
+
+ + services.pbgopy.httpAuth + + +
+
+

Basic HTTP authentication’s username and password. Both the username and +password are escaped.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"user:pass"

+ +

Declared by:

+ +
+ <home-manager/modules/services/pbgopy.nix> -
services.pbgopy.port

The port to host the pbgopy server on.

Type: -16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -9090

Example: -8080

Declared by:

+
+ +
+
+
+ + services.pbgopy.port + + +
+
+

The port to host the pbgopy server on.

+ +

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +9090

+ +

Example: +8080

+ +

Declared by:

+ +
+ <home-manager/modules/services/pbgopy.nix> -
services.picom.enable

Whether to enable Picom X11 compositor.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.picom.enable + + +
+
+

Whether to enable Picom X11 compositor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.package

Picom derivation to use.

Type: -package

Default: -pkgs.picom

Example: -pkgs.picom

Declared by:

+
+ +
+
+
+ + services.picom.package + + +
+
+

Picom derivation to use.

+ +

Type: +package

+ +

Default: +pkgs.picom

+ +

Example: +pkgs.picom

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.activeOpacity

Opacity of active windows.

Type: -integer or floating point number between 0 and 1 (both inclusive)

Default: -1.0

Example: -0.8

Declared by:

+
+ +
+
+
+ + services.picom.activeOpacity + + +
+
+

Opacity of active windows.

+ +

Type: +integer or floating point number between 0 and 1 (both inclusive)

+ +

Default: +1.0

+ +

Example: +0.8

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.backend

Backend to use: egl, glx, xrender or xr_glx_hybrid.

Type: -one of “egl”, “glx”, “xrender”, “xr_glx_hybrid”

Default: -"xrender"

Declared by:

+
+ +
+
+
+ + services.picom.backend + + +
+
+

Backend to use: egl, glx, xrender or xr_glx_hybrid.

+ +

Type: +one of “egl”, “glx”, “xrender”, “xr_glx_hybrid”

+ +

Default: +"xrender"

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.extraArgs

Extra arguments to be passed to the picom executable.

Type: -list of string

Default: -[ ]

Example: -[ "--legacy-backends" ]

Declared by:

+
+ +
+
+
+ + services.picom.extraArgs + + +
+
+

Extra arguments to be passed to the picom executable.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +[ "--legacy-backends" ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.fade

Fade windows in and out.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.picom.fade + + +
+
+

Fade windows in and out.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.fadeDelta

Time between fade animation step (in ms).

Type: -positive integer, meaning >0

Default: -10

Example: -5

Declared by:

+
+ +
+
+
+ + services.picom.fadeDelta + + +
+
+

Time between fade animation step (in ms).

+ +

Type: +positive integer, meaning >0

+ +

Default: +10

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.fadeExclude

List of conditions of windows that should not be faded. -See picom(1) man page for more examples.

Type: -list of string

Default: -[ ]

Example:

[
-  "window_type *= 'menu'"
-  "name ~= 'Firefox$'"
-  "focused = 1"
+
+
+
+
+ + services.picom.fadeExclude + + +
+
+

List of conditions of windows that should not be faded. +See picom(1) man page for more examples.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "window_type *= 'menu'"
+  "name ~= 'Firefox$'"
+  "focused = 1"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.fadeSteps

Opacity change between fade steps (in and out).

Type: -pair of integer or floating point number between 0.01 and 1 (both inclusive)

Default:

[
+
+
+
+
+ + services.picom.fadeSteps + + +
+
+

Opacity change between fade steps (in and out).

+ +

Type: +pair of integer or floating point number between 0.01 and 1 (both inclusive)

+ +

Default:

[
   0.028
   0.03
 ]
-

Example:

[
+
+ +

Example:

[
   0.04
   0.04
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.inactiveOpacity

Opacity of inactive windows.

Type: -integer or floating point number between 0.1 and 1 (both inclusive)

Default: -1.0

Example: -0.8

Declared by:

+
+ +
+
+
+ + services.picom.inactiveOpacity + + +
+
+

Opacity of inactive windows.

+ +

Type: +integer or floating point number between 0.1 and 1 (both inclusive)

+ +

Default: +1.0

+ +

Example: +0.8

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.menuOpacity

Opacity of dropdown and popup menu.

Type: -integer or floating point number between 0 and 1 (both inclusive)

Default: -1.0

Example: -0.8

Declared by:

+
+ +
+
+
+ + services.picom.menuOpacity + + +
+
+

Opacity of dropdown and popup menu.

+ +

Type: +integer or floating point number between 0 and 1 (both inclusive)

+ +

Default: +1.0

+ +

Example: +0.8

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.opacityRules

Rules that control the opacity of windows, in format PERCENT:PATTERN.

Type: -list of string

Default: -[ ]

Example:

[
-  "95:class_g = 'URxvt' && !_NET_WM_STATE@:32a"
-  "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
+
+
+
+
+ + services.picom.opacityRules + + +
+
+

Rules that control the opacity of windows, in format PERCENT:PATTERN.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "95:class_g = 'URxvt' && !_NET_WM_STATE@:32a"
+  "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.settings

Picom settings. Use this option to configure Picom settings not exposed + +

+
+
+ + services.picom.settings + + +
+
+

Picom settings. Use this option to configure Picom settings not exposed in a NixOS option or to bypass one. For the available options see the -CONFIGURATION FILES section at picom(1).

Type: +CONFIGURATION FILES section at picom(1).

+ +

Type: libconfig configuration. The format consists of an attributes set (called a group) of settings. Each setting can be a scalar type (boolean, integer, floating point number or string), a list of -scalars or a group itself

Default: -{ }

Example:

blur =
-  { method = "gaussian";
+scalars or a group itself

+ +

Default: +{ }

+ +

Example:

blur =
+  { method = "gaussian";
     size = 10;
     deviation = 5.0;
   };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.shadow

Draw window shadows.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.picom.shadow + + +
+
+

Draw window shadows.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.shadowExclude

List of conditions of windows that should have no shadow. -See picom(1) man page for more examples.

Type: -list of string

Default: -[ ]

Example:

[
-  "window_type *= 'menu'"
-  "name ~= 'Firefox$'"
-  "focused = 1"
+
+
+
+
+ + services.picom.shadowExclude + + +
+
+

List of conditions of windows that should have no shadow. +See picom(1) man page for more examples.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "window_type *= 'menu'"
+  "name ~= 'Firefox$'"
+  "focused = 1"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.shadowOffsets

Left and right offset for shadows (in pixels).

Type: -pair of signed integer

Default:

[
+
+
+
+
+ + services.picom.shadowOffsets + + +
+
+

Left and right offset for shadows (in pixels).

+ +

Type: +pair of signed integer

+ +

Default:

[
   -15
   -15
 ]
-

Example:

[
+
+ +

Example:

[
   -10
   -15
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.shadowOpacity

Window shadows opacity.

Type: -integer or floating point number between 0 and 1 (both inclusive)

Default: -0.75

Example: -0.8

Declared by:

+
+ +
+
+
+ + services.picom.shadowOpacity + + +
+
+

Window shadows opacity.

+ +

Type: +integer or floating point number between 0 and 1 (both inclusive)

+ +

Default: +0.75

+ +

Example: +0.8

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.vSync

Enable vertical synchronization.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.picom.vSync + + +
+
+

Enable vertical synchronization.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.picom.wintypes

Rules for specific window types.

Type: -attribute set

Default:

{
+
+
+
+
+ + services.picom.wintypes + + +
+
+

Rules for specific window types.

+ +

Type: +attribute set

+ +

Default:

{
   popup_menu = { opacity = config.services.picom.menuOpacity; };
   dropdown_menu = { opacity = config.services.picom.menuOpacity; };
 }
 
-

Example: -{ }

Declared by:

+
+ + +

Example: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/picom.nix> -
services.plan9port.fontsrv.enable

Whether to enable the Plan 9 file system access to host fonts.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.plan9port.fontsrv.enable + + +
+
+

Whether to enable the Plan 9 file system access to host fonts.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/plan9port.nix> -
services.plan9port.plumber.enable

Whether to enable the Plan 9 file system for interprocess messaging.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.plan9port.plumber.enable + + +
+
+

Whether to enable the Plan 9 file system for interprocess messaging.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/plan9port.nix> -
services.playerctld.enable

Whether to enable playerctld daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.playerctld.enable + + +
+
+

Whether to enable playerctld daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/playerctld.nix> -
services.playerctld.package

The playerctl package to use.

Type: -package

Default: -pkgs.playerctl

Declared by:

+
+ +
+
+
+ + services.playerctld.package + + +
+
+

The playerctl package to use.

+ +

Type: +package

+ +

Default: +pkgs.playerctl

+ +

Declared by:

+ +
+ <home-manager/modules/services/playerctld.nix> -
services.plex-mpv-shim.enable

Whether to enable Plex mpv shim.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.plex-mpv-shim.enable + + +
+
+

Whether to enable Plex mpv shim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/plex-mpv-shim.nix> -
services.plex-mpv-shim.package

The package to use for the Plex mpv shim.

Type: -package

Default: -pkgs.plex-mpv-shim

Declared by:

+
+ +
+
+
+ + services.plex-mpv-shim.package + + +
+
+

The package to use for the Plex mpv shim.

+ +

Type: +package

+ +

Default: +pkgs.plex-mpv-shim

+ +

Declared by:

+ +
+ <home-manager/modules/services/plex-mpv-shim.nix> -
services.plex-mpv-shim.settings

Configuration written to + +

+
+
+ + services.plex-mpv-shim.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/plex-mpv-shim/config.json. See -https://github.com/iwalton3/plex-mpv-shim/blob/master/README.md -for the configuration documentation.

Type: -JSON value

Default: -{ }

Example:

{
+https://github.com/iwalton3/plex-mpv-shim/blob/master/README.md
+for the configuration documentation.

+ +

Type: +JSON value

+ +

Default: +{ }

+ +

Example:

{
   adaptive_transcode = false;
   allow_http = false;
   always_transcode = false;
@@ -14668,82 +61200,206 @@ JSON value

Default: auto_transcode = true; } -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/plex-mpv-shim.nix> -
services.polybar.enable

Whether to enable Polybar status bar.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.polybar.enable + + +
+
+

Whether to enable Polybar status bar.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/polybar.nix> -
services.polybar.package

Polybar package to install.

Type: -package

Default: -pkgs.polybar

Example:

pkgs.polybar.override {
+
+
+
+
+ + services.polybar.package + + +
+
+

Polybar package to install.

+ +

Type: +package

+ +

Default: +pkgs.polybar

+ +

Example:

pkgs.polybar.override {
   i3GapsSupport = true;
   alsaSupport = true;
   iwSupport = true;
   githubSupport = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/polybar.nix> -
services.polybar.config

Polybar configuration. Can be either path to a file, or set of attributes + +

+
+
+ + services.polybar.config + + +
+
+

Polybar configuration. Can be either path to a file, or set of attributes that will be used to create the final configuration. -See also services.polybar.settings for a more nix-friendly format.

Type: -(attribute set of attribute set of (string or boolean or signed integer or list of string)) or path convertible to it

Default: -{ }

Example:

{
-  "bar/top" = {
-    monitor = "\${env:MONITOR:eDP1}";
-    width = "100%";
-    height = "3%";
+See also services.polybar.settings for a more nix-friendly format.

+ +

Type: +(attribute set of attribute set of (string or boolean or signed integer or list of string)) or path convertible to it

+ +

Default: +{ }

+ +

Example:

{
+  "bar/top" = {
+    monitor = "\${env:MONITOR:eDP1}";
+    width = "100%";
+    height = "3%";
     radius = 0;
-    modules-center = "date";
+    modules-center = "date";
   };
 
-  "module/date" = {
-    type = "internal/date";
+  "module/date" = {
+    type = "internal/date";
     internal = 5;
-    date = "%d.%m.%y";
-    time = "%H:%M";
-    label = "%time%  %date%";
+    date = "%d.%m.%y";
+    time = "%H:%M";
+    label = "%time%  %date%";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/polybar.nix> -
services.polybar.extraConfig

Additional configuration to add.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + services.polybar.extraConfig + + +
+
+

Additional configuration to add.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   [module/date]
   type = internal/date
   interval = 5
-  date = "%d.%m.%y"
+  date = "%d.%m.%y"
   time = %H:%M
-  format-prefix-foreground = \''${colors.foreground-alt}
+  format-prefix-foreground = \''${colors.foreground-alt}
   label = %time%  %date%
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/polybar.nix> -
services.polybar.script

This script will be used to start the polybars. + +

+
+
+ + services.polybar.script + + +
+
+

This script will be used to start the polybars. Set all necessary environment variables here and start all bars. -It can be assumed that polybar executable is in the PATH.

Note, this script must start all bars in the background and then terminate.

Type: -strings concatenated with “\n”

Example: -"polybar bar &"

Declared by:

+
+It can be assumed that polybar executable is in the PATH.

Note, this script must start all bars in the background and then terminate.

+ +

Type: +strings concatenated with “\n”

+ +

Example: +"polybar bar &"

+ +

Declared by:

+ +
+ <home-manager/modules/services/polybar.nix> -
services.polybar.settings

Polybar configuration. This takes a nix attrset and converts it to the + +

+
+
+ + services.polybar.settings + + +
+
+

Polybar configuration. This takes a nix attrset and converts it to the strange data format that polybar uses. Each entry will be converted to a section in the output file. Several things are treated specially: nested keys are converted to dash-separated keys; the special text key is ignored as a nested key, to allow mixing different levels of nesting; and lists are converted to -polybar’s foo-0, foo-1, ... format.

For example:

"module/volume" = {
-  type = "internal/pulseaudio";
-  format.volume = "<ramp-volume> <label-volume>";
-  label.muted.text = "🔇";
-  label.muted.foreground = "#666";
-  ramp.volume = ["🔈" "🔉" "🔊"];
-  click.right = "pavucontrol &";
+polybar’s foo-0, foo-1, ... format.

For example:

"module/volume" = {
+  type = "internal/pulseaudio";
+  format.volume = "<ramp-volume> <label-volume>";
+  label.muted.text = "🔇";
+  label.muted.foreground = "#666";
+  ramp.volume = ["🔈" "🔉" "🔊"];
+  click.right = "pavucontrol &";
 }
-

becomes:

[module/volume]
+

becomes:

[module/volume]
 type=internal/pulseaudio
 format-volume=<ramp-volume> <label-volume>
 label-muted=🔇
@@ -14752,909 +61408,4145 @@ ramp-volume-0=🔈
 ramp-volume-1=🔉
 ramp-volume-2=🔊
 click-right=pavucontrol &
-

Type: -attribute set of attribute sets

Default: -{ }

Example:

{
-  "module/volume" = {
-    type = "internal/pulseaudio";
-    format.volume = "<ramp-volume> <label-volume>";
-    label.muted.text = "🔇";
-    label.muted.foreground = "#666";
-    ramp.volume = ["🔈" "🔉" "🔊"];
-    click.right = "pavucontrol &";
+
+ +

Type: +attribute set of attribute sets

+ +

Default: +{ }

+ +

Example:

{
+  "module/volume" = {
+    type = "internal/pulseaudio";
+    format.volume = "<ramp-volume> <label-volume>";
+    label.muted.text = "🔇";
+    label.muted.foreground = "#666";
+    ramp.volume = ["🔈" "🔉" "🔊"];
+    click.right = "pavucontrol &";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/polybar.nix> -
services.poweralertd.enable

Whether to enable the Upower-powered power alertd.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.poweralertd.enable + + +
+
+

Whether to enable the Upower-powered power alertd.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/poweralertd.nix> -
services.pueue.enable

Whether to enable Pueue, CLI process scheduler and manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.pueue.enable + + +
+
+

Whether to enable Pueue, CLI process scheduler and manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/pueue.nix> -
services.pueue.package

The pueue package to use.

Type: -package

Default: -pkgs.pueue

Declared by:

+
+ +
+
+
+ + services.pueue.package + + +
+
+

The pueue package to use.

+ +

Type: +package

+ +

Default: +pkgs.pueue

+ +

Declared by:

+ +
+ <home-manager/modules/services/pueue.nix> -
services.pueue.settings

Configuration written to -$XDG_CONFIG_HOME/pueue/pueue.yml.

Type: -YAML value

Default: -{ }

Example:

{
+
+
+
+
+ + services.pueue.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/pueue/pueue.yml.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   daemon = {
     default_parallel_tasks = 2;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/pueue.nix> -
services.pulseeffects.enable

Whether to enable Pulseeffects daemon -Note, it is necessary to add

programs.dconf.enable = true;
-

to your system configuration for the daemon to work correctly.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.pulseeffects.enable + + +
+
+

Whether to enable Pulseeffects daemon +Note, it is necessary to add

programs.dconf.enable = true;
+

to your system configuration for the daemon to work correctly.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/pulseeffects.nix> -
services.pulseeffects.package

Pulseeffects package to use.

Type: -package

Default: -pkgs.pulseeffects-legacy

Declared by:

+
+ +
+
+
+ + services.pulseeffects.package + + +
+
+

Pulseeffects package to use.

+ +

Type: +package

+ +

Default: +pkgs.pulseeffects-legacy

+ +

Declared by:

+ +
+ <home-manager/modules/services/pulseeffects.nix> -
services.pulseeffects.preset

Which preset to use when starting pulseeffects. -Will likely need to launch pulseeffects to initially create preset.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + services.pulseeffects.preset + + +
+
+

Which preset to use when starting pulseeffects. +Will likely need to launch pulseeffects to initially create preset.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/pulseeffects.nix> -
services.random-background.enable

Whether to enable random desktop background.

Note, if you are using NixOS and have set up a custom + +

+
+
+ + services.random-background.enable + + +
+
+

Whether to enable random desktop background.

Note, if you are using NixOS and have set up a custom desktop manager session for Home Manager, then the session configuration must have the bgSupport option set to true or the background -image set by this module may be overwritten.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+image set by this module may be overwritten.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/random-background.nix> -
services.random-background.enableXinerama

Will place a separate image per screen when enabled, + +

+
+
+ + services.random-background.enableXinerama + + +
+
+

Will place a separate image per screen when enabled, otherwise a single image will be stretched across all -screens.

Type: -boolean

Default: -true

Declared by:

+
+screens.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/random-background.nix> -
services.random-background.display

Display background images according to this option.

Type: -one of “center”, “fill”, “max”, “scale”, “tile”

Default: -"fill"

Declared by:

+
+ +
+
+
+ + services.random-background.display + + +
+
+

Display background images according to this option.

+ +

Type: +one of “center”, “fill”, “max”, “scale”, “tile”

+ +

Default: +"fill"

+ +

Declared by:

+ +
+ <home-manager/modules/services/random-background.nix> -
services.random-background.imageDirectory

The directory of images from which a background should be + +

+
+
+ + services.random-background.imageDirectory + + +
+
+

The directory of images from which a background should be chosen. Should be formatted in a way understood by systemd, -e.g., ‘%h’ is the home directory.

Type: -string

Example: -"%h/backgrounds"

Declared by:

+
+e.g., ‘%h’ is the home directory.

+ +

Type: +string

+ +

Example: +"%h/backgrounds"

+ +

Declared by:

+ +
+ <home-manager/modules/services/random-background.nix> -
services.random-background.interval

The duration between changing background image, set to null + +

+
+
+ + services.random-background.interval + + +
+
+

The duration between changing background image, set to null to only set background when logging in. Should be formatted -as a duration understood by systemd.

Type: -null or string

Default: -null

Example: -"1h"

Declared by:

+
+as a duration understood by systemd.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"1h"

+ +

Declared by:

+ +
+ <home-manager/modules/services/random-background.nix> -
services.recoll.enable

Whether to enable Recoll file index service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.recoll.enable + + +
+
+

Whether to enable Recoll file index service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/recoll.nix> -
services.recoll.package

Package providing the recoll binary.

Type: -package

Default: -pkgs.recoll

Example: -(pkgs.recoll.override { withGui = false; })

Declared by:

+
+ +
+
+
+ + services.recoll.package + + +
+
+

Package providing the recoll binary.

+ +

Type: +package

+ +

Default: +pkgs.recoll

+ +

Example: +(pkgs.recoll.override { withGui = false; })

+ +

Declared by:

+ +
+ <home-manager/modules/services/recoll.nix> -
services.recoll.configDir

The directory to contain Recoll configuration files. This will be set -as RECOLL_CONFDIR.

Type: -string

Default: -${config.home.homeDirectory}/.recoll

Example: -${config.xdg.configHome}/recoll

Declared by:

+
+ +
+
+
+ + services.recoll.configDir + + +
+
+

The directory to contain Recoll configuration files. This will be set +as RECOLL_CONFDIR.

+ +

Type: +string

+ +

Default: +${config.home.homeDirectory}/.recoll

+ +

Example: +${config.xdg.configHome}/recoll

+ +

Declared by:

+ +
+ <home-manager/modules/services/recoll.nix> -
services.recoll.settings

The configuration to be written at $RECOLL_CONFDIR/recoll.conf.

See recoll.conf(5) for more details about the configuration.

Type: -attribute set of (Recoll config value)

Default: -{ }

Example:

{
+
+
+
+
+ + services.recoll.settings + + +
+
+

The configuration to be written at $RECOLL_CONFDIR/recoll.conf.

See recoll.conf(5) for more details about the configuration.

+ +

Type: +attribute set of (Recoll config value)

+ +

Default: +{ }

+ +

Example:

{
   nocjk = true;
   loglevel = 5;
-  topdirs = [ "~/Downloads" "~/Documents" "~/projects" ];
+  topdirs = [ "~/Downloads" "~/Documents" "~/projects" ];
 
-  "~/Downloads" = {
-    "skippedNames+" = [ "*.iso" ];
+  "~/Downloads" = {
+    "skippedNames+" = [ "*.iso" ];
   };
 
-  "~/projects" = {
-    "skippedNames+" = [ "node_modules" "target" "result" ];
+  "~/projects" = {
+    "skippedNames+" = [ "node_modules" "target" "result" ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/recoll.nix> -
services.recoll.startAt

When or how often the periodic update should run. Must be the format -described from systemd.time(7).

Type: -string

Default: -"hourly"

Example: -"00/2:00"

Declared by:

+
+ +
+
+
+ + services.recoll.startAt + + +
+
+

When or how often the periodic update should run. Must be the format +described from systemd.time(7).

+ +

Type: +string

+ +

Default: +"hourly"

+ +

Example: +"00/2:00"

+ +

Declared by:

+ +
+ <home-manager/modules/services/recoll.nix> -
services.redshift.enable

Whether to enable Redshift.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.redshift.enable + + +
+
+

Whether to enable Redshift.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.enableVerboseLogging

Whether to enable verbose service logging.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.redshift.enableVerboseLogging + + +
+
+

Whether to enable verbose service logging.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.package

Redshift derivation to use.

Type: -package

Default: -pkgs.redshift

Declared by:

+
+ +
+
+
+ + services.redshift.package + + +
+
+

Redshift derivation to use.

+ +

Type: +package

+ +

Default: +pkgs.redshift

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.dawnTime

Set the time interval of dawn manually. -The times must be specified as HH:MM in 24-hour format.

Type: -null or string

Default: -null

Example: -"6:00-7:45"

Declared by:

+
+ +
+
+
+ + services.redshift.dawnTime + + +
+
+

Set the time interval of dawn manually. +The times must be specified as HH:MM in 24-hour format.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"6:00-7:45"

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.duskTime

Set the time interval of dusk manually. -The times must be specified as HH:MM in 24-hour format.

Type: -null or string

Default: -null

Example: -"18:35-20:15"

Declared by:

+
+ +
+
+
+ + services.redshift.duskTime + + +
+
+

Set the time interval of dusk manually. +The times must be specified as HH:MM in 24-hour format.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"18:35-20:15"

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.latitude

Your current latitude, between -90.0 and + +

+
+
+ + services.redshift.latitude + + +
+
+

Your current latitude, between -90.0 and 90.0. Must be provided along with -longitude.

Type: -null or string or floating point number

Default: -null

Declared by:

+
+longitude.

+ +

Type: +null or string or floating point number

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.longitude

Your current longitude, between -180.0 and + +

+
+
+ + services.redshift.longitude + + +
+
+

Your current longitude, between -180.0 and 180.0. Must be provided along with -latitude.

Type: -null or string or floating point number

Default: -null

Declared by:

+
+latitude.

+ +

Type: +null or string or floating point number

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.provider

The location provider to use for determining your location. If set to + +

+
+
+ + services.redshift.provider + + +
+
+

The location provider to use for determining your location. If set to manual you must also provide latitude/longitude. If set to geoclue2, you must also enable the global -geoclue2 service.

Type: -one of “manual”, “geoclue2”

Default: -"manual"

Declared by:

+
+geoclue2 service.

+ +

Type: +one of “manual”, “geoclue2”

+ +

Default: +"manual"

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.settings

The configuration to pass to Redshift. + +

+
+
+ + services.redshift.settings + + +
+
+

The configuration to pass to Redshift. Available options for Redshift described in -redshift(1).

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string))

Default: -{ }

Example:

{
+redshift(1).

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string))

+ +

Default: +{ }

+ +

Example:

{
   redshift = {
-    adjustment-method = "randr";
+    adjustment-method = "randr";
   };
   randr = {
     screen = 0;
   };
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.temperature.day

Colour temperature to use during the day, between -1000 and 25000 K.

Type: -signed integer

Default: -5500

Declared by:

+
+ +
+
+
+ + services.redshift.temperature.day + + +
+
+

Colour temperature to use during the day, between +1000 and 25000 K.

+ +

Type: +signed integer

+ +

Default: +5500

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.temperature.night

Colour temperature to use at night, between -1000 and 25000 K.

Type: -signed integer

Default: -3700

Declared by:

+
+ +
+
+
+ + services.redshift.temperature.night + + +
+
+

Colour temperature to use at night, between +1000 and 25000 K.

+ +

Type: +signed integer

+ +

Default: +3700

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.redshift.tray

Start the redshift-gtk tray applet.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.redshift.tray + + +
+
+

Start the redshift-gtk tray applet.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/redshift-gammastep/redshift.nix> -
services.rsibreak.enable

Whether to enable rsibreak.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.rsibreak.enable + + +
+
+

Whether to enable rsibreak.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/rsibreak.nix> -
services.safeeyes.enable

Whether to enable The Safe Eyes OSGI service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.safeeyes.enable + + +
+
+

Whether to enable The Safe Eyes OSGI service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/safeeyes.nix> -
services.safeeyes.package

The safeeyes package to use.

Type: -package

Default: -pkgs.safeeyes

Declared by:

+
+ +
+
+
+ + services.safeeyes.package + + +
+
+

The safeeyes package to use.

+ +

Type: +package

+ +

Default: +pkgs.safeeyes

+ +

Declared by:

+ +
+ <home-manager/modules/services/safeeyes.nix> -
services.screen-locker.enable

Whether to enable screen locker for X session.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.screen-locker.enable + + +
+
+

Whether to enable screen locker for X session.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.inactiveInterval

Inactive time interval in minutes after which session will be locked. + +

+
+
+ + services.screen-locker.inactiveInterval + + +
+
+

Inactive time interval in minutes after which session will be locked. The minimum is 1 minute, and the maximum is 1 hour. If xautolock.enable is true, it will use this setting. -See https://linux.die.net/man/1/xautolock. +See https://linux.die.net/man/1/xautolock. Otherwise, this will be used with xset to configure -the X server’s screensaver timeout.

Type: -signed integer

Default: -10

Declared by:

+
+the X server’s screensaver timeout.

+ +

Type: +signed integer

+ +

Default: +10

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.lockCmd

Locker command to run.

Type: -string

Example: -"\${pkgs.i3lock}/bin/i3lock -n -c 000000"

Declared by:

+
+ +
+
+
+ + services.screen-locker.lockCmd + + +
+
+

Locker command to run.

+ +

Type: +string

+ +

Example: +"\${pkgs.i3lock}/bin/i3lock -n -c 000000"

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.xautolock.enable

Use xautolock for time-based locking.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.screen-locker.xautolock.enable + + +
+
+

Use xautolock for time-based locking.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.xautolock.package

Package providing the xautolock binary.

Type: -package

Default: -<derivation xautolock-2.2-7-ga23dd5c>

Declared by:

+
+ +
+
+
+ + services.screen-locker.xautolock.package + + +
+
+

Package providing the xautolock binary.

+ +

Type: +package

+ +

Default: +<derivation xautolock-2.2-7-ga23dd5c>

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.xautolock.detectSleep

Whether to reset xautolock timers when awaking from sleep. -No effect if xautolock.enable is false.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.screen-locker.xautolock.detectSleep + + +
+
+

Whether to reset xautolock timers when awaking from sleep. +No effect if xautolock.enable is false.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.xautolock.extraOptions

Extra command-line arguments to pass to xautolock. -No effect if xautolock.enable is false.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.screen-locker.xautolock.extraOptions + + +
+
+

Extra command-line arguments to pass to xautolock. +No effect if xautolock.enable is false.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.xss-lock.package

Package providing the xss-lock binary.

Type: -package

Default: -<derivation xss-lock-unstable-2018-05-31>

Declared by:

+
+ +
+
+
+ + services.screen-locker.xss-lock.package + + +
+
+

Package providing the xss-lock binary.

+ +

Type: +package

+ +

Default: +<derivation xss-lock-unstable-2018-05-31>

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.xss-lock.extraOptions

Extra command-line arguments to pass to xss-lock.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.screen-locker.xss-lock.extraOptions + + +
+
+

Extra command-line arguments to pass to xss-lock.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.screen-locker.xss-lock.screensaverCycle

The X server’s screensaver cycle value expressed as seconds. + +

+
+
+ + services.screen-locker.xss-lock.screensaverCycle + + +
+
+

The X server’s screensaver cycle value expressed as seconds. This will be used with xset to configure -the cycle along with timeout.

Type: -signed integer

Default: -600

Declared by:

+
+the cycle along with timeout.

+ +

Type: +signed integer

+ +

Default: +600

+ +

Declared by:

+ +
+ <home-manager/modules/services/screen-locker.nix> -
services.sctd.enable

Whether to enable sctd.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.sctd.enable + + +
+
+

Whether to enable sctd.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/sctd.nix> -
services.sctd.baseTemperature

The base color temperature used by sctd, which should be between 2500 and 9000. + +

+
+
+ + services.sctd.baseTemperature + + +
+
+

The base color temperature used by sctd, which should be between 2500 and 9000. See sctd(1) -for more details.

Type: -integer between 2500 and 9000 (both inclusive)

Default: -4500

Declared by:

+
+for more details.

+ +

Type: +integer between 2500 and 9000 (both inclusive)

+ +

Default: +4500

+ +

Declared by:

+ +
+ <home-manager/modules/services/sctd.nix> -
services.signaturepdf.enable

Whether to enable signaturepdf; signing, organizing, editing metadatas or compressing PDFs.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.signaturepdf.enable + + +
+
+

Whether to enable signaturepdf; signing, organizing, editing metadatas or compressing PDFs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/signaturepdf.nix> -
services.signaturepdf.package

signaturepdf derivation to use.

Type: -package

Default: -"pkgs.signaturepdf"

Declared by:

+
+ +
+
+
+ + services.signaturepdf.package + + +
+
+

signaturepdf derivation to use.

+ +

Type: +package

+ +

Default: +"pkgs.signaturepdf"

+ +

Declared by:

+ +
+ <home-manager/modules/services/signaturepdf.nix> -
services.signaturepdf.extraConfig

Additional configuration optional.

Type: -attribute set of (string or signed integer or boolean or floating point number)

Default: -{ }

Example:

{
-  max_file_uploads = "201";
-  post_max_size = "24M";
-  upload_max_filesize = "24M";
+
+
+
+
+ + services.signaturepdf.extraConfig + + +
+
+

Additional configuration optional.

+ +

Type: +attribute set of (string or signed integer or boolean or floating point number)

+ +

Default: +{ }

+ +

Example:

{
+  max_file_uploads = "201";
+  post_max_size = "24M";
+  upload_max_filesize = "24M";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/signaturepdf.nix> -
services.signaturepdf.port

The port on which the application runs

Type: -16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -8080

Example: -8081

Declared by:

+
+ +
+
+
+ + services.signaturepdf.port + + +
+
+

The port on which the application runs

+ +

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +8080

+ +

Example: +8081

+ +

Declared by:

+ +
+ <home-manager/modules/services/signaturepdf.nix> -
services.spotifyd.enable

Whether to enable SpotifyD connect.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.spotifyd.enable + + +
+
+

Whether to enable SpotifyD connect.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/spotifyd.nix> -
services.spotifyd.package

The spotifyd package to use. -Can be used to specify extensions.

Type: -package

Default: -pkgs.spotifyd

Example: -(pkgs.spotifyd.override { withKeyring = true; })

Declared by:

+
+ +
+
+
+ + services.spotifyd.package + + +
+
+

The spotifyd package to use. +Can be used to specify extensions.

+ +

Type: +package

+ +

Default: +pkgs.spotifyd

+ +

Example: +(pkgs.spotifyd.override { withKeyring = true; })

+ +

Declared by:

+ +
+ <home-manager/modules/services/spotifyd.nix> -
services.spotifyd.settings

Configuration for spotifyd

Type: -TOML value

Default: -{ }

Example:

{
+
+
+
+
+ + services.spotifyd.settings + + +
+
+

Configuration for spotifyd

+ +

Type: +TOML value

+ +

Default: +{ }

+ +

Example:

{
   global = {
-    username = "Alex";
-    password = "foo";
-    device_name = "nix";
+    username = "Alex";
+    password = "foo";
+    device_name = "nix";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/spotifyd.nix> -
services.ssh-agent.enable

Whether to enable OpenSSH private key agent.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.ssh-agent.enable + + +
+
+

Whether to enable OpenSSH private key agent.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/ssh-agent.nix> -
services.stalonetray.enable

Whether to enable Stalonetray system tray.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.stalonetray.enable + + +
+
+

Whether to enable Stalonetray system tray.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/stalonetray.nix> -
services.stalonetray.package

The package to use for the Stalonetray binary.

Type: -package

Default: -pkgs.stalonetray

Example: -pkgs.stalonetray

Declared by:

+
+ +
+
+
+ + services.stalonetray.package + + +
+
+

The package to use for the Stalonetray binary.

+ +

Type: +package

+ +

Default: +pkgs.stalonetray

+ +

Example: +pkgs.stalonetray

+ +

Declared by:

+ +
+ <home-manager/modules/services/stalonetray.nix> -
services.stalonetray.config

Stalonetray configuration as a set of attributes.

Type: -attribute set of (null or string or boolean or signed integer)

Default: -{ }

Example:

{
-  background = "#cccccc";
+
+
+
+
+ + services.stalonetray.config + + +
+
+

Stalonetray configuration as a set of attributes.

+ +

Type: +attribute set of (null or string or boolean or signed integer)

+ +

Default: +{ }

+ +

Example:

{
+  background = "#cccccc";
   decorations = null;
-  geometry = "3x1-600+0";
+  geometry = "3x1-600+0";
   icon_size = 30;
   sticky = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/stalonetray.nix> -
services.stalonetray.extraConfig

Additional configuration lines for stalonetrayrc.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + services.stalonetray.extraConfig + + +
+
+

Additional configuration lines for stalonetrayrc.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   geometry 3x1-600+0
   decorations none
   icon_size 30
   sticky true
-  background "#cccccc"
-''
-

Declared by:

+
+ background "#cccccc" +'' + + +

Declared by:

+ +
+ <home-manager/modules/services/stalonetray.nix> -
services.status-notifier-watcher.enable

Whether to enable Status Notifier Watcher.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.status-notifier-watcher.enable + + +
+
+

Whether to enable Status Notifier Watcher.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/status-notifier-watcher.nix> -
services.status-notifier-watcher.package

The package to use for the status notifier watcher binary.

Type: -package

Default: -pkgs.haskellPackages.status-notifier-item

Example: -pkgs.haskellPackages.status-notifier-item

Declared by:

+
+ +
+
+
+ + services.status-notifier-watcher.package + + +
+
+

The package to use for the status notifier watcher binary.

+ +

Type: +package

+ +

Default: +pkgs.haskellPackages.status-notifier-item

+ +

Example: +pkgs.haskellPackages.status-notifier-item

+ +

Declared by:

+ +
+ <home-manager/modules/services/status-notifier-watcher.nix> -
services.swayidle.enable

Whether to enable idle manager for Wayland.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.swayidle.enable + + +
+
+

Whether to enable idle manager for Wayland.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.package

Swayidle package to install.

Type: -package

Default: -pkgs.swayidle

Declared by:

+
+ +
+
+
+ + services.swayidle.package + + +
+
+

Swayidle package to install.

+ +

Type: +package

+ +

Default: +pkgs.swayidle

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.events

Run command on occurrence of a event.

Type: -list of (submodule)

Default: -[ ]

Example:

[
-  { event = "before-sleep"; command = "${pkgs.swaylock}/bin/swaylock -fF"; }
-  { event = "lock"; command = "lock"; }
+
+
+
+
+ + services.swayidle.events + + +
+
+

Run command on occurrence of a event.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
+  { event = "before-sleep"; command = "${pkgs.swaylock}/bin/swaylock -fF"; }
+  { event = "lock"; command = "lock"; }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.events.*.command

Command to run when event occurs.

Type: -string

Declared by:

+
+ +
+
+
+ + services.swayidle.events.*.command + + +
+
+

Command to run when event occurs.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.events.*.event

Event name.

Type: -one of “before-sleep”, “after-resume”, “lock”, “unlock”

Declared by:

+
+ +
+
+
+ + services.swayidle.events.*.event + + +
+
+

Event name.

+ +

Type: +one of “before-sleep”, “after-resume”, “lock”, “unlock”

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.extraArgs

Extra arguments to pass to swayidle.

Type: -list of string

Default: -[ ]

Declared by:

+
+ +
+
+
+ + services.swayidle.extraArgs + + +
+
+

Extra arguments to pass to swayidle.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.systemdTarget

Systemd target to bind to.

Type: -string

Default: -"graphical-session.target"

Example: -"sway-session.target"

Declared by:

+
+ +
+
+
+ + services.swayidle.systemdTarget + + +
+
+

Systemd target to bind to.

+ +

Type: +string

+ +

Default: +"graphical-session.target"

+ +

Example: +"sway-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.timeouts

List of commands to run after idle timeout.

Type: -list of (submodule)

Default: -[ ]

Example:

[
-  { timeout = 60; command = "${pkgs.swaylock}/bin/swaylock -fF"; }
-  { timeout = 90; command = "${pkgs.systemd}/bin/systemctl suspend"; }
+
+
+
+
+ + services.swayidle.timeouts + + +
+
+

List of commands to run after idle timeout.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
+  { timeout = 60; command = "${pkgs.swaylock}/bin/swaylock -fF"; }
+  { timeout = 90; command = "${pkgs.systemd}/bin/systemctl suspend"; }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.timeouts.*.command

Command to run after timeout seconds of inactivity.

Type: -string

Declared by:

+
+ +
+
+
+ + services.swayidle.timeouts.*.command + + +
+
+

Command to run after timeout seconds of inactivity.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.timeouts.*.resumeCommand

Command to run when there is activity again.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.swayidle.timeouts.*.resumeCommand + + +
+
+

Command to run when there is activity again.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayidle.timeouts.*.timeout

Timeout in seconds.

Type: -positive integer, meaning >0

Example: -60

Declared by:

+
+ +
+
+
+ + services.swayidle.timeouts.*.timeout + + +
+
+

Timeout in seconds.

+ +

Type: +positive integer, meaning >0

+ +

Example: +60

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayidle.nix> -
services.swayosd.enable

Whether to enable swayosd, a GTK based on screen display for keyboard shortcuts like -caps-lock and volume.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.swayosd.enable + + +
+
+

Whether to enable swayosd, a GTK based on screen display for keyboard shortcuts like +caps-lock and volume.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayosd.nix> -
services.swayosd.package

The swayosd package to use.

Type: -package

Default: -pkgs.swayosd

Declared by:

+
+ +
+
+
+ + services.swayosd.package + + +
+
+

The swayosd package to use.

+ +

Type: +package

+ +

Default: +pkgs.swayosd

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayosd.nix> -
services.swayosd.maxVolume

Sets the maximum volume.

Type: -null or unsigned integer, meaning >=0

Default: -null

Example: -120

Declared by:

+
+ +
+
+
+ + services.swayosd.maxVolume + + +
+
+

Sets the maximum volume.

+ +

Type: +null or unsigned integer, meaning >=0

+ +

Default: +null

+ +

Example: +120

+ +

Declared by:

+ +
+ <home-manager/modules/services/swayosd.nix> -
services.sxhkd.enable

Whether to enable simple X hotkey daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.sxhkd.enable + + +
+
+

Whether to enable simple X hotkey daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/sxhkd.nix> -
services.sxhkd.package

Package containing the sxhkd executable.

Type: -package

Default: -"pkgs.sxhkd"

Declared by:

+
+ +
+
+
+ + services.sxhkd.package + + +
+
+

Package containing the sxhkd executable.

+ +

Type: +package

+ +

Default: +"pkgs.sxhkd"

+ +

Declared by:

+ +
+ <home-manager/modules/services/sxhkd.nix> -
services.sxhkd.extraConfig

Additional configuration to add.

Type: -strings concatenated with “\n”

Default: -""

Example:

super + {_,shift +} {1-9,0}
+
+
+
+
+ + services.sxhkd.extraConfig + + +
+
+

Additional configuration to add.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

super + {_,shift +} {1-9,0}
   i3-msg {workspace,move container to workspace} {1-10}
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/sxhkd.nix> -
services.sxhkd.extraOptions

Command line arguments to invoke sxhkd with.

Type: -list of string

Default: -[ ]

Example: -[ "-m 1" ]

Declared by:

+
+ +
+
+
+ + services.sxhkd.extraOptions + + +
+
+

Command line arguments to invoke sxhkd with.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +[ "-m 1" ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/sxhkd.nix> -
services.sxhkd.keybindings

An attribute set that assigns hotkeys to commands.

Type: -attribute set of (null or string or path)

Default: -{ }

Example:

{
-  "super + shift + {r,c}" = "i3-msg {restart,reload}";
-  "super + {s,w}"         = "i3-msg {stacking,tabbed}";
-  "super + F1"            = pkgs.writeShellScript "script" "echo $USER";
+
+
+
+
+ + services.sxhkd.keybindings + + +
+
+

An attribute set that assigns hotkeys to commands.

+ +

Type: +attribute set of (null or string or path)

+ +

Default: +{ }

+ +

Example:

{
+  "super + shift + {r,c}" = "i3-msg {restart,reload}";
+  "super + {s,w}"         = "i3-msg {stacking,tabbed}";
+  "super + F1"            = pkgs.writeShellScript "script" "echo $USER";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/sxhkd.nix> -
services.syncthing.enable

Whether to enable Syncthing continuous file synchronization.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.syncthing.enable + + +
+
+

Whether to enable Syncthing continuous file synchronization.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/syncthing.nix> -
services.syncthing.extraOptions

Extra command-line arguments to pass to syncthing.

Type: -list of string

Default: -[ ]

Example:

[
-  "--gui-apikey=apiKey"
+
+
+
+
+ + services.syncthing.extraOptions + + +
+
+

Extra command-line arguments to pass to syncthing.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--gui-apikey=apiKey"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/syncthing.nix> -
services.syncthing.tray

Syncthing tray service configuration.

Type: -boolean or (submodule)

Default:

{
+
+
+
+
+ + services.syncthing.tray + + +
+
+

Syncthing tray service configuration.

+ +

Type: +boolean or (submodule)

+ +

Default:

{
   enable = false;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/syncthing.nix> -
services.systembus-notify.enable

Whether to enable systembus-notify - system bus notification daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.systembus-notify.enable + + +
+
+

Whether to enable systembus-notify - system bus notification daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/systembus-notify.nix> -
services.taffybar.enable

Whether to enable Taffybar.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.taffybar.enable + + +
+
+

Whether to enable Taffybar.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/taffybar.nix> -
services.taffybar.package

The package to use for the Taffybar binary.

Type: -package

Default: -pkgs.taffybar

Example: -pkgs.taffybar

Declared by:

+
+ +
+
+
+ + services.taffybar.package + + +
+
+

The package to use for the Taffybar binary.

+ +

Type: +package

+ +

Default: +pkgs.taffybar

+ +

Example: +pkgs.taffybar

+ +

Declared by:

+ +
+ <home-manager/modules/services/taffybar.nix> -
services.tahoe-lafs.enable

Whether to enable Tahoe-LAFS.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.tahoe-lafs.enable + + +
+
+

Whether to enable Tahoe-LAFS.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/tahoe-lafs.nix> -
services.taskwarrior-sync.enable

Whether to enable Taskwarrior periodic sync.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.taskwarrior-sync.enable + + +
+
+

Whether to enable Taskwarrior periodic sync.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/taskwarrior-sync.nix> -
services.taskwarrior-sync.frequency

How often to run taskwarrior sync. This + +

+
+
+ + services.taskwarrior-sync.frequency + + +
+
+

How often to run taskwarrior sync. This value is passed to the systemd timer configuration as the OnCalendar option. See systemd.time(7) -for more information about the format.

Type: -string

Default: -"*:0/5"

Declared by:

+
+for more information about the format.

+ +

Type: +string

+ +

Default: +"*:0/5"

+ +

Declared by:

+ +
+ <home-manager/modules/services/taskwarrior-sync.nix> -
services.trayer.enable

Whether to enable trayer, the lightweight GTK2+ systray for UNIX desktops.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.trayer.enable + + +
+
+

Whether to enable trayer, the lightweight GTK2+ systray for UNIX desktops.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/trayer.nix> -
services.trayer.package

The package to use for the trayer binary.

Type: -package

Default: -pkgs.trayer

Example: -pkgs.trayer

Declared by:

+
+ +
+
+
+ + services.trayer.package + + +
+
+

The package to use for the trayer binary.

+ +

Type: +package

+ +

Default: +pkgs.trayer

+ +

Example: +pkgs.trayer

+ +

Declared by:

+ +
+ <home-manager/modules/services/trayer.nix> -
services.trayer.settings

Trayer configuration as a set of attributes. Further details can be -found in trayer’s README.

SetDockType

boolean (default: true)

SetPartialStrut

boolean (default: true)

align

one of “left”, “right”, “center” (default: "center")

alpha

signed integer (default: 127)

distance

signed integer (default: 0)

distancefrom

one of “left”, “right”, “top”, “bottom” (default: "top")

edge

one of “left”, “right”, “top”, “bottom”, “none” (default: "bottom")

expand

boolean (default: true)

height

signed integer (default: 26)

heighttype

one of “request”, “pixel” (default: "pixel")

iconspacing

signed integer (default: 0)

margin

signed integer (default: 0)

monitor

unsigned integer, meaning >=0 or value “primary” (singular enum) (default: 0)

padding

signed integer (default: 0)

tint

string (default: "0xFFFFFFFF")

transparent

boolean (default: false)

width

signed integer (default: 100)

widthtype

one of “request”, “pixel”, “percent” (default: "percent")

Type: -attribute set of (null or string or boolean or signed integer)

Default: -{ }

Example:

{
-  edge = "top";
+
+
+
+
+ + services.trayer.settings + + +
+
+

Trayer configuration as a set of attributes. Further details can be +found in trayer’s README.

SetDockType

boolean (default: true)

SetPartialStrut

boolean (default: true)

align

one of “left”, “right”, “center” (default: "center")

alpha

signed integer (default: 127)

distance

signed integer (default: 0)

distancefrom

one of “left”, “right”, “top”, “bottom” (default: "top")

edge

one of “left”, “right”, “top”, “bottom”, “none” (default: "bottom")

expand

boolean (default: true)

height

signed integer (default: 26)

heighttype

one of “request”, “pixel” (default: "pixel")

iconspacing

signed integer (default: 0)

margin

signed integer (default: 0)

monitor

unsigned integer, meaning >=0 or value “primary” (singular enum) (default: 0)

padding

signed integer (default: 0)

tint

string (default: "0xFFFFFFFF")

transparent

boolean (default: false)

width

signed integer (default: 100)

widthtype

one of “request”, “pixel”, “percent” (default: "percent")

+ +

Type: +attribute set of (null or string or boolean or signed integer)

+ +

Default: +{ }

+ +

Example:

{
+  edge = "top";
   padding = 6;
   SetDockType = true;
-  tint = "0x282c34";
+  tint = "0x282c34";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/trayer.nix> -
services.twmn.enable

Whether to enable twmn, a tiling window manager notification daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.twmn.enable + + +
+
+

Whether to enable twmn, a tiling window manager notification daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.duration

The time each notification remains visible, in milliseconds.

Type: -unsigned integer, meaning >=0

Default: -3000

Example: -5000

Declared by:

+
+ +
+
+
+ + services.twmn.duration + + +
+
+

The time each notification remains visible, in milliseconds.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +3000

+ +

Example: +5000

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.extraConfig

Extra configuration options to add to the twmnd config file. See -https://github.com/sboli/twmn/blob/master/README.md -for details.

Type: -attribute set

Default: -{ }

Example: -{ main.activation_command = "\${pkgs.hello}/bin/hello"; }

Declared by:

+
+ +
+
+
+ + services.twmn.extraConfig + + +
+
+

Extra configuration options to add to the twmnd config file. See +https://github.com/sboli/twmn/blob/master/README.md +for details.

+ +

Type: +attribute set

+ +

Default: +{ }

+ +

Example: +{ main.activation_command = "\${pkgs.hello}/bin/hello"; }

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.host

Host address to listen on for notifications.

Type: -string

Default: -"127.0.0.1"

Example: -"laptop.lan"

Declared by:

+
+ +
+
+
+ + services.twmn.host + + +
+
+

Host address to listen on for notifications.

+ +

Type: +string

+ +

Default: +"127.0.0.1"

+ +

Example: +"laptop.lan"

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.icons.critical

Path to the critical notifications’ icon.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + services.twmn.icons.critical + + +
+
+

Path to the critical notifications’ icon.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.icons.info

Path to the informative notifications’ icon.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + services.twmn.icons.info + + +
+
+

Path to the informative notifications’ icon.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.icons.warning

Path to the warning notifications’ icon.

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + services.twmn.icons.warning + + +
+
+

Path to the warning notifications’ icon.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.port

UDP port to listen on for notifications.

Type: -16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: -9797

Declared by:

+
+ +
+
+
+ + services.twmn.port + + +
+
+

UDP port to listen on for notifications.

+ +

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+ +

Default: +9797

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.screen

Screen number to display notifications on when using a multi-head -desktop.

Type: -null or signed integer

Default: -null

Example: -0

Declared by:

+
+ +
+
+
+ + services.twmn.screen + + +
+
+

Screen number to display notifications on when using a multi-head +desktop.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +0

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.soundCommand

Command to execute to play a notification’s sound.

Type: -string

Default: -""

Declared by:

+
+ +
+
+
+ + services.twmn.soundCommand + + +
+
+

Command to execute to play a notification’s sound.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.text.color

Notification’s text color. RGB hex and keywords (e.g. lightgray) -are supported.

Type: -string

Default: -"#999999"

Example: -"lightgray"

Declared by:

+
+ +
+
+
+ + services.twmn.text.color + + +
+
+

Notification’s text color. RGB hex and keywords (e.g. lightgray) +are supported.

+ +

Type: +string

+ +

Default: +"#999999"

+ +

Example: +"lightgray"

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.text.font.package

Notification text’s font package. If null then -the font is assumed to already be available in your profile.

Type: -null or package

Default: -null

Example: -pkgs.dejavu_fonts

Declared by:

+
+ +
+
+
+ + services.twmn.text.font.package + + +
+
+

Notification text’s font package. If null then +the font is assumed to already be available in your profile.

+ +

Type: +null or package

+ +

Default: +null

+ +

Example: +pkgs.dejavu_fonts

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.text.font.family

Notification text’s font family.

Type: -string

Default: -"Sans"

Example: -"Noto Sans"

Declared by:

+
+ +
+
+
+ + services.twmn.text.font.family + + +
+
+

Notification text’s font family.

+ +

Type: +string

+ +

Default: +"Sans"

+ +

Example: +"Noto Sans"

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.text.font.size

Notification text’s font size.

Type: -unsigned integer, meaning >=0

Default: -13

Example: -42

Declared by:

+
+ +
+
+
+ + services.twmn.text.font.size + + +
+
+

Notification text’s font size.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +13

+ +

Example: +42

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.text.font.variant

Notification text’s font variant.

Type: -one of “oblique”, “italic”, “ultra-light”, “light”, “medium”, “semi-bold”, “bold”, “ultra-bold”, “heavy”, “ultra-condensed”, “extra-condensed”, “condensed”, “semi-condensed”, “semi-expanded”, “expanded”, “extra-expanded”, “ultra-expanded”

Default: -"medium"

Example: -"heavy"

Declared by:

+
+ +
+
+
+ + services.twmn.text.font.variant + + +
+
+

Notification text’s font variant.

+ +

Type: +one of “oblique”, “italic”, “ultra-light”, “light”, “medium”, “semi-bold”, “bold”, “ultra-bold”, “heavy”, “ultra-condensed”, “extra-condensed”, “condensed”, “semi-condensed”, “semi-expanded”, “expanded”, “extra-expanded”, “ultra-expanded”

+ +

Default: +"medium"

+ +

Example: +"heavy"

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.text.maxLength

Maximum length of the text before it is cut and suffixed with “…”. -Never cuts if null.

Type: -null or unsigned integer, meaning >=0

Default: -null

Example: -80

Declared by:

+
+ +
+
+
+ + services.twmn.text.maxLength + + +
+
+

Maximum length of the text before it is cut and suffixed with “…”. +Never cuts if null.

+ +

Type: +null or unsigned integer, meaning >=0

+ +

Default: +null

+ +

Example: +80

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.alwaysOnTop

Whether to enable forcing the notification window to always be on top.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.twmn.window.alwaysOnTop + + +
+
+

Whether to enable forcing the notification window to always be on top.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.bounce.enable

Whether to enable notification bounce when displaying next notification directly.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.twmn.window.animation.bounce.enable + + +
+
+

Whether to enable notification bounce when displaying next notification directly.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.bounce.duration

The bounce animation duration in milliseconds.

Type: -unsigned integer, meaning >=0

Default: -500

Example: -618

Declared by:

+
+ +
+
+
+ + services.twmn.window.animation.bounce.duration + + +
+
+

The bounce animation duration in milliseconds.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +500

+ +

Example: +618

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.easeIn

Options for the notification appearance’s animation.

Type: -submodule

Default: -{ }

Example:

{
+
+
+
+
+ + services.twmn.window.animation.easeIn + + +
+
+

Options for the notification appearance’s animation.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Example:

{
   curve = 19;
   duration = 618;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.easeIn.curve

The qt easing-curve animation to use for the animation. See - -QEasingCurve documentation.

Type: -integer between 0 and 40 (both inclusive)

Default: -38

Example: -19

Declared by:

+
+ +
+
+
+ + services.twmn.window.animation.easeIn.curve + + +
+
+

The qt easing-curve animation to use for the animation. See + +QEasingCurve documentation.

+ +

Type: +integer between 0 and 40 (both inclusive)

+ +

Default: +38

+ +

Example: +19

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.easeIn.duration

The animation duration in milliseconds.

Type: -unsigned integer, meaning >=0

Default: -1000

Example: -618

Declared by:

+
+ +
+
+
+ + services.twmn.window.animation.easeIn.duration + + +
+
+

The animation duration in milliseconds.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +1000

+ +

Example: +618

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.easeOut

Options for the notification disappearance’s animation.

Type: -submodule

Default: -{ }

Example:

{
+
+
+
+
+ + services.twmn.window.animation.easeOut + + +
+
+

Options for the notification disappearance’s animation.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Example:

{
   curve = 19;
   duration = 618;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.easeOut.curve

The qt easing-curve animation to use for the animation. See - -QEasingCurve documentation.

Type: -integer between 0 and 40 (both inclusive)

Default: -38

Example: -19

Declared by:

+
+ +
+
+
+ + services.twmn.window.animation.easeOut.curve + + +
+
+

The qt easing-curve animation to use for the animation. See + +QEasingCurve documentation.

+ +

Type: +integer between 0 and 40 (both inclusive)

+ +

Default: +38

+ +

Example: +19

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.animation.easeOut.duration

The animation duration in milliseconds.

Type: -unsigned integer, meaning >=0

Default: -1000

Example: -618

Declared by:

+
+ +
+
+
+ + services.twmn.window.animation.easeOut.duration + + +
+
+

The animation duration in milliseconds.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +1000

+ +

Example: +618

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.color

Notification’s background color. RGB hex and keywords (e.g. -lightgray) are supported.

Type: -string

Default: -"#000000"

Example: -"lightgray"

Declared by:

+
+ +
+
+
+ + services.twmn.window.color + + +
+
+

Notification’s background color. RGB hex and keywords (e.g. +lightgray) are supported.

+ +

Type: +string

+ +

Default: +"#000000"

+ +

Example: +"lightgray"

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.height

Height of the slide bar. Useful to match your tiling window -manager’s bar.

Type: -unsigned integer, meaning >=0

Default: -18

Example: -42

Declared by:

+
+ +
+
+
+ + services.twmn.window.height + + +
+
+

Height of the slide bar. Useful to match your tiling window +manager’s bar.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +18

+ +

Example: +42

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.offset.x

Offset of the notification’s slide starting point in pixels on the -horizontal axis (positive is rightward).

Type: -signed integer

Default: -0

Example: -50

Declared by:

+
+ +
+
+
+ + services.twmn.window.offset.x + + +
+
+

Offset of the notification’s slide starting point in pixels on the +horizontal axis (positive is rightward).

+ +

Type: +signed integer

+ +

Default: +0

+ +

Example: +50

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.offset.y

Offset of the notification’s slide starting point in pixels on the -vertical axis (positive is upward).

Type: -signed integer

Default: -0

Example: --100

Declared by:

+
+ +
+
+
+ + services.twmn.window.offset.y + + +
+
+

Offset of the notification’s slide starting point in pixels on the +vertical axis (positive is upward).

+ +

Type: +signed integer

+ +

Default: +0

+ +

Example: +-100

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.opacity

The notification window’s opacity.

Type: -integer between 0 and 100 (both inclusive)

Default: -100

Example: -80

Declared by:

+
+ +
+
+
+ + services.twmn.window.opacity + + +
+
+

The notification window’s opacity.

+ +

Type: +integer between 0 and 100 (both inclusive)

+ +

Default: +100

+ +

Example: +80

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.twmn.window.position

Position of the notification slide. The notification will slide + +

+
+
+ + services.twmn.window.position + + +
+
+

Position of the notification slide. The notification will slide in vertically from the border if placed in top_center or bottom_center, -horizontally otherwise.

Type: -one of “tr”, “top_right”, “tl”, “top_left”, “br”, “bottom_right”, “bl”, “bottom_left”, “tc”, “top_center”, “bc”, “bottom_center”, “c”, “center”

Default: -"top_right"

Example: -"bottom_left"

Declared by:

+
+horizontally otherwise.

+ +

Type: +one of “tr”, “top_right”, “tl”, “top_left”, “br”, “bottom_right”, “bl”, “bottom_left”, “tc”, “top_center”, “bc”, “bottom_center”, “c”, “center”

+ +

Default: +"top_right"

+ +

Example: +"bottom_left"

+ +

Declared by:

+ +
+ <home-manager/modules/services/twmn.nix> -
services.udiskie.enable

Whether to enable the udiskie mount daemon.

Note, if you use NixOS then you must add + +

+
+
+ + services.udiskie.enable + + +
+
+

Whether to enable the udiskie mount daemon.

Note, if you use NixOS then you must add services.udisks2.enable = true to your system configuration. Otherwise mounting will fail because -the Udisk2 DBus service is not found.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+the Udisk2 DBus service is not found.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/udiskie.nix> -
services.udiskie.automount

Whether to automatically mount new devices.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.udiskie.automount + + +
+
+

Whether to automatically mount new devices.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/udiskie.nix> -
services.udiskie.notify

Whether to show pop-up notifications.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.udiskie.notify + + +
+
+

Whether to show pop-up notifications.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/udiskie.nix> -
services.udiskie.settings

Configuration written to -$XDG_CONFIG_HOME/udiskie/config.yml.

See https://github.com/coldfix/udiskie/blob/master/doc/udiskie.8.txt#configuration -for the full list of options.

Type: -YAML value

Default: -{ }

Example:

{
+
+
+
+
+ + services.udiskie.settings + + +
+
+

Configuration written to +$XDG_CONFIG_HOME/udiskie/config.yml.

See https://github.com/coldfix/udiskie/blob/master/doc/udiskie.8.txt#configuration +for the full list of options.

+ +

Type: +YAML value

+ +

Default: +{ }

+ +

Example:

{
   program_options = {
     udisks_version = 2;
     tray = true;
   };
-  icon_names.media = [ "media-optical" ];
+  icon_names.media = [ "media-optical" ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/udiskie.nix> -
services.udiskie.tray

Whether to display tray icon.

The options are

always

Always show tray icon.

auto

Show tray icon only when there is a device available.

never

Never show tray icon.

Type: -one of “always”, “auto”, “never”

Default: -"auto"

Declared by:

+
+ +
+
+
+ + services.udiskie.tray + + +
+
+

Whether to display tray icon.

The options are

always

Always show tray icon.

auto

Show tray icon only when there is a device available.

never

Never show tray icon.

+ +

Type: +one of “always”, “auto”, “never”

+ +

Default: +"auto"

+ +

Declared by:

+ +
+ <home-manager/modules/services/udiskie.nix> -
services.unclutter.enable

Whether to enable unclutter.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.unclutter.enable + + +
+
+

Whether to enable unclutter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/unclutter.nix> -
services.unclutter.package

unclutter derivation to use.

Type: -package

Default: -pkgs.unclutter-xfixes

Declared by:

+
+ +
+
+
+ + services.unclutter.package + + +
+
+

unclutter derivation to use.

+ +

Type: +package

+ +

Default: +pkgs.unclutter-xfixes

+ +

Declared by:

+ +
+ <home-manager/modules/services/unclutter.nix> -
services.unclutter.extraOptions

More arguments to pass to the unclutter command.

Type: -list of string

Default: -[ ]

Example:

[
-  "exclude-root"
-  "ignore-scrolling"
+
+
+
+
+ + services.unclutter.extraOptions + + +
+
+

More arguments to pass to the unclutter command.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "exclude-root"
+  "ignore-scrolling"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/unclutter.nix> -
services.unclutter.threshold

Minimum number of pixels considered cursor movement.

Type: -signed integer

Default: -1

Declared by:

+
+ +
+
+
+ + services.unclutter.threshold + + +
+
+

Minimum number of pixels considered cursor movement.

+ +

Type: +signed integer

+ +

Default: +1

+ +

Declared by:

+ +
+ <home-manager/modules/services/unclutter.nix> -
services.unclutter.timeout

Number of seconds before the cursor is marked inactive.

Type: -signed integer

Default: -1

Declared by:

+
+ +
+
+
+ + services.unclutter.timeout + + +
+
+

Number of seconds before the cursor is marked inactive.

+ +

Type: +signed integer

+ +

Default: +1

+ +

Declared by:

+ +
+ <home-manager/modules/services/unclutter.nix> -
services.unison.enable

Whether to enable Unison synchronisation.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.unison.enable + + +
+
+

Whether to enable Unison synchronisation.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/unison.nix> -
services.unison.package

The unison package to use.

Type: -package

Default: -pkgs.unison

Example: -pkgs.unison.override { enableX11 = false; }

Declared by:

+
+ +
+
+
+ + services.unison.package + + +
+
+

The unison package to use.

+ +

Type: +package

+ +

Default: +pkgs.unison

+ +

Example: +pkgs.unison.override { enableX11 = false; }

+ +

Declared by:

+ +
+ <home-manager/modules/services/unison.nix> -
services.unison.pairs

Unison root pairs to keep synchronised.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
-  "my-documents" = {
+
+
+
+
+ + services.unison.pairs + + +
+
+

Unison root pairs to keep synchronised.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  "my-documents" = {
     roots = [
-      "/home/user/documents"
-      "ssh://remote/documents"
+      "/home/user/documents"
+      "ssh://remote/documents"
     ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/unison.nix> -
services.unison.pairs.<name>.commandOptions

Additional command line options as a dictionary to pass to the + +

+
+
+ + services.unison.pairs.<name>.commandOptions + + +
+
+

Additional command line options as a dictionary to pass to the unison program.

Use a list of strings to declare the same option multiple times.

See unison(1) -for a list of available options.

Type: -attribute set of (string or list of string)

Default:

{
-  auto = "true";
-  batch = "true";
-  log = "false";
-  repeat = "watch";
-  sshcmd = "\${pkgs.openssh}/bin/ssh";
-  ui = "text";
+for a list of available options.

+ +

Type: +attribute set of (string or list of string)

+ +

Default:

{
+  auto = "true";
+  batch = "true";
+  log = "false";
+  repeat = "watch";
+  sshcmd = "\${pkgs.openssh}/bin/ssh";
+  ui = "text";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/unison.nix> -
services.unison.pairs.<name>.roots

Pair of roots to synchronise.

Type: -list of string of length 2

Example:

[
-  "/home/user/documents"
-  "ssh://remote/documents"
+
+
+
+
+ + services.unison.pairs.<name>.roots + + +
+
+

Pair of roots to synchronise.

+ +

Type: +list of string of length 2

+ +

Example:

[
+  "/home/user/documents"
+  "ssh://remote/documents"
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/unison.nix> -
services.unison.pairs.<name>.stateDirectory

Unison state directory to use.

Type: -path

Default: -"$XDG_DATA_HOME/unison"

Declared by:

+
+ +
+
+
+ + services.unison.pairs.<name>.stateDirectory + + +
+
+

Unison state directory to use.

+ +

Type: +path

+ +

Default: +"$XDG_DATA_HOME/unison"

+ +

Declared by:

+ +
+ <home-manager/modules/services/unison.nix> -
services.vdirsyncer.enable

Whether to enable vdirsyncer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.vdirsyncer.enable + + +
+
+

Whether to enable vdirsyncer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/vdirsyncer.nix> -
services.vdirsyncer.package

The package to use for the vdirsyncer binary.

Type: -package

Default: -"pkgs.vdirsyncer"

Example: -pkgs.vdirsyncer

Declared by:

+
+ +
+
+
+ + services.vdirsyncer.package + + +
+
+

The package to use for the vdirsyncer binary.

+ +

Type: +package

+ +

Default: +"pkgs.vdirsyncer"

+ +

Example: +pkgs.vdirsyncer

+ +

Declared by:

+ +
+ <home-manager/modules/services/vdirsyncer.nix> -
services.vdirsyncer.configFile

Optional configuration file to link to use instead of -the default file ($XDG_CONFIG_HOME/vdirsyncer/config).

Type: -null or path

Default: -null

Declared by:

+
+ +
+
+
+ + services.vdirsyncer.configFile + + +
+
+

Optional configuration file to link to use instead of +the default file ($XDG_CONFIG_HOME/vdirsyncer/config).

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/vdirsyncer.nix> -
services.vdirsyncer.frequency

How often to run vdirsyncer. This value is passed to the systemd + +

+
+
+ + services.vdirsyncer.frequency + + +
+
+

How often to run vdirsyncer. This value is passed to the systemd timer configuration as the onCalendar option. See systemd.time(7) -for more information about the format.

Type: -string

Default: -"*:0/5"

Declared by:

+
+for more information about the format.

+ +

Type: +string

+ +

Default: +"*:0/5"

+ +

Declared by:

+ +
+ <home-manager/modules/services/vdirsyncer.nix> -
services.vdirsyncer.verbosity

Whether vdirsyncer should produce verbose output.

Type: -null or one of “CRITICAL”, “ERROR”, “WARNING”, “INFO”, “DEBUG”

Default: -null

Declared by:

+
+ +
+
+
+ + services.vdirsyncer.verbosity + + +
+
+

Whether vdirsyncer should produce verbose output.

+ +

Type: +null or one of “CRITICAL”, “ERROR”, “WARNING”, “INFO”, “DEBUG”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/vdirsyncer.nix> -
services.volnoti.enable

Whether to enable Volnoti volume HUD daemon.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.volnoti.enable + + +
+
+

Whether to enable Volnoti volume HUD daemon.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/volnoti.nix> -
services.volnoti.package

Package containing the volnoti program.

Type: -package

Default: -pkgs.volnoti

Declared by:

+
+ +
+
+
+ + services.volnoti.package + + +
+
+

Package containing the volnoti program.

+ +

Type: +package

+ +

Default: +pkgs.volnoti

+ +

Declared by:

+ +
+ <home-manager/modules/services/volnoti.nix> -
services.wlsunset.enable

Whether to enable wlsunset.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.wlsunset.enable + + +
+
+

Whether to enable wlsunset.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.wlsunset.package

wlsunset derivation to use.

Type: -package

Default: -"pkgs.wlsunset"

Declared by:

+
+ +
+
+
+ + services.wlsunset.package + + +
+
+

wlsunset derivation to use.

+ +

Type: +package

+ +

Default: +"pkgs.wlsunset"

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.wlsunset.gamma

Gamma value to use.

Type: -string

Default: -"1.0"

Declared by:

+
+ +
+
+
+ + services.wlsunset.gamma + + +
+
+

Gamma value to use.

+ +

Type: +string

+ +

Default: +"1.0"

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.wlsunset.latitude

Your current latitude, between -90.0 and -90.0.

Type: -string

Declared by:

+
+ +
+
+
+ + services.wlsunset.latitude + + +
+
+

Your current latitude, between -90.0 and +90.0.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.wlsunset.longitude

Your current longitude, between -180.0 and -180.0.

Type: -string

Declared by:

+
+ +
+
+
+ + services.wlsunset.longitude + + +
+
+

Your current longitude, between -180.0 and +180.0.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.wlsunset.systemdTarget

Systemd target to bind to.

Type: -string

Default: -"graphical-session.target"

Declared by:

+
+ +
+
+
+ + services.wlsunset.systemdTarget + + +
+
+

Systemd target to bind to.

+ +

Type: +string

+ +

Default: +"graphical-session.target"

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.wlsunset.temperature.day

Colour temperature to use during the day, in Kelvin (K). -This value must be greater than temperature.night.

Type: -signed integer

Default: -6500

Declared by:

+
+ +
+
+
+ + services.wlsunset.temperature.day + + +
+
+

Colour temperature to use during the day, in Kelvin (K). +This value must be greater than temperature.night.

+ +

Type: +signed integer

+ +

Default: +6500

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.wlsunset.temperature.night

Colour temperature to use during the night, in Kelvin (K). -This value must be smaller than temperature.day.

Type: -signed integer

Default: -4000

Declared by:

+
+ +
+
+
+ + services.wlsunset.temperature.night + + +
+
+

Colour temperature to use during the night, in Kelvin (K). +This value must be smaller than temperature.day.

+ +

Type: +signed integer

+ +

Default: +4000

+ +

Declared by:

+ +
+ <home-manager/modules/services/wlsunset.nix> -
services.xcape.enable

Whether to enable xcape.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xcape.enable + + +
+
+

Whether to enable xcape.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xcape.nix> -
services.xcape.mapExpression

The value has the grammar Key[|OtherKey].

The list of key names is found in the header file + +

+
+
+ + services.xcape.mapExpression + + +
+
+

The value has the grammar Key[|OtherKey].

The list of key names is found in the header file X11/keysymdef.h (remove the XK_ prefix). Note that due to limitations of X11 shifted keys must be specified as a shift key @@ -15663,319 +65555,1407 @@ name of the character. For example to generate “{” the expression Shift_L|bracketleft could be used (assuming that you have a key with “{” above “[”).

You can also specify keys in decimal (prefix #), octal (#0), or hexadecimal (#0x). They will be interpreted as keycodes -unless no corresponding key name is found.

Type: -attribute set of string

Default: -{ }

Example:

{
-  Control_L = "Control_L|O";
-  Shift_L = "Escape";
+unless no corresponding key name is found.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  Control_L = "Control_L|O";
+  Shift_L = "Escape";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/xcape.nix> -
services.xcape.timeout

If you hold a key longer than this timeout, xcape will not -generate a key event. Default is 500 ms.

Type: -null or signed integer

Default: -null

Example: -500

Declared by:

+
+ +
+
+
+ + services.xcape.timeout + + +
+
+

If you hold a key longer than this timeout, xcape will not +generate a key event. Default is 500 ms.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +500

+ +

Declared by:

+ +
+ <home-manager/modules/services/xcape.nix> -
services.xembed-sni-proxy.enable

Whether to enable XEmbed SNI Proxy.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xembed-sni-proxy.enable + + +
+
+

Whether to enable XEmbed SNI Proxy.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xembed-sni-proxy.nix> -
services.xembed-sni-proxy.package

Package containing the xembedsniproxy -program.

Type: -package

Default: -pkgs.plasma-workspace

Declared by:

+
+ +
+
+
+ + services.xembed-sni-proxy.package + + +
+
+

Package containing the xembedsniproxy +program.

+ +

Type: +package

+ +

Default: +pkgs.plasma-workspace

+ +

Declared by:

+ +
+ <home-manager/modules/services/xembed-sni-proxy.nix> -
services.xidlehook.enable

Whether to enable xidlehook systemd service.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xidlehook.enable + + +
+
+

Whether to enable xidlehook systemd service.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.package

The package to use for xidlehook.

Type: -package

Default: -"pkgs.xidlehook"

Declared by:

+
+ +
+
+
+ + services.xidlehook.package + + +
+
+

The package to use for xidlehook.

+ +

Type: +package

+ +

Default: +"pkgs.xidlehook"

+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.detect-sleep

Whether to enable detecting when the system wakes up from a suspended state and resetting the idle timer.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xidlehook.detect-sleep + + +
+
+

Whether to enable detecting when the system wakes up from a suspended state and resetting the idle timer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.environment

Extra environment variables to be exported in the script. -These options are passed unescaped as export name=value.

Type: -attribute set of string

Default: -{ }

Example:

{
-  "primary-display" = "$(xrandr | awk '/ primary/{print $1}')";
+
+
+
+
+ + services.xidlehook.environment + + +
+
+

Extra environment variables to be exported in the script. +These options are passed unescaped as export name=value.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "primary-display" = "$(xrandr | awk '/ primary/{print $1}')";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.not-when-audio

Disable locking when audio is playing.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xidlehook.not-when-audio + + +
+
+

Disable locking when audio is playing.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.not-when-fullscreen

Disable locking when a fullscreen application is in use.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xidlehook.not-when-fullscreen + + +
+
+

Disable locking when a fullscreen application is in use.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.once

Whether to enable running the program once and exiting.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xidlehook.once + + +
+
+

Whether to enable running the program once and exiting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.timers

A set of commands to be executed after a specific idle timeout. + +

+
+
+ + services.xidlehook.timers + + +
+
+

A set of commands to be executed after a specific idle timeout. The commands specified in command and canceller are passed escaped to the script. To use or re-use environment variables that are script-dependent, specify them -in the environment section.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+in the environment section.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
     delay = 60;
-    command = "xrandr --output \"$PRIMARY_DISPLAY\" --brightness .1";
-    canceller = "xrandr --output \"$PRIMARY_DISPLAY\" --brightness 1";
+    command = "xrandr --output \"$PRIMARY_DISPLAY\" --brightness .1";
+    canceller = "xrandr --output \"$PRIMARY_DISPLAY\" --brightness 1";
   }
   {
     delay = 120;
-    command = "${pkgs.writeShellScript "my-script" ''
+    command = "${pkgs.writeShellScript "my-script" ''
       # A complex script to run
-    ''}";
+    ''}";
   }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.timers.*.canceller

Command executed when the user becomes active again. + +

+
+
+ + services.xidlehook.timers.*.canceller + + +
+
+

Command executed when the user becomes active again. This is only executed if the next timer has not been reached. Path to executables are accepted. -The command is automatically escaped.

Type: -string

Default: -""

Example:

${pkgs.libnotify}/bin/notify-send "Idle" "Resuming activity"
+The command is automatically escaped.

-

Declared by:

+
+

Type: +string

+ +

Default: +""

+ +

Example:

${pkgs.libnotify}/bin/notify-send "Idle" "Resuming activity"
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.timers.*.command

Command executed after the idle timeout is reached. + +

+
+
+ + services.xidlehook.timers.*.command + + +
+
+

Command executed after the idle timeout is reached. Path to executables are accepted. -The command is automatically escaped.

Type: -null or string

Example:

${pkgs.libnotify}/bin/notify-send "Idle" "Sleeping in 1 minute"
+The command is automatically escaped.

-

Declared by:

+
+

Type: +null or string

+ +

Example:

${pkgs.libnotify}/bin/notify-send "Idle" "Sleeping in 1 minute"
+
+
+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xidlehook.timers.*.delay

Time before executing the command.

Type: -unsigned integer, meaning >=0

Example: -60

Declared by:

+
+ +
+
+
+ + services.xidlehook.timers.*.delay + + +
+
+

Time before executing the command.

+ +

Type: +unsigned integer, meaning >=0

+ +

Example: +60

+ +

Declared by:

+ +
+ <home-manager/modules/services/xidlehook.nix> -
services.xscreensaver.enable

Whether to enable XScreenSaver.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xscreensaver.enable + + +
+
+

Whether to enable XScreenSaver.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xscreensaver.nix> -
services.xscreensaver.settings

The settings to use for XScreenSaver.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
+
+
+
+
+ + services.xscreensaver.settings + + +
+
+

The settings to use for XScreenSaver.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
   fadeTicks = 20;
   lock = false;
-  mode = "blank";
+  mode = "blank";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/xscreensaver.nix> -
services.xsettingsd.enable

Whether to enable xsettingsd.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xsettingsd.enable + + +
+
+

Whether to enable xsettingsd.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsettingsd.nix> -
services.xsettingsd.package

Package containing the xsettingsd program.

Type: -package

Default: -pkgs.xsettingsd

Declared by:

+
+ +
+
+
+ + services.xsettingsd.package + + +
+
+

Package containing the xsettingsd program.

+ +

Type: +package

+ +

Default: +pkgs.xsettingsd

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsettingsd.nix> -
services.xsettingsd.settings

Xsettingsd options for configuration file. See -https://github.com/derat/xsettingsd/wiki/Settings -for documentation on these values.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  "Net/ThemeName" = "Numix";
-  "Xft/Antialias" = true;
-  "Xft/Hinting" = true;
-  "Xft/RGBA" = "rgb";
+
+
+
+
+ + services.xsettingsd.settings + + +
+
+

Xsettingsd options for configuration file. See +https://github.com/derat/xsettingsd/wiki/Settings +for documentation on these values.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  "Net/ThemeName" = "Numix";
+  "Xft/Antialias" = true;
+  "Xft/Hinting" = true;
+  "Xft/RGBA" = "rgb";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/xsettingsd.nix> -
services.xsuspender.enable

Whether to enable XSuspender.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + services.xsuspender.enable + + +
+
+

Whether to enable XSuspender.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.debug

Whether to enable debug output.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.xsuspender.debug + + +
+
+

Whether to enable debug output.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults

XSuspender defaults.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults + + +
+
+

XSuspender defaults.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.autoSuspendOnBattery

Whether to auto-apply rules when switching to battery -power even if the window(s) didn’t just lose focus.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.autoSuspendOnBattery + + +
+
+

Whether to auto-apply rules when switching to battery +power even if the window(s) didn’t just lose focus.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.downclockOnBattery

Limit CPU consumption for this factor when on battery power. -Value 1 means 50% decrease, 2 means 66%, 3 means 75% etc.

Type: -signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.downclockOnBattery + + +
+
+

Limit CPU consumption for this factor when on battery power. +Value 1 means 50% decrease, 2 means 66%, 3 means 75% etc.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.execResume

Before resuming, execute this shell script. Resume the -process regardless script failure.

Type: -null or string

Default: -null

Example: -"echo resuming ..."

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.execResume + + +
+
+

Before resuming, execute this shell script. Resume the +process regardless script failure.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"echo resuming ..."

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.execSuspend

Before suspending, execute this shell script. If it fails, -abort suspension.

Type: -null or string

Default: -null

Example: -"echo \"suspending window $XID of process $PID\""

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.execSuspend + + +
+
+

Before suspending, execute this shell script. If it fails, +abort suspension.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"echo \"suspending window $XID of process $PID\""

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.matchWmClassContains

Match windows that wm class contains string.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.matchWmClassContains + + +
+
+

Match windows that wm class contains string.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.matchWmClassGroupContains

Match windows where wm class group contains string.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.matchWmClassGroupContains + + +
+
+

Match windows where wm class group contains string.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.matchWmNameContains

Match windows where wm name contains string.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.matchWmNameContains + + +
+
+

Match windows where wm name contains string.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.onlyOnBattery

Whether to enable process suspend only on battery.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.onlyOnBattery + + +
+
+

Whether to enable process suspend only on battery.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.resumeEvery

Resume interval in seconds.

Type: -signed integer

Default: -50

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.resumeEvery + + +
+
+

Resume interval in seconds.

+ +

Type: +signed integer

+ +

Default: +50

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.resumeFor

Resume duration in seconds.

Type: -signed integer

Default: -5

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.resumeFor + + +
+
+

Resume duration in seconds.

+ +

Type: +signed integer

+ +

Default: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.sendSignals

Whether to send SIGSTOP / SIGCONT signals or not. -If false just the exec scripts are run.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.sendSignals + + +
+
+

Whether to send SIGSTOP / SIGCONT signals or not. +If false just the exec scripts are run.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.suspendDelay

Initial suspend delay in seconds.

Type: -signed integer

Default: -5

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.suspendDelay + + +
+
+

Initial suspend delay in seconds.

+ +

Type: +signed integer

+ +

Default: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.defaults.suspendSubtreePattern

Also suspend descendant processes that match this regex.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.defaults.suspendSubtreePattern + + +
+
+

Also suspend descendant processes that match this regex.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules

Attribute set of XSuspender rules.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
+
+
+
+
+ + services.xsuspender.rules + + +
+
+

Attribute set of XSuspender rules.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
   Chromium = {
-    matchWmClassContains = "chromium-browser";
+    matchWmClassContains = "chromium-browser";
     suspendDelay = 10;
-    suspendSubtreePattern = "chromium";
+    suspendSubtreePattern = "chromium";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.autoSuspendOnBattery

Whether to auto-apply rules when switching to battery -power even if the window(s) didn’t just lose focus.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.autoSuspendOnBattery + + +
+
+

Whether to auto-apply rules when switching to battery +power even if the window(s) didn’t just lose focus.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.downclockOnBattery

Limit CPU consumption for this factor when on battery power. -Value 1 means 50% decrease, 2 means 66%, 3 means 75% etc.

Type: -signed integer

Default: -0

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.downclockOnBattery + + +
+
+

Limit CPU consumption for this factor when on battery power. +Value 1 means 50% decrease, 2 means 66%, 3 means 75% etc.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.execResume

Before resuming, execute this shell script. Resume the -process regardless script failure.

Type: -null or string

Default: -null

Example: -"echo resuming ..."

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.execResume + + +
+
+

Before resuming, execute this shell script. Resume the +process regardless script failure.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"echo resuming ..."

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.execSuspend

Before suspending, execute this shell script. If it fails, -abort suspension.

Type: -null or string

Default: -null

Example: -"echo \"suspending window $XID of process $PID\""

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.execSuspend + + +
+
+

Before suspending, execute this shell script. If it fails, +abort suspension.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"echo \"suspending window $XID of process $PID\""

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.matchWmClassContains

Match windows that wm class contains string.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.matchWmClassContains + + +
+
+

Match windows that wm class contains string.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.matchWmClassGroupContains

Match windows where wm class group contains string.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.matchWmClassGroupContains + + +
+
+

Match windows where wm class group contains string.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.matchWmNameContains

Match windows where wm name contains string.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.matchWmNameContains + + +
+
+

Match windows where wm name contains string.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.onlyOnBattery

Whether to enable process suspend only on battery.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.onlyOnBattery + + +
+
+

Whether to enable process suspend only on battery.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.resumeEvery

Resume interval in seconds.

Type: -signed integer

Default: -50

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.resumeEvery + + +
+
+

Resume interval in seconds.

+ +

Type: +signed integer

+ +

Default: +50

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.resumeFor

Resume duration in seconds.

Type: -signed integer

Default: -5

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.resumeFor + + +
+
+

Resume duration in seconds.

+ +

Type: +signed integer

+ +

Default: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.sendSignals

Whether to send SIGSTOP / SIGCONT signals or not. -If false just the exec scripts are run.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.sendSignals + + +
+
+

Whether to send SIGSTOP / SIGCONT signals or not. +If false just the exec scripts are run.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.suspendDelay

Initial suspend delay in seconds.

Type: -signed integer

Default: -5

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.suspendDelay + + +
+
+

Initial suspend delay in seconds.

+ +

Type: +signed integer

+ +

Default: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
services.xsuspender.rules.<name>.suspendSubtreePattern

Also suspend descendant processes that match this regex.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + services.xsuspender.rules.<name>.suspendSubtreePattern + + +
+
+

Also suspend descendant processes that match this regex.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/xsuspender.nix> -
specialisation

A set of named specialized configurations. These can be used to extend + +

+
+
+ + specialisation + + +
+
+

A set of named specialized configurations. These can be used to extend your base configuration with additional settings. For example, you can have specialisations named “light” and “dark” that apply light and dark color theme configurations.

Note

This is an experimental option for now and you therefore have to activate the specialisation by looking up and running the activation script yourself. Running the activation script will create a new Home Manager generation.

For example, to activate the “dark” specialisation, you can -first look up your current Home Manager generation by running

$ home-manager generations | head -1
+first look up your current Home Manager generation by running

$ home-manager generations | head -1
 2022-05-02 22:49 : id 1758 -> /nix/store/jy…ac-home-manager-generation
-

then run

$ /nix/store/jy…ac-home-manager-generation/specialisation/dark/activate
+

then run

$ /nix/store/jy…ac-home-manager-generation/specialisation/dark/activate
 Starting Home Manager activation
 …
-

Warning

Since this option is experimental, the activation process may -change in backwards incompatible ways.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ + +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/misc/specialisation.nix> -
specialisation.<name>.configuration

Arbitrary Home Manager configuration settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + specialisation.<name>.configuration + + +
+
+

Arbitrary Home Manager configuration settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/misc/specialisation.nix> -
systemd.user.automounts

Definition of systemd per-user automount units. Attributes are + +

+
+
+ + systemd.user.automounts + + +
+
+

Definition of systemd per-user automount units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.automount(5).

Type: -systemd automount unit configuration

Default: -{ }

Example:

{
+systemd.automount(5).

+ +

Type: +systemd automount unit configuration

+ +

Default: +{ }

+ +

Example:

{
   automount-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Automount = {
@@ -15984,18 +66964,40 @@ systemd automount unit configuration

Default:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.mounts

Definition of systemd per-user mount units. Attributes are + +

+
+
+ + systemd.user.mounts + + +
+
+

Definition of systemd per-user mount units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.mount(5).

Type: -systemd mount unit configuration

Default: -{ }

Example:

{
+systemd.mount(5).

+ +

Type: +systemd mount unit configuration

+ +

Default: +{ }

+ +

Example:

{
   mount-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Mount = {
@@ -16004,18 +67006,40 @@ systemd mount unit configuration

Default:< }; }; -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.paths

Definition of systemd per-user path units. Attributes are + +

+
+
+ + systemd.user.paths + + +
+
+

Definition of systemd per-user path units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.path(5).

Type: -systemd path unit configuration

Default: -{ }

Example:

{
+systemd.path(5).

+ +

Type: +systemd path unit configuration

+ +

Default: +{ }

+ +

Example:

{
   path-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Path = {
@@ -16024,18 +67048,40 @@ systemd path unit configuration

Default:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.services

Definition of systemd per-user service units. Attributes are + +

+
+
+ + systemd.user.services + + +
+
+

Definition of systemd per-user service units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.service(5).

Type: -systemd service unit configuration

Default: -{ }

Example:

{
+systemd.service(5).

+ +

Type: +systemd service unit configuration

+ +

Default: +{ }

+ +

Example:

{
   service-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Service = {
@@ -16044,57 +67090,187 @@ systemd service unit configuration

Default:

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.servicesStartTimeoutMs

How long to wait for started services to fail until their start is -considered successful. The value 0 indicates no timeout.

Type: -unsigned integer, meaning >=0

Default: -0

Declared by:

+
+ +
+
+
+ + systemd.user.servicesStartTimeoutMs + + +
+
+

How long to wait for started services to fail until their start is +considered successful. The value 0 indicates no timeout.

+ +

Type: +unsigned integer, meaning >=0

+ +

Default: +0

+ +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.sessionVariables

Environment variables that will be set for the user session. + +

+
+
+ + systemd.user.sessionVariables + + +
+
+

Environment variables that will be set for the user session. The variable values must be as described in -environment.d(5).

Type: -attribute set of (signed integer or string)

Default: -{ }

Example:

{
-  EDITOR = "vim";
+environment.d(5).

+ +

Type: +attribute set of (signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  EDITOR = "vim";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.settings

Extra config options for user session service manager. See systemd-user.conf(5) for -available options.

Type: -attribute set of attribute set of (INI atom (null, bool, int, float or string) or a list of them for duplicate keys)

Default: -{ }

Example:

{
+
+
+
+
+ + systemd.user.settings + + +
+
+

Extra config options for user session service manager. See systemd-user.conf(5) for +available options.

+ +

Type: +attribute set of attribute set of (INI atom (null, bool, int, float or string) or a list of them for duplicate keys)

+ +

Default: +{ }

+ +

Example:

{
   Manager.DefaultCPUAccounting = true;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.settings.Manager.DefaultEnvironment

Configures environment variables passed to all executed processes.

Type: -attribute set of (null or string or path or package)

Default: -{ }

Example:

{
-  PATH = "%u/bin:%u/.cargo/bin";
+
+
+
+
+ + systemd.user.settings.Manager.DefaultEnvironment + + +
+
+

Configures environment variables passed to all executed processes.

+ +

Type: +attribute set of (null or string or path or package)

+ +

Default: +{ }

+ +

Example:

{
+  PATH = "%u/bin:%u/.cargo/bin";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.settings.Manager.ManagerEnvironment

Sets environment variables just for the manager process itself.

Type: -attribute set of (null or string or path or package)

Default: -{ }

Example:

{
-  PATH = "%u/bin:%u/.cargo/bin";
+
+
+
+
+ + systemd.user.settings.Manager.ManagerEnvironment + + +
+
+

Sets environment variables just for the manager process itself.

+ +

Type: +attribute set of (null or string or path or package)

+ +

Default: +{ }

+ +

Example:

{
+  PATH = "%u/bin:%u/.cargo/bin";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.slices

Definition of systemd per-user slice units. Attributes are + +

+
+
+ + systemd.user.slices + + +
+
+

Definition of systemd per-user slice units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.slice(5).

Type: -systemd slice unit configuration

Default: -{ }

Example:

{
+systemd.slice(5).

+ +

Type: +systemd slice unit configuration

+ +

Default: +{ }

+ +

Example:

{
   slice-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Slice = {
@@ -16103,18 +67279,40 @@ systemd slice unit configuration

Default:< }; }; -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.sockets

Definition of systemd per-user socket units. Attributes are + +

+
+
+ + systemd.user.sockets + + +
+
+

Definition of systemd per-user socket units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.socket(5).

Type: -systemd socket unit configuration

Default: -{ }

Example:

{
+systemd.socket(5).

+ +

Type: +systemd socket unit configuration

+ +

Default: +{ }

+ +

Example:

{
   socket-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Socket = {
@@ -16123,9 +67321,25 @@ systemd socket unit configuration

Default: }; }; -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.startServices

Whether new or changed services that are wanted by active targets + +

+
+
+ + systemd.user.startServices + + +
+
+

Whether new or changed services that are wanted by active targets should be started. Additionally, stop obsolete services from the previous generation.

The alternatives are

suggest (or false)

Use a very simple shell script to print suggested systemctl commands to run. You will have to @@ -16135,26 +67349,72 @@ necessary changes and automatically run the updates. This tool offers more features while having a small closure size. Note, it requires a fully functional user D-Bus session. Once tested and deemed sufficiently robust, this will -become the default.

Type: -boolean or one of “suggest”, “legacy”, “sd-switch”

Default: -"suggest"

Declared by:

+
+become the default.

+ +

Type: +boolean or one of “suggest”, “legacy”, “sd-switch”

+ +

Default: +"suggest"

+ +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.systemctlPath

Absolute path to the systemctl tool. This + +

+
+
+ + systemd.user.systemctlPath + + +
+
+

Absolute path to the systemctl tool. This option may need to be set if running Home Manager on a -non-NixOS distribution.

Type: -string

Default: -"${pkgs.systemd}/bin/systemctl"

Declared by:

+
+non-NixOS distribution.

+ +

Type: +string

+ +

Default: +"${pkgs.systemd}/bin/systemctl"

+ +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.targets

Definition of systemd per-user target units. Attributes are + +

+
+
+ + systemd.user.targets + + +
+
+

Definition of systemd per-user target units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.target(5).

Type: -systemd target unit configuration

Default: -{ }

Example:

{
+systemd.target(5).

+ +

Type: +systemd target unit configuration

+ +

Default: +{ }

+ +

Example:

{
   target-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Target = {
@@ -16163,18 +67423,40 @@ systemd target unit configuration

Default: }; }; -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.timers

Definition of systemd per-user timer units. Attributes are + +

+
+
+ + systemd.user.timers + + +
+
+

Definition of systemd per-user timer units. Attributes are merged recursively.

Note that the attributes follow the capitalization and naming used by systemd. More details can be found in -systemd.timer(5).

Type: -systemd timer unit configuration

Default: -{ }

Example:

{
+systemd.timer(5).

+ +

Type: +systemd timer unit configuration

+ +

Default: +{ }

+ +

Example:

{
   timer-name = {
     Unit = {
-      Description = "Example description";
-      Documentation = [ "man:example(1)" "man:example(5)" ];
+      Description = "Example description";
+      Documentation = [ "man:example(1)" "man:example(5)" ];
     };
 
     Timer = {
@@ -16183,235 +67465,1105 @@ systemd timer unit configuration

Default:< }; }; -

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/systemd.nix> -
systemd.user.tmpfiles.rules

Rules for creating and cleaning up temporary files + +

+
+
+ + systemd.user.tmpfiles.rules + + +
+
+

Rules for creating and cleaning up temporary files automatically. See tmpfiles.d(5) -for the exact format.

Type: -list of string

Default: -[ ]

Example:

[
-  "L /home/user/Documents - - - - /mnt/data/Documents"
+for the exact format.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "L /home/user/Documents - - - - /mnt/data/Documents"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/tmpfiles.nix> -
targets.darwin.currentHostDefaults

Set macOS user defaults. Unlike targets.darwin.defaults, + +

+
+
+ + targets.darwin.currentHostDefaults + + +
+
+

Set macOS user defaults. Unlike targets.darwin.defaults, the preferences will only be applied to the currently logged-in host. This -distinction is important for networked accounts.

Values set to null are ignored.

Warning

Some settings might require a re-login to take effect.

Type: -attribute set of attribute set of anything

Default: -{ }

Example:

{
-  "com.apple.controlcenter" = {
+distinction is important for networked accounts.

Values set to null are ignored.

Warning

Some settings might require a re-login to take effect.

+ +

Type: +attribute set of attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  "com.apple.controlcenter" = {
     BatteryShowPercentage = true;
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults> -
targets.darwin.currentHostDefaults."com.apple.controlcenter".BatteryShowPercentage

Whether to show battery percentage in the menu bar.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.currentHostDefaults."com.apple.controlcenter".BatteryShowPercentage + + +
+
+

Whether to show battery percentage in the menu bar.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-currenthost.nix> -
targets.darwin.defaults

Set macOS user defaults. Values set to null are + +

+
+
+ + targets.darwin.defaults + + +
+
+

Set macOS user defaults. Values set to null are ignored.

Warning

Some settings might require a re-login to take effect.

Warning

Some settings are only read from -targets.darwin.currentHostDefaults.

Type: -attribute set of attribute set of anything

Default: -{ }

Example:

{
-  "com.apple.desktopservices" = {
+targets.darwin.currentHostDefaults.

+ +

Type: +attribute set of attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  "com.apple.desktopservices" = {
     DSDontWriteNetworkStores = true;
     DSDontWriteUSBStores = true;
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults> -
targets.darwin.defaults.NSGlobalDomain.AppleLanguages

Sets the language to use in the preferred order.

Type: -null or (list of string)

Default: -null

Example:

[
-  "en"
+
+
+
+
+ + targets.darwin.defaults.NSGlobalDomain.AppleLanguages + + +
+
+

Sets the language to use in the preferred order.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "en"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.AppleLocale

Configures the user locale.

Type: -null or string

Default: -null

Example: -"en_US"

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.AppleLocale + + +
+
+

Configures the user locale.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"en_US"

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.AppleMeasurementUnits

Sets the measurement unit.

Type: -null or one of “Centimeters”, “Inches”

Default: -null

Example: -"Centimeters"

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.AppleMeasurementUnits + + +
+
+

Sets the measurement unit.

+ +

Type: +null or one of “Centimeters”, “Inches”

+ +

Default: +null

+ +

Example: +"Centimeters"

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.AppleMetricUnits

Whether to enable the metric system.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.AppleMetricUnits + + +
+
+

Whether to enable the metric system.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.AppleTemperatureUnit

Sets the temperature unit.

Type: -null or one of “Celsius”, “Fahrenheit”

Default: -null

Example: -"Celsius"

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.AppleTemperatureUnit + + +
+
+

Sets the temperature unit.

+ +

Type: +null or one of “Celsius”, “Fahrenheit”

+ +

Default: +null

+ +

Example: +"Celsius"

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.NSAutomaticCapitalizationEnabled

Whether to enable automatic capitalization.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.NSAutomaticCapitalizationEnabled + + +
+
+

Whether to enable automatic capitalization.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.NSAutomaticDashSubstitutionEnabled

Whether to enable smart dashes.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.NSAutomaticDashSubstitutionEnabled + + +
+
+

Whether to enable smart dashes.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.NSAutomaticPeriodSubstitutionEnabled

Whether to enable period with double space.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.NSAutomaticPeriodSubstitutionEnabled + + +
+
+

Whether to enable period with double space.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.NSAutomaticQuoteSubstitutionEnabled

Whether to enable smart quotes.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.NSAutomaticQuoteSubstitutionEnabled + + +
+
+

Whether to enable smart quotes.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults.NSGlobalDomain.NSAutomaticSpellingCorrectionEnabled

Whether to enable spelling correction.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults.NSGlobalDomain.NSAutomaticSpellingCorrectionEnabled + + +
+
+

Whether to enable spelling correction.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari".AutoFillCreditCardData

Whether to enable autofill of credit card numbers.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari".AutoFillCreditCardData + + +
+
+

Whether to enable autofill of credit card numbers.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari".AutoFillPasswords

Whether to enable autofill of usernames and passwords.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari".AutoFillPasswords + + +
+
+

Whether to enable autofill of usernames and passwords.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari".AutoOpenSafeDownloads

Whether to enable opening of downloaded files.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari".AutoOpenSafeDownloads + + +
+
+

Whether to enable opening of downloaded files.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari".IncludeDevelopMenu

Whether to enable “Develop” menu in the menu bar.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari".IncludeDevelopMenu + + +
+
+

Whether to enable “Develop” menu in the menu bar.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari".ShowOverlayStatusBar

Whether to enable status bar.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari".ShowOverlayStatusBar + + +
+
+

Whether to enable status bar.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari".WebKitDeveloperExtrasEnabledPreferenceKey

Configures the web inspector.

Warning

Instead of setting this option directly, set -IncludeDevelopMenu instead.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari".WebKitDeveloperExtrasEnabledPreferenceKey + + +
+
+

Configures the web inspector.

Warning

Instead of setting this option directly, set +IncludeDevelopMenu instead.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari"."WebKitPreferences.developerExtrasEnabled"

Configures the web inspector.

Warning

Instead of setting this option directly, set -IncludeDevelopMenu instead.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari"."WebKitPreferences.developerExtrasEnabled" + + +
+
+

Configures the web inspector.

Warning

Instead of setting this option directly, set +IncludeDevelopMenu instead.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.Safari.SandboxBroker".ShowDevelopMenu

Show the “Develop” menu in Safari’s menubar.

Warning

Instead of setting this option directly, set -"com.apple.Safari".IncludeDevelopMenu instead.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.Safari.SandboxBroker".ShowDevelopMenu + + +
+
+

Show the “Develop” menu in Safari’s menubar.

Warning

Instead of setting this option directly, set +"com.apple.Safari".IncludeDevelopMenu instead.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.desktopservices".DSDontWriteNetworkStores

Disable use of .DS_Store files on network shares. -See the -official article for more info.

Type: -null or boolean

Default: -null

Example: -false

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.desktopservices".DSDontWriteNetworkStores + + +
+
+

Disable use of .DS_Store files on network shares. +See the +official article for more info.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.desktopservices".DSDontWriteUSBStores

Disable use of .DS_Store files on thumb drives.

Type: -null or boolean

Default: -null

Example: -false

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.desktopservices".DSDontWriteUSBStores + + +
+
+

Disable use of .DS_Store files on thumb drives.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.dock".expose-group-apps

Whether to enable grouping of windows by application in Mission Control.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.dock".expose-group-apps + + +
+
+

Whether to enable grouping of windows by application in Mission Control.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.dock".size-immutable

Whether to enable locking of the dock size.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.dock".size-immutable + + +
+
+

Whether to enable locking of the dock size.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.dock".tilesize

Sets the size of the dock.

Type: -null or signed integer

Default: -null

Example: -64

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.dock".tilesize + + +
+
+

Sets the size of the dock.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +64

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.apple.menuextra.battery".ShowPercent

This option no longer works on macOS 11 and later. Instead, use -targets.darwin.currentHostDefaults.\"com.apple.controlcenter\".BatteryShowPercentage.

Whether to show battery percentage in the menu bar.

Type: -null or one of “YES”, “NO”

Default: -null

Example: -"NO"

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.apple.menuextra.battery".ShowPercent + + +
+
+

This option no longer works on macOS 11 and later. Instead, use +targets.darwin.currentHostDefaults.\"com.apple.controlcenter\".BatteryShowPercentage.

Whether to show battery percentage in the menu bar.

+ +

Type: +null or one of “YES”, “NO”

+ +

Default: +null

+ +

Example: +"NO"

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.googlecode.iterm2".AddNewTabAtEndOfTabs

Whether to enable placement of new tabs at the end of the tab bar.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.googlecode.iterm2".AddNewTabAtEndOfTabs + + +
+
+

Whether to enable placement of new tabs at the end of the tab bar.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.googlecode.iterm2".AlternateMouseScroll

Whether to enable arrow keys when scrolling in alternate screen mode.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.googlecode.iterm2".AlternateMouseScroll + + +
+
+

Whether to enable arrow keys when scrolling in alternate screen mode.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.googlecode.iterm2".CopySelection

Whether to enable copy to clipboard upon selecting text.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.googlecode.iterm2".CopySelection + + +
+
+

Whether to enable copy to clipboard upon selecting text.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.googlecode.iterm2".ExperimentalKeyHandling

Whether to enable experimental key handling for AquaSKK compatibility.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.googlecode.iterm2".ExperimentalKeyHandling + + +
+
+

Whether to enable experimental key handling for AquaSKK compatibility.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.defaults."com.googlecode.iterm2".OpenTmuxWindowsIn

Configures how to restore tmux windows when attaching to a session.

Possible Values

0

Native windows

1

Native tabs in a new window

2

Tabs in the attaching window

Type: -null or signed integer

Default: -null

Example: -2

Declared by:

+
+ +
+
+
+ + targets.darwin.defaults."com.googlecode.iterm2".OpenTmuxWindowsIn + + +
+
+

Configures how to restore tmux windows when attaching to a session.

Possible Values

0

Native windows

1

Native tabs in a new window

2

Tabs in the attaching window

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +2

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix> -
targets.darwin.keybindings

This will configure the default keybindings for text fields in macOS + +

+
+
+ + targets.darwin.keybindings + + +
+
+

This will configure the default keybindings for text fields in macOS applications. See -Apple’s documentation +Apple’s documentation for more details.

Warning

Existing keybinding configuration will be wiped when using this -option.

Type: -attribute set of anything

Default: -{ }

Example:

{
-  "^u" = "deleteToBeginningOfLine:";
-  "^w" = "deleteWordBackward:";
+option.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  "^u" = "deleteToBeginningOfLine:";
+  "^w" = "deleteWordBackward:";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/keybindings.nix> -
targets.darwin.search

Default search engine.

Type: -null or one of “Bing”, “DuckDuckGo”, “Ecosia”, “Google”, “Yahoo”

Default: -null

Declared by:

+
+ +
+
+
+ + targets.darwin.search + + +
+
+

Default search engine.

+ +

Type: +null or one of “Bing”, “DuckDuckGo”, “Ecosia”, “Google”, “Yahoo”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/targets/darwin/search.nix> -
targets.genericLinux.enable

Whether to enable settings that make Home Manager work better on -GNU/Linux distributions other than NixOS.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + targets.genericLinux.enable + + +
+
+

Whether to enable settings that make Home Manager work better on +GNU/Linux distributions other than NixOS.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/targets/generic-linux.nix> -
wayland.windowManager.hyprland.enable

Whether to enable Hyprland wayland compositor.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.hyprland.enable + + +
+
+

Whether to enable Hyprland wayland compositor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.enableNvidiaPatches

Whether to enable patching wlroots for better Nvidia support.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.hyprland.enableNvidiaPatches + + +
+
+

Whether to enable patching wlroots for better Nvidia support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.package

The hyprland package to use.

Type: -package

Default: -pkgs.hyprland

Declared by:

+
+ +
+
+
+ + wayland.windowManager.hyprland.package + + +
+
+

The hyprland package to use.

+ +

Type: +package

+ +

Default: +pkgs.hyprland

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.extraConfig

Extra configuration lines to add to ~/.config/hypr/hyprland.conf.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + wayland.windowManager.hyprland.extraConfig + + +
+
+

Extra configuration lines to add to ~/.config/hypr/hyprland.conf.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   # window resize
   bind = $mod, S, submap, resize
   
@@ -16422,2174 +68574,9063 @@ strings concatenated with “\n”

Default:

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.finalPackage

The Hyprland package after applying configuration.

Type: -package (read only)

Default: -wayland.windowManager.hyprland.package with applied configuration

Declared by:

+
+ +
+
+
+ + wayland.windowManager.hyprland.finalPackage + + +
+
+

The Hyprland package after applying configuration.

+ +

Type: +package (read only)

+ +

Default: +wayland.windowManager.hyprland.package with applied configuration

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.plugins

List of Hyprland plugins to use. Can either be packages or -absolute plugin paths.

Type: -list of (package or path)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + wayland.windowManager.hyprland.plugins + + +
+
+

List of Hyprland plugins to use. Can either be packages or +absolute plugin paths.

+ +

Type: +list of (package or path)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.settings

Hyprland configuration written in Nix. Entries with the same key + +

+
+
+ + wayland.windowManager.hyprland.settings + + +
+
+

Hyprland configuration written in Nix. Entries with the same key should be written as lists. Variables’ and colors’ names should be -quoted. See https://wiki.hyprland.org for more examples.

Note

Use the wayland.windowManager.hyprland.plugins option to -declare plugins.

Type: -Hyprland configuration value

Default: -{ }

Example:

{
+quoted. See https://wiki.hyprland.org for more examples.

Note

Use the wayland.windowManager.hyprland.plugins option to +declare plugins.

+ +

Type: +Hyprland configuration value

+ +

Default: +{ }

+ +

Example:

{
   decoration = {
-    shadow_offset = "0 5";
-    "col.shadow" = "rgba(00000099)";
+    shadow_offset = "0 5";
+    "col.shadow" = "rgba(00000099)";
   };
 
-  "$mod" = "SUPER";
+  "$mod" = "SUPER";
 
   bindm = [
     # mouse movements
-    "$mod, mouse:272, movewindow"
-    "$mod, mouse:273, resizewindow"
-    "$mod ALT, mouse:272, resizewindow"
+    "$mod, mouse:272, movewindow"
+    "$mod, mouse:273, resizewindow"
+    "$mod ALT, mouse:272, resizewindow"
   ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.systemd.enable

Whether to enable hyprland-session.target on + +

+
+
+ + wayland.windowManager.hyprland.systemd.enable + + +
+
+

Whether to enable hyprland-session.target on hyprland startup. This links to graphical-session.target. Some important environment variables will be imported to systemd -and D-Bus user environment before reaching the target, including

  • DISPLAY

  • HYPRLAND_INSTANCE_SIGNATURE

  • WAYLAND_DISPLAY

  • XDG_CURRENT_DESKTOP

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+and D-Bus user environment before reaching the target, including

  • DISPLAY

  • HYPRLAND_INSTANCE_SIGNATURE

  • WAYLAND_DISPLAY

  • XDG_CURRENT_DESKTOP

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.systemd.extraCommands

Extra commands to be run after D-Bus activation.

Type: -list of string

Default:

[
-  "systemctl --user stop hyprland-session.target"
-  "systemctl --user start hyprland-session.target"
+
+
+
+
+ + wayland.windowManager.hyprland.systemd.extraCommands + + +
+
+

Extra commands to be run after D-Bus activation.

+ +

Type: +list of string

+ +

Default:

[
+  "systemctl --user stop hyprland-session.target"
+  "systemctl --user start hyprland-session.target"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.systemd.variables

Environment variables to be imported in the systemd & D-Bus user -environment.

Type: -list of string

Default:

[
-  "DISPLAY"
-  "HYPRLAND_INSTANCE_SIGNATURE"
-  "WAYLAND_DISPLAY"
-  "XDG_CURRENT_DESKTOP"
+
+
+
+
+ + wayland.windowManager.hyprland.systemd.variables + + +
+
+

Environment variables to be imported in the systemd & D-Bus user +environment.

+ +

Type: +list of string

+ +

Default:

[
+  "DISPLAY"
+  "HYPRLAND_INSTANCE_SIGNATURE"
+  "WAYLAND_DISPLAY"
+  "XDG_CURRENT_DESKTOP"
 ]
-

Example:

[
-  "-all"
+
+ +

Example:

[
+  "-all"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.hyprland.xwayland.enable

Whether to enable XWayland.

Type: -boolean

Default: -true

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.hyprland.xwayland.enable + + +
+
+

Whether to enable XWayland.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/hyprland.nix> -
wayland.windowManager.sway.enable

Whether to enable sway wayland compositor.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.enable + + +
+
+

Whether to enable sway wayland compositor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.package

Sway package to use. Will override the options + +

+
+
+ + wayland.windowManager.sway.package + + +
+
+

Sway package to use. Will override the options ‘wrapperFeatures’, ‘extraSessionCommands’, and ‘extraOptions’. Set to null to not add any Sway package to your path. This should be done if you want to use the NixOS Sway -module to install Sway.

Type: -null or package

Default: -${pkgs.sway}

Declared by:

+
+module to install Sway.

+ +

Type: +null or package

+ +

Default: +${pkgs.sway}

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config

Sway configuration options.

Type: -null or (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config + + +
+
+

Sway configuration options.

+ +

Type: +null or (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.assigns

An attribute set that assigns applications to workspaces based -on criteria.

Type: -attribute set of list of attribute set of (string or boolean)

Default: -{ }

Example:

{
-"1: web" = [{ class = "^Firefox$"; }];
-"0: extra" = [{ class = "^Firefox$"; window_role = "About"; }];
+
+
+
+
+ + wayland.windowManager.sway.config.assigns + + +
+
+

An attribute set that assigns applications to workspaces based +on criteria.

+ +

Type: +attribute set of list of attribute set of (string or boolean)

+ +

Default: +{ }

+ +

Example:

{
+"1: web" = [{ class = "^Firefox$"; }];
+"0: extra" = [{ class = "^Firefox$"; window_role = "About"; }];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars

Sway bars settings blocks. Set to empty list to remove bars completely.

Type: -list of (submodule)

Default: -see code

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.bars + + +
+
+

Sway bars settings blocks. Set to empty list to remove bars completely.

+ +

Type: +list of (submodule)

+ +

Default: +see code

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors

Bar color settings. All color classes can be specified using submodules + +

+
+
+ + wayland.windowManager.sway.config.bars.*.colors + + +
+
+

Bar color settings. All color classes can be specified using submodules with ‘border’, ‘background’, ‘text’, fields and RGB color hex-codes as values. See default values for the reference. -Note that ‘background’, ‘status’, and ‘separator’ parameters take a single RGB value.

See https://i3wm.org/docs/userguide.html#_colors.

Type: -submodule

Default: -{ }

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.activeWorkspace

Border, background and text color for a workspace button when the workspace is active.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+Note that ‘background’, ‘status’, and ‘separator’ parameters take a single RGB value.

See https://i3wm.org/docs/userguide.html#_colors.

-

Example:

{
-  background = "#5f676a";
-  border = "#333333";
-  text = "#ffffff";
+

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.activeWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace is active.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#5f676a";
+  border = "#333333";
+  text = "#ffffff";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.background

Background color of the bar.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -"#000000"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.bindingMode

Border, background and text color for the binding mode indicator

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.background + + +
+
+

Background color of the bar.

-

Example:

{
-  background = "#900000";
-  border = "#2f343a";
-  text = "#ffffff";
+

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"#000000"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.bindingMode + + +
+
+

Border, background and text color for the binding mode indicator

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#900000";
+  border = "#2f343a";
+  text = "#ffffff";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.focusedBackground

Background color of the bar on the currently focused monitor output.

Type: -null or string

Default: -null

Example: -"#000000"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.focusedSeparator

Text color to be used for the separator on the currently focused monitor output.

Type: -null or string

Default: -null

Example: -"#666666"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.focusedStatusline

Text color to be used for the statusline on the currently focused monitor output.

Type: -null or string

Default: -null

Example: -"#ffffff"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.focusedWorkspace

Border, background and text color for a workspace button when the workspace has focus.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example:

{
-  background = "#285577";
-  border = "#4c7899";
-  text = "#ffffff";
+

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.focusedBackground + + +
+
+

Background color of the bar on the currently focused monitor output.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#000000"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.focusedSeparator + + +
+
+

Text color to be used for the separator on the currently focused monitor output.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#666666"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.focusedStatusline + + +
+
+

Text color to be used for the statusline on the currently focused monitor output.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#ffffff"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.focusedWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace has focus.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#285577";
+  border = "#4c7899";
+  text = "#ffffff";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.inactiveWorkspace

Border, background and text color for a workspace button when the workspace does not -have focus and is not active.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example:

{
-  background = "#222222";
-  border = "#333333";
-  text = "#888888";
+

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.inactiveWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace does not +have focus and is not active.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#222222";
+  border = "#333333";
+  text = "#888888";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.separator

Text color to be used for the separator.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -"#666666"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.statusline

Text color to be used for the statusline.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.separator + + +
+
+

Text color to be used for the separator.

-

Example: -"#ffffff"

Declared by:

+
+

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"#666666"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.colors.urgentWorkspace

Border, background and text color for a workspace button when the workspace contains -a window with the urgency hint set.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.statusline + + +
+
+

Text color to be used for the statusline.

-

Example:

{
-  background = "#900000";
-  border = "#2f343a";
-  text = "#ffffff";
+

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"#ffffff"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.colors.urgentWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace contains +a window with the urgency hint set.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#900000";
+  border = "#2f343a";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.command

Command that will be used to start a bar.

Type: -string

Default: -"i3bar"

Example: -"\${pkgs.waybar}/bin/waybar"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.bars.*.command + + +
+
+

Command that will be used to start a bar.

+ +

Type: +string

+ +

Default: +"i3bar"

+ +

Example: +"\${pkgs.waybar}/bin/waybar"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.extraConfig

Extra configuration lines for this bar.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.bars.*.extraConfig + + +
+
+

Extra configuration lines for this bar.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.fonts

Font configuration for this bar.

Type: -(list of string) or (submodule)

Default: -{ }

Example:

{
-  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
-  style = "Bold Semi-Condensed";
+
+
+
+
+ + wayland.windowManager.sway.config.bars.*.fonts + + +
+
+

Font configuration for this bar.

+ +

Type: +(list of string) or (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
+  style = "Bold Semi-Condensed";
   size = 11.0;
 }
 
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.hiddenState

The default bar mode when ‘bar.mode’ == ‘hide’.

Type: -null or one of “hide”, “show”

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -"hide"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.id

Specifies the bar ID for the configured bar instance. + +

+
+
+ + wayland.windowManager.sway.config.bars.*.hiddenState + + +
+
+

The default bar mode when ‘bar.mode’ == ‘hide’.

+ +

Type: +null or one of “hide”, “show”

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"hide"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.id + + +
+
+

Specifies the bar ID for the configured bar instance. If this option is missing, the ID is set to bar-x, where x corresponds -to the position of the embedding bar block in the config file.

Type: -null or string

Default: -null

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.mode

Bar visibility mode.

Type: -null or one of “dock”, “hide”, “invisible”

Default:

null for state version ≥ 20.09, as example otherwise
+to the position of the embedding bar block in the config file.

-

Example: -"dock"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.position

The edge of the screen swaybar should show up.

Type: -null or one of “top”, “bottom”

Default:

null for state version ≥ 20.09, as example otherwise
+

Type: +null or string

-

Example: -"bottom"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.statusCommand

Command that will be used to get status lines.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+

Default: +null

-

Example: -"\${pkgs.i3status}/bin/i3status"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.trayOutput

Where to output tray.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + wayland.windowManager.sway.config.bars.*.mode + + +
+
+

Bar visibility mode.

-

Example: -"*"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.trayPadding

Sets the pixel padding of the system tray. -This padding will surround the tray on all sides and between each item.

Type: -null or signed integer

Default:

null for state version ≥ 20.09, as example otherwise
+

Type: +null or one of “dock”, “hide”, “invisible”

-

Example: -null

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.workspaceButtons

Whether workspace buttons should be shown or not.

Type: -null or boolean

Default:

null for state version ≥ 20.09, as example otherwise
+

Default:

null for state version ≥ 20.09, as example otherwise
 
-

Example: -true

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bars.*.workspaceNumbers

Whether workspace numbers should be displayed within the workspace buttons.

Type: -null or boolean

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -true

Declared by:

+
+

Example: +"dock"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.bindkeysToCode

Whether to make use of --to-code in keybindings.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.bars.*.position + + +
+
+

The edge of the screen swaybar should show up.

+ +

Type: +null or one of “top”, “bottom”

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"bottom"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.colors

Color settings. All color classes can be specified using submodules + +

+
+
+ + wayland.windowManager.sway.config.bars.*.statusCommand + + +
+
+

Command that will be used to get status lines.

+ +

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"\${pkgs.i3status}/bin/i3status"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.trayOutput + + +
+
+

Where to output tray.

+ +

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"*"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.trayPadding + + +
+
+

Sets the pixel padding of the system tray. +This padding will surround the tray on all sides and between each item.

+ +

Type: +null or signed integer

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.workspaceButtons + + +
+
+

Whether workspace buttons should be shown or not.

+ +

Type: +null or boolean

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bars.*.workspaceNumbers + + +
+
+

Whether workspace numbers should be displayed within the workspace buttons.

+ +

Type: +null or boolean

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.bindkeysToCode + + +
+
+

Whether to make use of --to-code in keybindings.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/sway.nix> + +
+
+
+ + wayland.windowManager.sway.config.colors + + +
+
+

Color settings. All color classes can be specified using submodules with ‘border’, ‘background’, ‘text’, ‘indicator’ and ‘childBorder’ fields and RGB color hex-codes as values. See default values for the reference. -Note that ‘sway.config.colors.background’ parameter takes a single RGB value.

See https://i3wm.org/docs/userguide.html#_changing_colors.

Type: -submodule

Default: -{ }

Declared by:

+
+Note that ‘sway.config.colors.background’ parameter takes a single RGB value.

See https://i3wm.org/docs/userguide.html#_changing_colors.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.colors.background

Background color of the window. Only applications which do not cover -the whole area expose the color.

Type: -string

Default: -"#ffffff"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.colors.background + + +
+
+

Background color of the window. Only applications which do not cover +the whole area expose the color.

+ +

Type: +string

+ +

Default: +"#ffffff"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.colors.focused

A window which currently has the focus.

Type: -submodule

Default:

{
-  background = "#285577";
-  border = "#4c7899";
-  childBorder = "#285577";
-  indicator = "#2e9ef4";
-  text = "#ffffff";
+
+
+
+
+ + wayland.windowManager.sway.config.colors.focused + + +
+
+

A window which currently has the focus.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#285577";
+  border = "#4c7899";
+  childBorder = "#285577";
+  indicator = "#2e9ef4";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.colors.focusedInactive

A window which is the focused one of its container, -but it does not have the focus at the moment.

Type: -submodule

Default:

{
-  background = "#5f676a";
-  border = "#333333";
-  childBorder = "#5f676a";
-  indicator = "#484e50";
-  text = "#ffffff";
+
+
+
+
+ + wayland.windowManager.sway.config.colors.focusedInactive + + +
+
+

A window which is the focused one of its container, +but it does not have the focus at the moment.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#5f676a";
+  border = "#333333";
+  childBorder = "#5f676a";
+  indicator = "#484e50";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.colors.placeholder

Background and text color are used to draw placeholder window -contents (when restoring layouts). Border and indicator are ignored.

Type: -submodule

Default:

{
-  background = "#0c0c0c";
-  border = "#000000";
-  childBorder = "#0c0c0c";
-  indicator = "#000000";
-  text = "#ffffff";
+
+
+
+
+ + wayland.windowManager.sway.config.colors.placeholder + + +
+
+

Background and text color are used to draw placeholder window +contents (when restoring layouts). Border and indicator are ignored.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#0c0c0c";
+  border = "#000000";
+  childBorder = "#0c0c0c";
+  indicator = "#000000";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.colors.unfocused

A window which is not focused.

Type: -submodule

Default:

{
-  background = "#222222";
-  border = "#333333";
-  childBorder = "#222222";
-  indicator = "#292d2e";
-  text = "#888888";
+
+
+
+
+ + wayland.windowManager.sway.config.colors.unfocused + + +
+
+

A window which is not focused.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#222222";
+  border = "#333333";
+  childBorder = "#222222";
+  indicator = "#292d2e";
+  text = "#888888";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.colors.urgent

A window which has its urgency hint activated.

Type: -submodule

Default:

{
-  background = "#900000";
-  border = "#2f343a";
-  childBorder = "#900000";
-  indicator = "#900000";
-  text = "#ffffff";
+
+
+
+
+ + wayland.windowManager.sway.config.colors.urgent + + +
+
+

A window which has its urgency hint activated.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#900000";
+  border = "#2f343a";
+  childBorder = "#900000";
+  indicator = "#900000";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.defaultWorkspace

The default workspace to show when sway is launched. -This must to correspond to the value of the keybinding of the default workspace.

Type: -null or string

Default: -null

Example: -"workspace number 9"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.defaultWorkspace + + +
+
+

The default workspace to show when sway is launched. +This must to correspond to the value of the keybinding of the default workspace.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"workspace number 9"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.down

Home row direction key for moving down.

Type: -string

Default: -"j"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.down + + +
+
+

Home row direction key for moving down.

+ +

Type: +string

+ +

Default: +"j"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.floating

Floating window settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.floating + + +
+
+

Floating window settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.floating.border

Floating windows border width.

Type: -signed integer

Default: -2

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.floating.border + + +
+
+

Floating windows border width.

+ +

Type: +signed integer

+ +

Default: +2

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.floating.criteria

List of criteria for windows that should be opened in a floating mode.

Type: -list of attribute set of (string or boolean)

Default: -[ ]

Example:

[
+
+
+
+
+ + wayland.windowManager.sway.config.floating.criteria + + +
+
+

List of criteria for windows that should be opened in a floating mode.

+ +

Type: +list of attribute set of (string or boolean)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    title = "Steam - Update News";
+    title = "Steam - Update News";
   }
   {
-    class = "Pavucontrol";
+    class = "Pavucontrol";
   }
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.floating.modifier

Modifier key or keys that can be used to drag floating windows.

Type: -string

Default: -"sway.config.modifier"

Example: -"Mod4"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.floating.modifier + + +
+
+

Modifier key or keys that can be used to drag floating windows.

+ +

Type: +string

+ +

Default: +"sway.config.modifier"

+ +

Example: +"Mod4"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.floating.titlebar

Whether to show floating window titlebars.

Type: -boolean

Default:

''
+
+
+
+
+ + wayland.windowManager.sway.config.floating.titlebar + + +
+
+

Whether to show floating window titlebars.

+ +

Type: +boolean

+ +

Default:

''
   true for state version ≥ 23.05
   false for state version < 23.05
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.focus

Focus related settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.focus + + +
+
+

Focus related settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.focus.followMouse

Whether focus should follow the mouse.

Type: -one of “yes”, “no”, “always” or boolean

Default: -"yes"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.focus.followMouse + + +
+
+

Whether focus should follow the mouse.

+ +

Type: +one of “yes”, “no”, “always” or boolean

+ +

Default: +"yes"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.focus.forceWrapping

Whether to force focus wrapping in tabbed or stacked containers.

This option is deprecated, use focus.wrapping instead.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.focus.forceWrapping + + +
+
+

Whether to force focus wrapping in tabbed or stacked containers.

This option is deprecated, use focus.wrapping instead.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.focus.mouseWarping

Whether mouse cursor should be warped to the center of the window when switching focus -to a window on a different output.

Type: -boolean or one of “container”, “output”

Default: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.focus.mouseWarping + + +
+
+

Whether mouse cursor should be warped to the center of the window when switching focus +to a window on a different output.

+ +

Type: +boolean or one of “container”, “output”

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.focus.newWindow

This option modifies focus behavior on new window activation.

See https://i3wm.org/docs/userguide.html#focus_on_window_activation

Type: -one of “smart”, “urgent”, “focus”, “none”

Default: -"smart"

Example: -"none"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.focus.newWindow + + +
+
+

This option modifies focus behavior on new window activation.

See https://i3wm.org/docs/userguide.html#focus_on_window_activation

+ +

Type: +one of “smart”, “urgent”, “focus”, “none”

+ +

Default: +"smart"

+ +

Example: +"none"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.focus.wrapping

Whether the window focus commands automatically wrap around the edge of containers.

See https://i3wm.org/docs/userguide.html#_focus_wrapping

Type: -one of “yes”, “no”, “force”, “workspace”

Default: -"no"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.focus.wrapping + + +
+
+

Whether the window focus commands automatically wrap around the edge of containers.

See https://i3wm.org/docs/userguide.html#_focus_wrapping

+ +

Type: +one of “yes”, “no”, “force”, “workspace”

+ +

Default: +"no"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.fonts

Font configuration for window titles, nagbar…

Type: -(list of string) or (submodule)

Default: -{ }

Example:

{
-  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
-  style = "Bold Semi-Condensed";
+
+
+
+
+ + wayland.windowManager.sway.config.fonts + + +
+
+

Font configuration for window titles, nagbar…

+ +

Type: +(list of string) or (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
+  style = "Bold Semi-Condensed";
   size = 11.0;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps

Gaps related settings.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps + + +
+
+

Gaps related settings.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.bottom

Bottom gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.bottom + + +
+
+

Bottom gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.horizontal

Horizontal gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.horizontal + + +
+
+

Horizontal gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.inner

Inner gaps value.

Type: -null or signed integer

Default: -null

Example: -12

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.inner + + +
+
+

Inner gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +12

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.left

Left gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.left + + +
+
+

Left gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.outer

Outer gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.outer + + +
+
+

Outer gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.right

Right gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.right + + +
+
+

Right gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.smartBorders

This option controls whether to disable container borders on -workspace with a single container.

Type: -one of “on”, “off”, “no_gaps”

Default: -"off"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.smartBorders + + +
+
+

This option controls whether to disable container borders on +workspace with a single container.

+ +

Type: +one of “on”, “off”, “no_gaps”

+ +

Default: +"off"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.smartGaps

This option controls whether to disable all gaps (outer and inner) -on workspace with a single container.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.smartGaps + + +
+
+

This option controls whether to disable all gaps (outer and inner) +on workspace with a single container.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.top

Top gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.top + + +
+
+

Top gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.gaps.vertical

Vertical gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.gaps.vertical + + +
+
+

Vertical gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.input

An attribute set that defines input modules. See + +

+
+
+ + wayland.windowManager.sway.config.input + + +
+
+

An attribute set that defines input modules. See sway-input(5) -for options.

Type: -attribute set of attribute set of string

Default: -{ }

Example:

{
-  "*" = {
-    xkb_variant = "dvorak";
+for options.

+ +

Type: +attribute set of attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "*" = {
+    xkb_variant = "dvorak";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.keybindings

An attribute set that assigns a key press to an action using a key symbol. -See https://i3wm.org/docs/userguide.html#keybindings.

Consider to use lib.mkOptionDefault function to extend or override -default keybindings instead of specifying all of them from scratch.

Type: -attribute set of (null or string)

Default: -"Default sway keybindings."

Example:

let
+
+
+
+
+ + wayland.windowManager.sway.config.keybindings + + +
+
+

An attribute set that assigns a key press to an action using a key symbol. +See https://i3wm.org/docs/userguide.html#keybindings.

Consider to use lib.mkOptionDefault function to extend or override +default keybindings instead of specifying all of them from scratch.

+ +

Type: +attribute set of (null or string)

+ +

Default: +"Default sway keybindings."

+ +

Example:

let
   modifier = config.wayland.windowManager.sway.config.modifier;
 in lib.mkOptionDefault {
-  "${modifier}+Return" = "exec ${pkgs.foot}/bin/foot";
-  "${modifier}+Shift+q" = "kill";
-  "${modifier}+d" = "exec ${pkgs.dmenu}/bin/dmenu_path | ${pkgs.dmenu}/bin/dmenu | ${pkgs.findutils}/bin/xargs swaymsg exec --";
+  "${modifier}+Return" = "exec ${pkgs.foot}/bin/foot";
+  "${modifier}+Shift+q" = "kill";
+  "${modifier}+d" = "exec ${pkgs.dmenu}/bin/dmenu_path | ${pkgs.dmenu}/bin/dmenu | ${pkgs.findutils}/bin/xargs swaymsg exec --";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.keycodebindings

An attribute set that assigns keypress to an action using key code. -See https://i3wm.org/docs/userguide.html#keybindings.

Type: -attribute set of (null or string)

Default: -{ }

Example:

{
-  "214" = "exec /bin/script.sh";
+
+
+
+
+ + wayland.windowManager.sway.config.keycodebindings + + +
+
+

An attribute set that assigns keypress to an action using key code. +See https://i3wm.org/docs/userguide.html#keybindings.

+ +

Type: +attribute set of (null or string)

+ +

Default: +{ }

+ +

Example:

{
+  "214" = "exec /bin/script.sh";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.left

Home row direction key for moving left.

Type: -string

Default: -"h"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.left + + +
+
+

Home row direction key for moving left.

+ +

Type: +string

+ +

Default: +"h"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.menu

Default launcher to use.

Type: -string

Default: -"\${pkgs.dmenu}/bin/dmenu_path | \${pkgs.dmenu}/bin/dmenu | \${pkgs.findutils}/bin/xargs swaymsg exec --"

Example: -"bemenu-run"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.menu + + +
+
+

Default launcher to use.

+ +

Type: +string

+ +

Default: +"\${pkgs.dmenu}/bin/dmenu_path | \${pkgs.dmenu}/bin/dmenu | \${pkgs.findutils}/bin/xargs swaymsg exec --"

+ +

Example: +"bemenu-run"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.modes

An attribute set that defines binding modes and keybindings + +

+
+
+ + wayland.windowManager.sway.config.modes + + +
+
+

An attribute set that defines binding modes and keybindings inside them

Only basic keybinding is supported (bindsym keycomb action), -for more advanced setup use ‘sway.extraConfig’.

Type: -attribute set of attribute set of string

Default:

{
+for more advanced setup use ‘sway.extraConfig’.

+ +

Type: +attribute set of attribute set of string

+ +

Default:

{
   resize = {
-    Down = "resize grow height 10 px";
-    Escape = "mode default";
-    Left = "resize shrink width 10 px";
-    Return = "mode default";
-    Right = "resize grow width 10 px";
-    Up = "resize shrink height 10 px";
-    h = "resize shrink width 10 px";
-    j = "resize grow height 10 px";
-    k = "resize shrink height 10 px";
-    l = "resize grow width 10 px";
+    Down = "resize grow height 10 px";
+    Escape = "mode default";
+    Left = "resize shrink width 10 px";
+    Return = "mode default";
+    Right = "resize grow width 10 px";
+    Up = "resize shrink height 10 px";
+    h = "resize shrink width 10 px";
+    j = "resize grow height 10 px";
+    k = "resize shrink height 10 px";
+    l = "resize grow width 10 px";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.modifier

Modifier key that is used for all default keybindings.

Type: -one of “Shift”, “Control”, “Mod1”, “Mod2”, “Mod3”, “Mod4”, “Mod5”

Default: -"Mod1"

Example: -"Mod4"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.modifier + + +
+
+

Modifier key that is used for all default keybindings.

+ +

Type: +one of “Shift”, “Control”, “Mod1”, “Mod2”, “Mod3”, “Mod4”, “Mod5”

+ +

Default: +"Mod1"

+ +

Example: +"Mod4"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.output

An attribute set that defines output modules. See + +

+
+
+ + wayland.windowManager.sway.config.output + + +
+
+

An attribute set that defines output modules. See sway-output(5) -for options.

Type: -attribute set of attribute set of string

Default: -{ }

Example:

{
+for options.

+ +

Type: +attribute set of attribute set of string

+ +

Default: +{ }

+ +

Example:

{
   HDMI-A-2 = {
-    bg = "~/path/to/background.png fill";
+    bg = "~/path/to/background.png fill";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.right

Home row direction key for moving right.

Type: -string

Default: -"l"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.right + + +
+
+

Home row direction key for moving right.

+ +

Type: +string

+ +

Default: +"l"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.seat

An attribute set that defines seat modules. See + +

+
+
+ + wayland.windowManager.sway.config.seat + + +
+
+

An attribute set that defines seat modules. See sway-input(5) -for options.

Type: -attribute set of attribute set of string

Default: -{ }

Example:

{
-  "*" = {
-    hide_cursor = "when-typing enable";
+for options.

+ +

Type: +attribute set of attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  "*" = {
+    hide_cursor = "when-typing enable";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.startup

Commands that should be executed at startup.

See https://i3wm.org/docs/userguide.html#_automatically_starting_applications_on_i3_startup.

Type: -list of (submodule)

Default: -[ ]

Example:

[
-{ command = "systemctl --user restart waybar"; always = true; }
-{ command = "dropbox start"; }
-{ command = "firefox"; }
+
+
+
+
+ + wayland.windowManager.sway.config.startup + + +
+
+

Commands that should be executed at startup.

See https://i3wm.org/docs/userguide.html#_automatically_starting_applications_on_i3_startup.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
+{ command = "systemctl --user restart waybar"; always = true; }
+{ command = "dropbox start"; }
+{ command = "firefox"; }
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.startup.*.always

Whether to run command on each sway restart.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.startup.*.always + + +
+
+

Whether to run command on each sway restart.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.startup.*.command

Command that will be executed on startup.

Type: -string

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.startup.*.command + + +
+
+

Command that will be executed on startup.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.terminal

Default terminal to run.

Type: -string

Default: -"\${pkgs.foot}/bin/foot"

Example: -"alacritty"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.terminal + + +
+
+

Default terminal to run.

+ +

Type: +string

+ +

Default: +"\${pkgs.foot}/bin/foot"

+ +

Example: +"alacritty"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.up

Home row direction key for moving up.

Type: -string

Default: -"k"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.up + + +
+
+

Home row direction key for moving up.

+ +

Type: +string

+ +

Default: +"k"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.window

Window titlebar and border settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.window + + +
+
+

Window titlebar and border settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.window.border

Window border width.

Type: -signed integer

Default: -2

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.window.border + + +
+
+

Window border width.

+ +

Type: +signed integer

+ +

Default: +2

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.window.commands

List of commands that should be executed on specific windows. -See for_window swaywm option documentation.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + wayland.windowManager.sway.config.window.commands + + +
+
+

List of commands that should be executed on specific windows. +See for_window swaywm option documentation.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    command = "border pixel 1";
+    command = "border pixel 1";
     criteria = {
-      class = "XTerm";
+      class = "XTerm";
     };
   }
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.window.commands.*.command

Swaywm command to execute.

Type: -string

Example: -"border pixel 1"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.window.commands.*.command + + +
+
+

Swaywm command to execute.

+ +

Type: +string

+ +

Example: +"border pixel 1"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.window.commands.*.criteria

Criteria of the windows on which command should be executed.

A value of true is equivalent to using an empty -criteria (which is different from an empty string criteria).

Type: -attribute set of (string or boolean)

Example:

{
-  title = "x200: ~/work";
+
+
+
+
+ + wayland.windowManager.sway.config.window.commands.*.criteria + + +
+
+

Criteria of the windows on which command should be executed.

A value of true is equivalent to using an empty +criteria (which is different from an empty string criteria).

+ +

Type: +attribute set of (string or boolean)

+ +

Example:

{
+  title = "x200: ~/work";
   floating = true;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.window.hideEdgeBorders

Hide window borders adjacent to the screen edges.

Type: -one of “none”, “vertical”, “horizontal”, “both”, “smart”

Default: -"none"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.window.hideEdgeBorders + + +
+
+

Hide window borders adjacent to the screen edges.

+ +

Type: +one of “none”, “vertical”, “horizontal”, “both”, “smart”

+ +

Default: +"none"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.window.titlebar

Whether to show window titlebars.

Type: -boolean

Default:

''
+
+
+
+
+ + wayland.windowManager.sway.config.window.titlebar + + +
+
+

Whether to show window titlebars.

+ +

Type: +boolean

+ +

Default:

''
   true for state version ≥ 23.05
   false for state version < 23.05
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.workspaceAutoBackAndForth

Assume you are on workspace “1: www” and switch to “2: IM” using + +

+
+
+ + wayland.windowManager.sway.config.workspaceAutoBackAndForth + + +
+
+

Assume you are on workspace “1: www” and switch to “2: IM” using mod+2 because somebody sent you a message. You don’t need to remember where you came from now, you can just press $mod+2 again to switch -back to “1: www”.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+back to “1: www”.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.workspaceLayout

The mode in which new containers on workspace level will -start.

Type: -one of “default”, “stacking”, “tabbed”

Default: -"default"

Example: -"tabbed"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.workspaceLayout + + +
+
+

The mode in which new containers on workspace level will +start.

+ +

Type: +one of “default”, “stacking”, “tabbed”

+ +

Default: +"default"

+ +

Example: +"tabbed"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.workspaceOutputAssign

Assign workspaces to outputs.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.workspaceOutputAssign + + +
+
+

Assign workspaces to outputs.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.workspaceOutputAssign.*.output

Name(s) of the output(s) from swaymsg -t get_outputs .

Type: -string or list of string

Default: -""

Example: -"eDP"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.workspaceOutputAssign.*.output + + +
+
+

Name(s) of the output(s) from swaymsg -t get_outputs .

+ +

Type: +string or list of string

+ +

Default: +""

+ +

Example: +"eDP"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.config.workspaceOutputAssign.*.workspace

Name of the workspace to assign.

Type: -string

Default: -""

Example: -"Web"

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.config.workspaceOutputAssign.*.workspace + + +
+
+

Name of the workspace to assign.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"Web"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.extraConfig

Extra configuration lines to add to ~/.config/sway/config.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.extraConfig + + +
+
+

Extra configuration lines to add to ~/.config/sway/config.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.extraConfigEarly

Like extraConfig, except lines are added to ~/.config/sway/config before all other configuration.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.extraConfigEarly + + +
+
+

Like extraConfig, except lines are added to ~/.config/sway/config before all other configuration.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.extraOptions

Command line arguments passed to launch Sway. Please DO NOT report -issues if you use an unsupported GPU (proprietary drivers).

Type: -list of string

Default: -[ ]

Example:

[
-  "--verbose"
-  "--debug"
-  "--unsupported-gpu"
-  "--my-next-gpu-wont-be-nvidia"
+
+
+
+
+ + wayland.windowManager.sway.extraOptions + + +
+
+

Command line arguments passed to launch Sway. Please DO NOT report +issues if you use an unsupported GPU (proprietary drivers).

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "--verbose"
+  "--debug"
+  "--unsupported-gpu"
+  "--my-next-gpu-wont-be-nvidia"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.extraSessionCommands

Shell commands executed just before Sway is started.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + wayland.windowManager.sway.extraSessionCommands + + +
+
+

Shell commands executed just before Sway is started.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   export SDL_VIDEODRIVER=wayland
   # needs qt5.qtwayland in systemPackages
   export QT_QPA_PLATFORM=wayland
-  export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
+  export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
   # Fix for some Java AWT applications (e.g. Android Studio),
-  # use this if they aren't displayed properly:
+  # use this if they aren't displayed properly:
   export _JAVA_AWT_WM_NONREPARENTING=1
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.swaynag.enable

Whether to enable configuration of swaynag, a lightweight error bar for sway.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.swaynag.enable + + +
+
+

Whether to enable configuration of swaynag, a lightweight error bar for sway.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/swaynag.nix> -
wayland.windowManager.sway.swaynag.settings

Configuration written to + +

+
+
+ + wayland.windowManager.sway.swaynag.settings + + +
+
+

Configuration written to $XDG_CONFIG_HOME/swaynag/config.

See swaynag(5) for a list of available options and an example configuration. Note, configurations declared under <config> -will override the default type values of swaynag.

Type: -attribute set of attribute set of (Swaynag config atom (null, bool, int, float, str))

Default: -{ }

Example:

{
-  "<config>" = {
-    edge = "bottom";
-    font = "Dina 12";
+will override the default type values of swaynag.

+ +

Type: +attribute set of attribute set of (Swaynag config atom (null, bool, int, float, str))

+ +

Default: +{ }

+ +

Example:

{
+  "<config>" = {
+    edge = "bottom";
+    font = "Dina 12";
   };
 
   green = {
-    edge = "top";
-    background = "00AA00";
-    text = "FFFFFF";
-    button-background = "00CC00";
+    edge = "top";
+    background = "00AA00";
+    text = "FFFFFF";
+    button-background = "00CC00";
     message-padding = 10;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/swaynag.nix> -
wayland.windowManager.sway.systemd.enable

Whether to enable sway-session.target on + +

+
+
+ + wayland.windowManager.sway.systemd.enable + + +
+
+

Whether to enable sway-session.target on sway startup. This links to graphical-session.target. Some important environment variables will be imported to systemd -and dbus user environment before reaching the target, including

  • DISPLAY

  • WAYLAND_DISPLAY

  • SWAYSOCK

  • XDG_CURRENT_DESKTOP

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+and dbus user environment before reaching the target, including

  • DISPLAY

  • WAYLAND_DISPLAY

  • SWAYSOCK

  • XDG_CURRENT_DESKTOP

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.systemd.xdgAutostart

Whether to enable autostart of applications using + +

+
+
+ + wayland.windowManager.sway.systemd.xdgAutostart + + +
+
+

Whether to enable autostart of applications using systemd-xdg-autostart-generator(8) -.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.wrapperFeatures

Attribute set of features to enable in the wrapper.

Type: -submodule

Default: -{ }

Example:

{
+
+
+
+
+ + wayland.windowManager.sway.wrapperFeatures + + +
+
+

Attribute set of features to enable in the wrapper.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Example:

{
   gtk = true;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.wrapperFeatures.base

Whether to make use of the base wrapper to execute extra session commands and prepend a -dbus-run-session to the sway command.

Type: -boolean

Default: -true

Example: -false

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.wrapperFeatures.base + + +
+
+

Whether to make use of the base wrapper to execute extra session commands and prepend a +dbus-run-session to the sway command.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.wrapperFeatures.gtk

Whether to make use of the wrapGAppsHook wrapper to execute sway with required environment -variables for GTK applications.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.wrapperFeatures.gtk + + +
+
+

Whether to make use of the wrapGAppsHook wrapper to execute sway with required environment +variables for GTK applications.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
wayland.windowManager.sway.xwayland

Enable xwayland, which is needed for the default configuration of sway.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + wayland.windowManager.sway.xwayland + + +
+
+

Enable xwayland, which is needed for the default configuration of sway.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/sway.nix> -
xdg.enable

Whether to enable management of XDG base directories.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xdg.enable + + +
+
+

Whether to enable management of XDG base directories.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.cacheHome

Absolute path to directory holding application caches.

Type: -path

Default: -"~/.cache"

Declared by:

+
+ +
+
+
+ + xdg.cacheHome + + +
+
+

Absolute path to directory holding application caches.

+ +

Type: +path

+ +

Default: +"~/.cache"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile

Attribute set of files to link into the user’s XDG -configuration home.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + xdg.configFile + + +
+
+

Attribute set of files to link into the user’s XDG +configuration home.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile.<name>.enable

Whether this file should be generated. This option allows specific -files to be disabled.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + xdg.configFile.<name>.enable + + +
+
+

Whether this file should be generated. This option allows specific +files to be disabled.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile.<name>.executable

Set the execute bit. If null, defaults to the mode + +

+
+
+ + xdg.configFile.<name>.executable + + +
+
+

Set the execute bit. If null, defaults to the mode of the source file or to false -for files created through the text option.

Type: -null or boolean

Default: -null

Declared by:

+
+for files created through the text option.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile.<name>.onChange

Shell commands to run when file has changed between + +

+
+
+ + xdg.configFile.<name>.onChange + + +
+
+

Shell commands to run when file has changed between generations. The script will be run after the new files have been linked into place.

Note, this code is always run when recursive is -enabled.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+enabled.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile.<name>.recursive

If the file source is a directory, then this option + +

+
+
+ + xdg.configFile.<name>.recursive + + +
+
+

If the file source is a directory, then this option determines whether the directory should be recursively linked to the target location. This option has no effect if the source is a file.

If false (the default) then the target will be a symbolic link to the source directory. If true then the target will be a directory structure matching the source’s but whose leafs -are symbolic links to the files of the source directory.

Type: -boolean

Default: -false

Declared by:

+
+are symbolic links to the files of the source directory.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile.<name>.source

Path of the source file or directory. If -xdg.configFile.<name>.text + +

+
+
+ + xdg.configFile.<name>.source + + +
+
+

Path of the source file or directory. If +xdg.configFile.<name>.text is non-null then this option will automatically point to a file -containing that text.

Type: -path

Declared by:

+
+containing that text.

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile.<name>.target

Path to target file relative to xdg.configHome.

Type: -string

Default: -name

Declared by:

+
+ +
+
+
+ + xdg.configFile.<name>.target + + +
+
+

Path to target file relative to xdg.configHome.

+ +

Type: +string

+ +

Default: +name

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configFile.<name>.text

Text of the file. If this option is null then -xdg.configFile.<name>.source -must be set.

Type: -null or strings concatenated with “\n”

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.configFile.<name>.text + + +
+
+

Text of the file. If this option is null then +xdg.configFile.<name>.source +must be set.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.configHome

Absolute path to directory holding application configurations.

Type: -path

Default: -"~/.config"

Declared by:

+
+ +
+
+
+ + xdg.configHome + + +
+
+

Absolute path to directory holding application configurations.

+ +

Type: +path

+ +

Default: +"~/.config"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile

Attribute set of files to link into the user’s XDG -data home.

Type: -attribute set of (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + xdg.dataFile + + +
+
+

Attribute set of files to link into the user’s XDG +data home.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile.<name>.enable

Whether this file should be generated. This option allows specific -files to be disabled.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + xdg.dataFile.<name>.enable + + +
+
+

Whether this file should be generated. This option allows specific +files to be disabled.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile.<name>.executable

Set the execute bit. If null, defaults to the mode + +

+
+
+ + xdg.dataFile.<name>.executable + + +
+
+

Set the execute bit. If null, defaults to the mode of the source file or to false -for files created through the text option.

Type: -null or boolean

Default: -null

Declared by:

+
+for files created through the text option.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile.<name>.onChange

Shell commands to run when file has changed between + +

+
+
+ + xdg.dataFile.<name>.onChange + + +
+
+

Shell commands to run when file has changed between generations. The script will be run after the new files have been linked into place.

Note, this code is always run when recursive is -enabled.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+enabled.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile.<name>.recursive

If the file source is a directory, then this option + +

+
+
+ + xdg.dataFile.<name>.recursive + + +
+
+

If the file source is a directory, then this option determines whether the directory should be recursively linked to the target location. This option has no effect if the source is a file.

If false (the default) then the target will be a symbolic link to the source directory. If true then the target will be a directory structure matching the source’s but whose leafs -are symbolic links to the files of the source directory.

Type: -boolean

Default: -false

Declared by:

+
+are symbolic links to the files of the source directory.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile.<name>.source

Path of the source file or directory. If -xdg.dataFile.<name>.text + +

+
+
+ + xdg.dataFile.<name>.source + + +
+
+

Path of the source file or directory. If +xdg.dataFile.<name>.text is non-null then this option will automatically point to a file -containing that text.

Type: -path

Declared by:

+
+containing that text.

+ +

Type: +path

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile.<name>.target

Path to target file relative to <varname>xdg.dataHome</varname>.

Type: -string

Default: -name

Declared by:

+
+ +
+
+
+ + xdg.dataFile.<name>.target + + +
+
+

Path to target file relative to <varname>xdg.dataHome</varname>.

+ +

Type: +string

+ +

Default: +name

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataFile.<name>.text

Text of the file. If this option is null then -xdg.dataFile.<name>.source -must be set.

Type: -null or strings concatenated with “\n”

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.dataFile.<name>.text + + +
+
+

Text of the file. If this option is null then +xdg.dataFile.<name>.source +must be set.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.dataHome

Absolute path to directory holding application data.

Type: -path

Default: -"~/.local/share"

Declared by:

+
+ +
+
+
+ + xdg.dataHome + + +
+
+

Absolute path to directory holding application data.

+ +

Type: +path

+ +

Default: +"~/.local/share"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.desktopEntries

Desktop Entries allow applications to be shown in your desktop environment’s app launcher.

You can define entries for programs without entries or override existing entries.

See https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys for more information on options.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
+
+
+
+
+ + xdg.desktopEntries + + +
+
+

Desktop Entries allow applications to be shown in your desktop environment’s app launcher.

You can define entries for programs without entries or override existing entries.

See https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys for more information on options.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
   firefox = {
-    name = "Firefox";
-    genericName = "Web Browser";
-    exec = "firefox %U";
+    name = "Firefox";
+    genericName = "Web Browser";
+    exec = "firefox %U";
     terminal = false;
-    categories = [ "Application" "Network" "WebBrowser" ];
-    mimeType = [ "text/html" "text/xml" ];
+    categories = [ "Application" "Network" "WebBrowser" ];
+    mimeType = [ "text/html" "text/xml" ];
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.actions

The set of actions made available to application launchers.

Type: -attribute set of (submodule)

Default: -{ }

Example:

{
-  "New Window" = {
-    exec = "${pkgs.firefox}/bin/firefox --new-window %u";
+
+
+
+
+ + xdg.desktopEntries.<name>.actions + + +
+
+

The set of actions made available to application launchers.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  "New Window" = {
+    exec = "${pkgs.firefox}/bin/firefox --new-window %u";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.actions.<name>.exec

Program to execute, possibly with arguments.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.actions.<name>.exec + + +
+
+

Program to execute, possibly with arguments.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.actions.<name>.icon

Icon to display in file manager, menus, etc.

Type: -null or string or path

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.actions.<name>.icon + + +
+
+

Icon to display in file manager, menus, etc.

+ +

Type: +null or string or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.actions.<name>.name

Name of the action.

Type: -string

Default: -<name>

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.actions.<name>.name + + +
+
+

Name of the action.

+ +

Type: +string

+ +

Default: +<name>

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.categories

Categories in which the entry should be shown in a menu.

Type: -null or (list of string)

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.categories + + +
+
+

Categories in which the entry should be shown in a menu.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.comment

Tooltip for the entry.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.comment + + +
+
+

Tooltip for the entry.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.exec

Program to execute, possibly with arguments.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.exec + + +
+
+

Program to execute, possibly with arguments.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.genericName

Generic name of the application.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.genericName + + +
+
+

Generic name of the application.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.icon

Icon to display in file manager, menus, etc.

Type: -null or string or path

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.icon + + +
+
+

Icon to display in file manager, menus, etc.

+ +

Type: +null or string or path

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.mimeType

The MIME type(s) supported by this application.

Type: -null or (list of string)

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.mimeType + + +
+
+

The MIME type(s) supported by this application.

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.name

Specific name of the application.

Type: -string

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.name + + +
+
+

Specific name of the application.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.noDisplay

Means “this application exists, but don’t display it in the menus”. -This can be useful to e.g. associate this application with MIME types.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.noDisplay + + +
+
+

Means “this application exists, but don’t display it in the menus”. +This can be useful to e.g. associate this application with MIME types.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.prefersNonDefaultGPU

If true, the application prefers to be run on a more powerful discrete GPU if available.

Type: -null or boolean

Default: -null

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.prefersNonDefaultGPU + + +
+
+

If true, the application prefers to be run on a more powerful discrete GPU if available.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.settings

Extra key-value pairs to add to the [Desktop Entry] section. -This may override other values.

Type: -attribute set of string

Default: -{ }

Example:

{
-  Keywords = "calc;math";
-  DBusActivatable = "false";
+
+
+
+
+ + xdg.desktopEntries.<name>.settings + + +
+
+

Extra key-value pairs to add to the [Desktop Entry] section. +This may override other values.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  Keywords = "calc;math";
+  DBusActivatable = "false";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.startupNotify

If true, it is KNOWN that the application will send a “remove” + +

+
+
+ + xdg.desktopEntries.<name>.startupNotify + + +
+
+

If true, it is KNOWN that the application will send a “remove” message when started with the DESKTOP_STARTUP_ID environment variable set. If false, it is KNOWN that the application -does not work with startup notification at all.

Type: -null or boolean

Default: -null

Declared by:

+
+does not work with startup notification at all.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.terminal

Whether the program runs in a terminal window.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.terminal + + +
+
+

Whether the program runs in a terminal window.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.desktopEntries.<name>.type

The type of the desktop entry.

Type: -one of “Application”, “Link”, “Directory”

Default: -"Application"

Declared by:

+
+ +
+
+
+ + xdg.desktopEntries.<name>.type + + +
+
+

The type of the desktop entry.

+ +

Type: +one of “Application”, “Link”, “Directory”

+ +

Default: +"Application"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-desktop-entries.nix> -
xdg.mime.enable

Whether to install programs and files to support the + +

+
+
+ + xdg.mime.enable + + +
+
+

Whether to install programs and files to support the XDG Shared MIME-info specification and XDG MIME Applications specification at -https://specifications.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html +https://specifications.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html and -https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-latest.html, -respectively.

Type: -boolean

Default: -true if host platform is Linux, false otherwise

Declared by:

+
+https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-latest.html, +respectively.

+ +

Type: +boolean

+ +

Default: +true if host platform is Linux, false otherwise

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-mime.nix> -
xdg.mimeApps.enable

Whether to manage $XDG_CONFIG_HOME/mimeapps.list.

The generated file is read-only.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + xdg.mimeApps.enable + + +
+
+

Whether to manage $XDG_CONFIG_HOME/mimeapps.list.

The generated file is read-only.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-mime-apps.nix> -
xdg.mimeApps.associations.added

Defines additional associations of applications with + +

+
+
+ + xdg.mimeApps.associations.added + + +
+
+

Defines additional associations of applications with mimetypes, as if the .desktop file was listing this mimetype -in the first place.

Type: -attribute set of ((list of string) or ((list of string) or string) convertible to it)

Default: -{ }

Example:

{
-  "mimetype1" = [ "foo1.desktop" "foo2.desktop" "foo3.desktop" ];
-  "mimetype2" = "foo4.desktop";
+in the first place.

+ +

Type: +attribute set of ((list of string) or ((list of string) or string) convertible to it)

+ +

Default: +{ }

+ +

Example:

{
+  "mimetype1" = [ "foo1.desktop" "foo2.desktop" "foo3.desktop" ];
+  "mimetype2" = "foo4.desktop";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-mime-apps.nix> -
xdg.mimeApps.associations.removed

Removes associations of applications with mimetypes, as if the + +

+
+
+ + xdg.mimeApps.associations.removed + + +
+
+

Removes associations of applications with mimetypes, as if the .desktop file was not listing this -mimetype in the first place.

Type: -attribute set of ((list of string) or ((list of string) or string) convertible to it)

Default: -{ }

Example:

{
-  mimetype1 = "foo5.desktop";
+mimetype in the first place.

+ +

Type: +attribute set of ((list of string) or ((list of string) or string) convertible to it)

+ +

Default: +{ }

+ +

Example:

{
+  mimetype1 = "foo5.desktop";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-mime-apps.nix> -
xdg.mimeApps.defaultApplications

The default application to be used for a given mimetype. This + +

+
+
+ + xdg.mimeApps.defaultApplications + + +
+
+

The default application to be used for a given mimetype. This is, for instance, the one that will be started when double-clicking on a file in a file manager. If the application is no longer installed, the next application in -the list is attempted, and so on.

Type: -attribute set of ((list of string) or ((list of string) or string) convertible to it)

Default: -{ }

Example:

{
-  "mimetype1" = [ "default1.desktop" "default2.desktop" ];
+the list is attempted, and so on.

+ +

Type: +attribute set of ((list of string) or ((list of string) or string) convertible to it)

+ +

Default: +{ }

+ +

Example:

{
+  "mimetype1" = [ "default1.desktop" "default2.desktop" ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-mime-apps.nix> -
xdg.stateHome

Absolute path to directory holding application states.

Type: -path

Default: -"~/.local/state"

Declared by:

+
+ +
+
+
+ + xdg.stateHome + + +
+
+

Absolute path to directory holding application states.

+ +

Type: +path

+ +

Default: +"~/.local/state"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg.nix> -
xdg.systemDirs.config

Directory names to add to XDG_CONFIG_DIRS -in the user session.

Type: -list of string

Default: -[ ]

Example: -[ "/etc/xdg" ]

Declared by:

+
+ +
+
+
+ + xdg.systemDirs.config + + +
+
+

Directory names to add to XDG_CONFIG_DIRS +in the user session.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +[ "/etc/xdg" ]

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-system-dirs.nix> -
xdg.systemDirs.data

Directory names to add to XDG_DATA_DIRS -in the user session.

Type: -list of string

Default: -[ ]

Example: -[ "/usr/share" "/usr/local/share" ]

Declared by:

+
+ +
+
+
+ + xdg.systemDirs.data + + +
+
+

Directory names to add to XDG_DATA_DIRS +in the user session.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +[ "/usr/share" "/usr/local/share" ]

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-system-dirs.nix> -
xdg.userDirs.enable

Whether to manage $XDG_CONFIG_HOME/user-dirs.dirs.

The generated file is read-only.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + xdg.userDirs.enable + + +
+
+

Whether to manage $XDG_CONFIG_HOME/user-dirs.dirs.

The generated file is read-only.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.createDirectories

Whether to enable automatic creation of the XDG user directories.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xdg.userDirs.createDirectories + + +
+
+

Whether to enable automatic creation of the XDG user directories.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.desktop

The Desktop directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Desktop"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.desktop + + +
+
+

The Desktop directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Desktop"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.documents

The Documents directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Documents"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.documents + + +
+
+

The Documents directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Documents"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.download

The Downloads directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Downloads"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.download + + +
+
+

The Downloads directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Downloads"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.extraConfig

Other user directories.

Type: -attribute set of (string or path convertible to it)

Default: -{ }

Example:

{
-  XDG_MISC_DIR = "${config.home.homeDirectory}/Misc";
+
+
+
+
+ + xdg.userDirs.extraConfig + + +
+
+

Other user directories.

+ +

Type: +attribute set of (string or path convertible to it)

+ +

Default: +{ }

+ +

Example:

{
+  XDG_MISC_DIR = "${config.home.homeDirectory}/Misc";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.music

The Music directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Music"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.music + + +
+
+

The Music directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Music"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.pictures

The Pictures directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Pictures"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.pictures + + +
+
+

The Pictures directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Pictures"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.publicShare

The Public share directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Public"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.publicShare + + +
+
+

The Public share directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Public"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.templates

The Templates directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Templates"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.templates + + +
+
+

The Templates directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Templates"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xdg.userDirs.videos

The Videos directory.

Type: -null or (string or path convertible to it)

Default: -"${config.home.homeDirectory}/Videos"

Declared by:

+
+ +
+
+
+ + xdg.userDirs.videos + + +
+
+

The Videos directory.

+ +

Type: +null or (string or path convertible to it)

+ +

Default: +"${config.home.homeDirectory}/Videos"

+ +

Declared by:

+ +
+ <home-manager/modules/misc/xdg-user-dirs.nix> -
xfconf.settings

Settings to write to the Xfconf configuration system.

Type: -xfconf settings

Default: -{ }

Example:

{
+
+
+
+
+ + xfconf.settings + + +
+
+

Settings to write to the Xfconf configuration system.

+ +

Type: +xfconf settings

+ +

Default: +{ }

+ +

Example:

{
   xfce4-session = {
-    "startup/ssh-agent/enabled" = false;
-    "general/LockCommand" = "${pkgs.lightdm}/bin/dm-tool lock";
+    "startup/ssh-agent/enabled" = false;
+    "general/LockCommand" = "${pkgs.lightdm}/bin/dm-tool lock";
   };
   xfce4-desktop = {
-    "backdrop/screen0/monitorLVDS-1/workspace0/last-image" =
-      "${pkgs.nixos-artwork.wallpapers.stripes-logo.gnomeFilePath}";
+    "backdrop/screen0/monitorLVDS-1/workspace0/last-image" =
+      "${pkgs.nixos-artwork.wallpapers.stripes-logo.gnomeFilePath}";
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/misc/xfconf.nix> -
xresources.extraConfig

Additional X server resources contents. + +

+
+
+ + xresources.extraConfig + + +
+
+

Additional X server resources contents. If this and all other xresources options are null, then this feature is disabled and no -~/.Xresources link is produced.

Type: -strings concatenated with “\n”

Default: -""

Example:

builtins.readFile (
+~/.Xresources link is produced.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

builtins.readFile (
     pkgs.fetchFromGitHub {
-        owner = "solarized";
-        repo = "xresources";
-        rev = "025ceddbddf55f2eb4ab40b05889148aab9699fc";
-        sha256 = "0lxv37gmh38y9d3l8nbnsm1mskcv10g3i83j0kac0a2qmypv1k9f";
-    } + "/Xresources.dark"
+        owner = "solarized";
+        repo = "xresources";
+        rev = "025ceddbddf55f2eb4ab40b05889148aab9699fc";
+        sha256 = "0lxv37gmh38y9d3l8nbnsm1mskcv10g3i83j0kac0a2qmypv1k9f";
+    } + "/Xresources.dark"
 )
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/xresources.nix> -
xresources.path

Path where Home Manager should link the .Xresources file.

Type: -string

Default: -"$HOME/.Xresources"

Declared by:

+
+ +
+
+
+ + xresources.path + + +
+
+

Path where Home Manager should link the .Xresources file.

+ +

Type: +string

+ +

Default: +"$HOME/.Xresources"

+ +

Declared by:

+ +
+ <home-manager/modules/xresources.nix> -
xresources.properties

X server resources that should be set. + +

+
+
+ + xresources.properties + + +
+
+

X server resources that should be set. Booleans are formatted as “true” or “false” respectively. List elements are recursively formatted as a string and joined by commas. All other values are directly formatted using builtins.toString. Note, that 2-dimensional lists are not supported and specifying one will throw an exception. If this and all other xresources options are null, then this feature is disabled and no -~/.Xresources link is produced.

Type: -null or (attribute set of (boolean or signed integer or string or list of (boolean or signed integer or string)))

Default: -null

Example:

{
-  "Emacs*toolBar" = 0;
-  "XTerm*faceName" = "dejavu sans mono";
-  "XTerm*charClass" = [ "37:48" "45-47:48" "58:48" "64:48" "126:48" ];
+~/.Xresources link is produced.

+ +

Type: +null or (attribute set of (boolean or signed integer or string or list of (boolean or signed integer or string)))

+ +

Default: +null

+ +

Example:

{
+  "Emacs*toolBar" = 0;
+  "XTerm*faceName" = "dejavu sans mono";
+  "XTerm*charClass" = [ "37:48" "45-47:48" "58:48" "64:48" "126:48" ];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/xresources.nix> -
xsession.enable

Whether to enable X Session.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.enable + + +
+
+

Whether to enable X Session.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/xsession.nix> -
xsession.initExtra

Extra shell commands to run during initialization.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + xsession.initExtra + + +
+
+

Extra shell commands to run during initialization.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/xsession.nix> -
xsession.numlock.enable

Whether to enable Num Lock.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.numlock.enable + + +
+
+

Whether to enable Num Lock.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/misc/numlock.nix> -
xsession.pointerCursor.package

Alias of home.pointerCursor.package.

Type: -submodule

Declared by:

+
+ +
+
+
+ + xsession.pointerCursor.package + + +
+
+

Alias of home.pointerCursor.package.

+ +

Type: +submodule

+ +

Declared by:

+ +
+ <home-manager/modules/config/home-cursor.nix> -
xsession.pointerCursor.defaultCursor

Alias of home.pointerCursor.x11.defaultCursor.

Type: -submodule

Declared by:

+
+ +
+
+
+ + xsession.pointerCursor.defaultCursor + + +
+
+

Alias of home.pointerCursor.x11.defaultCursor.

+ +

Type: +submodule

+ +

Declared by:

+ +
+ <home-manager/modules/config/home-cursor.nix> -
xsession.pointerCursor.name

Alias of home.pointerCursor.name.

Type: -submodule

Declared by:

+
+ +
+
+
+ + xsession.pointerCursor.name + + +
+
+

Alias of home.pointerCursor.name.

+ +

Type: +submodule

+ +

Declared by:

+ +
+ <home-manager/modules/config/home-cursor.nix> -
xsession.pointerCursor.size

Alias of home.pointerCursor.size.

Type: -submodule

Declared by:

+
+ +
+
+
+ + xsession.pointerCursor.size + + +
+
+

Alias of home.pointerCursor.size.

+ +

Type: +submodule

+ +

Declared by:

+ +
+ <home-manager/modules/config/home-cursor.nix> -
xsession.preferStatusNotifierItems

Whether tray applets should prefer using the Status Notifier + +

+
+
+ + xsession.preferStatusNotifierItems + + +
+
+

Whether tray applets should prefer using the Status Notifier Items (SNI) protocol, commonly called App Indicators. Note, -not all tray applets or status bars support SNI.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+not all tray applets or status bars support SNI.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/xsession.nix> -
xsession.profileExtra

Extra shell commands to run before session start.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + xsession.profileExtra + + +
+
+

Extra shell commands to run before session start.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/xsession.nix> -
xsession.profilePath

Path, relative to HOME, where Home Manager -should write the X profile script.

Type: -string

Default: -".xprofile"

Example: -".xprofile-hm"

Declared by:

+
+ +
+
+
+ + xsession.profilePath + + +
+
+

Path, relative to HOME, where Home Manager +should write the X profile script.

+ +

Type: +string

+ +

Default: +".xprofile"

+ +

Example: +".xprofile-hm"

+ +

Declared by:

+ +
+ <home-manager/modules/xsession.nix> -
xsession.scriptPath

Path, relative to HOME, where Home Manager -should write the X session script.

Type: -string

Default: -".xsession"

Example: -".xsession-hm"

Declared by:

+
+ +
+
+
+ + xsession.scriptPath + + +
+
+

Path, relative to HOME, where Home Manager +should write the X session script.

+ +

Type: +string

+ +

Default: +".xsession"

+ +

Example: +".xsession-hm"

+ +

Declared by:

+ +
+ <home-manager/modules/xsession.nix> -
xsession.windowManager.awesome.enable

Whether to enable Awesome window manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.awesome.enable + + +
+
+

Whether to enable Awesome window manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/awesome.nix> -
xsession.windowManager.awesome.package

Package to use for running the Awesome WM.

Type: -package

Default: -pkgs.awesome

Declared by:

+
+ +
+
+
+ + xsession.windowManager.awesome.package + + +
+
+

Package to use for running the Awesome WM.

+ +

Type: +package

+ +

Default: +pkgs.awesome

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/awesome.nix> -
xsession.windowManager.awesome.luaModules

List of lua packages available for being -used in the Awesome configuration.

Type: -list of package

Default: -[ ]

Example: -[ pkgs.luaPackages.vicious ]

Declared by:

+
+ +
+
+
+ + xsession.windowManager.awesome.luaModules + + +
+
+

List of lua packages available for being +used in the Awesome configuration.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +[ pkgs.luaPackages.vicious ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/awesome.nix> -
xsession.windowManager.awesome.noArgb

Disable client transparency support, which can be greatly -detrimental to performance in some setups

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + xsession.windowManager.awesome.noArgb + + +
+
+

Disable client transparency support, which can be greatly +detrimental to performance in some setups

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/awesome.nix> -
xsession.windowManager.bspwm.enable

Whether to enable bspwm window manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.enable + + +
+
+

Whether to enable bspwm window manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.package

The bspwm package to use.

Type: -package

Default: -pkgs.bspwm

Example: -pkgs.bspwm-unstable

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.package + + +
+
+

The bspwm package to use.

+ +

Type: +package

+ +

Default: +pkgs.bspwm

+ +

Example: +pkgs.bspwm-unstable

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.alwaysResetDesktops

If set to true, desktops configured in monitors will be reset + +

+
+
+ + xsession.windowManager.bspwm.alwaysResetDesktops + + +
+
+

If set to true, desktops configured in monitors will be reset every time the config is run.

If set to false, desktops will only be configured the first time the config is run. This is useful if you want to dynamically add desktops and you don’t want them to be destroyed if you -re-run bspwmrc.

Type: -boolean

Default: -true

Declared by:

+
+re-run bspwmrc.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.extraConfig

Additional shell commands to be run at the end of the config file.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + xsession.windowManager.bspwm.extraConfig + + +
+
+

Additional shell commands to be run at the end of the config file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   bspc subscribe all > ~/bspc-report.log &
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.extraConfigEarly

Like extraConfig, except commands are run at the start of the config file.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.extraConfigEarly + + +
+
+

Like extraConfig, except commands are run at the start of the config file.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.monitors

Specifies the names of desktops to create on each monitor.

Type: -attribute set of list of string

Default: -{ }

Example:

{
+
+
+
+
+ + xsession.windowManager.bspwm.monitors + + +
+
+

Specifies the names of desktops to create on each monitor.

+ +

Type: +attribute set of list of string

+ +

Default: +{ }

+ +

Example:

{
   HDMI-0 = [
-    "web"
-    "terminal"
-    "III"
-    "IV"
+    "web"
+    "terminal"
+    "III"
+    "IV"
   ];
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules

Rule configuration. The keys of the attribute set are the targets of the rules.

Type: -attribute set of (attribute set of (boolean or signed integer or floating point number or string))

Default: -{ }

Example:

{
-  "Gimp" = {
-    desktop = "^8";
-    state = "floating";
+
+
+
+
+ + xsession.windowManager.bspwm.rules + + +
+
+

Rule configuration. The keys of the attribute set are the targets of the rules.

+ +

Type: +attribute set of (attribute set of (boolean or signed integer or floating point number or string))

+ +

Default: +{ }

+ +

Example:

{
+  "Gimp" = {
+    desktop = "^8";
+    state = "floating";
     follow = true;
   };
-  "Kupfer.py" = {
+  "Kupfer.py" = {
     focus = true;
   };
-  "Screenkey" = {
+  "Screenkey" = {
     manage = false;
   };
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.border

Whether the node should have border.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.border + + +
+
+

Whether the node should have border.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.center

Whether the node will be put in the center, in floating mode.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.center + + +
+
+

Whether the node will be put in the center, in floating mode.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.desktop

The desktop where the rule should be applied.

Type: -null or string

Default: -null

Example: -"^8"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.desktop + + +
+
+

The desktop where the rule should be applied.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"^8"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.focus

Whether the node should gain focus on creation.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.focus + + +
+
+

Whether the node should gain focus on creation.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.follow

Whether focus should follow the node when it is moved.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.follow + + +
+
+

Whether focus should follow the node when it is moved.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.hidden

Whether the node should occupy any space.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.hidden + + +
+
+

Whether the node should occupy any space.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.layer

The layer where a new window should spawn.

Type: -null or one of “below”, “normal”, “above”

Default: -null

Example: -"above"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.layer + + +
+
+

The layer where a new window should spawn.

+ +

Type: +null or one of “below”, “normal”, “above”

+ +

Default: +null

+ +

Example: +"above"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.locked

Whether the node should ignore node --close -messages.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.locked + + +
+
+

Whether the node should ignore node --close +messages.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.manage

Whether the window should be managed by bspwm. If false, the window + +

+
+
+ + xsession.windowManager.bspwm.rules.<name>.manage + + +
+
+

Whether the window should be managed by bspwm. If false, the window will be ignored by bspwm entirely. This is useful for overlay apps, -e.g. screenshot tools.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+e.g. screenshot tools.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.marked

Whether the node will be marked for deferred actions.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.marked + + +
+
+

Whether the node will be marked for deferred actions.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.monitor

The monitor where the rule should be applied.

Type: -null or string

Default: -null

Example: -"HDMI-0"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.monitor + + +
+
+

The monitor where the rule should be applied.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"HDMI-0"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.node

The node where the rule should be applied.

Type: -null or string

Default: -null

Example: -"1"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.node + + +
+
+

The node where the rule should be applied.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"1"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.private

Whether the node should stay in the same tiling position and size.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.private + + +
+
+

Whether the node should stay in the same tiling position and size.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.rectangle

The node’s geometry, in the format WxH+X+Y.

Type: -null or string

Default: -null

Example: -"800x600+32+32"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.rectangle + + +
+
+

The node’s geometry, in the format WxH+X+Y.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"800x600+32+32"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.splitDir

The direction where the container is going to be split.

Type: -null or one of “north”, “west”, “south”, “east”

Default: -null

Example: -"south"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.splitDir + + +
+
+

The direction where the container is going to be split.

+ +

Type: +null or one of “north”, “west”, “south”, “east”

+ +

Default: +null

+ +

Example: +"south"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.splitRatio

The ratio between the new window and the previous existing window in -the desktop.

Type: -null or floating point number

Default: -null

Example: -0.65

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.splitRatio + + +
+
+

The ratio between the new window and the previous existing window in +the desktop.

+ +

Type: +null or floating point number

+ +

Default: +null

+ +

Example: +0.65

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.state

The state in which a new window should spawn.

Type: -null or one of “tiled”, “pseudo_tiled”, “floating”, “fullscreen”

Default: -null

Example: -"floating"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.state + + +
+
+

The state in which a new window should spawn.

+ +

Type: +null or one of “tiled”, “pseudo_tiled”, “floating”, “fullscreen”

+ +

Default: +null

+ +

Example: +"floating"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.rules.<name>.sticky

Whether the node should stay on the focused desktop.

Type: -null or boolean

Default: -null

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.bspwm.rules.<name>.sticky + + +
+
+

Whether the node should stay on the focused desktop.

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.settings

General settings given to bspc config.

Type: -attribute set of (boolean or signed integer or floating point number or string or list of (boolean or signed integer or floating point number or string))

Default: -{ }

Example:

{
+
+
+
+
+ + xsession.windowManager.bspwm.settings + + +
+
+

General settings given to bspc config.

+ +

Type: +attribute set of (boolean or signed integer or floating point number or string or list of (boolean or signed integer or floating point number or string))

+ +

Default: +{ }

+ +

Example:

{
   border_width = 2;
   gapless_monocle = true;
   split_ratio = 0.52;
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.bspwm.startupPrograms

Programs to be executed during startup.

Type: -list of string

Default: -[ ]

Example:

[
-  "numlockx on"
-  "tilda"
+
+
+
+
+ + xsession.windowManager.bspwm.startupPrograms + + +
+
+

Programs to be executed during startup.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "numlockx on"
+  "tilda"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/bspwm/default.nix> -
xsession.windowManager.command

Command to use to start the window manager.

The default value allows integration with NixOS’ generated xserver configuration.

Extra actions and commands can be specified in xsession.initExtra.

Type: -string

Default: -"test -n \"$1\" && eval \"$@\""

Example:

let
+
+
+
+
+ + xsession.windowManager.command + + +
+
+

Command to use to start the window manager.

The default value allows integration with NixOS’ generated xserver configuration.

Extra actions and commands can be specified in xsession.initExtra.

+ +

Type: +string

+ +

Default: +"test -n \"$1\" && eval \"$@\""

+ +

Example:

let
   xmonad = pkgs.xmonad-with-packages.override {
     packages = self: [ self.xmonad-contrib self.taffybar ];
   };
 in
-  "${xmonad}/bin/xmonad";
+  "${xmonad}/bin/xmonad";
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/xsession.nix> -
xsession.windowManager.fluxbox.enable

Whether to enable Fluxbox window manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.fluxbox.enable + + +
+
+

Whether to enable Fluxbox window manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.package

The fluxbox package to use.

Type: -package

Default: -pkgs.fluxbox

Declared by:

+
+ +
+
+
+ + xsession.windowManager.fluxbox.package + + +
+
+

The fluxbox package to use.

+ +

Type: +package

+ +

Default: +pkgs.fluxbox

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.apps

Apps configuration for Fluxbox, written to + +

+
+
+ + xsession.windowManager.fluxbox.apps + + +
+
+

Apps configuration for Fluxbox, written to ~/.fluxbox/apps. Look at the -fluxbox(1) manpage for details.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+fluxbox(1) manpage for details.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.extraCommandLineArgs

Extra command line arguments to pass to fluxbox. + +

+
+
+ + xsession.windowManager.fluxbox.extraCommandLineArgs + + +
+
+

Extra command line arguments to pass to fluxbox. Look at the -fluxbox(1) manpage for details.

Type: -list of string

Default: -[ ]

Example:

[
-  "-log"
-  "/tmp/fluxbox.log"
+fluxbox(1) manpage for details.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "-log"
+  "/tmp/fluxbox.log"
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.init

Init configuration for Fluxbox, written to + +

+
+
+ + xsession.windowManager.fluxbox.init + + +
+
+

Init configuration for Fluxbox, written to ~/.fluxbox/init. Look at the -fluxbox(1) manpage for details.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+fluxbox(1) manpage for details.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.keys

Keyboard shortcuts configuration for Fluxbox, written to + +

+
+
+ + xsession.windowManager.fluxbox.keys + + +
+
+

Keyboard shortcuts configuration for Fluxbox, written to ~/.fluxbox/keys. Look at the -fluxbox-keys(1) manpage for details.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+fluxbox-keys(1) manpage for details.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.menu

Menu configuration for Fluxbox, written to + +

+
+
+ + xsession.windowManager.fluxbox.menu + + +
+
+

Menu configuration for Fluxbox, written to ~/.fluxbox/menu. Look at the -fluxbox-menu(1) manpage for details.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+fluxbox-menu(1) manpage for details.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.slitlist

Slitlist configuration for Fluxbox, written to + +

+
+
+ + xsession.windowManager.fluxbox.slitlist + + +
+
+

Slitlist configuration for Fluxbox, written to ~/.fluxbox/slitlist. Look at the -fluxbox(1) manpage for details.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+fluxbox(1) manpage for details.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.fluxbox.windowmenu

Window menu configuration for Fluxbox, written to + +

+
+
+ + xsession.windowManager.fluxbox.windowmenu + + +
+
+

Window menu configuration for Fluxbox, written to ~/.fluxbox/windowmenu. Look at the fluxbox-menu(1) -manpage for details.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+manpage for details.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/fluxbox.nix> -
xsession.windowManager.herbstluftwm.enable

Whether to enable herbstluftwm window manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.herbstluftwm.enable + + +
+
+

Whether to enable herbstluftwm window manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.herbstluftwm.package

Package providing the herbstluftwm and -herbstclient commands.

Type: -package

Default: -pkgs.herbstluftwm

Declared by:

+
+ +
+
+
+ + xsession.windowManager.herbstluftwm.package + + +
+
+

Package providing the herbstluftwm and +herbstclient commands.

+ +

Type: +package

+ +

Default: +pkgs.herbstluftwm

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.herbstluftwm.extraConfig

Extra configuration lines to add verbatim to -$XDG_CONFIG_HOME/herbstluftwm/autostart.

Type: -strings concatenated with “\n”

Default: -""

Example:

''
+
+
+
+
+ + xsession.windowManager.herbstluftwm.extraConfig + + +
+
+

Extra configuration lines to add verbatim to +$XDG_CONFIG_HOME/herbstluftwm/autostart.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example:

''
   herbstclient set_layout max
   herbstclient detect_monitors
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.herbstluftwm.keybinds

Herbstluftwm keybinds.

Type: -attribute set of string

Default: -{ }

Example:

{
-  Mod4-o = "split right";
-  Mod4-u = "split bottom";
+
+
+
+
+ + xsession.windowManager.herbstluftwm.keybinds + + +
+
+

Herbstluftwm keybinds.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  Mod4-o = "split right";
+  Mod4-u = "split bottom";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.herbstluftwm.mousebinds

Herbstluftwm mousebinds.

Type: -attribute set of string

Default: -{ }

Example:

{
-  Mod4-B1 = "move";
-  Mod4-B3 = "resize";
+
+
+
+
+ + xsession.windowManager.herbstluftwm.mousebinds + + +
+
+

Herbstluftwm mousebinds.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  Mod4-B1 = "move";
+  Mod4-B3 = "resize";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.herbstluftwm.rules

Herbstluftwm rules.

Type: -list of string

Default: -[ ]

Example:

[
-  "windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' focus=on pseudotile=on"
-  "windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off"
+
+
+
+
+ + xsession.windowManager.herbstluftwm.rules + + +
+
+

Herbstluftwm rules.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' focus=on pseudotile=on"
+  "windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off"
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.herbstluftwm.settings

Herbstluftwm settings.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
+
+
+
+
+ + xsession.windowManager.herbstluftwm.settings + + +
+
+

Herbstluftwm settings.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
   gapless_grid = false;
   window_border_width = 1;
-  window_border_active_color = "#FF0000";
+  window_border_active_color = "#FF0000";
 }
 
-

Declared by:

-<home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.herbstluftwm.tags

Tags to create on startup.

Type: -list of string

Default: -[ ]

Example:

[ "work" "browser" "music" "gaming" ]
+
-

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/herbstluftwm.nix> -
xsession.windowManager.i3.enable

Whether to enable i3 window manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.herbstluftwm.tags + + +
+
+

Tags to create on startup.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[ "work" "browser" "music" "gaming" ]
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/herbstluftwm.nix> + +
+
+
+ + xsession.windowManager.i3.enable + + +
+
+

Whether to enable i3 window manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.package

The i3 package to use.

Type: -package

Default: -pkgs.i3

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.package + + +
+
+

The i3 package to use.

+ +

Type: +package

+ +

Default: +pkgs.i3

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config

i3 configuration options.

Type: -null or (submodule)

Default: -{ }

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config + + +
+
+

i3 configuration options.

+ +

Type: +null or (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.assigns

An attribute set that assigns applications to workspaces based -on criteria.

Type: -attribute set of list of attribute set of (string or boolean)

Default: -{ }

Example:

{
-"1: web" = [{ class = "^Firefox$"; }];
-"0: extra" = [{ class = "^Firefox$"; window_role = "About"; }];
+
+
+
+
+ + xsession.windowManager.i3.config.assigns + + +
+
+

An attribute set that assigns applications to workspaces based +on criteria.

+ +

Type: +attribute set of list of attribute set of (string or boolean)

+ +

Default: +{ }

+ +

Example:

{
+"1: web" = [{ class = "^Firefox$"; }];
+"0: extra" = [{ class = "^Firefox$"; window_role = "About"; }];
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars

i3 bars settings blocks. Set to empty list to remove bars completely.

Type: -list of (submodule)

Default: -see code

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.bars + + +
+
+

i3 bars settings blocks. Set to empty list to remove bars completely.

+ +

Type: +list of (submodule)

+ +

Default: +see code

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors

Bar color settings. All color classes can be specified using submodules + +

+
+
+ + xsession.windowManager.i3.config.bars.*.colors + + +
+
+

Bar color settings. All color classes can be specified using submodules with ‘border’, ‘background’, ‘text’, fields and RGB color hex-codes as values. See default values for the reference. -Note that ‘background’, ‘status’, and ‘separator’ parameters take a single RGB value.

See https://i3wm.org/docs/userguide.html#_colors.

Type: -submodule

Default: -{ }

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.activeWorkspace

Border, background and text color for a workspace button when the workspace is active.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+Note that ‘background’, ‘status’, and ‘separator’ parameters take a single RGB value.

See https://i3wm.org/docs/userguide.html#_colors.

-

Example:

{
-  background = "#5f676a";
-  border = "#333333";
-  text = "#ffffff";
+

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.activeWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace is active.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#5f676a";
+  border = "#333333";
+  text = "#ffffff";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.background

Background color of the bar.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -"#000000"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.bindingMode

Border, background and text color for the binding mode indicator

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.background + + +
+
+

Background color of the bar.

-

Example:

{
-  background = "#900000";
-  border = "#2f343a";
-  text = "#ffffff";
+

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"#000000"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.bindingMode + + +
+
+

Border, background and text color for the binding mode indicator

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#900000";
+  border = "#2f343a";
+  text = "#ffffff";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.focusedBackground

Background color of the bar on the currently focused monitor output.

Type: -null or string

Default: -null

Example: -"#000000"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.focusedSeparator

Text color to be used for the separator on the currently focused monitor output.

Type: -null or string

Default: -null

Example: -"#666666"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.focusedStatusline

Text color to be used for the statusline on the currently focused monitor output.

Type: -null or string

Default: -null

Example: -"#ffffff"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.focusedWorkspace

Border, background and text color for a workspace button when the workspace has focus.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example:

{
-  background = "#285577";
-  border = "#4c7899";
-  text = "#ffffff";
+

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.focusedBackground + + +
+
+

Background color of the bar on the currently focused monitor output.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#000000"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.focusedSeparator + + +
+
+

Text color to be used for the separator on the currently focused monitor output.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#666666"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.focusedStatusline + + +
+
+

Text color to be used for the statusline on the currently focused monitor output.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"#ffffff"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.focusedWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace has focus.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#285577";
+  border = "#4c7899";
+  text = "#ffffff";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.inactiveWorkspace

Border, background and text color for a workspace button when the workspace does not -have focus and is not active.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example:

{
-  background = "#222222";
-  border = "#333333";
-  text = "#888888";
+

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.inactiveWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace does not +have focus and is not active.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#222222";
+  border = "#333333";
+  text = "#888888";
 }
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.separator

Text color to be used for the separator.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -"#666666"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.statusline

Text color to be used for the statusline.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.separator + + +
+
+

Text color to be used for the separator.

-

Example: -"#ffffff"

Declared by:

+
+

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"#666666"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.colors.urgentWorkspace

Border, background and text color for a workspace button when the workspace contains -a window with the urgency hint set.

Type: -null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.statusline + + +
+
+

Text color to be used for the statusline.

-

Example:

{
-  background = "#900000";
-  border = "#2f343a";
-  text = "#ffffff";
+

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"#ffffff"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.colors.urgentWorkspace + + +
+
+

Border, background and text color for a workspace button when the workspace contains +a window with the urgency hint set.

+ +

Type: +null or (submodule)

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example:

{
+  background = "#900000";
+  border = "#2f343a";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.command

Command that will be used to start a bar.

Type: -string

Default: -"i3bar"

Example: -"\${pkgs.i3}/bin/i3bar -t"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.bars.*.command + + +
+
+

Command that will be used to start a bar.

+ +

Type: +string

+ +

Default: +"i3bar"

+ +

Example: +"\${pkgs.i3}/bin/i3bar -t"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.extraConfig

Extra configuration lines for this bar.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.bars.*.extraConfig + + +
+
+

Extra configuration lines for this bar.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.fonts

Font configuration for this bar.

Type: -(list of string) or (submodule)

Default: -{ }

Example:

{
-  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
-  style = "Bold Semi-Condensed";
+
+
+
+
+ + xsession.windowManager.i3.config.bars.*.fonts + + +
+
+

Font configuration for this bar.

+ +

Type: +(list of string) or (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
+  style = "Bold Semi-Condensed";
   size = 11.0;
 }
 
-

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.hiddenState

The default bar mode when ‘bar.mode’ == ‘hide’.

Type: -null or one of “hide”, “show”

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -"hide"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.id

Specifies the bar ID for the configured bar instance. + +

+
+
+ + xsession.windowManager.i3.config.bars.*.hiddenState + + +
+
+

The default bar mode when ‘bar.mode’ == ‘hide’.

+ +

Type: +null or one of “hide”, “show”

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"hide"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.id + + +
+
+

Specifies the bar ID for the configured bar instance. If this option is missing, the ID is set to bar-x, where x corresponds -to the position of the embedding bar block in the config file.

Type: -null or string

Default: -null

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.mode

Bar visibility mode.

Type: -null or one of “dock”, “hide”, “invisible”

Default:

null for state version ≥ 20.09, as example otherwise
+to the position of the embedding bar block in the config file.

-

Example: -"dock"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.position

The edge of the screen i3bar should show up.

Type: -null or one of “top”, “bottom”

Default:

null for state version ≥ 20.09, as example otherwise
+

Type: +null or string

-

Example: -"bottom"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.statusCommand

Command that will be used to get status lines.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+

Default: +null

-

Example: -"\${pkgs.i3status}/bin/i3status"

Declared by:

+
+

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.trayOutput

Where to output tray.

Type: -null or string

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+
+
+ + xsession.windowManager.i3.config.bars.*.mode + + +
+
+

Bar visibility mode.

-

Example: -"primary"

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.trayPadding

Sets the pixel padding of the system tray. -This padding will surround the tray on all sides and between each item.

Type: -null or signed integer

Default:

null for state version ≥ 20.09, as example otherwise
+

Type: +null or one of “dock”, “hide”, “invisible”

-

Example: -null

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.workspaceButtons

Whether workspace buttons should be shown or not.

Type: -null or boolean

Default:

null for state version ≥ 20.09, as example otherwise
+

Default:

null for state version ≥ 20.09, as example otherwise
 
-

Example: -true

Declared by:

-<home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.bars.*.workspaceNumbers

Whether workspace numbers should be displayed within the workspace buttons.

Type: -null or boolean

Default:

null for state version ≥ 20.09, as example otherwise
+
-

Example: -true

Declared by:

+
+

Example: +"dock"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.colors

Color settings. All color classes can be specified using submodules + +

+
+
+ + xsession.windowManager.i3.config.bars.*.position + + +
+
+

The edge of the screen i3bar should show up.

+ +

Type: +null or one of “top”, “bottom”

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"bottom"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.statusCommand + + +
+
+

Command that will be used to get status lines.

+ +

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"\${pkgs.i3status}/bin/i3status"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.trayOutput + + +
+
+

Where to output tray.

+ +

Type: +null or string

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +"primary"

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.trayPadding + + +
+
+

Sets the pixel padding of the system tray. +This padding will surround the tray on all sides and between each item.

+ +

Type: +null or signed integer

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +null

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.workspaceButtons + + +
+
+

Whether workspace buttons should be shown or not.

+ +

Type: +null or boolean

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.bars.*.workspaceNumbers + + +
+
+

Whether workspace numbers should be displayed within the workspace buttons.

+ +

Type: +null or boolean

+ +

Default:

null for state version ≥ 20.09, as example otherwise
+
+
+ +

Example: +true

+ +

Declared by:

+ + +
+ +<home-manager/modules/services/window-managers/i3-sway/i3.nix> + +
+
+
+ + xsession.windowManager.i3.config.colors + + +
+
+

Color settings. All color classes can be specified using submodules with ‘border’, ‘background’, ‘text’, ‘indicator’ and ‘childBorder’ fields and RGB color hex-codes as values. See default values for the reference. -Note that ‘i3.config.colors.background’ parameter takes a single RGB value.

See https://i3wm.org/docs/userguide.html#_changing_colors.

Type: -submodule

Default: -{ }

Declared by:

+
+Note that ‘i3.config.colors.background’ parameter takes a single RGB value.

See https://i3wm.org/docs/userguide.html#_changing_colors.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.colors.background

Background color of the window. Only applications which do not cover -the whole area expose the color.

Type: -string

Default: -"#ffffff"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.colors.background + + +
+
+

Background color of the window. Only applications which do not cover +the whole area expose the color.

+ +

Type: +string

+ +

Default: +"#ffffff"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.colors.focused

A window which currently has the focus.

Type: -submodule

Default:

{
-  background = "#285577";
-  border = "#4c7899";
-  childBorder = "#285577";
-  indicator = "#2e9ef4";
-  text = "#ffffff";
+
+
+
+
+ + xsession.windowManager.i3.config.colors.focused + + +
+
+

A window which currently has the focus.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#285577";
+  border = "#4c7899";
+  childBorder = "#285577";
+  indicator = "#2e9ef4";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.colors.focusedInactive

A window which is the focused one of its container, -but it does not have the focus at the moment.

Type: -submodule

Default:

{
-  background = "#5f676a";
-  border = "#333333";
-  childBorder = "#5f676a";
-  indicator = "#484e50";
-  text = "#ffffff";
+
+
+
+
+ + xsession.windowManager.i3.config.colors.focusedInactive + + +
+
+

A window which is the focused one of its container, +but it does not have the focus at the moment.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#5f676a";
+  border = "#333333";
+  childBorder = "#5f676a";
+  indicator = "#484e50";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.colors.placeholder

Background and text color are used to draw placeholder window -contents (when restoring layouts). Border and indicator are ignored.

Type: -submodule

Default:

{
-  background = "#0c0c0c";
-  border = "#000000";
-  childBorder = "#0c0c0c";
-  indicator = "#000000";
-  text = "#ffffff";
+
+
+
+
+ + xsession.windowManager.i3.config.colors.placeholder + + +
+
+

Background and text color are used to draw placeholder window +contents (when restoring layouts). Border and indicator are ignored.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#0c0c0c";
+  border = "#000000";
+  childBorder = "#0c0c0c";
+  indicator = "#000000";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.colors.unfocused

A window which is not focused.

Type: -submodule

Default:

{
-  background = "#222222";
-  border = "#333333";
-  childBorder = "#222222";
-  indicator = "#292d2e";
-  text = "#888888";
+
+
+
+
+ + xsession.windowManager.i3.config.colors.unfocused + + +
+
+

A window which is not focused.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#222222";
+  border = "#333333";
+  childBorder = "#222222";
+  indicator = "#292d2e";
+  text = "#888888";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.colors.urgent

A window which has its urgency hint activated.

Type: -submodule

Default:

{
-  background = "#900000";
-  border = "#2f343a";
-  childBorder = "#900000";
-  indicator = "#900000";
-  text = "#ffffff";
+
+
+
+
+ + xsession.windowManager.i3.config.colors.urgent + + +
+
+

A window which has its urgency hint activated.

+ +

Type: +submodule

+ +

Default:

{
+  background = "#900000";
+  border = "#2f343a";
+  childBorder = "#900000";
+  indicator = "#900000";
+  text = "#ffffff";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.defaultWorkspace

The default workspace to show when i3 is launched. -This must to correspond to the value of the keybinding of the default workspace.

Type: -null or string

Default: -null

Example: -"workspace number 9"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.defaultWorkspace + + +
+
+

The default workspace to show when i3 is launched. +This must to correspond to the value of the keybinding of the default workspace.

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"workspace number 9"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.floating

Floating window settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.floating + + +
+
+

Floating window settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.floating.border

Floating windows border width.

Type: -signed integer

Default: -2

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.floating.border + + +
+
+

Floating windows border width.

+ +

Type: +signed integer

+ +

Default: +2

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.floating.criteria

List of criteria for windows that should be opened in a floating mode.

Type: -list of attribute set of (string or boolean)

Default: -[ ]

Example:

[
+
+
+
+
+ + xsession.windowManager.i3.config.floating.criteria + + +
+
+

List of criteria for windows that should be opened in a floating mode.

+ +

Type: +list of attribute set of (string or boolean)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    title = "Steam - Update News";
+    title = "Steam - Update News";
   }
   {
-    class = "Pavucontrol";
+    class = "Pavucontrol";
   }
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.floating.modifier

Modifier key or keys that can be used to drag floating windows.

Type: -string

Default: -"i3.config.modifier"

Example: -"Mod4"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.floating.modifier + + +
+
+

Modifier key or keys that can be used to drag floating windows.

+ +

Type: +string

+ +

Default: +"i3.config.modifier"

+ +

Example: +"Mod4"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.floating.titlebar

Whether to show floating window titlebars.

Type: -boolean

Default:

''
+
+
+
+
+ + xsession.windowManager.i3.config.floating.titlebar + + +
+
+

Whether to show floating window titlebars.

+ +

Type: +boolean

+ +

Default:

''
   true for state version ≥ 23.05
   config.gaps == null for state version < 23.05
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.focus

Focus related settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.focus + + +
+
+

Focus related settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.focus.followMouse

Whether focus should follow the mouse.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.focus.followMouse + + +
+
+

Whether focus should follow the mouse.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.focus.forceWrapping

Whether to force focus wrapping in tabbed or stacked containers.

This option is deprecated, use focus.wrapping instead.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.focus.forceWrapping + + +
+
+

Whether to force focus wrapping in tabbed or stacked containers.

This option is deprecated, use focus.wrapping instead.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.focus.mouseWarping

Whether mouse cursor should be warped to the center of the window when switching focus -to a window on a different output.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.focus.mouseWarping + + +
+
+

Whether mouse cursor should be warped to the center of the window when switching focus +to a window on a different output.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.focus.newWindow

This option modifies focus behavior on new window activation.

See https://i3wm.org/docs/userguide.html#focus_on_window_activation

Type: -one of “smart”, “urgent”, “focus”, “none”

Default: -"smart"

Example: -"none"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.focus.newWindow + + +
+
+

This option modifies focus behavior on new window activation.

See https://i3wm.org/docs/userguide.html#focus_on_window_activation

+ +

Type: +one of “smart”, “urgent”, “focus”, “none”

+ +

Default: +"smart"

+ +

Example: +"none"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.focus.wrapping

Whether the window focus commands automatically wrap around the edge of containers.

See https://i3wm.org/docs/userguide.html#_focus_wrapping

Type: -one of “yes”, “no”, “force”, “workspace”

Default: -"yes"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.focus.wrapping + + +
+
+

Whether the window focus commands automatically wrap around the edge of containers.

See https://i3wm.org/docs/userguide.html#_focus_wrapping

+ +

Type: +one of “yes”, “no”, “force”, “workspace”

+ +

Default: +"yes"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.fonts

Font configuration for window titles, nagbar…

Type: -(list of string) or (submodule)

Default: -{ }

Example:

{
-  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
-  style = "Bold Semi-Condensed";
+
+
+
+
+ + xsession.windowManager.i3.config.fonts + + +
+
+

Font configuration for window titles, nagbar…

+ +

Type: +(list of string) or (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
+  style = "Bold Semi-Condensed";
   size = 11.0;
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps

Gaps related settings.

Type: -null or (submodule)

Default: -null

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps + + +
+
+

Gaps related settings.

+ +

Type: +null or (submodule)

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.bottom

Bottom gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.bottom + + +
+
+

Bottom gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.horizontal

Horizontal gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.horizontal + + +
+
+

Horizontal gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.inner

Inner gaps value.

Type: -null or signed integer

Default: -null

Example: -12

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.inner + + +
+
+

Inner gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +12

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.left

Left gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.left + + +
+
+

Left gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.outer

Outer gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.outer + + +
+
+

Outer gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.right

Right gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.right + + +
+
+

Right gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.smartBorders

This option controls whether to disable container borders on -workspace with a single container.

Type: -one of “on”, “off”, “no_gaps”

Default: -"off"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.smartBorders + + +
+
+

This option controls whether to disable container borders on +workspace with a single container.

+ +

Type: +one of “on”, “off”, “no_gaps”

+ +

Default: +"off"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.smartGaps

This option controls whether to disable all gaps (outer and inner) -on workspace with a single container.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.smartGaps + + +
+
+

This option controls whether to disable all gaps (outer and inner) +on workspace with a single container.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.top

Top gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.top + + +
+
+

Top gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.gaps.vertical

Vertical gaps value.

Type: -null or signed integer

Default: -null

Example: -5

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.gaps.vertical + + +
+
+

Vertical gaps value.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Example: +5

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.keybindings

An attribute set that assigns a key press to an action using a key symbol. -See https://i3wm.org/docs/userguide.html#keybindings.

Consider to use lib.mkOptionDefault function to extend or override -default keybindings instead of specifying all of them from scratch.

Type: -attribute set of (null or string)

Default: -"Default i3 keybindings."

Example:

let
+
+
+
+
+ + xsession.windowManager.i3.config.keybindings + + +
+
+

An attribute set that assigns a key press to an action using a key symbol. +See https://i3wm.org/docs/userguide.html#keybindings.

Consider to use lib.mkOptionDefault function to extend or override +default keybindings instead of specifying all of them from scratch.

+ +

Type: +attribute set of (null or string)

+ +

Default: +"Default i3 keybindings."

+ +

Example:

let
   modifier = config.xsession.windowManager.i3.config.modifier;
 in lib.mkOptionDefault {
-  "${modifier}+Return" = "exec i3-sensible-terminal";
-  "${modifier}+Shift+q" = "kill";
-  "${modifier}+d" = "exec ${pkgs.dmenu}/bin/dmenu_run";
+  "${modifier}+Return" = "exec i3-sensible-terminal";
+  "${modifier}+Shift+q" = "kill";
+  "${modifier}+d" = "exec ${pkgs.dmenu}/bin/dmenu_run";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.keycodebindings

An attribute set that assigns keypress to an action using key code. -See https://i3wm.org/docs/userguide.html#keybindings.

Type: -attribute set of (null or string)

Default: -{ }

Example:

{
-  "214" = "exec /bin/script.sh";
+
+
+
+
+ + xsession.windowManager.i3.config.keycodebindings + + +
+
+

An attribute set that assigns keypress to an action using key code. +See https://i3wm.org/docs/userguide.html#keybindings.

+ +

Type: +attribute set of (null or string)

+ +

Default: +{ }

+ +

Example:

{
+  "214" = "exec /bin/script.sh";
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.menu

Default launcher to use.

Type: -string

Default: -"\${pkgs.dmenu}/bin/dmenu_run"

Example: -"bemenu-run"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.menu + + +
+
+

Default launcher to use.

+ +

Type: +string

+ +

Default: +"\${pkgs.dmenu}/bin/dmenu_run"

+ +

Example: +"bemenu-run"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.modes

An attribute set that defines binding modes and keybindings + +

+
+
+ + xsession.windowManager.i3.config.modes + + +
+
+

An attribute set that defines binding modes and keybindings inside them

Only basic keybinding is supported (bindsym keycomb action), -for more advanced setup use ‘i3.extraConfig’.

Type: -attribute set of attribute set of string

Default:

{
+for more advanced setup use ‘i3.extraConfig’.

+ +

Type: +attribute set of attribute set of string

+ +

Default:

{
   resize = {
-    Down = "resize grow height 10 px or 10 ppt";
-    Escape = "mode default";
-    Left = "resize shrink width 10 px or 10 ppt";
-    Return = "mode default";
-    Right = "resize grow width 10 px or 10 ppt";
-    Up = "resize shrink height 10 px or 10 ppt";
+    Down = "resize grow height 10 px or 10 ppt";
+    Escape = "mode default";
+    Left = "resize shrink width 10 px or 10 ppt";
+    Return = "mode default";
+    Right = "resize grow width 10 px or 10 ppt";
+    Up = "resize shrink height 10 px or 10 ppt";
   };
 }
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.modifier

Modifier key that is used for all default keybindings.

Type: -one of “Shift”, “Control”, “Mod1”, “Mod2”, “Mod3”, “Mod4”, “Mod5”

Default: -"Mod1"

Example: -"Mod4"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.modifier + + +
+
+

Modifier key that is used for all default keybindings.

+ +

Type: +one of “Shift”, “Control”, “Mod1”, “Mod2”, “Mod3”, “Mod4”, “Mod5”

+ +

Default: +"Mod1"

+ +

Example: +"Mod4"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.startup

Commands that should be executed at startup.

See https://i3wm.org/docs/userguide.html#_automatically_starting_applications_on_i3_startup.

Type: -list of (submodule)

Default: -[ ]

Example:

[
-{ command = "systemctl --user restart polybar"; always = true; notification = false; }
-{ command = "dropbox start"; notification = false; }
-{ command = "firefox"; }
+
+
+
+
+ + xsession.windowManager.i3.config.startup + + +
+
+

Commands that should be executed at startup.

See https://i3wm.org/docs/userguide.html#_automatically_starting_applications_on_i3_startup.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
+{ command = "systemctl --user restart polybar"; always = true; notification = false; }
+{ command = "dropbox start"; notification = false; }
+{ command = "firefox"; }
 ];
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.startup.*.always

Whether to run command on each i3 restart.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.startup.*.always + + +
+
+

Whether to run command on each i3 restart.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.startup.*.command

Command that will be executed on startup.

Type: -string

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.startup.*.command + + +
+
+

Command that will be executed on startup.

+ +

Type: +string

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.startup.*.notification

Whether to enable startup-notification support for the command. -See --no-startup-id option description in the i3 user guide.

Type: -boolean

Default: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.startup.*.notification + + +
+
+

Whether to enable startup-notification support for the command. +See --no-startup-id option description in the i3 user guide.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.startup.*.workspace

Launch application on a particular workspace. DEPRECATED: -Use xsession.windowManager.i3.config.assigns -instead. See https://github.com/nix-community/home-manager/issues/265.

Type: -null or string

Default: -null

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.startup.*.workspace + + +
+
+

Launch application on a particular workspace. DEPRECATED: +Use xsession.windowManager.i3.config.assigns +instead. See https://github.com/nix-community/home-manager/issues/265.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.terminal

Default terminal to run.

Type: -string

Default: -"i3-sensible-terminal"

Example: -"alacritty"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.terminal + + +
+
+

Default terminal to run.

+ +

Type: +string

+ +

Default: +"i3-sensible-terminal"

+ +

Example: +"alacritty"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.window

Window titlebar and border settings.

Type: -submodule

Default: -{ }

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.window + + +
+
+

Window titlebar and border settings.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.window.border

Window border width.

Type: -signed integer

Default: -2

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.window.border + + +
+
+

Window border width.

+ +

Type: +signed integer

+ +

Default: +2

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.window.commands

List of commands that should be executed on specific windows. -See for_window i3wm option documentation.

Type: -list of (submodule)

Default: -[ ]

Example:

[
+
+
+
+
+ + xsession.windowManager.i3.config.window.commands + + +
+
+

List of commands that should be executed on specific windows. +See for_window i3wm option documentation.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Example:

[
   {
-    command = "border pixel 1";
+    command = "border pixel 1";
     criteria = {
-      class = "XTerm";
+      class = "XTerm";
     };
   }
 ]
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.window.commands.*.command

i3wm command to execute.

Type: -string

Example: -"border pixel 1"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.window.commands.*.command + + +
+
+

i3wm command to execute.

+ +

Type: +string

+ +

Example: +"border pixel 1"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.window.commands.*.criteria

Criteria of the windows on which command should be executed.

A value of true is equivalent to using an empty -criteria (which is different from an empty string criteria).

Type: -attribute set of (string or boolean)

Example:

{
-  title = "x200: ~/work";
+
+
+
+
+ + xsession.windowManager.i3.config.window.commands.*.criteria + + +
+
+

Criteria of the windows on which command should be executed.

A value of true is equivalent to using an empty +criteria (which is different from an empty string criteria).

+ +

Type: +attribute set of (string or boolean)

+ +

Example:

{
+  title = "x200: ~/work";
   floating = true;
 };
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.window.hideEdgeBorders

Hide window borders adjacent to the screen edges.

Type: -one of “none”, “vertical”, “horizontal”, “both”, “smart”

Default: -"none"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.window.hideEdgeBorders + + +
+
+

Hide window borders adjacent to the screen edges.

+ +

Type: +one of “none”, “vertical”, “horizontal”, “both”, “smart”

+ +

Default: +"none"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.window.titlebar

Whether to show window titlebars.

Type: -boolean

Default:

''
+
+
+
+
+ + xsession.windowManager.i3.config.window.titlebar + + +
+
+

Whether to show window titlebars.

+ +

Type: +boolean

+ +

Default:

''
   true for state version ≥ 23.05
   config.gaps == null for state version < 23.05
-''
-

Declared by:

+
+'' + + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.workspaceAutoBackAndForth

Assume you are on workspace “1: www” and switch to “2: IM” using + +

+
+
+ + xsession.windowManager.i3.config.workspaceAutoBackAndForth + + +
+
+

Assume you are on workspace “1: www” and switch to “2: IM” using mod+2 because somebody sent you a message. You don’t need to remember where you came from now, you can just press $mod+2 again to switch -back to “1: www”.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+back to “1: www”.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.workspaceLayout

The mode in which new containers on workspace level will -start.

Type: -one of “default”, “stacking”, “tabbed”

Default: -"default"

Example: -"tabbed"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.workspaceLayout + + +
+
+

The mode in which new containers on workspace level will +start.

+ +

Type: +one of “default”, “stacking”, “tabbed”

+ +

Default: +"default"

+ +

Example: +"tabbed"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.workspaceOutputAssign

Assign workspaces to outputs.

Type: -list of (submodule)

Default: -[ ]

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.workspaceOutputAssign + + +
+
+

Assign workspaces to outputs.

+ +

Type: +list of (submodule)

+ +

Default: +[ ]

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.workspaceOutputAssign.*.output

Name(s) of the output(s) from i3-msg -t get_outputs .

Type: -string or list of string

Default: -""

Example: -"eDP"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.workspaceOutputAssign.*.output + + +
+
+

Name(s) of the output(s) from i3-msg -t get_outputs .

+ +

Type: +string or list of string

+ +

Default: +""

+ +

Example: +"eDP"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.config.workspaceOutputAssign.*.workspace

Name of the workspace to assign.

Type: -string

Default: -""

Example: -"Web"

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.config.workspaceOutputAssign.*.workspace + + +
+
+

Name of the workspace to assign.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"Web"

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.i3.extraConfig

Extra configuration lines to add to ~/.config/i3/config.

Type: -strings concatenated with “\n”

Default: -""

Declared by:

+
+ +
+
+
+ + xsession.windowManager.i3.extraConfig + + +
+
+

Extra configuration lines to add to ~/.config/i3/config.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/i3-sway/i3.nix> -
xsession.windowManager.spectrwm.enable

Whether to enable Spectrwm window manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.spectrwm.enable + + +
+
+

Whether to enable Spectrwm window manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/spectrwm.nix> -
xsession.windowManager.spectrwm.package

Package providing the spectrwm command.

Type: -package

Default: -pkgs.spectrwm

Declared by:

+
+ +
+
+
+ + xsession.windowManager.spectrwm.package + + +
+
+

Package providing the spectrwm command.

+ +

Type: +package

+ +

Default: +pkgs.spectrwm

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/spectrwm.nix> -
xsession.windowManager.spectrwm.bindings

Spectrwm keybindings.

Type: -attribute set of string

Default: -{ }

Example:

{
-  term = "Mod+Return";
-  restart = "Mod+Shift+r";
-  quit = "Mod+Shift+q";
+
+
+
+
+ + xsession.windowManager.spectrwm.bindings + + +
+
+

Spectrwm keybindings.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  term = "Mod+Return";
+  restart = "Mod+Shift+r";
+  quit = "Mod+Shift+q";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/spectrwm.nix> -
xsession.windowManager.spectrwm.programs

Spectrwm programs variables.

Type: -attribute set of string

Default: -{ }

Example:

{
-  term = "alacritty";
-  search = "dmenu -ip -p 'Window name/id:';
+
+
+
+
+ + xsession.windowManager.spectrwm.programs + + +
+
+

Spectrwm programs variables.

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  term = "alacritty";
+  search = "dmenu -ip -p 'Window name/id:';
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/spectrwm.nix> -
xsession.windowManager.spectrwm.quirks

Spectrwm quicks (custom window rules).

Type: -attribute set of string

Default: -{ }

Example:

{
-  Matplotlib = "FLOAT";
-  Pavucontrol = "FLOAT";
+
+
+
+
+ + xsession.windowManager.spectrwm.quirks + + +
+
+

Spectrwm quicks (custom window rules).

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Example:

{
+  Matplotlib = "FLOAT";
+  Pavucontrol = "FLOAT";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/spectrwm.nix> -
xsession.windowManager.spectrwm.settings

Spectrwm settings.

Type: -attribute set of (boolean or signed integer or string)

Default: -{ }

Example:

{
-  modkey = "Mod4";
+
+
+
+
+ + xsession.windowManager.spectrwm.settings + + +
+
+

Spectrwm settings.

+ +

Type: +attribute set of (boolean or signed integer or string)

+ +

Default: +{ }

+ +

Example:

{
+  modkey = "Mod4";
   workspace_limit = 5;
-  focus_mode = "manual";
-  focus_close = "next";
+  focus_mode = "manual";
+  focus_close = "next";
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/spectrwm.nix> -
xsession.windowManager.spectrwm.unbindings

List of keybindings to disable from default Spectrwm configuration.

Type: -list of string

Default: -[ ]

Example:

[
-  "MOD+e"
-  "MOD+f"
-  "MOD+m"
-  "MOD+s"
-  "MOD+u"
-  "MOD+t"
+
+
+
+
+ + xsession.windowManager.spectrwm.unbindings + + +
+
+

List of keybindings to disable from default Spectrwm configuration.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "MOD+e"
+  "MOD+f"
+  "MOD+m"
+  "MOD+s"
+  "MOD+u"
+  "MOD+t"
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/spectrwm.nix> -
xsession.windowManager.xmonad.enable

Whether to enable xmonad window manager.

Type: -boolean

Default: -false

Example: -true

Declared by:

+
+ +
+
+
+ + xsession.windowManager.xmonad.enable + + +
+
+

Whether to enable xmonad window manager.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/xmonad.nix> -
xsession.windowManager.xmonad.enableContribAndExtras

Enable xmonad-{contrib,extras} in xmonad.

Type: -boolean

Default: -false

Declared by:

+
+ +
+
+
+ + xsession.windowManager.xmonad.enableContribAndExtras + + +
+
+

Enable xmonad-{contrib,extras} in xmonad.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/xmonad.nix> -
xsession.windowManager.xmonad.config

The configuration file to be used for xmonad. This must be + +

+
+
+ + xsession.windowManager.xmonad.config + + +
+
+

The configuration file to be used for xmonad. This must be an absolute path or null in which case ~/.xmonad/xmonad.hs will not be managed by Home Manager.

If this option is set to a non-null value, recompilation of xmonad outside of Home Manager (e.g. via -xmonad --recompile) will fail.

Type: -null or path

Default: -null

Example:

pkgs.writeText "xmonad.hs" ''
+xmonad --recompile) will fail.

+ +

Type: +null or path

+ +

Default: +null

+ +

Example:

pkgs.writeText "xmonad.hs" ''
   import XMonad
   main = xmonad defaultConfig
-      { terminal    = "urxvt"
+      { terminal    = "urxvt"
       , modMask     = mod4Mask
       , borderWidth = 3
       }
-''
+''
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/xmonad.nix> -
xsession.windowManager.xmonad.extraPackages

Extra packages available to GHC when rebuilding xmonad. The + +

+
+
+ + xsession.windowManager.xmonad.extraPackages + + +
+
+

Extra packages available to GHC when rebuilding xmonad. The value must be a function which receives the attribute set defined in haskellPackages as the sole -argument.

Type: -unspecified value

Default: -"self: []"

Example:

haskellPackages: [
+argument.

+ +

Type: +unspecified value

+ +

Default: +"self: []"

+ +

Example:

haskellPackages: [
   haskellPackages.xmonad-contrib
   haskellPackages.monad-logger
 ]
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/xmonad.nix> -
xsession.windowManager.xmonad.haskellPackages

The haskellPackages used to build xmonad + +

+
+
+ + xsession.windowManager.xmonad.haskellPackages + + +
+
+

The haskellPackages used to build xmonad and other packages. This can be used to change the GHC version used to build xmonad and the packages listed in -extraPackages.

Type: -unspecified value

Default: -pkgs.haskellPackages

Example: -pkgs.haskell.packages.ghc784

Declared by:

+
+extraPackages.

+ +

Type: +unspecified value

+ +

Default: +pkgs.haskellPackages

+ +

Example: +pkgs.haskell.packages.ghc784

+ +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/xmonad.nix> -
xsession.windowManager.xmonad.libFiles

Additional files that will be saved in + +

+
+
+ + xsession.windowManager.xmonad.libFiles + + +
+
+

Additional files that will be saved in ~/.xmonad/lib/ and included in the configuration build. The keys are the file names while the values are paths to the -contents of the files.

Type: -attribute set of path

Default: -{ }

Example:

{
-  "Tools.hs" = pkgs.writeText "Tools.hs" ''
+contents of the files.

+ +

Type: +attribute set of path

+ +

Default: +{ }

+ +

Example:

{
+  "Tools.hs" = pkgs.writeText "Tools.hs" ''
      module Tools where
-     screenshot = "scrot"
-   '';
+     screenshot = "scrot"
+   '';
 }
 
-

Declared by:

+
+ + +

Declared by:

+ +
+ <home-manager/modules/services/window-managers/xmonad.nix> -
\ No newline at end of file +
+
+
+ + + + + \ No newline at end of file diff --git a/release-notes.html b/release-notes.html deleted file mode 100644 index 8e4f8ecf..00000000 --- a/release-notes.html +++ /dev/null @@ -1,469 +0,0 @@ - -Appendix E. Release Notes

Appendix E. Release Notes

This section lists the release notes for stable versions of Home Manager and the current unstable version.

E.1. Release 24.05

This is the current unstable branch and the information in this section is therefore not final.

E.1.1. Highlights

This release has the following notable changes:

  • -The .release file in the Home Manager project root has been removed. - Please use the release.json file instead. -

E.1.2. State Version Changes

The state version in this release includes the changes below. -These changes are only active if the home.stateVersion option is set to "24.05" or later.

  • -Nothing, yet. -

E.2. Release 23.11

The 23.11 release branch became stable in November, 2023.

E.2.1. Highlights

This release has the following notable changes:

  • -When using programs.fish.enable, the setup code -for home.sessionVariables is now translated -with babelfish. -This should result in significantly faster shell startup times -but could theoretically break -if you have very complex bash expressions in a session variable. -Please report any issues you experience. -
  • -The .release file in the Home Manager source tree -has been supplanted by release.json, -which contains more information about the branch. -If you have any external code reading this file, -please switch to consuming release.json instead. -The .release file will be removed in 24.05. -
  • -Home Manager has migrated to using -the upstream Nixpkgs lib.nixosOptionsDoc processor -for option documentation. -If you have any external Home Manager modules, -their option descriptions and literal examples should be translated -to Nixpkgs-flavoured Markdown. -
  • -The services.password-store-sync module has been removed. -Use services.git-sync instead. -

E.2.2. State Version Changes

The state version in this release includes the changes below. -These changes are only active if the home.stateVersion option is set to "23.11" or later.

  • -Nothing, yet. -

E.3. Release 23.05

The 23.05 release branch became the stable branch in May, 2023.

E.3.1. Highlights

This release has the following notable changes:

  • -Firefox add-ons are now managed per-profile. -That is, if you are currently having -

    programs.firefox.extensions = [ foo bar ];

    in your configuration then you must change it to

    programs.firefox.profiles.myprofile.extensions = [ foo bar ];
  • -The default configuration location has been changed from -~/.config/nixpkgs/home.nix to ~/.config/home-manager/home.nix. -

    Similarly, if you are using a Nix flake based setup -then the default flake file location has changed from -~/.config/nixpkgs/flake.nix to ~/.config/home-manager/flake.nix.

    The old location will continue to work but using it will trigger a warning message. -We changed the default configuration location to avoid confusion about -which files belong to Home Manager and which belong to Nixpkgs.

  • -The home-manager tool now offers an init command. -This command can be used to generate an initial Home Manager configuration, -and optionally also activate it. -The recommended installation method for a standalone Home Manager setup -with Nix flakes uses this new command. -The standard installation method remains the same but uses the new command internally. -See Section 3.2, “Standalone setup” for more. -

E.3.2. State Version Changes

The state version in this release includes the changes below. -These changes are only active if the home.stateVersion option is set to "23.05" or later.

E.4. Release 22.11

The 22.11 release branch became the stable branch in November, 2022.

E.4.1. Highlights

This release has the following notable changes:

  • -The home.stateVersion option no longer has a default value. -It used to default to “18.09”, which was the Home Manager version -that introduced the option. If your configuration does not explicitly -set this option then you need to add -

    home.stateVersion = "18.09";

    to your configuration.

  • -The Flake function homeManagerConfiguration has been simplified. -Specifically, the arguments -

    • -configuration, -
    • -username, -
    • -homeDirectory, -
    • -stateVersion, -
    • -extraModules, and -
    • -system -

    have been removed. Instead use the new modules argument, which -accepts a list of NixOS modules.

    Further, the pkgs argument is now mandatory and should be set to -nixpkgs.legacyPackages.${system} where nixpkgs is the Nixpkgs -input of your choice.

    For example, if your Flake currently contains

    homeManagerConfiguration {
    -  configuration = import ./home.nix;
    -  system = "x86_64-linux";
    -  username = "jdoe";
    -  homeDirectory = "/home/jdoe";
    -  stateVersion = "22.05";
    -  extraModules = [ ./some-extra-module.nix ];
    -}

    then you can change it to

    homeManagerConfiguration {
    -  pkgs = nixpkgs.legacyPackages.${system};
    -  modules = [
    -    ./home.nix
    -    ./some-extra-module.nix
    -    {
    -      home = {
    -        username = "jdoe";
    -        homeDirectory = "/home/jdoe";
    -        stateVersion = "22.05";
    -      };
    -    }
    -  ];
    -}

    Of course, you can move the assignment of home.username, -home.homeDirectory, and home.stateVersion to some -other file or simply place them in your home.nix.

  • -The services.picom module has been refactored to use structural -settings. -

    As a result services.picom.extraOptions has been removed in favor of -services.picom.settings. Also, services.picom.blur* were -removed since upstream changed the blur settings to be more flexible. -You can migrate the blur settings to use -services.picom.settings instead.

  • -The services.compton module has been removed. It was deprecated in -release 20.03. Use services.picom instead. -

E.4.2. State Version Changes

The state version in this release includes the changes below. -These changes are only active if the home.stateVersion option is set to "22.11" or later.

  • -The services.mpd.musicDirectory option now defaults to the -value of xdg.userDirs.music if xdg.userDirs.enable is -enabled. Otherwise it is undefined and must be specified in the user -configuration. -
  • -The activation script now resets PATH before running. Before, the -user’s PATH environment variable would be used in the script and -this made it possible for commands in the activation script to run -arbitrary commands accessible to the user. We now restrict the -activation script to commands that are explicitly specified. -

    There is no official way to restore the old behavior. We attempt to -make the activation script as reproducible as possible and honoring -the user’s PATH reduces reproducibility.

    If you need to run a command in an activation script block then refer -to the command by its absolute command path, such as -${pkgs.hello}/bin/hello.

E.5. Release 22.05

The 22.05 release branch became the stable branch in May, 2022.

E.5.1. Highlights

This release has the following notable changes:

  • -The programs.waybar.settings.modules option was removed. -Waybar modules should now be declared directly under programs.waybar.settings. -
  • -Home Manager now partially support translation of texts into different languages. -Note, the support is quite limited at the moment. -Specifically, it only applies to parts of the system written in the Bash language, -such as the home-manager command line tool and the activation script. -

    If you would like to contribute to the translation effort -then you can do so through the Home Manager Weblate project.

  • -A new module, launchd.agents was added. -Use this to enable services based on macOS LaunchAgents. -

E.5.2. State Version Changes

The state version in this release includes the changes below. -These changes are only active if the home.stateVersion option is set to "22.05" or later.

  • -The programs.waybar.settings option now allows defining modules directly under programs.waybar.settings. -Defining modules under programs.waybar.settings.modules will now be an error. -For example, -

    programs.waybar.settings.modules."custom/my-module" = { };

    becomes

    programs.waybar.settings."custom/my-module" = { };

E.6. Release 21.11

The 21.11 release branch became the stable branch in November, 2021.

E.6.1. Highlights

This release has the following notable changes:

  • -All Home Manager modules are now loaded on all platforms. With this -change you will get a more descriptive error message if you attempt to -enable a module that is incompatible with the host platform. -

    Previously, modules that were platform specific would only be loaded -on that particular platform. For example, a module defining a -systemd service would only be loaded when the -host platform was Linux. This reduced evaluation times, simplified the -generated documentation, and made it impossible to accidentally use -modules that do not support the host platform.

    While the above benefits are quite nice, avoiding module loads also -brings a few problems. For example, the -public documentation -will only show the options available for Linux hosts and the -documentation cannot make references to options within modules that -are unavailable on some hosts. Finally, users who wish to use the same -configuration file for different platforms cannot do so, even if the -platform incompatible options are unused.

    Ultimately, the benefits of loading all modules won and the behavior -has now changed. For associated discussion see -issue #1906.

  • -Rofi version 1.7.0 removed many options that were used by the module and replaced them with custom themes, which are more flexible and powerful. -

    You can replicate your old configuration by moving those options to programs.rofi.theme. Keep in mind that the syntax is different so you may need to do some changes.

  • -Taskwarrior version 2.6.0 respects XDG Specification for the config file now. -Option programs.taskwarrior.config and friends now generate the config file at -$XDG_CONFIG_HOME/task/taskrc instead of ~/.taskrc. -

E.6.2. State Version Changes

The state version in this release includes the changes below. These -changes are only active if the home.stateVersion option is set to -"21.11" or later.

  • -The home.keyboard option now defaults to null, meaning that Home Manager won’t do any keyboard layout management. For example, setxkbmap won’t be run in X sessions. -
  • -The programs.pet.settings option no longer place its value inside a General attribute. -For example, -

    programs.pet.settings.editor = "nvim";

    becomes

    programs.pet.settings.General.editor = "nvim";
  • -The programs.waybar.settings option now allows defining modules directly under programs.waybar.settings. -For example, -

    programs.waybar.settings.modules."custom/my-module" = { };

    becomes

    programs.waybar.settings."custom/my-module" = { };

E.7. Release 21.05

The 21.05 release branch became the stable branch in May, 2021.

E.7.1. Highlights

This release has the following notable changes:

  • -The ‘opt-programs.broot.verbs` option is now a list rather than an -attribute set. To migrate, move the keys of the attrset into the list -items’ invocation keys. For example, -

    programs.broot.verbs = {
    -  "p" = { execution = ":parent"; };
    -};

    becomes

    programs.broot.verbs = [
    -  {
    -    invocation = "p";
    -    execution = ":parent";
    -  }
    -];
  • -The programs.mpv.package option has been changed to allow custom -derivations. The following configuration is now possible: -

    programs.mpv.package = (pkgs.wrapMpv (pkgs.mpv-unwrapped.override {
    -  vapoursynthSupport = true;
    -}) {
    -  extraMakeWrapperArgs = [
    -    "--prefix" "LD_LIBRARY_PATH" ":" "${pkgs.vapoursynth-mvtools}/lib/vapoursynth"
    -  ];
    -});

    As a result of this change, programs.mpv.package is no longer the -resulting derivation. Use the newly introduced programs.mpv.finalPackage -instead.

  • -The programs.rofi.extraConfig option is now an attribute set rather -than a string. To migrate, move each line into the attribute set, -removing the rofi. prefix from the keys. For example, -

    programs.rofi.extraConfig = ''
    -  rofi.show-icons: true
    -  rofi.modi: drun,emoji,ssh
    -'';

    becomes

    programs.rofi.extraConfig = {
    -  show-icons = true;
    -  modi = "drun,emoji,ssh";
    -};
  • -The programs.rofi.theme option now supports defining a theme -using an attribute set, the following configuration is now possible: -

    programs.rofi.theme = let
    -  # Necessary to avoid quoting non-string values
    -  inherit (config.lib.formats.rasi) mkLiteral;
    -in {
    -   "@import" = "~/.config/rofi/theme.rasi";
    -
    -  "*" = {
    -    background-color = mkLiteral "#000000";
    -    foreground-color = mkLiteral "rgba ( 250, 251, 252, 100 % )";
    -    border-color = mkLiteral "#FFFFFF";
    -    width = 512;
    -  };
    -
    -  "#textbox-prompt-colon" = {
    -    expand = false;
    -    str = ":";
    -    margin = mkLiteral "0px 0.3em 0em 0em";
    -    text-color = mkLiteral "@foreground-color";
    -  };
    -};
  • -The services.redshift.extraOptions and services.gammastep.extraOptions -options were removed in favor of services.redshift.settings and -services.gammastep.settings, that are now an attribute set rather -than a string. They also support new features not available before, for -example: -

    services.redshift = {
    -  dawnTime = "6:00-7:45";
    -  duskTime = "18:35-20:15";
    -  settings = {
    -    redshift = {
    -      gamma = 0.8;
    -      adjustment-method = "randr";
    -    };
    -
    -    randr = {
    -      screen = 0;
    -    };
    -  };
    -};

    It is recommended to check either -redshift.conf.sample or -gammastep.conf.sample -for the available additional options in each program.

  • -Specifying programs.neomutt.binds.map or programs.neomutt.macros.map as a - single string is now deprecated in favor of specfiying it as a list of - strings. -
  • -The programs.neovim.configure is deprecated in favor of other programs.neovim options; -please use the other options at your disposal: -

    configure.packages.*.opt  -> programs.neovim.plugins = [ { plugin = ...; optional = true; }]
    -configure.packages.*.start  -> programs.neovim.plugins = [ { plugin = ...; }]
    -configure.customRC -> programs.neovim.extraConfig
  • -Home Manager now respects the NO_COLOR environment variable as per -https://no-color.org/. -
  • -Qt module now supports qt.style.name to specify a theme name and -qt.style.package to specify a theme package. If you have set -qt.platformTheme to gnome, a qt.style.package compatible -with both Qt and Gtk is now required to be set. For instance: -

    qt = {
    -  platformTheme = "gnome";
    -  style = {
    -    name = "adwaita-dark";
    -    package = pkgs.adwaita-qt;
    -  };
    -};
  • -The library type fontType now has a size attribute in addition to name. For example: -

    font = {
    -  name = "DejaVu Sans";
    -  size = 8;
    -};
  • -The programs.htop.settings option is introduced to replace individual -options in programs.htop. To migrate, set the htop options directly in -programs.htop.settings. For example: -

    programs.htop = {
    -  enabled = true;
    -  settings = {
    -     color_scheme = 5;
    -     delay = 15;
    -     highlight_base_name = 1;
    -     highlight_megabytes = 1;
    -     highlight_threads = 1;
    -  };
    -};

E.7.2. State Version Changes

The state version in this release includes the changes below. These -changes are only active if the home.stateVersion option is set to -"21.05" or later.

  • -The newsboat module now stores generated configuration in - $XDG_CONFIG_HOME/newsboat. -

E.8. Release 20.09

The 20.09 release branch became the stable branch in late September, 2020.

E.8.1. Highlights

This release has the following notable changes:

  • -Nothing has happened. -

E.8.2. State Version Changes

The state version in this release includes the changes below. These -changes are only active if the home.stateVersion option is set to -"20.09" or later.

  • -The options home.homeDirectory and home.username no -longer have default values and must therefore be provided in your -configuration. Previously their values would default to the content of -the environment variables HOME and USER, respectively. -

    Further, the options xdg.cacheHome, xdg.configHome, -and xdg.dataHome will no longer be affected by the -XDG_CACHE_HOME, XDG_CONFIG_HOME, and XDG_DATA_HOME environment -variables. They now unconditionally default to

    • -"${config.home.homeDirectory}/.cache", -
    • -"${config.home.homeDirectory}/.config", and -
    • -"${config.home.homeDirectory}/.local/share". -

    If you choose to switch to state version 20.09 then you must set these -options if you use non-default XDG base directory paths.

    The initial configuration generated by

    $ nix-shell '<home-manager>' -A install

    will automatically include these options, when necessary.

  • -Git’s smtpEncryption option is now set to tls only if both accounts.email.accounts.<name>.smtp.tls.enable and accounts.email.accounts.<name>.smtp.tls.useStartTls are true. If only accounts.email.accounts.<name>.smtp.tls.enable is true, ssl is used instead. -
  • -The nixpkgs module no longer references <nixpkgs>. Before it would do so when building the pkgs module argument. Starting with state version 20.09, the pkgs argument is instead built from the same Nixpkgs that was used to initialize the Home Manager modules. This is useful, for example, when using Home Manager within a Nix Flake. If you want to keep using <nixpkgs> with state version ≥ 20.09 then add -

    _module.args.pkgsPath = <nixpkgs>;

    to your Home Manager configuration.

  • -The options wayland.windowManager.sway.config.bars and opt-xsession.windowManager.i3.config.bars have been changed so that most of the suboptions are now nullable and default to null. The default for these two options has been changed to manually set the old defaults for each suboption. The overall effect is that if the bars options is not set, then the default remains the same. On the other hand, something like: -

    bars = [ {
    -  command = "waybar";
    -} ];

    will now create the config:

    bar {
    -  swaybar_command waybar
    -}

    instead of

    bar {
    -
    -  font pango:monospace 8
    -  mode dock
    -  hidden_state hide
    -  position bottom
    -  status_command /nix/store/h7s6i9q1z5fxrlyyw5ls8vqxhf5bcs5a-i3status-2.13/bin/i3status
    -  swaybar_command waybar
    -  workspace_buttons yes
    -  strip_workspace_numbers no
    -  tray_output primary
    -  colors {
    -    background #000000
    -    statusline #ffffff
    -    separator #666666
    -    focused_workspace #4c7899 #285577 #ffffff
    -    active_workspace #333333 #5f676a #ffffff
    -    inactive_workspace #333333 #222222 #888888
    -    urgent_workspace #2f343a #900000 #ffffff
    -    binding_mode #2f343a #900000 #ffffff
    -  }
    -
    -}

E.9. Release 20.03

The 20.03 release branch became the stable branch in April, 2020.

E.9.1. Highlights

This release has the following notable changes:

  • -Assigning a list to the home.file, xdg.configFile, -and xdg.dataFile options is now deprecated and will produce a -warning message if used. Specifically, if your configuration currently -contains something like -

    home.file = [
    -  {
    -    target = ".config/foo.txt";
    -    text = "bar";
    -  }
    -]

    then it should be updated to instead use the equivalent attribute set form

    home.file = {
    -  ".config/foo.txt".text = "bar";
    -}

    Support for the list form will be removed in Home Manager version -20.09.

  • -The lib function attribute given to modules is now enriched with -an attribute hm containing extra library functions specific for Home -Manager. More specifically, lib.hm is now the same as config.lib -and should be the preferred choice since it is more robust. -

    Therefore, if your configuration makes use of, for example, -config.lib.dag to create activation script blocks, it is recommended -to change to lib.hm.dag.

    Note, in the unlikely case that you are

    • -using Home Manager’s NixOS or nix-darwin module, -
    • -have made your own Home Manager module containing an top-level - option named config or options, and -
    • -assign to this option in your system configuration inside a plain - attribute set, i.e., without a function argument, -

    then you must update your configuration to perform the option -assignment inside a config attribute. For example, instead of

    home-manager.users.jane = { config = "foo"; };

    use

    home-manager.users.jane = { config.config = "foo"; };
  • -The services.compton module has been deprecated and instead the -new module services.picom should be used. This is because Nixpkgs no -longer packages compton, and instead packages the (mostly) compatible -fork called picom. -
  • -The list form of the programs.ssh.matchBlocks option has -been deprecated and configurations requiring match blocks in a defined -order should switch to using DAG entries instead. For example, a -configuration -

    programs.ssh.matchBlocks = [
    -  {
    -    host = "alpha.foo.com";
    -    user = "jd";
    -  }
    -  {
    -    host = "*.foo.com";
    -    user = "john.doe";
    -  }
    -];

    can be expressed along the lines of

    programs.ssh.matchBlocks = {
    -  "*.example.com" = {
    -    user = "john.doe";
    -  }
    -  "alpha.example.com" = lib.hm.dag.entryBefore ["*.example.com"] {
    -    user = "jd";
    -  }
    -};

    Support for the list form will be removed in Home Manager version -20.09.

E.9.2. State Version Changes

The state version in this release includes the changes below. These -changes are only active if the home.stateVersion option is set to -"20.03" or later.

  • -The programs.zsh.history.path option is no longer prepended - by $HOME, which allows specifying absolute paths, for example, - using the xdg module. Also, the default value is fixed to - $HOME/.zsh_history and dotDir path is not prepended to it - anymore. -
  • -The newsboat module will now default in displaying queries before urls in - its main window. This makes sense in the case when one has a lot of URLs and - few queries. -

E.10. Release 19.09

The 19.09 release branch became the stable branch in October, 2019.

E.10.1. Highlights

This release has the following notable changes:

  • -The programs.firefox.enableGoogleTalk and - programs.firefox.enableIcedTea options are now deprecated - and will only work if Firefox ESR 52.x is used. -
  • -The home-manager tool now provides an uninstall sub-command that - can be used to uninstall Home Manager, if used in the standalone - mode. That is, not as a NixOS module. -

E.10.2. State Version Changes

The state version in this release includes the changes below. These -changes are only active if the home.stateVersion option is set to -"19.09" or later.

E.11. Release 19.03

The 19.03 release branch became the stable branch in April, 2019.

E.11.1. Highlights

This release has the following notable changes:

  • -The home.file.<name>.source option now allows source files to be -hidden, that is, having a name starting with the . character. It -also allows the source file name to contain characters not typically -allowed for Nix store paths. For example, your configuration can now -contain things such as -

    home.file."my file".source = ./. + "/file with spaces!";
  • -The type used for the systemd unit options under -systemd.user.services, systemd.user.sockets, etc. has -been changed to offer more robust merging of configurations. If you -don’t override values within systemd units then you are not affected -by this change. Unfortunately, if you do override unit values you may -encounter errors. -

    In particular, if you get an error saying that a “unique option” is -“defined multiple times” then you need to use the -mkForce -function. For example,

    systemd.user.services.foo.Service.ExecStart = "/foo/bar";

    becomes

    systemd.user.services.foo.Service.ExecStart = lib.mkForce "/foo/bar";

    We had to make this change because the old merging was causing too -many confusing situations for people.

E.11.2. State Version Changes

The state version in this release includes the changes below. These -changes are only active if the home.stateVersion option is set -to “19.03” or later.

E.12. Release 18.09

The 18.09 release branch became the stable branch in September, 2018.

\ No newline at end of file diff --git a/style.css b/style.css deleted file mode 100644 index ab40af23..00000000 --- a/style.css +++ /dev/null @@ -1,7 +0,0 @@ -:root{--nmd-color0: #0A3E68;--nmd-color1: #268598;--nmd-color2: #B8D09E;--nmd-color3: #F6CF5E;--nmd-color4: #EC733B;--nmd-color-info: #167cb9;--nmd-color-warn: #ff6700}html{scroll-behavior:smooth}body{text-size-adjust:100%;position:relative;width:100%;min-height:100vh}*,::after,::before{box-sizing:border-box}a:not([class]){text-decoration-skip-ink:auto}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{font-size:100%;font:inherit;margin:0;padding:0;border:0;vertical-align:baseline}:focus{outline:0}main,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}td:empty,th:empty{opacity:0}input:required,input{box-shadow:none}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px white inset}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;-moz-appearance:none}input[type=search]{-webkit-appearance:none;-moz-appearance:none;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}textarea{overflow:auto;vertical-align:top;resize:vertical}audio,canvas,video{display:inline-block;max-width:100%}audio:not([controls]){display:none;height:0}[hidden]{display:none}a:active,a:hover{outline:none}img{border:0;max-width:100%;display:inline-block;vertical-align:middle;height:auto}picture{display:inline-block}figure{margin:0}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;border:0;background:transparent}button::-moz-focus-inner{border:0}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{padding:0}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button{border:0;background:transparent}textarea{overflow:auto;vertical-align:top;resize:vertical}table{border-collapse:collapse;border-spacing:0}hr{box-sizing:content-box;overflow:visible;background:#000;border:0;height:1px;line-height:0;margin:0;padding:0;page-break-after:always;width:100%}pre{font-family:monospace,monospace;font-size:100%}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:none}code,kbd,samp{font-family:monospace,monospace;font-size:100%}small{font-size:75%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-5px}sup{top:-5px}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1;margin:0;padding:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0;outline:0}legend{color:inherit;white-space:normal;display:block;border:0;max-width:100%;width:100%}fieldset{min-width:0}body:not(:-moz-handler-blocked) fieldset{display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}template{display:none}body{background:white;color:#111827;max-width:min(100ch, 1024px);margin:0 auto;padding:10px;font-family:"Lucida Sans",Arial,sans-serif;font-size:16px;line-height:1.4em}@media (prefers-color-scheme: dark){body{background:#111827;color:#F9FAFB}}h1,h2,h3{color:var(--nmd-color0);font-family:"Lato",sans-serif;font-weight:300;line-height:1.125}@media (prefers-color-scheme: dark){h1,h2,h3{color:var(--nmd-color4)}}h1{font-size:48px;font-weight:300;margin:4rem 0 1.5rem}h2{font-size:32px;font-weight:300;margin:2rem 0 1rem}h3{font-size:20px;font-weight:400;margin:.5rem .25rem}p{margin:.9rem 0}p:first-child{margin-top:0}p:last-child{margin-bottom:0}a{color:var(--nmd-color0);text-decoration:underline;text-underline-offset:3px}a:visited{color:var(--nmd-color1)}a:hover{color:var(--nmd-color1)}@media (prefers-color-scheme: dark){a{color:var(--nmd-color3)}a:visited{color:var(--nmd-color2)}a:hover{color:var(--nmd-color4)}}code{font-size:90%}span.command{font-size:90%;font-family:monospace}em{font-style:italic}strong{font-weight:bold}pre{background:#F9FAFB;margin:2rem 16px;padding:10px;border:1px solid #E5E7EB;border-radius:4px;box-shadow:4px 4px 8px #E5E7EB;font-size:90%;margin-bottom:1.5rem;padding:6px;overflow:auto}@media (prefers-color-scheme: dark){pre{background:#1F2937;border-color:black;box-shadow:4px 4px 8px black}}pre span img{user-select:none}td,th{padding:2px 5px}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}dt{margin:1.2rem 0 .8rem}dd{margin-left:2rem}ul{margin:.9rem 0;padding-left:30px;list-style:disc}ul:first-child{margin-top:0}ul:last-child{margin-bottom:0}ol{margin:.9rem 0;padding-left:30px;list-style:decimal}ol:first-child{margin-top:0}ol:last-child{margin-bottom:0}li{margin:.9rem 0;padding-left:5px}li:first-child{margin-top:0}li:last-child{margin-bottom:0}.navheader hr,.navfooter hr{margin:1rem 0;background:#E5E7EB}@media (prefers-color-scheme: dark){.navheader hr,.navfooter hr{background:#4B5563}}.navheader a,.navfooter a{text-decoration:none}div.titlepage{margin:40px 0}div.titlepage hr{display:none}div.toc{background:#F9FAFB;margin:2rem 16px;padding:10px;border:1px solid #E5E7EB;border-radius:4px;box-shadow:4px 4px 8px #E5E7EB}@media (prefers-color-scheme: dark){div.toc{background:#1F2937;border-color:black;box-shadow:4px 4px 8px black}}div.toc a{text-decoration:none}div.note,div.warning{background:#F9FAFB;margin:2rem 16px;padding:10px;border:1px solid #E5E7EB;border-radius:4px;box-shadow:4px 4px 8px #E5E7EB;font-style:italic}@media (prefers-color-scheme: dark){div.note,div.warning{background:#1F2937;border-color:black;box-shadow:4px 4px 8px black}}div.note h3,div.warning h3{float:right;margin:0 0 1rem 1rem;width:42px;height:42px;content:url()}div.note h3+p,div.warning h3+p{margin-top:0}div.note h3{background-color:var(--nmd-color-info);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 8h.01'%3E%3C/path%3E%3Cpath d='M11 12h1v4h1'%3E%3C/path%3E%3Cpath d='M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z'%3E%3C/path%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 8h.01'%3E%3C/path%3E%3Cpath d='M11 12h1v4h1'%3E%3C/path%3E%3Cpath d='M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z'%3E%3C/path%3E%3C/svg%3E")}div.warning h3{background-color:var(--nmd-color-warn);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 9v2m0 4v.01'%3E%3C/path%3E%3Cpath d='M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75'%3E%3C/path%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 9v2m0 4v.01'%3E%3C/path%3E%3Cpath d='M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75'%3E%3C/path%3E%3C/svg%3E")}.term{font-weight:300}.docbook .xref img[src^=images\/callouts\/],.screen img,.programlisting img{width:1em}.calloutlist img{width:1.3em}.programlisting.console .hljs-meta{user-select:none}/*! - Theme: Tomorrow - Author: Chris Kempson (http://chriskempson.com) - License: ~ MIT (or more permissive) [via base16-schemes-source] - Maintainer: @highlightjs/core-team - Version: 2021.09.0 -*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#4d4d4c;background:#fff}.hljs ::selection,.hljs::selection{background-color:#d6d6d6;color:#4d4d4c}.hljs-comment{color:#8e908c}.hljs-tag{color:#969896}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#4d4d4c}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c82829}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f5871f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#eab700}.hljs-strong{font-weight:700;color:#eab700}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#718c00}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3e999f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4271ae}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8959a8}.hljs-emphasis{color:#8959a8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a3685a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700}.hljs{background:#f1f5f9}@media (prefers-color-scheme: dark){/*! Theme: Tomorrow Night Author: Chris Kempson (http://chriskempson.com) License: ~ MIT (or more permissive) [via base16-schemes-source] Maintainer: @highlightjs/core-team Version: 2021.09.0*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ccc;background:#2d2d2d}.hljs ::selection,.hljs::selection{background-color:#515151;color:#ccc}.hljs-comment{color:#999}.hljs-tag{color:#b4b7b4}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f2777a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f99157}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fc6}.hljs-strong{font-weight:700;color:#fc6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#9c9}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#6cc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#69c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c9c}.hljs-emphasis{color:#c9c;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a3685a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700}} diff --git a/tomorrow.min.css b/tomorrow.min.css deleted file mode 100644 index 5785f6ef..00000000 --- a/tomorrow.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! - Theme: Tomorrow - Author: Chris Kempson (http://chriskempson.com) - License: ~ MIT (or more permissive) [via base16-schemes-source] - Maintainer: @highlightjs/core-team - Version: 2021.09.0 -*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#4d4d4c;background:#fff}.hljs ::selection,.hljs::selection{background-color:#d6d6d6;color:#4d4d4c}.hljs-comment{color:#8e908c}.hljs-tag{color:#969896}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#4d4d4c}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c82829}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f5871f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#eab700}.hljs-strong{font-weight:700;color:#eab700}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#718c00}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3e999f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4271ae}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8959a8}.hljs-emphasis{color:#8959a8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a3685a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} \ No newline at end of file diff --git a/tools.html b/tools.html deleted file mode 100644 index a5791ba1..00000000 --- a/tools.html +++ /dev/null @@ -1,322 +0,0 @@ - -Appendix D. Tools

Appendix D. Tools

home-manager - — reconfigure a user environment

Name

home-manager - — reconfigure a user environment

Synopsis

home-manager { - build - | - init [--switch] [dir] - | - instantiate - | - edit - | - expire-generations timestamp - | - generations - | - help - | - news - | - option option.name - | - packages - | - remove-generations ID … - | - switch - | - uninstall - }
[ - -A attrPath - ] [ - -I path - ] [ - --flake flake-uri - ] [ - -b ext - ] [ - { - -f - | - --file - } path - ] [ - { - -h - | - --help - } - ] [ - --version - ] [ - { - -n - | - --dry-run - } - ] [ - --option name value - ] [ - --cores number - ] [ - { - -j - | - --max-jobs - } - number - ] [ - --debug - ] [ - --impure - ] [ - --keep-failed - ] [ - --keep-going - ] [ - { - -L - | - --print-build-logs - } - ] [ - --show-trace - ] [ - --(no-)substitute - ] [ - --no-out-link - ] [ - --refresh - ] [ - { - -v - | - --verbose - } - ]

Description

- This command updates the user environment so that it corresponds to the - configuration specified in - $XDG_CONFIG_HOME/home-manager/home.nix or - $XDG_CONFIG_HOME/home-manager/flake.nix. -

- All operations using this tool expects a sub-command that indicates the - operation to perform. It must be one of -

- build -

- Build configuration into a result directory. -

- init [--switch] [dir] -

- Generates an initial home.nix file for the - current user. If Nix flakes are enabled, then this command also - generates a flake.nix file. -

- If a path dir is given then the - configuration will be generated in that directory. Otherwise, the - configuration will be generated in - ~/.config/home-manager. The output directory will - be created if it does not exist. -

- If the --switch option is given, then the generated - configuration is activated. -

- Note, this command will not overwrite any existing files. It is - therefore safe to initialize a configuration, edit it, and then re-run - the init command with --switch - enabled to activate the configuration. -

- instantiate -

- Instantiate the configuration and print the resulting derivation. -

- edit -

- Open the home configuration using the editor indicated by - EDITOR. -

- expire-generations timestamp -

- Remove generations older than timestamp where - timestamp is interpreted as in the - -d argument of the date(1) tool. For example -30 - days or 2018-01-01. -

- generations -

- List all home environment generations. -

- help -

- Print tool help. -

- news -

- Show news entries in a pager. -

- option option.name -

- Inspect the given option name in the home configuration, like nixos-option(8). -

- packages -

- List all packages installed in home-manager-path. -

- remove-generations ID … -

- Remove indicated generations. Use the generations - sub-command to find suitable generation numbers. -

- switch -

- Build and activate the configuration. -

- uninstall -

- Remove Home Manager from the user environment. This will -

  • - remove all managed files from the home directory, -

  • - remove packages installed through Home Manager from the user profile, - and -

  • - remove all Home Manager generations and make them available - for immediate garbage collection. -

-

-

Options

- The tool accepts the options -

- -A attrPath -

- Optional attribute that selects a configuration expression in the - configuration file. That is, if home.nix contains -

-{
-  joe-at-work = {pkgs, ...}: { home.packages = [ pkgs.fortune ]; };
-  joe-at-home = {pkgs, ...}: { home.packages = [ pkgs.cowsay ]; };
-}
-

- then the command home-manager switch -A joe-at-work - will activate the profile containing the fortune program. -

- -I path -

- Add a path to the Nix expression search path. For example, to build a - Home Manager profile using a specific Nixpkgs run home-manager - -I nixpkgs=/absolute/path/to/nixpkgs build. By default - <nixpkgs> is used. -

- --flake flake-uri[#name] -

- Build Home Manager configuration from the flake, which must contain the - output homeConfigurations.name. If no name is specified it will first try - username@hostname and then username. -

- -b extension -

- Enable automatic resolution of collisions between unmanaged and managed - files. The name of the original file will be suffixed by the given - extension. For example, -

-$ home-manager -b bck switch
-

- will cause a colliding file ~/.config/foo.conf to be - moved to ~/.config/foo.conf.bck. -

- -f path - , - --file path -

- Indicates the path to the Home Manager configuration file. If not given, - $XDG_CONFIG_HOME/home-manager/home.nix is used. -

- -h - , - --help -

- Prints usage information for the home-manager tool. -

- --version -

- Prints the version number of the home-manager tool. -

- -n - , - --dry-run -

- Perform a dry-run of the given operation, only prints what actions would - be taken. -

- --option name value -

- Passed on to nix-build(1). -

- --cores number -

- Passed on to nix-build(1). -

- -j number - , - --max-jobs number -

- Passed on to nix-build(1). -

- --debug -

- Passed on to nix-build(1). -

- --impure -

- Passed on to nix-build(1). -

- --keep-failed -

- Passed on to nix-build(1). -

- --keep-going -

- Passed on to nix-build(1). -

- -L - , - --print-build-logs -

- Passed on to nix build - when building from a flake. -

- --show-trace -

- Passed on to nix-build(1). -

- --(no-)substitute -

- Passed on to nix-build(1). -

- --no-out-link -

- Passed on to nix-build(1) - when running home-manager build. -

- --refresh -

- Passed on to nix-build(1) -

- -v - , - --verbose -

- Activates verbose output. -

Files

- $XDG_DATA_HOME/home-manager/news-read-ids -

- Identifiers of news items that have been shown. Can be deleted to reset - the read news indicator. -

Bugs

- Please report any bugs on the - project - issue tracker. -

See also

- home-configuration.nix(5) -

\ No newline at end of file