diff --git a/os/configuration.nix b/os/configuration.nix
index 3fd1479..c90aa32 100644
--- a/os/configuration.nix
+++ b/os/configuration.nix
@@ -66,8 +66,12 @@ in {
environment.systemPackages = with pkgs; [
unstable.neovim
+ fuse3
firefox
#jmtpfs
+ kanata
+ localsend
+ parsec-bin
];
services.gvfs.enable = true;
@@ -122,6 +126,11 @@ in {
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
+ boot.kernelModules = ["uinput" "fuse"];
+
+ services.udev.extraRules = ''
+ KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput", GROUP="input", MODE="0660"
+ '';
boot.initrd.postDeviceCommands = lib.mkAfter (builtins.readFile ./btrfs-impermanence);
diff --git a/os/desktop/gnome.nix b/os/desktop/gnome.nix
index 439000e..cdbd66f 100644
--- a/os/desktop/gnome.nix
+++ b/os/desktop/gnome.nix
@@ -17,9 +17,9 @@
];
};
- "org/gnome/shell/extensions/user-theme" = {
- name = "Materia-dark";
- };
+ # "org/gnome/shell/extensions/user-theme" = {
+ # name = "Materia-dark";
+ # };
"org/gnome/shell/extensions/unite" = {
desktop-name-text = "Desktop";
@@ -32,9 +32,9 @@
window-buttons-theme = "arc";
};
- "org/gnome/desktop/interface" = {
- color-scheme = "prefer-dark";
- };
+ # "org/gnome/desktop/interface" = {
+ # color-scheme = "prefer-dark";
+ # };
"org/gnome/desktop/wm/preferences" = {
resize-with-right-button = true;
@@ -52,10 +52,10 @@
];
};
- "org/gnome/desktop/background" = {
- picture-uri = "file:///${./wallpaper.jpg}";
- picture-uri-dark = "file:///${./nix-wallpaper.png}";
- };
+ # "org/gnome/desktop/background" = {
+ # picture-uri = "file:///${./wallpaper.jpg}";
+ # picture-uri-dark = "file:///${./nix-wallpaper.png}";
+ # };
};
};
@@ -68,23 +68,24 @@
# Theme
materia-theme
];
+ dconf.settings."org/gnome/desktop/interface".font-name = pkgs.lib.mkForce "Cascadia Code NF 12";
gtk = {
enable = true;
- font = {
- name = "Cascadia Code";
- size = 12;
- };
+ # font = pkgs.lib.mkForce {
+ # name = "Cascadia Code NF";
+ # size = 12;
+ # };
iconTheme = {
name = "Zafiro-icons-Dark";
package = pkgs.zafiro-icons;
};
- theme = {
- name = "Materia-dark";
- package = pkgs.materia-theme;
- };
+ # theme = {
+ # name = "Materia-dark";
+ # package = pkgs.lib.mkForce pkgs.materia-theme;
+ # };
gtk2 = {
configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
diff --git a/os/dev/default.nix b/os/dev/default.nix
index 01504b6..2100d03 100644
--- a/os/dev/default.nix
+++ b/os/dev/default.nix
@@ -35,25 +35,27 @@ in {
programs.zsh.shellAliases = {
pst = "${wantgunsbin_script}/bin/pst";
};
- home.packages = with pkgs.unstable; [
- bruno
- just
- nil
- alejandra
- zoxide
- neovide
- nodejs
- corepack
- cargo-watch
- rustup
- go
-
- jetbrains.idea-community
- vscode
- cascadia-code
- jdk17
- ncdu
- httpie
+ home.packages = with pkgs; [
+ unstable.bruno
+ unstable.xclip
+ unstable.just
+ unstable.nil
+ unstable.alejandra
+ unstable.zoxide
+ unstable.neovide
+ unstable.nodejs
+ unstable.corepack
+ unstable.cargo-watch
+ unstable.rustup
+ unstable.go
+ # unstable.
+ unstable.jetbrains.idea-community
+ #unstable.vscode-fhs
+ unstable.cascadia-code
+ unstable.jdk17
+ unstable.ncdu
+ unstable.httpie
+ zed-fhs
];
programs = {
diff --git a/os/dev/wezterm.lua b/os/dev/wezterm.lua
index 624c9cb..66c9310 100644
--- a/os/dev/wezterm.lua
+++ b/os/dev/wezterm.lua
@@ -2,7 +2,7 @@ local wezterm = require 'wezterm'
local config = wezterm.config_builder()
-config.color_scheme = 'Oxocarbon Dark (Gogh)'
+config.color_scheme = 'GruvboxDarkHard'
config.use_fancy_tab_bar = false
config.window_decorations = "RESIZE"
config.hide_tab_bar_if_only_one_tab = true
diff --git a/os/shell/prompt.json b/os/shell/prompt.json
new file mode 100644
index 0000000..21f2107
--- /dev/null
+++ b/os/shell/prompt.json
@@ -0,0 +1,74 @@
+{
+ "$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
+ "blocks": [
+ {
+ "alignment": "left",
+ "segments": [
+ {
+ "foreground": "#525252",
+ "style": "plain",
+ "template": "\u25b3 ",
+ "type": "text"
+ },
+ {
+ "foreground": "#dde1e6",
+ "properties": {
+ "folder_separator_icon": " / ",
+ "home_icon": "home",
+ "style": "agnoster_full"
+ },
+ "style": "plain",
+ "template": "{{.Path}} ",
+ "type": "path"
+ },
+ {
+ "foreground": "#dde1e6",
+ "properties": {
+ "branch_icon": "",
+ "branch_ahead_icon": "\u21e1 ",
+ "branch_behind_icon": "\u21e3 ",
+ "fetch_stash_count": true,
+ "fetch_status": true,
+ "fetch_upstream_icon": true,
+ "github_icon": ""
+ },
+ "style": "plain",
+ "template": "<#525252>git:(>{{.HEAD}}<#525252>, >{{if .BranchStatus }}{{ .BranchStatus }}{{ end }}{{ if .Working.Changed }}<#dde1e6>*>{{ .Working.String }}{{ end }}{{ if and (.Working.Changed) (.Staging.Changed) }} |{{ end }}{{ if .Staging.Changed }} \uf046 {{ .Staging.String }}{{ end }}{{ if gt .StashCount 0 }} \ueb4b {{ .StashCount }}{{ end }}<#525252>)> ",
+ "type": "git"
+ }
+ ],
+ "type": "prompt"
+ },
+ {
+ "alignment": "left",
+ "newline": true,
+ "segments": [
+ {
+ "foreground": "#fff",
+ "foreground_templates": [
+ "{{if gt .Code 0 }}#BF616A{{ end }}",
+ "{{if contains .Env.IN_NIX_SHELL \"pure\"}}#81A1C1{{end}}"
+ ],
+ "style": "plain",
+ "template": "\uf441 ",
+ "type": "text"
+ }
+ ],
+ "type": "prompt"
+ }
+ ],
+ "console_title_template": "{{if .Root}}(root){{end}} {{.PWD}}",
+ "transient_prompt": {
+ "foreground": "#fff",
+ "foreground_templates": [
+ "{{if gt .Code 0 }}#BF616A{{ end }}",
+ "{{if contains .Env.IN_NIX_SHELL \"pure\"}}#81A1C1{{end}}"
+ ],
+ "template": "\uf441 "
+ },
+ "secondary_prompt": {
+ "foreground": "#525252",
+ "template": "\u25b3 "
+ },
+ "version": 2
+}
diff --git a/os/shell/zsh.nix b/os/shell/zsh.nix
index 2d5317d..424ddda 100644
--- a/os/shell/zsh.nix
+++ b/os/shell/zsh.nix
@@ -9,6 +9,8 @@
programs.nix-index.enableZshIntegration = true;
home.packages = [
pkgs.unstable.steam-run
+ pkgs.delta
+ pkgs.bottom
];
programs.wezterm.enableZshIntegration = true;
@@ -130,7 +132,7 @@
bindkey -M viins '^[^[' sudo-command-line
# prompt init
- eval "$(${pkgs.oh-my-posh}/bin/oh-my-posh init zsh --config ${./prompt-zen.toml})"
+ eval "$(${pkgs.oh-my-posh}/bin/oh-my-posh init zsh --config ${./prompt.json})"
'';
dirHashes = {
dl = "${config.home.homeDirectory}/Downloads";
@@ -138,8 +140,8 @@
src = "${config.home.homeDirectory}/src";
dots = "${config.home.homeDirectory}/nix";
nix = "${config.home.homeDirectory}/nix";
- pics = "${config.home.homeDirectory}/Documents";
- vids = "${config.home.homeDirectory}/Documents";
+ pics = "${config.home.homeDirectory}/Pictures";
+ vids = "${config.home.homeDirectory}/Videos";
};
sessionVariables = {
DIRENV_LOG_FORMAT = "";
@@ -182,7 +184,6 @@
cr = "code -r";
cw = "code --wait";
glg = "git lg";
- ghr = "gh repo";
serve = "python3 -m http.server";
ytmp3 = "yt-dlp --ignore-errors --format bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-thumbnail --embed-metadata --output '%(title)s.%(ext)s'";
};
diff --git a/os/styling.nix b/os/styling.nix
index fa2e13f..74f2393 100644
--- a/os/styling.nix
+++ b/os/styling.nix
@@ -1,25 +1,36 @@
{pkgs, ...}: {
- stylix.base16Scheme = {
- # oxocarbon dark
- base00 = "161616";
- base01 = "262626";
- base02 = "393939";
- base03 = "525252";
- base04 = "dde1e6";
- base05 = "f2f4f8";
- base06 = "ffffff";
- base07 = "08bdba";
- base08 = "3ddbd9";
- base09 = "78a9ff";
- base0A = "ee5396";
- base0B = "33b1ff";
- base0C = "ff7eb6";
- base0D = "42be65";
- base0E = "be95ff";
- base0F = "82cfff";
+ stylix.enable = true;
+
+ # stylix.base16Scheme = {
+ # # oxocarbon dark
+ # base00 = "161616";
+ # base01 = "262626";
+ # base02 = "393939";
+ # base03 = "525252";
+ # base04 = "dde1e6";
+ # base05 = "f2f4f8";
+ # base06 = "ffffff";
+ # base07 = "08bdba";
+ # base08 = "3ddbd9";
+ # base09 = "78a9ff";
+ # base0A = "ee5396";
+ # base0B = "33b1ff";
+ # base0C = "ff7eb6";
+ # base0D = "42be65";
+ # base0E = "be95ff";
+ # base0F = "82cfff";
+ # };
+
+ stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
+
+ stylix.fonts = {
+ monospace = {
+ package = pkgs.cascadia-code;
+ name = "Cascadia Code NF";
+ };
};
- stylix.image = ./nix-wallpaper.png;
+ stylix.image = ./desktop/nix-wallpaper.png;
stylix.cursor.package = pkgs.graphite-cursors;
stylix.cursor.name = "graphite-dark";
diff --git a/os/users.nix b/os/users.nix
index 5c1b8ab..08b5726 100644
--- a/os/users.nix
+++ b/os/users.nix
@@ -9,9 +9,10 @@
username = "deva";
shell = "zsh";
description = "Deva Waves";
+ initialPassword = "12345";
sudoer = true;
developer = true;
- extraGroups = ["networkmanager" "audio" "docker" "input" "libvirtd" "plugdev" "video" "adbusers"];
+ extraGroups = ["networkmanager" "audio" "docker" "input" "libvirtd" "plugdev" "video" "adbusers" "uinput"];
normalUser = true;
desktopEnvironment = "gnome";
obs = true;
diff --git a/pkgs/default.nix b/pkgs/default.nix
index 52e7493..ebbda2b 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -1,4 +1,5 @@
pkgs: {
clone = pkgs.callPackage ./clone.nix {};
disko = pkgs.callPackage ./disko.nix {};
+ zed-fhs = pkgs.callPackage ./zed-fhs.nix {};
}
diff --git a/pkgs/zed-fhs.nix b/pkgs/zed-fhs.nix
new file mode 100644
index 0000000..e194256
--- /dev/null
+++ b/pkgs/zed-fhs.nix
@@ -0,0 +1,20 @@
+{pkgs}: pkgs.buildFHSUserEnv {
+ name = "zed";
+ targetPkgs = pkgs: with pkgs; [
+ unstable.zed-editor
+ ];
+ runScript = "zed";
+ desktopItem = pkgs.lib.makeDesktopItem {
+ name = "zed";
+ desktopName = "Zed";
+ comment = "A high-performance, multiplayer code editor.";
+ genericName = "Text Editor";
+ exec = "zed %U";
+ icon = "zed";
+ startupNotify = true;
+ startupWMClass = "zed";
+ mimeTypes = ["text/plain" "inode/directory"];
+ categories = [ "Utility" "TextEditor" "Development" "IDE" ];
+ keywords = [ "zed" ];
+ };
+}