diff --git a/flake.nix b/flake.nix index d1479ee..3769422 100644 --- a/flake.nix +++ b/flake.nix @@ -49,7 +49,8 @@ sub-file-paths = "subs:subtitles:字幕"; fullscreen = "yes"; title = "\${filename} - mpv"; - script-opts = "osc-title=\${filename},osc-boxalpha=150,osc-showfullscreen=no,osc-boxvideo=yes"; + script-opts = + "osc-title=\${filename},osc-boxalpha=150,osc-showfullscreen=no,osc-boxvideo=yes"; osc = "no"; osd-on-seek = "no"; osd-bar = "no"; @@ -69,7 +70,50 @@ "browser.tabs.insertAfterCurrent" = true; }; }; - programs.git = { diff-so-fancy = { enable = true; }; }; + programs.chromium = { + enable = true; + package = pkgs."ungoogled-chromium"; + commandLineArgs = [ "--ozone-platform-hint=auto" ]; + extensions = [{ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; }]; + }; + programs.git = { + enable = true; + extraConfig = { + commit = { gpgsign = true; }; + core = { + editor = "nvim"; + autocrlf = false; + quotePath = false; + }; + web = { browser = "librewolf"; }; + push = { default = "simple"; }; + branch = { autosetuprebase = "always"; }; + init = { defaultBranch = "master"; }; + rerere = { enabled = true; }; + color = { ui = true; }; + alias = { + contrib = "shortlog -n -s"; + remotes = "remote -v"; + praise = "blame"; + verify = "log --show-signature"; + }; + "color \"diff-highlight\"" = { + oldNormal = "red bold"; + oldHighlight = "red bold"; + newNormal = "green bold"; + newHighlight = "green bold"; + }; + "color \"diff\"" = { + meta = "yellow"; + frag = "magenta bold"; + commit = "yellow bold"; + old = "red bold"; + new = "green bold"; + whitespace = "red reverse"; + }; + }; + diff-so-fancy = { enable = true; }; + }; programs.lf = { enable = true; }; services.udiskie.enable = true; }; diff --git a/git/.gitconfig b/git/.gitconfig deleted file mode 100644 index 0da9589..0000000 --- a/git/.gitconfig +++ /dev/null @@ -1,65 +0,0 @@ -[include] - path = ~/.gituser - -# Always sign commits -[commit] - gpgsign = true - -[core] - editor = nvim - autocrlf = false - pager = diff-so-fancy | less --tabs=4 -RFX - excludesfile = ~/.gitignore - quotePath = false - -[diff] - tool = kitty - guitool = kitty.gui - -[difftool] - prompt = false - trustExitCode = true - -[difftool "kitty"] - cmd = kitty +kitten diff $LOCAL $REMOTE - -[difftool "kitty.gui"] - cmd = kitty kitty +kitten diff $LOCAL $REMOTE - -[web] - browser = librewolf - -[push] - default = simple - -[branch] - autosetuprebase = always - -[init] - defaultBranch = master - -[rerere] - enabled = true - -[color] - ui = true - -[alias] - contrib = shortlog -n -s - remotes = remote -v - praise = blame - verify = log --show-signature - -[color "diff-highlight"] - oldNormal = red bold - oldHighlight = red bold - newNormal = green bold - newHighlight = green bold - -[color "diff"] - meta = yellow - frag = magenta bold - commit = yellow bold - old = red bold - new = green bold - whitespace = red reverse diff --git a/git/.gitignore b/git/.gitignore deleted file mode 100644 index 377172f..0000000 --- a/git/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -# New Start: A modern Arch workflow built with an emphasis on functionality. -# Copyright (C) 2017-2018 Donovan Glover - -# Don't track temporary vim files -*~ -.*.sw* - -# Don't track Plasma directory files -.directory diff --git a/git/.stow-local-ignore b/git/.stow-local-ignore deleted file mode 100644 index 8740ada..0000000 --- a/git/.stow-local-ignore +++ /dev/null @@ -1,6 +0,0 @@ -# This .stow-local-ignore file is used to prevent stow from -# ignoring the .gitignore file by default. -# -# https://www.gnu.org/software/stow/manual/stow.html#Ignore-Lists - -README.md diff --git a/git/README.md b/git/README.md deleted file mode 100644 index 03ad78b..0000000 --- a/git/README.md +++ /dev/null @@ -1,33 +0,0 @@ -# Git - -[Git][git] is the standard version control tool. - -# Use Cases - -Git can be used to: - -- Keep track of file changes over time -- Keep a record of all contributors to a code base -- Rollback to a previous version of a project -- Create snapshots of a project with tags (also known as versions) - -You should not use Git if: - -- You are dealing with binary files -- You are dealing with large files that change often - -## Usage - -First, install [diff-so-fancy][diff-so-fancy], an amazing git diff utility. - -Then, create a `~/.gituser` with the following: - -```gitconfig -[user] - name = - email = - signingkey = -``` - -[git]: https://github.com/git/git -[diff-so-fancy]: https://github.com/so-fancy/diff-so-fancy diff --git a/gtk/.config/gtk-3.0/settings.ini b/gtk/.config/gtk-3.0/settings.ini deleted file mode 100644 index df5ac04..0000000 --- a/gtk/.config/gtk-3.0/settings.ini +++ /dev/null @@ -1,11 +0,0 @@ -[Settings] -gtk-cursor-theme-name=phinger-cursors -gtk-decoration-layout=menu: -gtk-font-name=Noto Sans CJK JP 11 -gtk-icon-theme-name=Papirus -gtk-theme-name=Dracula -gtk-xft-antialias=1 -gtk-xft-hinting=1 -gtk-xft-hintstyle=hintfull -gtk-xft-rgba=rgb -gtk-recent-files-enabled=false diff --git a/gtk/README.md b/gtk/README.md deleted file mode 100644 index 1810ef7..0000000 --- a/gtk/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# gtk-settings - -[GTK][gtk] is the widget toolkit used by Firefox, Electron, and many (if not all) GNOME applications. - -GTK's `settings.ini` only affects window managers and not the GNOME desktop environment. This is because GNOME manages user preferences with [`dconf` through `gsettings`][gnome]. - -## Use Cases - -gtk-settings can be used to: - -- Control the appearance of GTK applications under non-GNOME environments - -You do not need to use gtk-settings if: - -- You are using the GNOME desktop environment - -[gtk]: https://wiki.archlinux.org/index.php/GTK+ -[gnome]: https://wiki.archlinux.org/index.php/GNOME#Configuration diff --git a/modules/desktop.nix b/modules/desktop.nix index 5584b70..0abcd7b 100644 --- a/modules/desktop.nix +++ b/modules/desktop.nix @@ -22,6 +22,17 @@ TerminalEmulator=kitty TerminalEmulatorDismissed=true ''; + xdg.configFile."mozc/ibus_config.textproto".text = '' + engines { + name : "mozc-jp" + longname : "Mozc" + layout : "default" + layout_variant : "" + layout_option : "" + rank : 80 + } + active_on_launch: True + ''; gtk = { enable = true; cursorTheme = { @@ -63,15 +74,12 @@ map g scroll_to start map G scroll_to end ''; - programs.bat = { - enable = true; - }; + programs.bat = { enable = true; }; programs.swaylock = { package = pkgs."swaylock-effects"; settings = { show-keyboard-layout = true; daemonize = true; - font = "Noto Sans CJK JP"; effect-blur = "5x2"; clock = true; indicator = true; @@ -198,7 +206,44 @@ toggle_auto_zoom = "m"; }; }; - services.mpd = { enable = true; }; - programs.ncmpcpp = { enable = true; }; + services.mpd = { + enable = true; + extraConfig = '' + auto_update "yes" + ''; + }; + programs.ncmpcpp = { + enable = true; + bindings = [ + { key = "mouse"; command = "dummy"; } + { key = "h"; command = ["previous_column" "jump_to_parent_directory"]; } + { key = "j"; command = "scroll_down"; } + { key = "k"; command = "scroll_up"; } + { key = "l"; command = [ "next_column" "enter_directory" "play_item"]; } + { key = "H"; command = [ "select_item" "scroll_down"]; } + { key = "J"; command = ["move_sort_order_down" "move_selected_items_down"]; } + { key = "K"; command = ["move_sort_order_up" "move_selected_items_up"]; } + { key = "L"; command = [ "select_item" "scroll_up"]; } + { key = "'"; command = "remove_selection"; } + { key = "ctrl-u"; command = "page_up"; } + { key = "ctrl-d"; command = "page_down"; } + { key = "u"; command = "page_up"; } + { key = "d"; command = "page_down"; } + { key = "n"; command = "next_found_item"; } + { key = "N"; command = "previous_found_item"; } + { key = "t"; command = "next_screen"; } + { key = "g"; command = "move_home"; } + { key = "G"; command = "move_end"; } + { key = "w"; command = "next"; } + { key = "b"; command = "previous"; } + { key = ";"; command = "seek_forward"; } + { key = ","; command = "seek_backward"; } + { key = "f"; command = "apply_filter"; } + { key = "i"; command = "select_item"; } + { key = "x"; command = [ "delete_playlist_items" "delete_browser_items" "delete_stored_playlist" ]; } + { key = "U"; command = "update_database"; } + { key = "m"; command = "add_random_items"; } + ]; + }; }; } diff --git a/mozc/.config/mozc/ibus_config.textproto b/mozc/.config/mozc/ibus_config.textproto deleted file mode 100644 index 61c58d0..0000000 --- a/mozc/.config/mozc/ibus_config.textproto +++ /dev/null @@ -1,9 +0,0 @@ -engines { - name : "mozc-jp" - longname : "Mozc" - layout : "default" - layout_variant : "" - layout_option : "" - rank : 80 -} -active_on_launch: True diff --git a/mozc/README.md b/mozc/README.md deleted file mode 100644 index 5e90262..0000000 --- a/mozc/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# Mozc - -[Mozc][mozc] is the standard Japanese IME. - -## Use Cases - -Mozc can be used to: - -- Type in Japanese - -You should not use Mozc if: - -- You should use Mozc. - -[mozc]: https://github.com/google/mozc