Move some packages out of nixos config, add nyxt back
TODO add bookmarks programatically to nyxt
This commit is contained in:
parent
46156f1a92
commit
29e17cb6b1
|
@ -9,6 +9,7 @@
|
||||||
../programs/sway/default.nix
|
../programs/sway/default.nix
|
||||||
../programs/shell/default.nix
|
../programs/shell/default.nix
|
||||||
../programs/emacs/default.nix
|
../programs/emacs/default.nix
|
||||||
|
../programs/nyxt/default.nix
|
||||||
../programs/firefox/default.nix
|
../programs/firefox/default.nix
|
||||||
../programs/cava/default.nix
|
../programs/cava/default.nix
|
||||||
../programs/obs/default.nix
|
../programs/obs/default.nix
|
||||||
|
@ -21,6 +22,7 @@
|
||||||
../scripts/default.nix
|
../scripts/default.nix
|
||||||
];
|
];
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
services = {
|
services = {
|
||||||
gpg-agent.pinentryFlavor = "gtk2";
|
gpg-agent.pinentryFlavor = "gtk2";
|
||||||
avizo.enable = true;
|
avizo.enable = true;
|
||||||
|
@ -98,6 +100,15 @@
|
||||||
fd
|
fd
|
||||||
ripgrep
|
ripgrep
|
||||||
ffmpeg
|
ffmpeg
|
||||||
|
mpv
|
||||||
|
xarchiver
|
||||||
|
libreoffice-fresh
|
||||||
|
inkscape
|
||||||
|
webcord
|
||||||
|
signal-desktop
|
||||||
|
whatsapp-for-linux
|
||||||
|
teams-for-linux
|
||||||
|
nomachine-client
|
||||||
];
|
];
|
||||||
stateVersion = "23.05";
|
stateVersion = "23.05";
|
||||||
};
|
};
|
||||||
|
|
122
programs/nyxt/bookmarks.lisp
Normal file
122
programs/nyxt/bookmarks.lisp
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
(
|
||||||
|
;; Personal
|
||||||
|
|
||||||
|
;; Messaging
|
||||||
|
( :url "https://web.whatsapp.com/"
|
||||||
|
:title "WhatApp Web"
|
||||||
|
:tags ("personal" "messaging"))
|
||||||
|
( :url "https://discord.com/app"
|
||||||
|
:title "Discord"
|
||||||
|
:tags ("personal" "messaging"))
|
||||||
|
;; Server
|
||||||
|
( :url "https://xenia.me.uk"
|
||||||
|
:title "Home Page"
|
||||||
|
:tags ("personal" "server"))
|
||||||
|
( :url "https://git.xenia.me.uk"
|
||||||
|
:title "Forgejo"
|
||||||
|
:tags ("personal" "server" "dev" "git"))
|
||||||
|
( :url "https://blog.xenia.me.uk"
|
||||||
|
:title "Blog"
|
||||||
|
:tags ("personal" "server"))
|
||||||
|
;; Dev
|
||||||
|
( :url "https://github.com"
|
||||||
|
:title "GitHub"
|
||||||
|
:tags ("personal" "dev" "git"))
|
||||||
|
;; EV
|
||||||
|
( :url "https://abetterrouteplanner.com/"
|
||||||
|
:title "ABRP - A Better Route Planner"
|
||||||
|
:tags ("personal" "ev" "map"))
|
||||||
|
;; Documentation
|
||||||
|
( :url "https://nixos-and-flakes.thiscute.world/"
|
||||||
|
:title "NixOS and Flakes"
|
||||||
|
:tags ("personal" "documentation"))
|
||||||
|
( :url "https://nix-community.github.io/home-manager/options.xhtml"
|
||||||
|
:title "Home Manager Configuration Options"
|
||||||
|
:tags ("personal" "documentation"))
|
||||||
|
( :url "https://mipmip.github.io/home-manager-option-search/"
|
||||||
|
:title "Home Manager Option Search"
|
||||||
|
:tags ("personal" "documentation"))
|
||||||
|
;; Awesome Repos
|
||||||
|
( :url "https://github.com/emacs-tw/awesome-emacs"
|
||||||
|
:title "Awesome Emacs"
|
||||||
|
:tags ("personal" "awesome" "git"))
|
||||||
|
;; Miscellaneous
|
||||||
|
( :url "https://www.colorhexa.com/"
|
||||||
|
:title "Colour Encyclopedia"
|
||||||
|
:tags ("personal" "miscellaneous"))
|
||||||
|
|
||||||
|
;; Work
|
||||||
|
|
||||||
|
( :url "https://nucleus.ukaea.uk/"
|
||||||
|
:title "Nucleus"
|
||||||
|
:tags ("work"))
|
||||||
|
( :url "https://marval.service.ukaea.uk/MSMSelfService/Index.aspx"
|
||||||
|
:title "Marval Helpdesk"
|
||||||
|
:tags ("work"))
|
||||||
|
( :url "https://ubw.unit4cloud.com/uk_aea_prod_web/Login/Login.aspx"
|
||||||
|
:title "Unit4 Business World"
|
||||||
|
:tags ("work"))
|
||||||
|
;; Dev
|
||||||
|
( :url "https://git.ccfe.ac.uk/"
|
||||||
|
:title "GitLab (CCFE)"
|
||||||
|
:tags ("work" "dev" "git"))
|
||||||
|
;; JET
|
||||||
|
( :url "http://w3.jet.uk/"
|
||||||
|
:title "JET Homepage"
|
||||||
|
:tags ("work" "jet"))
|
||||||
|
( :url "https://users.euro-fusion.org/pages/physics-summary/LatestSession.php"
|
||||||
|
:title "JET Physics Summary"
|
||||||
|
:tags ("work" "jet"))
|
||||||
|
( :url "https://www.jspo.jet.uk/pages/operations/jpecreports_2023.html"
|
||||||
|
:title "JSPO JPEC Reports"
|
||||||
|
:tags ("work" "jet"))
|
||||||
|
( :url "https://dvcm.jetdata.eu/"
|
||||||
|
:title "DVCM Homepage"
|
||||||
|
:tags ("work" "jet"))
|
||||||
|
;; JET Data Services
|
||||||
|
( :url "https://data.jet.uk/"
|
||||||
|
:title "JET Data Services"
|
||||||
|
:tags ("work" "jet" "data"))
|
||||||
|
( :url "https://data.jet.uk/ppf/browse/ppfquery"
|
||||||
|
:title "PPF Query"
|
||||||
|
:tags ("work" "jet" "data"))
|
||||||
|
( :url "https://data.jet.uk/reqco/myrequests"
|
||||||
|
:title "ReqCo"
|
||||||
|
:tags ("work" "jet" "data"))
|
||||||
|
;; MAST-U
|
||||||
|
( :url "https://users.mastu.ukaea.uk/home"
|
||||||
|
:title "MAST-U Users Page"
|
||||||
|
:tags ("work" "mast-u"))
|
||||||
|
( :url "https://intranet.ccfe.ac.uk/mastu-handbook"
|
||||||
|
:title "MAST-U Diagnostic Handbook"
|
||||||
|
:tags ("work" "mast-u"))
|
||||||
|
;; OpenWiki
|
||||||
|
( :url "https://wiki.jetdata.eu/open/index.php?title=Main_Page"
|
||||||
|
:title "OpenWiki Homepage"
|
||||||
|
:tags ("work" "openwiki"))
|
||||||
|
( :url "https://wiki.jetdata.eu/open/index.php?title=Diagnostic_Coordinator_Wiki"
|
||||||
|
:title "Diagnostic Coordinator Wiki"
|
||||||
|
:tags ("work" "openwiki"))
|
||||||
|
( :url "https://wiki.jetdata.eu/open/index.php?title=Spectroscopy_Group:index"
|
||||||
|
:title "Spectroscopy Group Wiki"
|
||||||
|
:tags ("work" "openwiki"))
|
||||||
|
( :url "https://wiki.jetdata.eu/open/index.php?title=CXS:Topic3"
|
||||||
|
:title "KS5 Wiki"
|
||||||
|
:tags ("work" "openwiki"))
|
||||||
|
( :url "https://wiki.jetdata.eu/open/index.php?title=KT3_Journals"
|
||||||
|
:title "KT3 Wiki"
|
||||||
|
:tags ("work" "openwiki"))
|
||||||
|
;; Office
|
||||||
|
( :url "https://outlook.office.com/calendar/view/workweek"
|
||||||
|
:title "Outlook Calendar"
|
||||||
|
:tags ("work" "microsoft" "office"))
|
||||||
|
( :url "https://teams.microsoft.com/v2"
|
||||||
|
:title "Microsoft Teams"
|
||||||
|
:tags ("work" "microsoft" "office"))
|
||||||
|
( :url "https://ukaeauk-my.sharepoint.com/personal/evie_litherland-smith_ukaea_uk/"
|
||||||
|
:title "OneDrive"
|
||||||
|
:tags ("work" "microsoft" "office"))
|
||||||
|
( :url "https://ukaeauk.sharepoint.com/"
|
||||||
|
:title "Sharepoint"
|
||||||
|
:tags ("work" "microsoft" "office"))
|
||||||
|
)
|
65
programs/nyxt/config.lisp
Normal file
65
programs/nyxt/config.lisp
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
(define-configuration buffer
|
||||||
|
((default-modes
|
||||||
|
(pushnew 'nyxt/mode/emacs:emacs-mode %slot-value%))
|
||||||
|
(default-modes
|
||||||
|
(pushnew 'nyxt/mode/blocker:blocker-mode %slot-value%))))
|
||||||
|
|
||||||
|
(define-configuration status-buffer
|
||||||
|
((glyph-mode-presentation-p t)
|
||||||
|
(display-tabs-by-last-access-p nil)))
|
||||||
|
|
||||||
|
(define-configuration :emacs-mode ((glyph "ε")))
|
||||||
|
(define-configuration :force-https-mode ((glyph "ϕ")))
|
||||||
|
(define-configuration :user-script-mode ((glyph "u")))
|
||||||
|
(define-configuration :blocker-mode ((glyph "β")))
|
||||||
|
(define-configuration :proxy-mode ((glyph "π")))
|
||||||
|
(define-configuration :reduce-tracking-mode ((glyph "τ")))
|
||||||
|
(define-configuration :certificate-exception-mode ((glyph "χ")))
|
||||||
|
(define-configuration :style-mode ((glyph "ϕ")))
|
||||||
|
(define-configuration :cruise-control-mode ((glyph "σ")))
|
||||||
|
|
||||||
|
(define-configuration :document-mode
|
||||||
|
"Extend with custom keybinds"
|
||||||
|
((keyscheme-map
|
||||||
|
(keymaps:define-keyscheme-map "custom" (list :import %slot-value%)
|
||||||
|
nyxt/keyscheme:emacs (list
|
||||||
|
"C-c u" 'copy-username
|
||||||
|
"C-c p" 'copy-password)))))
|
||||||
|
|
||||||
|
(define-configuration :autofill-mode
|
||||||
|
"Add autofill functions for passwords"
|
||||||
|
((autofills
|
||||||
|
(list
|
||||||
|
(nyxt/mode/autofill:make-autofill
|
||||||
|
:name "name"
|
||||||
|
:fill "Evie Litherland-Smith")
|
||||||
|
(nyxt/mode/autofill:make-autofill
|
||||||
|
:name "email"
|
||||||
|
:fill "evie@xenia.me.uk")))))
|
||||||
|
|
||||||
|
(defvar *my-search-engines*
|
||||||
|
(list
|
||||||
|
'("osm" "https://www.openstreetmap.org/search?query=~a" "https://www.openstreetmap.org/")
|
||||||
|
'("rust" "https://doc.rust-lang.org/std/index.html?search=~a" "https://doc.rust-lang.org/std/index.html")
|
||||||
|
'("crates" "https://crates.io/search?q=~a" "https://crates.io/")
|
||||||
|
'("py" "https://docs.python.org/3/search.html?q=~a" "https://docs.python.org/3")
|
||||||
|
'("pypi" "https://pypi.org/search/?q=~a" "https://pypi.org/")
|
||||||
|
'("nixwiki" "https://nixos.wiki/index.php?search=~a&go=Go" "https://nixos.wiki/")
|
||||||
|
'("archwiki" "https://wiki.archlinux.org/index.php?search=~a" "https://wiki.archlinux.org/")
|
||||||
|
'("github" "https://github.com/search?utf8=✓&q=~a&type=repositories" "https://github.com/")
|
||||||
|
'("flathub" "https://flathub.org/apps/search?q=~a" "https://flathub.org/")
|
||||||
|
'("doi" "https://dx.doi.org/~a" "https://dx.doi.org/")
|
||||||
|
'("wiki" "https://en.wikipedia.org/w/index.php?search=~a" "https://en.wikipedia.org/")
|
||||||
|
'("ddg" "https://duckduckgo.com/?q=~a" "https://duckduckgo.com/"))
|
||||||
|
"List of search engines.")
|
||||||
|
|
||||||
|
(define-configuration context-buffer
|
||||||
|
"Go through the search engines above and make-search-engine out of them."
|
||||||
|
((search-engines
|
||||||
|
(mapcar (lambda (engine) (apply 'make-search-engine engine))
|
||||||
|
*my-search-engines*))))
|
||||||
|
|
||||||
|
(define-configuration browser
|
||||||
|
((restore-session-on-startup-p nil)))
|
||||||
|
|
||||||
|
(setf (uiop/os:getenv "GTK_THEME") "Adwaita:dark")
|
42
programs/nyxt/default.nix
Normal file
42
programs/nyxt/default.nix
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
fonts,
|
||||||
|
accentColour ? "base07",
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home.packages = [pkgs.nyxt];
|
||||||
|
xdg = {
|
||||||
|
configFile = {
|
||||||
|
"nyxt/config.lisp".text = with config.scheme.withHashtag; ''
|
||||||
|
;; Import custom configuration
|
||||||
|
(nyxt::load-lisp "${./config.lisp}")
|
||||||
|
;; Define custom theme
|
||||||
|
(define-configuration browser
|
||||||
|
((theme (make-instance 'theme:theme
|
||||||
|
:dark-p t
|
||||||
|
:font-family "${fonts.sansSerif.name}"
|
||||||
|
:monospace-font-family "${fonts.monospace.name}"
|
||||||
|
:background-color "${base00}"
|
||||||
|
:on-background-color "${base05}"
|
||||||
|
:primary-color "${config.scheme.withHashtag.${accentColour}}"
|
||||||
|
:on-primary-color "${base01}"
|
||||||
|
:secondary-color "${base03}"
|
||||||
|
:on-secondary-color "${base05}"
|
||||||
|
:accent-color "${cyan}"
|
||||||
|
:on-accent-color "${base01}"
|
||||||
|
:action-color "${cyan}"
|
||||||
|
:on-action-color "${base01}"
|
||||||
|
:success-color "${green}"
|
||||||
|
:on-success-color "${base01}"
|
||||||
|
:highlight-color "${magenta}"
|
||||||
|
:on-highlight-color "${base01}"
|
||||||
|
:warning-color "${yellow}"
|
||||||
|
:on-warning-color "${base01}"
|
||||||
|
:codeblock-color "${base02}"
|
||||||
|
:on-codeblock-color "${base05}"))))
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
# dataFile."nyxt/bookmarks.lisp".source = ./bookmarks.lisp;
|
||||||
|
};
|
||||||
|
}
|
|
@ -16,6 +16,11 @@
|
||||||
./wlogout/default.nix
|
./wlogout/default.nix
|
||||||
];
|
];
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
swaybg
|
||||||
|
(writeShellScriptBin "restart-swaybg" ''
|
||||||
|
pkill -9 -f swaybg
|
||||||
|
${pkgs.swaybg}/bin/swaybg -m fill -i ${../../wallpapers/default.jpg}
|
||||||
|
'')
|
||||||
(writeShellScriptBin "protonmail-setup-bridge" ''
|
(writeShellScriptBin "protonmail-setup-bridge" ''
|
||||||
pkill -9 -f protonmail-bridge
|
pkill -9 -f protonmail-bridge
|
||||||
${protonmail-bridge}/bin/protonmail-bridge -c
|
${protonmail-bridge}/bin/protonmail-bridge -c
|
||||||
|
@ -30,7 +35,9 @@
|
||||||
];
|
];
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = null;
|
package =
|
||||||
|
pkgs.swayfx.overrideAttrs
|
||||||
|
(old: {passthru.providedSessions = ["sway"];});
|
||||||
swaynag.enable = true;
|
swaynag.enable = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
xwayland = true;
|
xwayland = true;
|
||||||
|
@ -92,9 +99,9 @@
|
||||||
};
|
};
|
||||||
startup = [
|
startup = [
|
||||||
{command = "${pkgs.swaynotificationcenter}/bin/swaync";}
|
{command = "${pkgs.swaynotificationcenter}/bin/swaync";}
|
||||||
{command = "${pkgs.swaybg}/bin/swaybg -m fill -i ${../../wallpapers/default.jpg}";}
|
|
||||||
{command = "${pkgs.libsForQt5.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1";}
|
{command = "${pkgs.libsForQt5.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1";}
|
||||||
{command = "${pkgs.protonmail-bridge}/bin/protonmail-bridge -n";}
|
{command = "${pkgs.protonmail-bridge}/bin/protonmail-bridge -n";}
|
||||||
|
{command = "restart-swaybg";}
|
||||||
];
|
];
|
||||||
window = {
|
window = {
|
||||||
border = 1;
|
border = 1;
|
||||||
|
|
Reference in a new issue