225 lines
		
	
	
	
		
			6.1 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			225 lines
		
	
	
	
		
			6.1 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ lib, config, ... }:
 | 
						|
 | 
						|
let
 | 
						|
  inherit (lib) mkIf;
 | 
						|
  inherit (config.colorscheme) palette; 
 | 
						|
 | 
						|
  cfg = config.ooknet.browser.firefox;
 | 
						|
  browser = config.ooknet.desktop.browser;
 | 
						|
  fonts = config.ooknet.fonts;
 | 
						|
  
 | 
						|
in
 | 
						|
 | 
						|
{
 | 
						|
  config = mkIf (browser == "firefox" || cfg.enable) {
 | 
						|
    xdg.configFile = {
 | 
						|
      "tridactyl/tridactylrc".text = ''
 | 
						|
        set searchurls.nix https://sourcegraph.com/search?q=context:global+lang:nix %s
 | 
						|
 | 
						|
        colorscheme ooknet
 | 
						|
 | 
						|
        unbind --mode=normal t
 | 
						|
        unbind --mode=normal gt
 | 
						|
        
 | 
						|
        bind / fillcmdline find
 | 
						|
        bind n findnext 1
 | 
						|
        bind N findnext -1
 | 
						|
 | 
						|
        bind gtr open http://192.168.1.210:9091/transmission/web/
 | 
						|
        bind ttr tabopen http://192.168.1.210:9091/transmission/web/
 | 
						|
        
 | 
						|
        bind gem open https://gmail.com
 | 
						|
        bind tem tabopen https://gmail.com
 | 
						|
 | 
						|
        bind gjf open http://192.168.1.210:8096
 | 
						|
        bind tjf tabopen http://192.168.1.210:8096
 | 
						|
      '';
 | 
						|
 | 
						|
      # based off base16 themes
 | 
						|
      # source: <https://github.com/bezmi/base16-tridactyl>
 | 
						|
      "tridactyl/themes/ooknet.css".text = /* css */ ''
 | 
						|
        :root {
 | 
						|
          --font: ${fonts.monospace.family};
 | 
						|
          --bg: #${palette.base00};
 | 
						|
          --fg: #${palette.base05};
 | 
						|
          --red: #${palette.base08};
 | 
						|
          --green: #${palette.base0B};
 | 
						|
          --blue: #${palette.base0D};
 | 
						|
          --yellow: #${palette.base0A};
 | 
						|
          --purple: #${palette.base0E};
 | 
						|
          --orange: #${palette.base09};
 | 
						|
          --cyan: #${palette.base0C};
 | 
						|
          --comment: #${palette.base04};
 | 
						|
          --selectedline: #${palette.base02};
 | 
						|
 | 
						|
 | 
						|
          --tridactyl-fg: var(--fg);
 | 
						|
          --tridactyl-bg: var(--bg);
 | 
						|
 | 
						|
          --tridactyl-url-fg: var(--green);
 | 
						|
          --tridactyl-url-bg: var(--bg);
 | 
						|
          
 | 
						|
          --tridactyl-highlight-box-bg: var(--selectedline);
 | 
						|
          --tridactyl-highlight-box-fg: var(--fg);
 | 
						|
 | 
						|
          --tridactyl-of-fg: var(--fg);
 | 
						|
          --tridactyl-of-bg: var(--selectedline);
 | 
						|
 | 
						|
          --tridactyl-cmdl-fg: var(--bg);
 | 
						|
          --tridactyl-cmdl-font-family: var(--selectedline);
 | 
						|
 | 
						|
          --tridactyl-cmplt-font-family: var(--font);
 | 
						|
          
 | 
						|
          --tridactyl-hintspan-font-family: var(--font);
 | 
						|
          --tridactyl-hintspan-fg: var(--bg) !important;
 | 
						|
          --tridactyl-hintspan-bg: var(--orange) !important;
 | 
						|
 | 
						|
          --tridactyl-hint-active-fg: none;
 | 
						|
          --tridactyl-hint-active-bg: var(--tridactyl-bg);
 | 
						|
          --tridactyl-hint-active-outline: var(--green);
 | 
						|
          --tridactyl-hint-bg: none;
 | 
						|
          --tridactyl-hint-outline: none;
 | 
						|
        } 
 | 
						|
 | 
						|
        #tridactyl-colon::before {
 | 
						|
          content: " ";
 | 
						|
          font-family: var(--font);
 | 
						|
          font-size: 1.5rem;
 | 
						|
          color: var(--green);
 | 
						|
          display: inline;
 | 
						|
          margin-left: 15px;
 | 
						|
        }
 | 
						|
 | 
						|
        #command-line-holder {
 | 
						|
          order: 1;
 | 
						|
          display: flex;
 | 
						|
          justify-content: center;
 | 
						|
          align-items: center;
 | 
						|
          border: 2px solid var(--tridactyl-fg);
 | 
						|
          background: var(--tridactyl-bg);
 | 
						|
        }
 | 
						|
 | 
						|
        #tridactyl-input {
 | 
						|
          padding: 1rem;
 | 
						|
          color: var(--tridactyl-fg);
 | 
						|
          width: 90%;
 | 
						|
          font-family: var(--font);
 | 
						|
          font-size: 1.5rem;
 | 
						|
          line-height: 1.5;
 | 
						|
          background: var(--tridactyl-bg);
 | 
						|
          padding-left: unset;
 | 
						|
          padding: 1rem;
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
        #completions table {
 | 
						|
          font-size: 0.8rem;
 | 
						|
          font-weight: 200;
 | 
						|
          border-spacing: 0;
 | 
						|
          table-layout: fixed;
 | 
						|
          padding: 1rem;
 | 
						|
          padding-top: 1rem;
 | 
						|
          padding-bottom: 1rem;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions > div {
 | 
						|
          max-height: calc(20 * var(--option-height));
 | 
						|
          min-height: calc(10 * var(--option-height));
 | 
						|
        }
 | 
						|
 | 
						|
        #completions {
 | 
						|
          --option-height: 1.4em;
 | 
						|
          color: var(--tridactyl-fg);
 | 
						|
          background: var(--tridactyl-bg);
 | 
						|
          display: inline-block;
 | 
						|
          font-size: unset;
 | 
						|
          font-weight: 200;
 | 
						|
          overflow: hidden;
 | 
						|
          width: 100%;
 | 
						|
          border-top: unset;
 | 
						|
          order: 2;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions .HistoryCompletionSource {
 | 
						|
          max-height: unset;
 | 
						|
          min-height: unset;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions .HistoryCompletionSource table {
 | 
						|
          width: 100%;
 | 
						|
          font-size: 9pt;
 | 
						|
          border-spacing: 0;
 | 
						|
          table-layout: fixed;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions .BmarkCompletionSource {
 | 
						|
          max-height: unset;
 | 
						|
          min-height: unset;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions table tr td.prefix,
 | 
						|
        #completions table tr td.privatewindow,
 | 
						|
        #completions table tr td.container,
 | 
						|
        #completions table tr td.icon {
 | 
						|
          display: none;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions .BufferCompletionSource table {
 | 
						|
          width: unset;
 | 
						|
          font-size: unset;
 | 
						|
          border-spacing: unset;
 | 
						|
          table-layout: unset;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions table tr .title {
 | 
						|
          width: 50%;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions table tr {
 | 
						|
          white-space: nowrap;
 | 
						|
          overflow: hidden;
 | 
						|
          text-overflow: ellipsis;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions .sectionHeader {
 | 
						|
          background: unset;
 | 
						|
          font-weight: bold;
 | 
						|
          border-bottom: unset;
 | 
						|
          padding: 1rem !important;
 | 
						|
          padding-left: unset;
 | 
						|
          padding-bottom: 0.2rem;
 | 
						|
        }
 | 
						|
 | 
						|
        #cmdline_iframe {
 | 
						|
          position: fixed !important;
 | 
						|
          bottom: unset;
 | 
						|
          top: 25% !important;
 | 
						|
          left: 10% !important;
 | 
						|
          z-index: 2147483647 !important;
 | 
						|
          width: 80% !important;
 | 
						|
          box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 20px !important;
 | 
						|
        }
 | 
						|
 | 
						|
        .TridactylStatusIndicator {
 | 
						|
          position: fixed !important;
 | 
						|
          bottom: 0 !important;
 | 
						|
          background: var(--tridactyl-bg) !important;
 | 
						|
          border: unset !important;
 | 
						|
          border: 1px var(--green) solid !important;
 | 
						|
          font-size: 12pt !important;
 | 
						|
          padding: 0.8ex !important;
 | 
						|
        }
 | 
						|
 | 
						|
        #completions .focused {
 | 
						|
          background: var(--green);
 | 
						|
          color: var(--bg);
 | 
						|
        }
 | 
						|
 | 
						|
        #completions .focused .url {
 | 
						|
          background: var(--green);
 | 
						|
          color: var(--bg);
 | 
						|
        }
 | 
						|
      '';
 | 
						|
    };
 | 
						|
  };
 | 
						|
}
 |