From 987b94bf5d9b1b4f8b06aeafbc5652665c2072f9 Mon Sep 17 00:00:00 2001 From: Random936 Date: Fri, 17 May 2024 21:13:48 -0700 Subject: [PATCH] First mostly working version of the config --- dotfiles/.config/i3/config | 2 +- dotfiles/.emacs.d/config.org | 6 ++-- dotfiles/.emacs.d/lsp.org | 9 ++++++ dotfiles/.screenlayout/launch.sh | 2 +- dotfiles/.screenlayout/wallpapers.sh | 2 +- dotfiles/.scripts/autostart_desktop.sh | 2 +- dotfiles/.scripts/brightness.sh | 2 +- flake.nix | 4 ++- home-manager/home.nix | 41 ++++++++++++++++++++++++-- nixos/configuration.nix | 10 ++----- 10 files changed, 61 insertions(+), 19 deletions(-) diff --git a/dotfiles/.config/i3/config b/dotfiles/.config/i3/config index 1f4ae3c..9bde444 100644 --- a/dotfiles/.config/i3/config +++ b/dotfiles/.config/i3/config @@ -154,7 +154,7 @@ client.unfocused #333333 #222222 #888888 #292d2e #eeeeee # Startup Applications exec --no-startup-id "lxpolkit &" # start authentication agent (prompt) -exec --no-startup-id "xcompmgr &" # startup composition manager (transparency) +exec --no-startup-id "picom &" # startup composition manager (transparency) exec --no-startup-id "polybar" # status bar exec --no-startup-id "$HOME/.scripts/autostart_desktop.sh &" # run autostart desktop apps exec --no-startup-id "emacs --daemon &" # startup emacs daemon diff --git a/dotfiles/.emacs.d/config.org b/dotfiles/.emacs.d/config.org index 9834947..5e13a5c 100644 --- a/dotfiles/.emacs.d/config.org +++ b/dotfiles/.emacs.d/config.org @@ -194,7 +194,7 @@ Colors parenthesis for better lisp syntax highlighting. #+begin_src emacs-lisp (use-package rainbow-delimiters - :hook prog-mode) + :hook (prog-mode . rainbow-delimiters-mode)) #+end_src ** Line Numbers @@ -503,7 +503,7 @@ Vanilla dired opens a new buffer for every new directory it visits. When managin #+begin_src emacs-lisp (use-package all-the-icons-dired :after dired - :hook dired-mode) + :hook (dired-mode . all-the-icons-dired-mode)) #+end_src *** Hide Dotfiles @@ -512,7 +512,7 @@ This hides all dotfiles in dired with the keybinding ~H~. #+begin_src emacs-lisp (use-package dired-hide-dotfiles - :hook dired-mode + :hook (dired-mode . dired-hide-dotfiles-mode) :config (evil-collection-define-key 'normal 'dired-mode-map "H" 'dired-hide-dotfiles-mode)) diff --git a/dotfiles/.emacs.d/lsp.org b/dotfiles/.emacs.d/lsp.org index 57f98ce..ad39b4c 100644 --- a/dotfiles/.emacs.d/lsp.org +++ b/dotfiles/.emacs.d/lsp.org @@ -214,3 +214,12 @@ sudo emerge -v app-emacs/ebuild-mode :defer t :hook (ebuild-mode . lsp-deferred)) #+end_src + +** Nix + +Nix is the language used by NixOS and the Nix package manager. + +#+begin_src emacs-lisp +(use-package nix-mode + :mode "\\.nix\\'") +#+end_src diff --git a/dotfiles/.screenlayout/launch.sh b/dotfiles/.screenlayout/launch.sh index b1d1830..5e6e5ef 100755 --- a/dotfiles/.screenlayout/launch.sh +++ b/dotfiles/.screenlayout/launch.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash function load_script() { if [ -f "$1" ]; then diff --git a/dotfiles/.screenlayout/wallpapers.sh b/dotfiles/.screenlayout/wallpapers.sh index 3740c24..1b684b9 100755 --- a/dotfiles/.screenlayout/wallpapers.sh +++ b/dotfiles/.screenlayout/wallpapers.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Dynamically load background with feh feh_command="feh --bg-fill" diff --git a/dotfiles/.scripts/autostart_desktop.sh b/dotfiles/.scripts/autostart_desktop.sh index e8461fe..4d962c8 100755 --- a/dotfiles/.scripts/autostart_desktop.sh +++ b/dotfiles/.scripts/autostart_desktop.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash for file in $HOME/.config/autostart/*; do exec_line=$(cat "$file" | grep '^Exec' | cut -d '=' -f2-) diff --git a/dotfiles/.scripts/brightness.sh b/dotfiles/.scripts/brightness.sh index 4000c83..24d1a94 100755 --- a/dotfiles/.scripts/brightness.sh +++ b/dotfiles/.scripts/brightness.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash if [[ $# != 1 ]]; then echo "Usage: $0 " diff --git a/flake.nix b/flake.nix index 66ec03c..a09d4cd 100644 --- a/flake.nix +++ b/flake.nix @@ -21,7 +21,9 @@ homeConfigurations.random = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.${system}; - modules = [ ./home-manager/home.nix ]; + modules = [ + ./home-manager/home.nix + ]; }; }; } diff --git a/home-manager/home.nix b/home-manager/home.nix index d6019c2..ef9740d 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -4,13 +4,44 @@ homeDirectory = "/home/random"; }; + nixpkgs.config.allowUnfree = true; home.packages = with pkgs; [ - meslo-lgs-nf + feh + clang + cargo neofetch + microsoft-edge + nextcloud-client + bitwarden-cli + bitwarden + discord + isync + emacsPackages.all-the-icons-nerd-fonts ]; + home.file = { + ".scripts".source = ../dotfiles/.scripts; + ".mbsyncrc".source = ../dotfiles/.mbsyncrc; + ".Xresources".source = ../dotfiles/.Xresources; + ".screenlayout".source = ../dotfiles/.screenlayout; + ".config/i3/config".source = ../dotfiles/.config/i3/config; + ".local/share/fonts".source = ../dotfiles/.local/share/fonts; + ".config/rofi/config.rasi".source = ../dotfiles/.config/rofi/config.rasi; + ".config/polybar/config.ini".source = ../dotfiles/.config/polybar/config.ini; + + # Emacs files + ".emacs".source = ../dotfiles/.emacs; + ".emacs.d/config.org".source = ../dotfiles/.emacs.d/config.org; + ".emacs.d/terminal.org".source = ../dotfiles/.emacs.d/terminal.org; + ".emacs.d/functions.org".source = ../dotfiles/.emacs.d/functions.org; + ".emacs.d/email.org".source = ../dotfiles/.emacs.d/email.org; + ".emacs.d/org.org".source = ../dotfiles/.emacs.d/org.org; + ".emacs.d/lsp.org".source = ../dotfiles/.emacs.d/lsp.org; + }; + programs = { home-manager.enable = true; + emacs.enable = true; zoxide.enable = true; eza.enable = true; fzf.enable = true; @@ -27,13 +58,19 @@ enableCompletion = true; enableAutosuggestions = true; syntaxHighlighting.enable = true; + shellAliases = { update-system = "sudo nixos-rebuild switch --flake ~/dotfiles"; update-user = "home-manager switch --flake ~/dotfiles"; + update-all = "update-system && update-user"; }; plugins = [ - { name = "powerlevel10k-config"; src = ../dotfiles; file = ".p10k.zsh"; } + { + name = "powerlevel10k-config"; + src = ../dotfiles; + file = ".p10k.zsh"; + } ]; zplug = { diff --git a/nixos/configuration.nix b/nixos/configuration.nix index 697e788..b3c0e52 100644 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -111,16 +111,10 @@ environment.systemPackages = with pkgs; [ vim git - tmux - clang - emacs - microsoft-edge + picom + cmake emacsPackages.vterm emacsPackages.mu4e - isync - bitwarden - bitwarden-cli - nextcloud-client ]; system.stateVersion = "23.11";