firefox: add addons per nix
This commit is contained in:
parent
1f76c7359e
commit
a5226f566e
14 changed files with 422 additions and 241 deletions
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
# cpp
|
||||
bear
|
||||
clang-tools
|
||||
|
||||
#sql
|
||||
nodePackages.sql-formatter
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@ in
|
|||
home.packages = with pkgs; [
|
||||
vesktop
|
||||
kitty
|
||||
firefox
|
||||
fish
|
||||
ripgrep
|
||||
rm-improved
|
||||
|
|
@ -49,6 +48,7 @@ in
|
|||
greetd.regreet
|
||||
sops
|
||||
flake-checker
|
||||
ffmpeg
|
||||
(callPackage
|
||||
../override/streamdeck.nix
|
||||
{ })
|
||||
|
|
@ -63,8 +63,11 @@ in
|
|||
programs.oxidash.enable = true;
|
||||
programs.oxishut.enable = true;
|
||||
programs.oxipaste.enable = true;
|
||||
programs.hyprdock.enable = true;
|
||||
programs.reset.enable = true;
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
home.username = "dashie";
|
||||
home.homeDirectory = "/home/dashie";
|
||||
home.stateVersion = "24.05";
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ let
|
|||
inputs.oxinoti.homeManagerModules.default
|
||||
inputs.oxidash.homeManagerModules.default
|
||||
inputs.oxipaste.homeManagerModules.default
|
||||
inputs.hyprdock.homeManagerModules.default
|
||||
# inputs.hyprland.homeManagerModules.default
|
||||
inputs.reset.homeManagerModules.default
|
||||
inputs.nix-flatpak.homeManagerModules.nix-flatpak
|
||||
inputs.sops-nix.homeManagerModules.sops
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
"$mod SUPER,G,exec,oxicalc"
|
||||
"$mod SUPER,D,exec,oxishut"
|
||||
"$mod SUPER,A,exec,oxipaste"
|
||||
"$mod SUPERSHIFT,P,exec,hyprdock --gui"
|
||||
"$mod SUPERSHIFT,L,exec, playerctl -a pause & hyprlock & systemctl suspend"
|
||||
"$mod SUPERSHIFT,K,exec, playerctl -a pause & hyprlock & systemctl hibernate"
|
||||
|
||||
|
|
@ -242,8 +243,6 @@
|
|||
"ironbar"
|
||||
"firefox"
|
||||
"oxipaste_daemon"
|
||||
# TODO: is this necessary?
|
||||
#"/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
|
||||
"nextcloud --background"
|
||||
"oxinoti"
|
||||
] ++ config.programs.hyprland.extra_autostart;
|
||||
|
|
|
|||
|
|
@ -7,5 +7,7 @@
|
|||
./ssh.nix
|
||||
./direnv.nix
|
||||
./git.nix
|
||||
./firefox.nix
|
||||
./keepass.nix
|
||||
];
|
||||
}
|
||||
|
|
|
|||
29
nix/programs/individual_configs/firefox.nix
Normal file
29
nix/programs/individual_configs/firefox.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
{ inputs, pkgs, ... }: {
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
|
||||
policies = {
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
DisablePocket = true;
|
||||
DisplayBookmarksToolbar = "never";
|
||||
DisplayMenuBar = "default-off";
|
||||
};
|
||||
profiles.dashie = {
|
||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
ublock-origin
|
||||
darkreader
|
||||
privacy-badger
|
||||
vimium
|
||||
keepassxc-browser
|
||||
i-dont-care-about-cookies
|
||||
tokyo-night-v2
|
||||
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
26
nix/programs/individual_configs/keepass.nix
Normal file
26
nix/programs/individual_configs/keepass.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
xdg.configFile."keepassxc/keepassxc.ini" = {
|
||||
text =
|
||||
''
|
||||
[General]
|
||||
ConfigVersion=2
|
||||
|
||||
[Browser]
|
||||
CustomProxyLocation=
|
||||
Enabled=true
|
||||
|
||||
[GUI]
|
||||
ApplicationTheme=classic
|
||||
HidePasswords=true
|
||||
TrayIconAppearance=monochrome-light
|
||||
|
||||
[PasswordGenerator]
|
||||
AdditionalChars=
|
||||
ExcludedChars=
|
||||
Length=18
|
||||
|
||||
[Security]
|
||||
EnableCopyOnDoubleClick=true
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
@ -28,6 +28,7 @@ vim.g.mkdp_auto_start = 1
|
|||
vim.g.loaded_netrw = 1
|
||||
vim.g.loaded_netrwPlugin = 1
|
||||
vim.g.autoformat = false
|
||||
|
||||
for k, v in pairs(options) do
|
||||
vim.opt[k] = v
|
||||
end
|
||||
|
|
|
|||
|
|
@ -5,179 +5,200 @@ return {
|
|||
{
|
||||
"neovim/nvim-lspconfig",
|
||||
---@class PluginLspOpts
|
||||
opts = {
|
||||
format_notify = false,
|
||||
-- LSP Server Settings
|
||||
---@type lspconfig.options
|
||||
servers = {
|
||||
rust_analyzer = {
|
||||
mason = false,
|
||||
},
|
||||
marksman = {
|
||||
mason = false,
|
||||
},
|
||||
clangd = {
|
||||
mason = false,
|
||||
},
|
||||
jdtls = {
|
||||
mason = false,
|
||||
},
|
||||
gopls = {
|
||||
mason = false,
|
||||
},
|
||||
pyright = {
|
||||
mason = false,
|
||||
},
|
||||
ruff_lsp = {
|
||||
mason = false,
|
||||
},
|
||||
texlab = {
|
||||
mason = false,
|
||||
},
|
||||
taplo = {
|
||||
keys = {
|
||||
{
|
||||
"K",
|
||||
function()
|
||||
if vim.fn.expand("%:t") == "Cargo.toml" and require("crates").popup_available() then
|
||||
require("crates").show_popup()
|
||||
else
|
||||
vim.lsp.buf.hover()
|
||||
end
|
||||
opts = function(_, opts)
|
||||
local path = vim.fn.stdpath("config") .. "/spell/ltex.dictionary.en-US.txt"
|
||||
local words = {}
|
||||
|
||||
local file, err = io.open(path, "r")
|
||||
if err ~= nil then
|
||||
os.execute("mkdir " .. vim.fn.stdpath("config") .. "/spell")
|
||||
file = io.open(path, "w")
|
||||
file:write("")
|
||||
file:close()
|
||||
file = io.open(path, "r")
|
||||
end
|
||||
for word in file:lines() do
|
||||
table.insert(words, word)
|
||||
end
|
||||
local new_opts = {
|
||||
format_notify = false,
|
||||
-- LSP Server Settings
|
||||
---@type lspconfig.options
|
||||
servers = {
|
||||
rust_analyzer = {
|
||||
mason = false,
|
||||
},
|
||||
marksman = {
|
||||
mason = false,
|
||||
},
|
||||
clangd = {
|
||||
mason = false,
|
||||
},
|
||||
jdtls = {
|
||||
mason = false,
|
||||
},
|
||||
gopls = {
|
||||
mason = false,
|
||||
},
|
||||
pyright = {
|
||||
mason = false,
|
||||
},
|
||||
ruff_lsp = {
|
||||
mason = false,
|
||||
},
|
||||
texlab = {
|
||||
mason = false,
|
||||
},
|
||||
taplo = {
|
||||
keys = {
|
||||
{
|
||||
"K",
|
||||
function()
|
||||
if vim.fn.expand("%:t") == "Cargo.toml" and require("crates").popup_available() then
|
||||
require("crates").show_popup()
|
||||
else
|
||||
vim.lsp.buf.hover()
|
||||
end
|
||||
end,
|
||||
desc = "Show Crate Documentation",
|
||||
},
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
bashls = {
|
||||
mason = false,
|
||||
},
|
||||
ansiblels = {
|
||||
mason = false,
|
||||
},
|
||||
omnisharp = {
|
||||
mason = false,
|
||||
handlers = {
|
||||
["textDocument/definition"] = function(...)
|
||||
return require("omnisharp_extended").handler(...)
|
||||
end,
|
||||
desc = "Show Crate Documentation",
|
||||
},
|
||||
keys = {
|
||||
{
|
||||
"<leader>oe",
|
||||
function()
|
||||
require("omnisharp_extended").telescope_lsp_definitions()
|
||||
end,
|
||||
desc = "Goto Definition",
|
||||
},
|
||||
},
|
||||
cmd = {
|
||||
-- no comment
|
||||
"OmniSharp",
|
||||
"-z",
|
||||
"--hostPID",
|
||||
tostring(vim.fn.getpid()),
|
||||
"DotNet:enablePackageRestore=false",
|
||||
"--encoding",
|
||||
"utf-8",
|
||||
"--languageserver",
|
||||
"FormattingOptions:EnableEditorConfigSupport=true",
|
||||
"FormattingOptions:OrganizeImports=true",
|
||||
"RoslynExtensionsOptions:EnableAnalyzersSupport=true",
|
||||
"RoslynExtensionsOptions:EnableImportCompletion=true",
|
||||
-- inlay hints are bugged until next release.....
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:EnableForParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForLiteralParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForIndexerParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForObjectCreationParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForOtherParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:SuppressForParametersThatDifferOnlyBySuffix=false",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:SuppressForParametersThatMatchMethodIntent=false",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:SuppressForParametersThatMatchArgumentName=false",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:EnableForTypes=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForImplicitVariableTypes=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForLambdaParameterTypes=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForImplicitObjectCreation=true",
|
||||
"Sdk:IncludePrereleases=true",
|
||||
},
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
bashls = {
|
||||
mason = false,
|
||||
},
|
||||
ansiblels = {
|
||||
mason = false,
|
||||
},
|
||||
omnisharp = {
|
||||
mason = false,
|
||||
handlers = {
|
||||
["textDocument/definition"] = function(...)
|
||||
return require("omnisharp_extended").handler(...)
|
||||
end,
|
||||
typst_lsp = {
|
||||
settings = {
|
||||
experimentalFormatterMode = "on",
|
||||
exportPdf = "onSave",
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
keys = {
|
||||
nil_ls = {
|
||||
settings = {
|
||||
["nil"] = {
|
||||
formatting = {
|
||||
command = { "nixpkgs-fmt" },
|
||||
},
|
||||
},
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
ltex = {
|
||||
settings = {
|
||||
ltex = {
|
||||
checkFrequency = "save",
|
||||
dictionary = {
|
||||
["en-US"] = words,
|
||||
},
|
||||
},
|
||||
},
|
||||
filetypes = {
|
||||
"bib",
|
||||
"gitcommit",
|
||||
"markdown",
|
||||
"org",
|
||||
"plaintex",
|
||||
"rst",
|
||||
"rnoweb",
|
||||
"tex",
|
||||
"pandoc",
|
||||
"typst",
|
||||
"typ",
|
||||
"text",
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
sqls = {
|
||||
mason = false,
|
||||
},
|
||||
lemminx = {
|
||||
mason = false,
|
||||
},
|
||||
opencl_ls = {
|
||||
mason = false,
|
||||
},
|
||||
yamlls = {
|
||||
mason = false,
|
||||
},
|
||||
zls = {
|
||||
mason = false,
|
||||
},
|
||||
jsonls = {
|
||||
mason = false,
|
||||
cmd = { "vscode-json-languageserver", "--stdio" },
|
||||
},
|
||||
cssls = {
|
||||
mason = false,
|
||||
cmd = { "css-languageserver", "--stdio" },
|
||||
},
|
||||
lua_ls = {
|
||||
mason = false,
|
||||
{
|
||||
"<leader>oe",
|
||||
function()
|
||||
require("omnisharp_extended").telescope_lsp_definitions()
|
||||
end,
|
||||
desc = "Goto Definition",
|
||||
},
|
||||
},
|
||||
cmd = {
|
||||
-- no comment
|
||||
"OmniSharp",
|
||||
"-z",
|
||||
"--hostPID",
|
||||
tostring(vim.fn.getpid()),
|
||||
"DotNet:enablePackageRestore=false",
|
||||
"--encoding",
|
||||
"utf-8",
|
||||
"--languageserver",
|
||||
"FormattingOptions:EnableEditorConfigSupport=true",
|
||||
"FormattingOptions:OrganizeImports=true",
|
||||
"RoslynExtensionsOptions:EnableAnalyzersSupport=true",
|
||||
"RoslynExtensionsOptions:EnableImportCompletion=true",
|
||||
-- inlay hints are bugged until next release.....
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:EnableForParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForLiteralParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForIndexerParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForObjectCreationParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForOtherParameters=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:SuppressForParametersThatDifferOnlyBySuffix=false",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:SuppressForParametersThatMatchMethodIntent=false",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:SuppressForParametersThatMatchArgumentName=false",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:EnableForTypes=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForImplicitVariableTypes=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForLambdaParameterTypes=true",
|
||||
-- "RoslynExtensionsOptions:InlayHintsOptions:ForImplicitObjectCreation=true",
|
||||
"Sdk:IncludePrereleases=true",
|
||||
},
|
||||
},
|
||||
typst_lsp = {
|
||||
settings = {
|
||||
experimentalFormatterMode = "on",
|
||||
exportPdf = "onSave",
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
nil_ls = {
|
||||
settings = {
|
||||
["nil"] = {
|
||||
formatting = {
|
||||
command = { "nixpkgs-fmt" },
|
||||
},
|
||||
},
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
ltex = {
|
||||
settings = {
|
||||
ltex = {
|
||||
checkFrequency = "save",
|
||||
},
|
||||
},
|
||||
filetypes = {
|
||||
"bib",
|
||||
"gitcommit",
|
||||
"markdown",
|
||||
"org",
|
||||
"plaintex",
|
||||
"rst",
|
||||
"rnoweb",
|
||||
"tex",
|
||||
"pandoc",
|
||||
"typst",
|
||||
"typ",
|
||||
},
|
||||
mason = false,
|
||||
},
|
||||
sqls = {
|
||||
mason = false,
|
||||
},
|
||||
lemminx = {
|
||||
mason = false,
|
||||
},
|
||||
opencl_ls = {
|
||||
mason = false,
|
||||
},
|
||||
yamlls = {
|
||||
mason = false,
|
||||
},
|
||||
zls = {
|
||||
mason = false,
|
||||
},
|
||||
jsonls = {
|
||||
mason = false,
|
||||
cmd = { "vscode-json-languageserver", "--stdio" },
|
||||
},
|
||||
cssls = {
|
||||
mason = false,
|
||||
cmd = { "css-languageserver", "--stdio" },
|
||||
},
|
||||
lua_ls = {
|
||||
mason = false,
|
||||
{
|
||||
Lua = {
|
||||
workspace = {
|
||||
checkThirdParty = false,
|
||||
},
|
||||
completion = {
|
||||
callSnippet = "Replace",
|
||||
Lua = {
|
||||
workspace = {
|
||||
checkThirdParty = false,
|
||||
},
|
||||
completion = {
|
||||
callSnippet = "Replace",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
return vim.tbl_deep_extend("keep", new_opts, opts)
|
||||
end,
|
||||
init = function()
|
||||
local keys = require("lazyvim.plugins.lsp.keymaps").get()
|
||||
local my_keys = require("config.lsp-keymap").get()
|
||||
|
|
|
|||
|
|
@ -281,4 +281,15 @@ return {
|
|||
},
|
||||
{ "akinsho/git-conflict.nvim", version = "*", config = true },
|
||||
{ "Hoffs/omnisharp-extended-lsp.nvim" },
|
||||
{
|
||||
"barreiroleo/ltex_extra.nvim",
|
||||
branch = "dev",
|
||||
ft = { "markdown", "tex", "typst", "typ", "text" },
|
||||
config = function()
|
||||
require("ltex_extra").setup({
|
||||
load_langs = { "en-US" },
|
||||
path = vim.fn.stdpath("config") .. "/spell",
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue