Compare commits
3 Commits
582460d8f4
...
e90fb1fa0d
| Author | SHA1 | Date | |
|---|---|---|---|
|
e90fb1fa0d
|
|||
|
c8fd643085
|
|||
|
5d9efbb651
|
@@ -34,8 +34,9 @@ in {
|
|||||||
|
|
||||||
config = {
|
config = {
|
||||||
boot.tmp.cleanOnBoot = true;
|
boot.tmp.cleanOnBoot = true;
|
||||||
time.timeZone = cfg.timezone;
|
|
||||||
console.keyMap = cfg.keymap;
|
console.keyMap = cfg.keymap;
|
||||||
|
time.timeZone = cfg.timezone;
|
||||||
|
environment.pathsToLink = ["/share/bash-completion" "/share/zsh"];
|
||||||
services = {
|
services = {
|
||||||
orca.enable = false;
|
orca.enable = false;
|
||||||
envfs.enable = true;
|
envfs.enable = true;
|
||||||
|
|||||||
@@ -45,9 +45,8 @@ in {
|
|||||||
default-command = "st";
|
default-command = "st";
|
||||||
pager = ":builtin";
|
pager = ":builtin";
|
||||||
show-cryptographic-signatures = true;
|
show-cryptographic-signatures = true;
|
||||||
conflict-marker-style = "git"; # Support for vc-jj.el
|
|
||||||
diff-formatter = ":git"; # Support for vc-jj.el
|
|
||||||
diff-editor = ":builtin";
|
diff-editor = ":builtin";
|
||||||
|
merge-editort = ":builtin";
|
||||||
inherit (cfg) editor;
|
inherit (cfg) editor;
|
||||||
};
|
};
|
||||||
signing = mkIf cfg.signing.enable {
|
signing = mkIf cfg.signing.enable {
|
||||||
@@ -63,24 +62,41 @@ in {
|
|||||||
eject = ["squash" "--from" "@" "--into"];
|
eject = ["squash" "--from" "@" "--into"];
|
||||||
d = ["diff"];
|
d = ["diff"];
|
||||||
dm = ["desc" "-m"];
|
dm = ["desc" "-m"];
|
||||||
|
gc = ["git" "clone"];
|
||||||
|
gcc = ["git" "clone" "--colocate"];
|
||||||
l = ["log"];
|
l = ["log"];
|
||||||
|
la = ["log" "-r" "::"];
|
||||||
lc = ["log" "-r" "(remote_bookmarks()..@)::"];
|
lc = ["log" "-r" "(remote_bookmarks()..@)::"];
|
||||||
ll = ["log" "-T" "builtin_log_detailed"];
|
ll = ["log" "-T" "builtin_log_detailed"];
|
||||||
open = ["log" "-r" "open()"];
|
open = ["log" "-r" "open()"];
|
||||||
n = ["new"];
|
n = ["new"];
|
||||||
nd = ["new" "dev()"];
|
nd = ["new" "dev()"];
|
||||||
nt = ["new" "trunk()"];
|
nt = ["new" "trunk()"];
|
||||||
|
revlog = ["evolog"];
|
||||||
s = ["show"];
|
s = ["show"];
|
||||||
tug = ["bookmark" "move" "--from" "heads(::@- & bookmarks())" "--to" "@-"];
|
tug = ["bookmark" "move" "--from" "heads(::@- & bookmarks())" "--to" "@-"];
|
||||||
};
|
};
|
||||||
|
colors.working_copy.underline = true;
|
||||||
|
git = {
|
||||||
|
private-commits = "blacklist()";
|
||||||
|
colocate = true;
|
||||||
|
subprocess = true;
|
||||||
|
};
|
||||||
revset-aliases = {
|
revset-aliases = {
|
||||||
|
"immutable_heads()" = "present(trunk()) | tags()";
|
||||||
|
# Resolves by default to latest main/master remote bookmarks
|
||||||
|
"trunk()" = "latest((present(main) | present(master)) & remote_bookmarks())";
|
||||||
|
# Same as trunk() but for `dev` or `develop` bookmarks
|
||||||
|
"dev()" = "latest((present(dev) | present(develop)) & remote_bookmarks())";
|
||||||
|
|
||||||
"user(x)" = "author(x) | committer(x)";
|
"user(x)" = "author(x) | committer(x)";
|
||||||
"gh_pages()" = "ancestors(remote_bookmarks(exact:\"gh-pages\"))";
|
"gh_pages()" = "ancestors(remote_bookmarks(exact:\"gh-pages\"))";
|
||||||
"trunk()" = "latest((present(main) | present(master)) & remote_bookmarks())";
|
|
||||||
"dev()" = "latest((present(dev) | present(develop)) & remote_bookmarks())";
|
#Private and WIP commits that should never be pushed
|
||||||
"wip()" = "description(glob:\"wip:*\")";
|
"wip()" = "description(glob:\"wip:*\")";
|
||||||
"private()" = "description(glob:\"private:*\")";
|
"private()" = "description(glob:\"private:*\")";
|
||||||
"blacklist()" = "wip() | private()";
|
"blacklist()" = "wip() | private()";
|
||||||
|
|
||||||
# stack(x, n) is the set of mutable commits reachable from
|
# stack(x, n) is the set of mutable commits reachable from
|
||||||
# 'x', with 'n' parents. 'n' is often useful to customize the
|
# 'x', with 'n' parents. 'n' is often useful to customize the
|
||||||
# display and return set for certain operations. 'x' can be
|
# display and return set for certain operations. 'x' can be
|
||||||
@@ -93,6 +109,7 @@ in {
|
|||||||
"open()" = "stack(dev().. & mine(), 1)";
|
"open()" = "stack(dev().. & mine(), 1)";
|
||||||
"ready()" = "open() ~ blacklist()::";
|
"ready()" = "open() ~ blacklist()::";
|
||||||
};
|
};
|
||||||
|
remotes.origin.auto-track-bookmarks = "*";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,11 @@ in {
|
|||||||
lns = "ln -si";
|
lns = "ln -si";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
autocompletion = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = config.home.shell.autocompletion;
|
||||||
|
example = true;
|
||||||
|
};
|
||||||
eatIntegration = mkEnableOption "Enable Emacs Eat integration";
|
eatIntegration = mkEnableOption "Enable Emacs Eat integration";
|
||||||
bashrcExtra = mkOption {
|
bashrcExtra = mkOption {
|
||||||
type = types.lines;
|
type = types.lines;
|
||||||
@@ -33,6 +38,7 @@ in {
|
|||||||
(strings.optionalString cfg.eatIntegration ''[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/bash"'')
|
(strings.optionalString cfg.eatIntegration ''[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/bash"'')
|
||||||
cfg.bashrcExtra
|
cfg.bashrcExtra
|
||||||
];
|
];
|
||||||
|
enableCompletion = cfg.autocompletion;
|
||||||
shellAliases = cfg.aliases;
|
shellAliases = cfg.aliases;
|
||||||
shellOptions = [
|
shellOptions = [
|
||||||
"histappend"
|
"histappend"
|
||||||
|
|||||||
@@ -88,6 +88,10 @@ in {
|
|||||||
default = {};
|
default = {};
|
||||||
example = {la = "ls -a";};
|
example = {la = "ls -a";};
|
||||||
};
|
};
|
||||||
|
autocompletion = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
config.home.shell = {
|
config.home.shell = {
|
||||||
enableShellIntegration = cfg.bash.enable or cfg.zsh.enable or cfg.fish.enable;
|
enableShellIntegration = cfg.bash.enable or cfg.zsh.enable or cfg.fish.enable;
|
||||||
|
|||||||
@@ -17,6 +17,11 @@ in {
|
|||||||
lns = "ln -si";
|
lns = "ln -si";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
autocompletion = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = config.home.shell.autocompletion;
|
||||||
|
example = true;
|
||||||
|
};
|
||||||
extraShellInit = mkOption {
|
extraShellInit = mkOption {
|
||||||
type = types.lines;
|
type = types.lines;
|
||||||
default = "";
|
default = "";
|
||||||
@@ -26,6 +31,7 @@ in {
|
|||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
programs.fish = {
|
programs.fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
generateCompletions = cfg.autocompletion;
|
||||||
shellAbbrs = cfg.abbrs;
|
shellAbbrs = cfg.abbrs;
|
||||||
preferAbbrs = true;
|
preferAbbrs = true;
|
||||||
shellInit = with lib;
|
shellInit = with lib;
|
||||||
|
|||||||
@@ -17,6 +17,11 @@ in {
|
|||||||
lns = "ln -si";
|
lns = "ln -si";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
autocompletion = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = config.home.shell.autocompletion;
|
||||||
|
example = true;
|
||||||
|
};
|
||||||
eatIntegration = mkEnableOption "Enable Emacs Eat integration";
|
eatIntegration = mkEnableOption "Enable Emacs Eat integration";
|
||||||
zshrcExtra = lib.mkOption {
|
zshrcExtra = lib.mkOption {
|
||||||
type = types.lines;
|
type = types.lines;
|
||||||
@@ -32,7 +37,7 @@ in {
|
|||||||
enable = true;
|
enable = true;
|
||||||
strategy = ["match_prev_cmd" "completion"];
|
strategy = ["match_prev_cmd" "completion"];
|
||||||
};
|
};
|
||||||
enableCompletion = true;
|
enableCompletion = cfg.autocompletion;
|
||||||
enableVteIntegration = true;
|
enableVteIntegration = true;
|
||||||
history = {
|
history = {
|
||||||
findNoDups = true;
|
findNoDups = true;
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
@@@ Sauvez un arbre, mangez un castor @@@
|
@@@ Sauvez un arbre, mangez un castor @@@
|
||||||
@@@ Save a tree, eat a beaver @@@
|
@@@ Save a tree, eat a beaver @@@
|
||||||
|
@@@ Bjarg tré, et bjórr @@@
|
||||||
'';
|
'';
|
||||||
in {
|
in {
|
||||||
home.file.".signature" = {
|
home.file.".signature" = {
|
||||||
|
|||||||
Reference in New Issue
Block a user