diff --git a/home/firefox/default.nix b/home/firefox/default.nix index 5df2dda4..87b3fda9 100644 --- a/home/firefox/default.nix +++ b/home/firefox/default.nix @@ -4,7 +4,6 @@ profiles.default = { settings = { "app.shield.optoutstudies.enabled" = false; - "browser.startup.homepage" = "https://cloud.xenia.me.uk"; "browser.bookmarks.addedImportButton" = true; "browser.bookmarks.showMobileBookmarks" = true; "browser.toolbars.bookmarks.visibility" = "newtab"; @@ -39,13 +38,33 @@ force = true; order = [ "DuckDuckGo" ]; engines = { - "MyNixOS" = { - urls = - [{ template = "https://mynixos.com/search?q={searchTerms}"; }]; + "NixOS Packages" = { + urls = [{ + template = + "http://search.nixos.org/packages?channel=unstable&size=50&sort=relevance&type=packages&query={searchTerms}"; + }]; icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; definedAliases = [ "@np" ]; }; + "NixOS Options" = { + urls = [{ + template = + "http://search.nixos.org/options?channel=unstable&size=50&sort=relevance&type=packages&query={searchTerms}"; + }]; + icon = + "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "@np" ]; + }; + "Home Manager Options" = { + urls = [{ + template = + "https://mipmip.github.io/home-manager-option-search/?query={searchTerms}"; + }]; + icon = + "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "@hm" ]; + }; "NixOS Wiki" = { urls = [{ template = "https://nixos.wiki/index.php?search={searchTerms}"; @@ -66,55 +85,48 @@ [{ template = "https://github.com/search?q={searchTerms}"; }]; definedAliases = [ "@gh" ]; }; + "MyNixOS" = { + urls = + [{ template = "https://mynixos.com/search?q={searchTerms}"; }]; + icon = + "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "@mn" ]; + }; }; }; - bookmarks = [{ - name = "toolbar"; - toolbar = true; - bookmarks = [ - { - name = "Wikipedia"; - tags = [ "wiki" ]; - keyword = "wiki"; - url = "https://en.wikipedia.org"; - } - { - name = "NixOS Wiki"; - tags = [ "wiki" "nix" ]; - url = "https://nixos.wiki/"; - } - { - name = "Arch Wiki"; - tags = [ "wiki" "arch" ]; - url = "https://wiki.archlinux.org/"; - } - { - name = "Nextcloud"; - tags = [ "cloud" "storage" "federation" "xenia" ]; - url = "https://cloud.xenia.me.uk"; - } - { - name = "Proton Mail"; - tags = [ "email" ]; - url = "https://mail.proton.me"; - } - { - name = "Gitea"; - tags = [ "git" "source" "xenia" ]; - url = "https://git.xenia.me.uk"; - } - { - name = "GitHub"; - tags = [ "git" "source" ]; - url = "https://github.com"; - } - { - name = "GitLab"; - tags = [ "git" "source" ]; - url = "https://gitlab.com"; - } - ]; - }]; + bookmarks = [ + { + name = "Wikipedia"; + tags = [ "wiki" ]; + keyword = "wiki"; + url = "https://en.wikipedia.org"; + } + { + name = "NixOS Wiki"; + tags = [ "wiki" "nix" ]; + url = "https://nixos.wiki/"; + } + { + name = "Arch Wiki"; + tags = [ "wiki" "arch" ]; + url = "https://wiki.archlinux.org/"; + } + { + name = "Gitea"; + tags = [ "git" "source" "xenia" ]; + url = "https://git.xenia.me.uk"; + } + { + name = "GitHub"; + tags = [ "git" "source" ]; + url = "https://github.com"; + } + { + name = "GitLab"; + tags = [ "git" "source" ]; + url = "https://gitlab.com"; + } + ]; }; }; } diff --git a/home/firefox/work.nix b/home/firefox/work.nix new file mode 100644 index 00000000..ba23a4c4 --- /dev/null +++ b/home/firefox/work.nix @@ -0,0 +1,105 @@ +{ ... }: + +{ + imports = [ ./default.nix ]; + programs.firefox.profiles.default = { + settings."browser.startup.homepage" = "https://nucleus.ukaea.uk"; + bookmarks = [{ + name = "toolbar"; + toolbar = true; + bookmarks = [ + { + name = "Gitea"; + tags = [ "git" "source" "xenia" ]; + url = "https://git.xenia.me.uk"; + } + { + name = "GitHub"; + tags = [ "git" "source" ]; + url = "https://github.com"; + } + { + name = "GitLab"; + tags = [ "git" "source" ]; + url = "https://gitlab.com"; + } + { + name = "UKAEA GitLab"; + tags = [ "git" "source" ]; + url = "https://git.ccfe.ac.uk"; + } + { + name = "Nucleus"; + url = "https://nucleus.ukaea.uk"; + } + { + name = "U4BW"; + tags = [ "admin" ]; + url = "https://ubw.unit4cloud.com/uk_aea_prod_web"; + } + { + name = "JET homepage"; + tags = [ "JET" ]; + url = "w3.jet.uk"; + } + { + name = "Physics Summary"; + tags = [ "JET" "operations" ]; + url = + "https://users.euro-fusion.org/pages/physics-summary/LatestSession.php"; + } + { + name = "JSPO"; + tags = [ "JET" "operations" ]; + url = "https://www.jspo.jet.uk/"; + } + { + name = "OpenWikis"; + bookmarks = [ + { + name = "Home page"; + tags = [ "JET" "operations" "wiki" ]; + url = "https://wiki.jetdata.eu/open/index.php?title=Main_Page"; + } + { + name = "Spectroscopy Group"; + tags = [ "JET" "operations" "wiki" ]; + url = + "https://wiki.jetdata.eu/open/index.php?title=Spectroscopy_Group:index"; + } + { + name = "KS5"; + tags = [ "JET" "operations" "wiki" ]; + url = "https://wiki.jetdata.eu/open/index.php?title=CXS:Topic3"; + } + { + name = "KT3"; + tags = [ "JET" "operations" "wiki" ]; + url = "https://wiki.jetdata.eu/open/index.php?title=KT3_Journals"; + } + ]; + } + { + name = "JET Mimics"; + bookmarks = [ + { + name = "Countdown"; + tags = [ "JET" "operations" "mimics" ]; + url = "http://webmimic.jet.uk/mc/codas/countdown"; + } + { + name = "KS5"; + tags = [ "JET" "operations" "mimics" ]; + url = "http://webmimic.jet.uk/DG/codas/ks5.mim.html"; + } + { + name = "KT3"; + tags = [ "JET" "operations" "mimics" ]; + url = "http://webmimic.jet.uk/DG/codas/kt3.mim.html"; + } + ]; + } + ]; + }]; + }; +} diff --git a/home/hyprland/hyprland.conf b/home/hyprland/hyprland.conf index 046a84e7..55704551 100644 --- a/home/hyprland/hyprland.conf +++ b/home/hyprland/hyprland.conf @@ -73,6 +73,8 @@ bind = SUPER, F1, exec, swaylock bind = SUPER, X, exec, emacsclient -c -a 'emacs' bind = SUPER, W, exec, pgrep firefox > /dev/null || firefox bind = SUPER, E, exec, pgrep thunderbird > /dev/null || thunderbird +bind = SUPER, F, exec, pgrep thunar > /dev/null || thunar +bind = SUPER, S, exec, pgrep ncspot > /dev/null || wezterm start --always-new-process ncspot bind = SUPER, V, exec, pgrep bitwarden > /dev/null || bitwarden # Rofi binds @@ -123,7 +125,7 @@ windowrule = workspace name:home,(.gamescope-wrapped) bind = SUPER, W, moveworkspacetomonitor, name:browser current bind = SUPER, W, workspace, name:browser bind = SUPER SHIFT, W, movetoworkspace, name:browser -windowrule = workspace name:browser,(firefox) +windowrule = workspace silent name:browser,(firefox) windowrulev2 = float,title:(File|Picture-in-Picture),class:(firefox) windowrulev2 = pin,title:(File|Picture-in-Picture),class:(firefox) @@ -131,7 +133,7 @@ windowrulev2 = pin,title:(File|Picture-in-Picture),class:(firefox) bind = SUPER, E, moveworkspacetomonitor, name:email current bind = SUPER, E, workspace, name:email bind = SUPER SHIFT, E, movetoworkspace, name:email -windowrule = workspace name:email,(thunderbird) +windowrule = workspace silent name:email,(thunderbird) # files bind = SUPER, F, moveworkspacetomonitor, name:files current @@ -140,6 +142,7 @@ bind = SUPER SHIFT, F, movetoworkspace, name:files windowrule = workspace name:files,(org.pwmt.zathura) windowrule = workspace name:files,^(libreoffice).* windowrule = workspace name:files,(Zotero) +windowrule = workspace silent name:files,(thunar) windowrulev2 = workspace name:files,title:(Open),class:(soffice) windowrulev2 = float,title:(Open),class:(soffice) @@ -147,18 +150,18 @@ windowrulev2 = float,title:(Open),class:(soffice) bind = SUPER, C, moveworkspacetomonitor, name:chat current bind = SUPER, C, workspace, name:chat bind = SUPER SHIFT, C, movetoworkspace, name:chat -windowrule = workspace name:chat,(Signal) -windowrule = workspace name:chat,(fractal) -windowrule = workspace name:chat,(discord) -windowrule = workspace name:chat,(teams-for-linux) +windowrule = workspace silent name:chat,(Signal) +windowrule = workspace silent name:chat,(fractal) +windowrule = workspace silent name:chat,(discord) +windowrule = workspace silent name:chat,(teams-for-linux) # call bind = SUPER, Z, moveworkspacetomonitor, name:call current bind = SUPER, Z, workspace, name:call bind = SUPER SHIFT, Z, movetoworkspace, name:call -windowrulev2 = workspace name:call,title:(Zoom|zoom) +windowrulev2 = workspace silent name:call,title:(Zoom|zoom) windowrulev2 = float,title:(Zoom|zoom) -windowrulev2 = move cursor 0 0,title:(Zoom|zoom) +windowrulev2 = center,title:(Zoom|zoom) windowrulev2 = maxsize 800 600,title:(Zoom|zoom) windowrulev2 = nofullscreenrequest,title:(Zoom|zoom) windowrulev2 = nomaximizerequest,title:(Zoom|zoom) @@ -167,13 +170,13 @@ windowrulev2 = nomaximizerequest,title:(Zoom|zoom) bind = SUPER, S, moveworkspacetomonitor, name:music current bind = SUPER, S, workspace, name:music bind = SUPER SHIFT, S, movetoworkspace, name:music -windowrulev2 = workspace name:music,class:(org.wezfurlong.wezterm),title:(ncspot) +windowrulev2 = workspace silent name:music,title:(ncspot) # vault bind = SUPER, V, moveworkspacetomonitor, name:vault current bind = SUPER, V, workspace, name:vault bind = SUPER SHIFT, V, movetoworkspace, name:vault -windowrule = workspace name:vault,(Bitwarden) +windowrule = workspace silent name:vault,(Bitwarden) # remote bind = SUPER, R, moveworkspacetomonitor, name:remote current diff --git a/hosts/Ronin/configuration.nix b/hosts/Ronin/configuration.nix index 66f229c3..556ee5a5 100644 --- a/hosts/Ronin/configuration.nix +++ b/hosts/Ronin/configuration.nix @@ -1,7 +1,8 @@ # Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). -{userConfig, ...}: let +{ userConfig, ... }: +let user = "elitherl"; hostName = "Ronin"; in { @@ -16,13 +17,13 @@ in { boot.loader.efi.canTouchEfiVariables = true; # Setup keyfile - boot.initrd.secrets = { - "/crypto_keyfile.bin" = null; - }; + boot.initrd.secrets = { "/crypto_keyfile.bin" = null; }; # Enable swap on luks - boot.initrd.luks.devices."luks-761eeb11-3091-4142-9232-4fb33165eccd".device = "/dev/disk/by-uuid/761eeb11-3091-4142-9232-4fb33165eccd"; - boot.initrd.luks.devices."luks-761eeb11-3091-4142-9232-4fb33165eccd".keyFile = "/crypto_keyfile.bin"; + boot.initrd.luks.devices."luks-761eeb11-3091-4142-9232-4fb33165eccd".device = + "/dev/disk/by-uuid/761eeb11-3091-4142-9232-4fb33165eccd"; + boot.initrd.luks.devices."luks-761eeb11-3091-4142-9232-4fb33165eccd".keyFile = + "/crypto_keyfile.bin"; networking.hostName = hostName; # Define your hostname. hardware.bluetooth.enable = true; @@ -31,7 +32,13 @@ in { ''; programs.light.enable = true; users.users.${user} = userConfig; - services.xserver.displayManager.defaultSession = "hyprland"; + services.greetd = { + enable = true; + settings = { + default_session.user = user; + initial_session.user = user; + }; + }; # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions diff --git a/hosts/Ronin/home.nix b/hosts/Ronin/home.nix index 9d7ad59f..a592965d 100644 --- a/hosts/Ronin/home.nix +++ b/hosts/Ronin/home.nix @@ -15,13 +15,16 @@ in { ../../home/ssh/work.nix ../../home/tui ../../home/hyprland + ../../home/firefox/work.nix ../../home/emacs/server.nix ../../home/wezterm + ../../home/zathura ]; home = { inherit username homeDirectory; stateVersion = "22.11"; packages = with pkgs; [ + thunderbird openfortivpn nomachine-client teams-for-linux @@ -29,7 +32,6 @@ in { ]; }; programs.home-manager.enable = true; - programs.chromium.enable = true; xdg.configFile."wallpaper.jpg".source = wallpapers.outputs.default; services.kanshi = { enable = true; @@ -74,4 +76,8 @@ in { bindl=,switch:Lid Switch,exec,pkill -HUP kanshi bindl=,switch:Lid Switch,exec,pkill -9 hyprpaper && hyprctl dispatch exec hyprpaper ''; + xdg.configFile."hypr/autostart.conf".text = '' + exec-once=${pkgs.thunderbird}/bin/thunderbird + exec-once=${pkgs.teams-for-linux}/bin/teams-for-linux + ''; } diff --git a/hosts/desktop.nix b/hosts/desktop.nix index 92e22c89..0a1d6d5c 100644 --- a/hosts/desktop.nix +++ b/hosts/desktop.nix @@ -1,12 +1,9 @@ { pkgs, ... }: -let - sddm-catppuccin-macchiato = - pkgs.callPackage ../pkgs/sddm-catppuccin-macchiato { }; -in { + +{ imports = [ ./common.nix ]; environment.systemPackages = with pkgs; [ libnotify - sddm-catppuccin-macchiato bitwarden signal-desktop libreoffice @@ -23,14 +20,8 @@ in { pulse.enable = true; }; xserver = { - enable = true; layout = "gb"; xkbVariant = ""; - displayManager.sddm = { - enable = true; - theme = "catppuccin-macchiato"; - settings = { General = { InputMethod = ""; }; }; - }; }; }; console.keyMap = "uk"; diff --git a/hosts/hyprland.nix b/hosts/hyprland.nix index f29873ad..b44c2568 100644 --- a/hosts/hyprland.nix +++ b/hosts/hyprland.nix @@ -9,6 +9,10 @@ blueman.enable = true; gvfs.enable = true; tumbler.enable = true; + greetd.settings = { + default_session.command = "Hyprland"; + initial_session.command = "Hyprland"; + }; }; xdg.portal.extraPortals = with pkgs; [ xdg-desktop-portal-gtk ]; programs = {