mirror of
https://github.com/RGBCube/ncc
synced 2025-08-01 12:37:46 +00:00
Compare commits
5 commits
4bd1ec53af
...
27a60aae67
Author | SHA1 | Date | |
---|---|---|---|
27a60aae67 | |||
cb96141ecf | |||
372df8b48a | |||
30d4b5e421 | |||
cb216d39f1 |
20 changed files with 200 additions and 231 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -2,8 +2,6 @@
|
||||||
|
|
||||||
!.gitignore
|
!.gitignore
|
||||||
|
|
||||||
!docs/
|
|
||||||
|
|
||||||
!hosts/
|
!hosts/
|
||||||
!hosts/**/
|
!hosts/**/
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
lib: lib.nixosSystem' ({ config, keys, lib, ... }: let
|
lib: lib.nixosSystem' ({ config, keys, lib, ... }: let
|
||||||
inherit (lib) collectNix remove;
|
inherit (lib) collectNix remove;
|
||||||
in {
|
in {
|
||||||
imports = collectNix ./. |> remove ./default.nix;
|
imports = collectNix ./.
|
||||||
|
|> remove ./default.nix;
|
||||||
|
|
||||||
secrets.id.file = ./id.age;
|
secrets.id.file = ./id.age;
|
||||||
services.openssh.hostKeys = [{
|
services.openssh.hostKeys = [{
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
lib: lib.nixosSystem' ({ config, keys, lib, ... }: let
|
lib: lib.nixosSystem' ({ config, keys, lib, ... }: let
|
||||||
inherit (lib) collectNix remove;
|
inherit (lib) collectNix remove;
|
||||||
in {
|
in {
|
||||||
imports = collectNix ./. |> remove ./default.nix;
|
imports = collectNix ./.
|
||||||
|
|> remove ./default.nix;
|
||||||
|
|
||||||
secrets.id.file = ./id.age;
|
secrets.id.file = ./id.age;
|
||||||
services.openssh.hostKeys = [{
|
services.openssh.hostKeys = [{
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
lib: lib.nixosSystem' ({ config, keys, lib, ... }: let
|
lib: lib.nixosSystem' ({ config, keys, lib, ... }: let
|
||||||
inherit (lib) collectNix remove;
|
inherit (lib) collectNix remove;
|
||||||
in {
|
in {
|
||||||
imports = collectNix ./. |> remove ./default.nix;
|
imports = collectNix ./.
|
||||||
|
|> remove ./default.nix;
|
||||||
|
|
||||||
secrets.id.file = ./id.age;
|
secrets.id.file = ./id.age;
|
||||||
services.openssh.hostKeys = [{
|
services.openssh.hostKeys = [{
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
lib: lib.darwinSystem' ({ lib, ... }: let
|
lib: lib.darwinSystem' ({ config, lib, ... }: let
|
||||||
inherit (lib) collectNix remove;
|
inherit (lib) collectNix remove;
|
||||||
in {
|
in {
|
||||||
imports = collectNix ./. |> remove ./default.nix;
|
imports = collectNix ./.
|
||||||
|
|> remove ./default.nix;
|
||||||
|
|
||||||
type = "desktop";
|
type = "desktop";
|
||||||
|
|
||||||
|
@ -14,8 +15,8 @@ in {
|
||||||
|
|
||||||
home-manager.users.pala.home = {
|
home-manager.users.pala.home = {
|
||||||
stateVersion = "25.05";
|
stateVersion = "25.05";
|
||||||
homeDirectory = "/Users/pala";
|
homeDirectory = config.users.users.pala.home;
|
||||||
};
|
};
|
||||||
|
|
||||||
system.stateVersion = 5;
|
system.stateVersion = 5;
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrNames attrValues filterAttrs hasPrefix head mkAliasOptionModule mkIf;
|
inherit (lib) attrNames filterAttrs hasPrefix head mkAliasOptionModule mkIf;
|
||||||
in {
|
in {
|
||||||
imports = [(mkAliasOptionModule [ "secrets" ] [ "age" "secrets" ])];
|
imports = [(mkAliasOptionModule [ "secrets" ] [ "age" "secrets" ])];
|
||||||
|
|
||||||
|
@ -12,10 +12,8 @@ in {
|
||||||
|
|
||||||
environment = mkIf config.isDesktop {
|
environment = mkIf config.isDesktop {
|
||||||
shellAliases.agenix = "agenix --identity ~/.ssh/id";
|
shellAliases.agenix = "agenix --identity ~/.ssh/id";
|
||||||
systemPackages = attrValues {
|
systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.agenix
|
||||||
agenix
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,10 +66,10 @@ in {
|
||||||
|
|
||||||
args.program = "{0}";
|
args.program = "{0}";
|
||||||
args.initCommands = let
|
args.initCommands = let
|
||||||
primer = pkgs.runCommand "primer" {} (/* py */ ''
|
# Why? Helix injections.
|
||||||
mkdir $out
|
writeText = pkgs.writeText;
|
||||||
echo '
|
|
||||||
|
|
||||||
|
primer = writeText "primer.py" ''
|
||||||
import subprocess
|
import subprocess
|
||||||
import pathlib
|
import pathlib
|
||||||
import lldb
|
import lldb
|
||||||
|
@ -82,9 +82,7 @@ in {
|
||||||
# Load lldb_lookup.py and execute lldb_commands with the correct path
|
# Load lldb_lookup.py and execute lldb_commands with the correct path
|
||||||
lldb.debugger.HandleCommand(f"""command script import "{rustlib_etc / 'lldb_lookup.py'}" """)
|
lldb.debugger.HandleCommand(f"""command script import "{rustlib_etc / 'lldb_lookup.py'}" """)
|
||||||
lldb.debugger.HandleCommand(f"""command source -s 0 "{rustlib_etc / 'lldb_commands'}" """)
|
lldb.debugger.HandleCommand(f"""command source -s 0 "{rustlib_etc / 'lldb_commands'}" """)
|
||||||
|
'';
|
||||||
' > $out/primer.py
|
|
||||||
'');
|
|
||||||
in [ "command script import ${primer}/primer.py" ];
|
in [ "command script import ${primer}/primer.py" ];
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
@ -129,49 +127,47 @@ in {
|
||||||
shellAliases.e = config.editor.defaultAlias;
|
shellAliases.e = config.editor.defaultAlias;
|
||||||
variables.EDITOR = config.editor.defaultAlias;
|
variables.EDITOR = config.editor.defaultAlias;
|
||||||
|
|
||||||
systemPackages = mkIf config.isDesktop <| attrValues {
|
systemPackages = mkIf config.isDesktop [
|
||||||
inherit (pkgs)
|
# CMAKE
|
||||||
# CMAKE
|
pkgs.cmake-language-server
|
||||||
cmake-language-server
|
|
||||||
|
|
||||||
# GO
|
# GO
|
||||||
gopls
|
pkgs.gopls
|
||||||
|
|
||||||
# HTML
|
# HTML
|
||||||
vscode-langservers-extracted
|
pkgs.vscode-langservers-extracted
|
||||||
|
|
||||||
# KOTLIN
|
# KOTLIN
|
||||||
kotlin-language-server
|
pkgs.kotlin-language-server
|
||||||
|
|
||||||
# LATEX
|
# LATEX
|
||||||
texlab
|
pkgs.texlab
|
||||||
|
|
||||||
# LUA
|
# LUA
|
||||||
lua-language-server
|
pkgs.lua-language-server
|
||||||
|
|
||||||
# MARKDOWN
|
# MARKDOWN
|
||||||
markdown-oxide
|
pkgs.markdown-oxide
|
||||||
|
|
||||||
# NIX
|
# NIX
|
||||||
nixfmt-rfc-style
|
pkgs.nixfmt-rfc-style
|
||||||
nil
|
pkgs.nixd
|
||||||
|
|
||||||
# PYTHON
|
# PYTHON
|
||||||
basedpyright
|
pkgs.basedpyright
|
||||||
|
|
||||||
# RUST
|
# RUST
|
||||||
rust-analyzer-nightly
|
pkgs.rust-analyzer-nightly
|
||||||
lldb
|
pkgs.lldb
|
||||||
|
|
||||||
# TYPESCRIPT & OTHERS
|
# TYPESCRIPT & OTHERS
|
||||||
deno
|
pkgs.deno
|
||||||
|
|
||||||
# YAML
|
# YAML
|
||||||
yaml-language-server
|
pkgs.yaml-language-server
|
||||||
|
|
||||||
# ZIG
|
# ZIG
|
||||||
zls
|
pkgs.zls
|
||||||
;
|
];
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ self, config, lib, pkgs, ... }: let
|
{ self, config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues head mkAfter enabled merge mkIf;
|
inherit (lib) head mkAfter enabled merge mkIf;
|
||||||
inherit (lib.strings) match;
|
inherit (lib.strings) match;
|
||||||
in {
|
in {
|
||||||
environment.shellAliases = merge {
|
environment.shellAliases = merge {
|
||||||
|
@ -68,12 +68,10 @@ in {
|
||||||
"ask-git" = "gh copilot suggest --target git --";
|
"ask-git" = "gh copilot suggest --target git --";
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.git-absorb
|
||||||
git-absorb
|
pkgs.tig
|
||||||
tig
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
(homeArgs: let
|
(homeArgs: let
|
||||||
|
|
|
@ -1,14 +1,12 @@
|
||||||
{ self, config, lib, pkgs, ... }: let
|
{ self, config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues enabled head mkIf;
|
inherit (lib) enabled head mkIf;
|
||||||
in {
|
in {
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.difftastic
|
||||||
difftastic
|
pkgs.jjui
|
||||||
jjui
|
pkgs.mergiraf
|
||||||
mergiraf
|
pkgs.radicle-node
|
||||||
radicle-node
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.sharedModules = [{
|
home-manager.sharedModules = [{
|
||||||
programs.jujutsu = enabled {
|
programs.jujutsu = enabled {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ self, config, inputs, lib, pkgs, ... }: let
|
{ self, config, inputs, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues attrsToList concatStringsSep const disabled filter filterAttrs flip id isType mapAttrs mapAttrsToList match merge mkAfter optionalAttrs optionals;
|
inherit (lib) attrsToList concatStringsSep const disabled filter filterAttrs flip id isType mapAttrs mapAttrsToList merge mkAfter optionalAttrs optionals;
|
||||||
inherit (lib.strings) toJSON;
|
inherit (lib.strings) toJSON;
|
||||||
|
|
||||||
registryMap = inputs
|
registryMap = inputs
|
||||||
|
@ -53,13 +53,11 @@ in {
|
||||||
|
|
||||||
nix.optimise.automatic = true;
|
nix.optimise.automatic = true;
|
||||||
|
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.nh
|
||||||
nh
|
pkgs.nix-index
|
||||||
nix-index
|
pkgs.nix-output-monitor
|
||||||
nix-output-monitor
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.sharedModules = [{
|
home-manager.sharedModules = [{
|
||||||
programs.nushell.configFile.text = mkAfter /* nu */ ''
|
programs.nushell.configFile.text = mkAfter /* nu */ ''
|
||||||
|
|
|
@ -1,76 +1,65 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues optionalAttrs;
|
inherit (lib) optionals;
|
||||||
in {
|
in {
|
||||||
unfree.allowedNames = [ "claude-code" ];
|
unfree.allowedNames = [ "claude-code" ];
|
||||||
|
|
||||||
environment.systemPackages = attrValues <| {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.asciinema
|
||||||
asciinema
|
pkgs.cowsay
|
||||||
cowsay
|
pkgs.curlHTTP3
|
||||||
curlHTTP3
|
pkgs.dig
|
||||||
dig
|
pkgs.doggo
|
||||||
doggo
|
pkgs.eza
|
||||||
eza
|
pkgs.fastfetch
|
||||||
fastfetch
|
pkgs.fd
|
||||||
fd
|
pkgs.hyperfine
|
||||||
hyperfine
|
pkgs.jc
|
||||||
jc
|
pkgs.moreutils
|
||||||
moreutils
|
pkgs.openssl
|
||||||
openssl
|
pkgs.p7zip
|
||||||
p7zip
|
pkgs.pstree
|
||||||
pstree
|
pkgs.rsync
|
||||||
rsync
|
pkgs.sd
|
||||||
sd
|
pkgs.timg
|
||||||
timg
|
pkgs.tokei
|
||||||
tokei
|
pkgs.typos
|
||||||
typos
|
pkgs.uutils-coreutils-noprefix
|
||||||
uutils-coreutils-noprefix
|
pkgs.xh
|
||||||
xh
|
pkgs.yazi
|
||||||
yazi
|
pkgs.yt-dlp
|
||||||
yt-dlp
|
(pkgs.fortune.override { withOffensive = true; })
|
||||||
;
|
] ++ optionals config.isLinux [
|
||||||
|
pkgs.traceroute
|
||||||
|
pkgs.usbutils
|
||||||
|
pkgs.strace
|
||||||
|
] ++ optionals config.isDesktop [
|
||||||
|
pkgs.claude-code
|
||||||
|
|
||||||
fortune = pkgs.fortune.override { withOffensive = true; };
|
pkgs.clang_16
|
||||||
} // optionalAttrs config.isLinux {
|
pkgs.clang-tools_16
|
||||||
inherit (pkgs)
|
pkgs.deno
|
||||||
traceroute
|
pkgs.gh
|
||||||
usbutils
|
pkgs.go
|
||||||
strace
|
pkgs.lld
|
||||||
;
|
pkgs.zig
|
||||||
} // optionalAttrs config.isDesktop {
|
|
||||||
inherit (pkgs)
|
|
||||||
claude-code
|
|
||||||
|
|
||||||
clang_16
|
pkgs.qbittorrent
|
||||||
clang-tools_16
|
] ++ optionals (config.isLinux && config.isDesktop) [
|
||||||
deno
|
pkgs.thunderbird
|
||||||
gh
|
|
||||||
go
|
|
||||||
lld
|
|
||||||
zig
|
|
||||||
|
|
||||||
qbittorrent
|
pkgs.whatsapp-for-linux
|
||||||
;
|
|
||||||
} // optionalAttrs (config.isLinux && config.isDesktop) {
|
|
||||||
inherit (pkgs)
|
|
||||||
thunderbird
|
|
||||||
|
|
||||||
whatsapp-for-linux
|
pkgs.element-desktop
|
||||||
|
pkgs.zulip
|
||||||
|
pkgs.fractal
|
||||||
|
|
||||||
element-desktop
|
pkgs.obs-studio
|
||||||
zulip
|
|
||||||
fractal
|
|
||||||
|
|
||||||
obs-studio
|
pkgs.krita
|
||||||
|
|
||||||
krita
|
pkgs.libreoffice
|
||||||
|
|
||||||
libreoffice
|
pkgs.en_US
|
||||||
;
|
pkgs.en_GB-ize
|
||||||
|
];
|
||||||
inherit (pkgs.hunspellDicts)
|
|
||||||
en_US
|
|
||||||
en_GB-ize
|
|
||||||
;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,13 @@
|
||||||
{ lib, pkgs, ... }: let
|
{ pkgs, ... }: let
|
||||||
inherit (lib) attrValues;
|
package = pkgs.python314;
|
||||||
in {
|
in {
|
||||||
environment.systemPackages = attrValues {
|
environmennt.variables = {
|
||||||
inherit (pkgs)
|
UV_PYTHON_PREFERENCE = "system";
|
||||||
python314
|
UV_PYTHON = "${package}";
|
||||||
uv
|
|
||||||
;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [
|
||||||
|
package
|
||||||
|
pkgs.uv
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,34 +1,31 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues makeLibraryPath mkIf;
|
inherit (lib) makeLibraryPath mkIf;
|
||||||
in {
|
in {
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
CARGO_NET_GIT_FETCH_WITH_CLI = "true";
|
CARGO_NET_GIT_FETCH_WITH_CLI = "true";
|
||||||
|
|
||||||
LIBRARY_PATH = mkIf config.isDarwin <| makeLibraryPath <| attrValues {
|
LIBRARY_PATH = mkIf config.isDarwin <| makeLibraryPath [
|
||||||
inherit (pkgs)
|
pkgs.libiconv
|
||||||
libiconv
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.cargo-deny
|
||||||
cargo-deny
|
pkgs.cargo-expand
|
||||||
cargo-expand
|
pkgs.cargo-fuzz
|
||||||
cargo-fuzz
|
pkgs.cargo-nextest
|
||||||
cargo-nextest
|
|
||||||
|
|
||||||
evcxr
|
pkgs.evcxr
|
||||||
|
|
||||||
taplo
|
pkgs.taplo
|
||||||
;
|
|
||||||
|
|
||||||
fenix = pkgs.fenix.complete.withComponents [
|
|
||||||
|
(pkgs.fenix.complete.withComponents [
|
||||||
"cargo"
|
"cargo"
|
||||||
"clippy"
|
"clippy"
|
||||||
"rust-src"
|
"rust-src"
|
||||||
"rustc"
|
"rustc"
|
||||||
"rustfmt"
|
"rustfmt"
|
||||||
];
|
])
|
||||||
};
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,14 +1,12 @@
|
||||||
{ lib, pkgs, ... }: let
|
{ lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues enabled;
|
inherit (lib) enabled;
|
||||||
in {
|
in {
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.carapace
|
||||||
carapace
|
pkgs.fish
|
||||||
fish
|
pkgs.zsh
|
||||||
zsh
|
pkgs.inshellisense
|
||||||
inshellisense
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.sharedModules = [{
|
home-manager.sharedModules = [{
|
||||||
programs.carapace = enabled;
|
programs.carapace = enabled;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues disabled merge mkIf;
|
inherit (lib) disabled merge mkIf;
|
||||||
in merge
|
in merge
|
||||||
|
|
||||||
(mkIf config.isDesktop {
|
(mkIf config.isDesktop {
|
||||||
|
@ -9,17 +9,15 @@ in merge
|
||||||
packages = [ pkgs.terminus_font ];
|
packages = [ pkgs.terminus_font ];
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts.packages = attrValues {
|
fonts.packages = [
|
||||||
sans = config.theme.font.sans.package;
|
config.theme.font.sans.package
|
||||||
mono = config.theme.font.mono.package;
|
config.theme.font.mono.package
|
||||||
|
|
||||||
inherit (pkgs)
|
pkgs.noto-fonts
|
||||||
noto-fonts
|
pkgs.noto-fonts-cjk-sans
|
||||||
noto-fonts-cjk-sans
|
pkgs.noto-fonts-lgc-plus
|
||||||
noto-fonts-lgc-plus
|
pkgs.noto-fonts-emoji
|
||||||
noto-fonts-emoji
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
})
|
})
|
||||||
|
|
||||||
(mkIf config.isServer {
|
(mkIf config.isServer {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues enabled merge mkIf flatten range;
|
inherit (lib) enabled merge mkIf flatten range;
|
||||||
in merge <| mkIf config.isDesktop {
|
in merge <| mkIf config.isDesktop {
|
||||||
hardware.graphics = enabled;
|
hardware.graphics = enabled;
|
||||||
|
|
||||||
|
@ -19,34 +19,20 @@ in merge <| mkIf config.isDesktop {
|
||||||
|
|
||||||
programs.xwayland = enabled;
|
programs.xwayland = enabled;
|
||||||
|
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.brightnessctl
|
||||||
brightnessctl
|
pkgs.grim
|
||||||
grim
|
pkgs.hyprpicker
|
||||||
hyprpicker
|
pkgs.slurp
|
||||||
slurp
|
pkgs.swappy
|
||||||
swappy
|
pkgs.swaybg
|
||||||
swaybg
|
pkgs.wl-clipboard
|
||||||
wl-clipboard
|
pkgs.wtype
|
||||||
wtype
|
pkgs.xdg-utils
|
||||||
xdg-utils
|
pkgs.xwaylandvideobridge
|
||||||
xwaylandvideobridge
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.sharedModules = [{
|
home-manager.sharedModules = [{
|
||||||
xdg.configFile."xkb/symbols/tr-swapped-i".text = ''
|
|
||||||
default partial
|
|
||||||
xkb_symbols "basic" {
|
|
||||||
include "tr(basic)"
|
|
||||||
|
|
||||||
name[Group1]="Turkish (i and ı swapped)";
|
|
||||||
|
|
||||||
key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ idotless, Iabovedot, paragraph , none ]};
|
|
||||||
key <AD08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ i , I , apostrophe, dead_caron ]};
|
|
||||||
};
|
|
||||||
'';
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland = enabled {
|
wayland.windowManager.hyprland = enabled {
|
||||||
systemd = enabled {
|
systemd = enabled {
|
||||||
enableXdgAutostart = true;
|
enableXdgAutostart = true;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) const genAttrs merge mkIf;
|
inherit (lib) const genAttrs merge mkIf;
|
||||||
in merge {
|
in merge {
|
||||||
console.keyMap = pkgs.writeText "trq-swapped-i.map" ''
|
console.keyMap = pkgs.writeText "trq-swapped-i.map" /* hs */ ''
|
||||||
include "${pkgs.kbd}/share/keymaps/i386/qwerty/trq.map"
|
include "${pkgs.kbd}/share/keymaps/i386/qwerty/trq.map"
|
||||||
|
|
||||||
keycode 23 = i
|
keycode 23 = i
|
||||||
|
@ -11,6 +11,20 @@ in merge {
|
||||||
keycode 40 = +dotlessi +Idotabove
|
keycode 40 = +dotlessi +Idotabove
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
home-manager.sharedModules = [{
|
||||||
|
xdg.configFile."xkb/symbols/tr-swapped-i".text = /* rs */ ''
|
||||||
|
default partial
|
||||||
|
xkb_symbols "basic" {
|
||||||
|
include "tr(basic)"
|
||||||
|
|
||||||
|
name[Group1]="Turkish (i and ı swapped)";
|
||||||
|
|
||||||
|
key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ idotless, Iabovedot, paragraph , none ]};
|
||||||
|
key <AD08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ i , I , apostrophe, dead_caron ]};
|
||||||
|
};
|
||||||
|
'';
|
||||||
|
}];
|
||||||
|
|
||||||
i18n.defaultLocale = "C.UTF-8";
|
i18n.defaultLocale = "C.UTF-8";
|
||||||
} <| mkIf config.isDesktop {
|
} <| mkIf config.isDesktop {
|
||||||
i18n.extraLocaleSettings = genAttrs [
|
i18n.extraLocaleSettings = genAttrs [
|
||||||
|
|
|
@ -1,25 +1,19 @@
|
||||||
{ config, lib, pkgs, ... }: let
|
{ config, lib, pkgs, ... }: let
|
||||||
inherit (lib) attrValues enabled merge mkIf;
|
inherit (lib) enabled merge mkIf;
|
||||||
in merge <| mkIf config.isDesktop {
|
in merge <| mkIf config.isDesktop {
|
||||||
programs.thunar = enabled {
|
programs.thunar = enabled {
|
||||||
plugins = attrValues {
|
plugins = [
|
||||||
inherit (pkgs.xfce)
|
pkgs.xfce.thunar-archive-plugin
|
||||||
thunar-archive-plugin
|
pkgs.xfce.thunar-media-tags-plugin
|
||||||
thunar-media-tags-plugin
|
pkgs.xfce.thunar-volman
|
||||||
thunar-volman
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = [
|
||||||
inherit (pkgs)
|
pkgs.ark
|
||||||
ark
|
pkgs.ffmpegthumbnailer
|
||||||
ffmpegthumbnailer
|
pkgs.libgsf
|
||||||
libgsf
|
|
||||||
;
|
|
||||||
|
|
||||||
inherit (pkgs.xfce)
|
pkgs.xfce.tumbler
|
||||||
tumbler
|
];
|
||||||
;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue