refactor: replace 'with' with attrValues
All checks were successful
Discord / discord commits (push) Has been skipped
All checks were successful
Discord / discord commits (push) Has been skipped
This commit is contained in:
parent
b47c11362d
commit
194c140dc1
56 changed files with 675 additions and 608 deletions
|
@ -71,12 +71,15 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.supportedFilesystems = ["ext4" "xfs" "btrfs" "vfat" "ntfs"];
|
boot.supportedFilesystems = ["ext4" "xfs" "btrfs" "vfat" "ntfs"];
|
||||||
system.fsPackages = with pkgs; [
|
system.fsPackages = builtins.attrValues {
|
||||||
btrfs-progs
|
inherit
|
||||||
nfs-utils
|
(pkgs)
|
||||||
ntfs3g
|
btrfs-progs
|
||||||
xfsprogs
|
nfs-utils
|
||||||
];
|
ntfs3g
|
||||||
|
xfsprogs
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
environment.variables.NPM_CONFIG_GLOBALCONFIG = "/etc/npmrc";
|
environment.variables.NPM_CONFIG_GLOBALCONFIG = "/etc/npmrc";
|
||||||
environment.etc.npmrc.text = ''
|
environment.etc.npmrc.text = ''
|
||||||
|
@ -85,13 +88,16 @@
|
||||||
'';
|
'';
|
||||||
|
|
||||||
environment.systemPackages =
|
environment.systemPackages =
|
||||||
(with pkgs; [
|
(builtins.attrValues {
|
||||||
# Peripherals
|
# Peripherals
|
||||||
hdparm
|
inherit
|
||||||
pciutils
|
(pkgs)
|
||||||
usbutils
|
hdparm
|
||||||
rar
|
pciutils
|
||||||
])
|
usbutils
|
||||||
|
rar
|
||||||
|
;
|
||||||
|
})
|
||||||
++ [
|
++ [
|
||||||
nix-melt.packages.${pkgs.system}.default
|
nix-melt.packages.${pkgs.system}.default
|
||||||
|
|
||||||
|
|
|
@ -46,9 +46,9 @@
|
||||||
config.theme = "dracula-bat";
|
config.theme = "dracula-bat";
|
||||||
themes.dracula-bat.src = self.legacyPackages.${pkgs.system}.dracula.bat;
|
themes.dracula-bat.src = self.legacyPackages.${pkgs.system}.dracula.bat;
|
||||||
|
|
||||||
extraPackages = with pkgs.bat-extras; [
|
extraPackages = builtins.attrValues {
|
||||||
batman
|
inherit (pkgs.bat-extras) batman;
|
||||||
];
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,10 +59,10 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = [
|
||||||
(writeShellApplication {
|
(pkgs.writeShellApplication {
|
||||||
name = "chore";
|
name = "chore";
|
||||||
runtimeInputs = [git];
|
runtimeInputs = [pkgs.git];
|
||||||
|
|
||||||
text = ''
|
text = ''
|
||||||
DIR=''${1:-"$FLAKE"}
|
DIR=''${1:-"$FLAKE"}
|
||||||
|
|
|
@ -2,9 +2,7 @@
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: {
|
||||||
inherit (pkgs) vimPlugins;
|
|
||||||
in {
|
|
||||||
imports = [
|
imports = [
|
||||||
./git.nix
|
./git.nix
|
||||||
./langs
|
./langs
|
||||||
|
@ -63,11 +61,11 @@ in {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
plugins = [
|
plugins = [
|
||||||
vimPlugins.fzfWrapper
|
pkgs.vimPlugins.fzfWrapper
|
||||||
vimPlugins.fzf-vim
|
pkgs.vimPlugins.fzf-vim
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.todo-comments-nvim;
|
plugin = pkgs.vimPlugins.todo-comments-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
@ -76,7 +74,7 @@ in {
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.mini-nvim;
|
plugin = pkgs.vimPlugins.mini-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -1,13 +1,11 @@
|
||||||
{pkgs, ...}: let
|
{pkgs, ...}: {
|
||||||
inherit (pkgs) vimPlugins;
|
|
||||||
in {
|
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
plugins = [
|
plugins = [
|
||||||
vimPlugins.fugitive
|
pkgs.vimPlugins.fugitive
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.gitsigns-nvim;
|
plugin = pkgs.vimPlugins.gitsigns-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) getExe mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
in {
|
in {
|
||||||
programs = {
|
programs = {
|
||||||
|
@ -18,13 +19,13 @@ in {
|
||||||
viAlias = true;
|
viAlias = true;
|
||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
|
|
||||||
extraPackages = lib.mkIf neovimIde [
|
extraPackages = mkIf neovimIde [
|
||||||
pkgs.nodePackages.bash-language-server
|
pkgs.nodePackages.bash-language-server
|
||||||
pkgs.shellcheck
|
pkgs.shellcheck
|
||||||
];
|
];
|
||||||
|
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
lib.mkIf neovimIde
|
mkIf neovimIde
|
||||||
# lua
|
# lua
|
||||||
''
|
''
|
||||||
vim.api.nvim_create_autocmd('FileType', {
|
vim.api.nvim_create_autocmd('FileType', {
|
||||||
|
@ -37,7 +38,7 @@ in {
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
bashIde = {
|
bashIde = {
|
||||||
shellcheckPath = '${lib.getExe pkgs.shellcheck}',
|
shellcheckPath = '${getExe pkgs.shellcheck}',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
|
@ -4,17 +4,20 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
inherit (pkgs) vimPlugins;
|
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraPackages = with pkgs; [
|
extraPackages = builtins.attrValues {
|
||||||
gcc
|
inherit
|
||||||
clang-tools
|
(pkgs)
|
||||||
cmake-language-server
|
gcc
|
||||||
];
|
clang-tools
|
||||||
|
cmake-language-server
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
# lua
|
# lua
|
||||||
|
@ -41,9 +44,9 @@ in
|
||||||
});
|
});
|
||||||
'';
|
'';
|
||||||
|
|
||||||
plugins = [
|
plugins = builtins.attrValues {
|
||||||
vimPlugins.clangd_extensions-nvim
|
inherit (pkgs.vimPlugins) clangd_extensions-nvim;
|
||||||
];
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,9 +4,8 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) fileContents mkBefore mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
inherit (pkgs) vimPlugins;
|
|
||||||
inherit (lib) fileContents;
|
|
||||||
in {
|
in {
|
||||||
imports = [
|
imports = [
|
||||||
./bash.nix
|
./bash.nix
|
||||||
|
@ -22,10 +21,10 @@ in {
|
||||||
./web.nix
|
./web.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
programs = lib.mkIf neovimIde {
|
programs = mkIf neovimIde {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
lib.mkBefore
|
mkBefore
|
||||||
# lua
|
# lua
|
||||||
''
|
''
|
||||||
-- Start completion / snippet stuff
|
-- Start completion / snippet stuff
|
||||||
|
@ -69,30 +68,34 @@ in {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
plugins =
|
plugins =
|
||||||
(with vimPlugins; [
|
(builtins.attrValues {
|
||||||
nvim-lspconfig
|
inherit
|
||||||
lsp-status-nvim
|
(pkgs.vimPlugins)
|
||||||
lsp_lines-nvim
|
nvim-lspconfig
|
||||||
|
lsp-status-nvim
|
||||||
cmp-buffer
|
lsp_lines-nvim
|
||||||
cmp-nvim-lsp
|
cmp-buffer
|
||||||
cmp-path
|
cmp-nvim-lsp
|
||||||
cmp-spell
|
cmp-path
|
||||||
vim-vsnip
|
cmp-spell
|
||||||
])
|
vim-vsnip
|
||||||
|
;
|
||||||
|
})
|
||||||
++ [
|
++ [
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.nvim-cmp;
|
plugin = pkgs.vimPlugins.nvim-cmp;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config = fileContents ../plugins/cmp.lua;
|
config = fileContents ../plugins/cmp.lua;
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.nvim-autopairs;
|
plugin = pkgs.vimPlugins.nvim-autopairs;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
"require('nvim-autopairs').setup({})";
|
''
|
||||||
|
require('nvim-autopairs').setup({});
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -3,9 +3,10 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (pkgs) vimPlugins;
|
inherit (lib) getExe mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
|
|
||||||
javaSdk = pkgs.temurin-bin-17;
|
javaSdk = pkgs.temurin-bin-17;
|
||||||
javaPkgs = with pkgs; [gradle maven];
|
javaPkgs = builtins.attrValues {inherit (pkgs) gradle maven;};
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
home.packages = javaPkgs;
|
home.packages = javaPkgs;
|
||||||
|
|
||||||
xdg.dataFile.".gradle/gradle.properties".text = ''
|
xdg.dataFile.".gradle/gradle.properties".text = ''
|
||||||
|
@ -38,7 +38,7 @@ in
|
||||||
plugins = [
|
plugins = [
|
||||||
{
|
{
|
||||||
# TOOD: setup debugger https://github.com/mfussenegger/nvim-jdtls#debugger-via-nvim-dap
|
# TOOD: setup debugger https://github.com/mfussenegger/nvim-jdtls#debugger-via-nvim-dap
|
||||||
plugin = vimPlugins.nvim-jdtls;
|
plugin = pkgs.vimPlugins.nvim-jdtls;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
@ -48,7 +48,7 @@ in
|
||||||
local config = {
|
local config = {
|
||||||
capabilities = require('cmp_nvim_lsp').default_capabilities(),
|
capabilities = require('cmp_nvim_lsp').default_capabilities(),
|
||||||
|
|
||||||
cmd = { '${lib.getExe pkgs.jdt-language-server}' },
|
cmd = { '${getExe pkgs.jdt-language-server}' },
|
||||||
root_dir = vim.fs.dirname(vim.fs.find(
|
root_dir = vim.fs.dirname(vim.fs.find(
|
||||||
{ 'gradlew', '.git', 'mvnw', 'pom.xml' },
|
{ 'gradlew', '.git', 'mvnw', 'pom.xml' },
|
||||||
{ upward = true }
|
{ upward = true }
|
||||||
|
|
|
@ -4,15 +4,19 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraPackages = [
|
extraPackages = builtins.attrValues {
|
||||||
pkgs.vscode-langservers-extracted
|
inherit
|
||||||
pkgs.yaml-language-server
|
(pkgs)
|
||||||
];
|
vscode-langservers-extracted
|
||||||
|
yaml-language-server
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -4,21 +4,21 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
inherit (pkgs) vimPlugins;
|
|
||||||
|
|
||||||
flakeEnv = config.programs.bash.sessionVariables.FLAKE;
|
flakeEnv = config.programs.bash.sessionVariables.FLAKE;
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraPackages = [
|
extraPackages = builtins.attrValues {
|
||||||
pkgs.lua-language-server
|
inherit (pkgs) lua-language-server;
|
||||||
];
|
};
|
||||||
|
|
||||||
plugins = [
|
plugins = [
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.neodev-nvim;
|
plugin = pkgs.vimPlugins.neodev-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -6,22 +6,23 @@
|
||||||
vimplugin-easytables-src,
|
vimplugin-easytables-src,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
inherit (pkgs) vimPlugins;
|
|
||||||
|
|
||||||
inherit (import "${self}/lib" {inherit pkgs;}) buildPlugin;
|
inherit (import "${self}/lib" {inherit pkgs;}) buildPlugin;
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraPackages = [
|
extraPackages = builtins.attrValues {
|
||||||
pkgs.pandoc
|
inherit
|
||||||
|
(pkgs)
|
||||||
# LaTeX packages
|
pandoc
|
||||||
pkgs.texlab
|
texlab
|
||||||
pkgs.texliveFull
|
texliveFull
|
||||||
pkgs.rubber
|
rubber
|
||||||
];
|
;
|
||||||
|
};
|
||||||
|
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
# lua
|
# lua
|
||||||
|
@ -56,7 +57,7 @@ in
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.knap;
|
plugin = pkgs.vimPlugins.knap;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
self,
|
self,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) getExe hasPrefix mkIf removePrefix;
|
||||||
inherit (config.vars) hostName mainUser neovimIde;
|
inherit (config.vars) hostName mainUser neovimIde;
|
||||||
inherit (lib) getExe hasPrefix removePrefix;
|
|
||||||
|
|
||||||
defaultFormatter = self.formatter.${pkgs.system};
|
defaultFormatter = self.formatter.${pkgs.system};
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
flakeEnv = config.programs.bash.sessionVariables.FLAKE;
|
flakeEnv = config.programs.bash.sessionVariables.FLAKE;
|
||||||
flakeDir = "${removePrefix "/home/${mainUser}/" flakeEnv}";
|
flakeDir = "${removePrefix "/home/${mainUser}/" flakeEnv}";
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
assertions = [
|
assertions = [
|
||||||
{
|
{
|
||||||
assertion =
|
assertion =
|
||||||
|
|
|
@ -4,9 +4,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
withPython3 = true;
|
withPython3 = true;
|
||||||
|
|
|
@ -4,17 +4,21 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraPackages = with pkgs; [
|
extraPackages = builtins.attrValues {
|
||||||
cargo
|
inherit
|
||||||
rustc
|
(pkgs)
|
||||||
rust-analyzer
|
cargo
|
||||||
rustfmt
|
rustc
|
||||||
];
|
rust-analyzer
|
||||||
|
rustfmt
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -6,23 +6,29 @@
|
||||||
vimplugin-ts-error-translator-src,
|
vimplugin-ts-error-translator-src,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
inherit (config.vars) neovimIde;
|
inherit (config.vars) neovimIde;
|
||||||
inherit (pkgs) vimPlugins;
|
|
||||||
|
|
||||||
inherit (import "${self}/lib" {inherit pkgs;}) buildPlugin;
|
inherit (import "${self}/lib" {inherit pkgs;}) buildPlugin;
|
||||||
in
|
in
|
||||||
lib.mkIf neovimIde {
|
mkIf neovimIde {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
withNodeJs = true;
|
withNodeJs = true;
|
||||||
|
|
||||||
extraPackages = [
|
extraPackages = builtins.attrValues {
|
||||||
pkgs.nodejs_latest
|
inherit
|
||||||
pkgs.nodePackages.npm
|
(pkgs)
|
||||||
pkgs.nodePackages.neovim
|
nodejs_latest
|
||||||
|
vscode-langservers-extracted
|
||||||
|
;
|
||||||
|
|
||||||
pkgs.vscode-langservers-extracted
|
inherit
|
||||||
];
|
(pkgs.nodePackages)
|
||||||
|
npm
|
||||||
|
neovim
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
extraLuaConfig =
|
extraLuaConfig =
|
||||||
# lua
|
# lua
|
||||||
|
@ -122,11 +128,11 @@ in
|
||||||
'';
|
'';
|
||||||
|
|
||||||
plugins = [
|
plugins = [
|
||||||
vimPlugins.typescript-tools-nvim
|
pkgs.vimPlugins.typescript-tools-nvim
|
||||||
(buildPlugin "ts-error-translator" vimplugin-ts-error-translator-src)
|
(buildPlugin "ts-error-translator" vimplugin-ts-error-translator-src)
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.package-info-nvim;
|
plugin = pkgs.vimPlugins.package-info-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -5,20 +5,19 @@
|
||||||
nvim-theme-src,
|
nvim-theme-src,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (config.vars) neovimIde;
|
|
||||||
inherit (lib) fileContents optionals;
|
inherit (lib) fileContents optionals;
|
||||||
inherit (pkgs) vimPlugins;
|
inherit (config.vars) neovimIde;
|
||||||
in {
|
in {
|
||||||
programs = {
|
programs = {
|
||||||
neovim = {
|
neovim = {
|
||||||
extraPackages = with pkgs; [
|
extraPackages = builtins.attrValues {
|
||||||
bat
|
inherit (pkgs) bat;
|
||||||
];
|
};
|
||||||
|
|
||||||
plugins =
|
plugins =
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.dracula-nvim.overrideAttrs {
|
plugin = pkgs.vimPlugins.dracula-nvim.overrideAttrs {
|
||||||
src = nvim-theme-src;
|
src = nvim-theme-src;
|
||||||
};
|
};
|
||||||
type = "lua";
|
type = "lua";
|
||||||
|
@ -43,7 +42,7 @@ in {
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.indent-blankline-nvim;
|
plugin = pkgs.vimPlugins.indent-blankline-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
@ -80,21 +79,21 @@ in {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Deps of heirline config
|
# Deps of heirline config
|
||||||
vimPlugins.nvim-web-devicons
|
pkgs.vimPlugins.nvim-web-devicons
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.heirline-nvim;
|
plugin = pkgs.vimPlugins.heirline-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config = fileContents ./plugins/heirline.lua;
|
config = fileContents ./plugins/heirline.lua;
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
++ optionals neovimIde [
|
++ optionals neovimIde [
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.neo-tree-nvim;
|
plugin = pkgs.vimPlugins.neo-tree-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config = fileContents ./plugins/neotree.lua;
|
config = fileContents ./plugins/neotree.lua;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.codewindow-nvim;
|
plugin = pkgs.vimPlugins.codewindow-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
@ -123,7 +122,7 @@ in {
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.transparent-nvim;
|
plugin = pkgs.vimPlugins.transparent-nvim;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
|
|
|
@ -1,40 +1,34 @@
|
||||||
{pkgs, ...}: let
|
{pkgs, ...}: {
|
||||||
inherit (pkgs) vimPlugins;
|
programs.neovim.plugins = [
|
||||||
in {
|
{
|
||||||
programs = {
|
plugin = pkgs.vimPlugins.nvim-treesitter-context;
|
||||||
neovim = {
|
type = "lua";
|
||||||
plugins = [
|
config =
|
||||||
{
|
# lua
|
||||||
plugin = vimPlugins.nvim-treesitter-context;
|
''
|
||||||
type = "lua";
|
require('treesitter-context').setup({
|
||||||
config =
|
enable = true,
|
||||||
# lua
|
max_lines = 3,
|
||||||
''
|
min_window_height = 20,
|
||||||
require('treesitter-context').setup({
|
});
|
||||||
enable = true,
|
|
||||||
max_lines = 3,
|
|
||||||
min_window_height = 20,
|
|
||||||
});
|
|
||||||
|
|
||||||
vim.cmd.hi('TreesitterContextBottom', 'gui=underline guisp=Grey');
|
vim.cmd.hi('TreesitterContextBottom', 'gui=underline guisp=Grey');
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
||||||
vimPlugins.nvim-treesitter-textobjects
|
pkgs.vimPlugins.nvim-treesitter-textobjects
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = vimPlugins.nvim-treesitter.withAllGrammars;
|
plugin = pkgs.vimPlugins.nvim-treesitter.withAllGrammars;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config =
|
config =
|
||||||
# lua
|
# lua
|
||||||
''
|
''
|
||||||
require('nvim-treesitter.configs').setup({
|
require('nvim-treesitter.configs').setup({
|
||||||
highlight = { enable = true },
|
highlight = { enable = true },
|
||||||
indent = { enable = true },
|
indent = { enable = true },
|
||||||
});
|
});
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,9 @@
|
||||||
newSession = true;
|
newSession = true;
|
||||||
historyLimit = 30000;
|
historyLimit = 30000;
|
||||||
|
|
||||||
plugins = with pkgs.tmuxPlugins; [dracula];
|
plugins = builtins.attrValues {
|
||||||
|
inherit (pkgs.tmuxPlugins) dracula;
|
||||||
|
};
|
||||||
|
|
||||||
extraConfig =
|
extraConfig =
|
||||||
# bash
|
# bash
|
||||||
|
|
|
@ -10,27 +10,33 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
packages = with pkgs; [
|
packages =
|
||||||
(nerdfonts.override {
|
[
|
||||||
fonts = [
|
(pkgs.nerdfonts.override {
|
||||||
"JetBrainsMono"
|
fonts = [
|
||||||
"Go-Mono"
|
"JetBrainsMono"
|
||||||
"Iosevka"
|
"Go-Mono"
|
||||||
"NerdFontsSymbolsOnly"
|
"Iosevka"
|
||||||
"SpaceMono"
|
"NerdFontsSymbolsOnly"
|
||||||
"Ubuntu"
|
"SpaceMono"
|
||||||
"Noto"
|
"Ubuntu"
|
||||||
];
|
"Noto"
|
||||||
})
|
];
|
||||||
noto-fonts
|
})
|
||||||
noto-fonts-cjk
|
]
|
||||||
noto-fonts-emoji
|
++ (builtins.attrValues {
|
||||||
liberation_ttf
|
inherit
|
||||||
font-awesome
|
(pkgs)
|
||||||
meslo-lgs-nf
|
noto-fonts
|
||||||
jetbrains-mono
|
noto-fonts-cjk
|
||||||
ubuntu_font_family
|
noto-fonts-emoji
|
||||||
];
|
liberation_ttf
|
||||||
|
font-awesome
|
||||||
|
meslo-lgs-nf
|
||||||
|
jetbrains-mono
|
||||||
|
ubuntu_font_family
|
||||||
|
;
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
# Select internationalisation properties.
|
# Select internationalisation properties.
|
||||||
|
|
|
@ -4,53 +4,72 @@
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
environment.systemPackages =
|
environment.systemPackages =
|
||||||
(with self.packages.${pkgs.system}; [
|
(builtins.attrValues {
|
||||||
pokemon-colorscripts
|
inherit
|
||||||
repl
|
(self.packages.${pkgs.system})
|
||||||
])
|
pokemon-colorscripts
|
||||||
++ (with pkgs.nodePackages; [
|
repl
|
||||||
undollar
|
;
|
||||||
])
|
|
||||||
++ (with pkgs; [
|
inherit
|
||||||
alejandra
|
(pkgs.nodePackages)
|
||||||
|
undollar
|
||||||
|
;
|
||||||
|
|
||||||
|
inherit (pkgs) alejandra;
|
||||||
|
|
||||||
# Archiving
|
# Archiving
|
||||||
zip
|
inherit
|
||||||
unzip
|
(pkgs)
|
||||||
p7zip
|
zip
|
||||||
bzip2
|
unzip
|
||||||
gzip
|
p7zip
|
||||||
gnutar
|
bzip2
|
||||||
xz
|
gzip
|
||||||
|
gnutar
|
||||||
|
xz
|
||||||
|
;
|
||||||
|
|
||||||
# File management
|
# File management
|
||||||
findutils
|
inherit
|
||||||
diffutils
|
(pkgs)
|
||||||
utillinux
|
findutils
|
||||||
which
|
diffutils
|
||||||
imagemagick
|
utillinux
|
||||||
|
which
|
||||||
|
imagemagick
|
||||||
|
;
|
||||||
|
|
||||||
# Networking
|
# Networking
|
||||||
dig.dnsutils
|
inherit (pkgs.dig) dnsutils;
|
||||||
openssh
|
inherit
|
||||||
rsync
|
(pkgs)
|
||||||
wget
|
openssh
|
||||||
gnupg
|
rsync
|
||||||
|
wget
|
||||||
|
gnupg
|
||||||
|
;
|
||||||
|
|
||||||
# Misc CLI stuff
|
# Misc CLI stuff
|
||||||
killall
|
inherit
|
||||||
nix-output-monitor
|
(pkgs)
|
||||||
progress
|
killall
|
||||||
tree
|
nix-output-monitor
|
||||||
gnugrep
|
progress
|
||||||
gnused
|
tree
|
||||||
|
gnugrep
|
||||||
|
gnused
|
||||||
|
;
|
||||||
|
|
||||||
# Expected Stuff
|
# Expected Stuff
|
||||||
hostname
|
inherit
|
||||||
man
|
(pkgs)
|
||||||
perl
|
hostname
|
||||||
tzdata
|
man
|
||||||
])
|
perl
|
||||||
|
tzdata
|
||||||
|
;
|
||||||
|
})
|
||||||
++ [
|
++ [
|
||||||
# This could help as well: nix derivation show -r /run/current-system
|
# This could help as well: nix derivation show -r /run/current-system
|
||||||
(pkgs.writeShellApplication {
|
(pkgs.writeShellApplication {
|
||||||
|
@ -63,10 +82,13 @@
|
||||||
(pkgs.writeShellApplication {
|
(pkgs.writeShellApplication {
|
||||||
name = "from";
|
name = "from";
|
||||||
|
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = builtins.attrValues {
|
||||||
coreutils
|
inherit
|
||||||
which
|
(pkgs)
|
||||||
];
|
coreutils
|
||||||
|
which
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
text = ''
|
text = ''
|
||||||
for var do
|
for var do
|
||||||
|
|
|
@ -21,11 +21,14 @@
|
||||||
environment.packages = [
|
environment.packages = [
|
||||||
(pkgs.writeShellApplication {
|
(pkgs.writeShellApplication {
|
||||||
name = "switch";
|
name = "switch";
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = builtins.attrValues {
|
||||||
coreutils
|
inherit
|
||||||
nix-output-monitor
|
(pkgs)
|
||||||
nvd
|
coreutils
|
||||||
];
|
nix-output-monitor
|
||||||
|
nvd
|
||||||
|
;
|
||||||
|
};
|
||||||
text = ''
|
text = ''
|
||||||
oldProfile=$(realpath /nix/var/nix/profiles/per-user/nix-on-droid/profile)
|
oldProfile=$(realpath /nix/var/nix/profiles/per-user/nix-on-droid/profile)
|
||||||
|
|
||||||
|
|
|
@ -17,14 +17,18 @@ in {
|
||||||
services.flatpak.enable = true;
|
services.flatpak.enable = true;
|
||||||
services.packagekit.enable = true;
|
services.packagekit.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = builtins.attrValues {
|
||||||
# Misc Apps
|
inherit
|
||||||
firefox
|
(pkgs)
|
||||||
kdePackages.discover
|
firefox
|
||||||
kdePackages.krfb
|
wl-clipboard
|
||||||
|
xclip
|
||||||
|
;
|
||||||
|
|
||||||
# Libs
|
inherit
|
||||||
wl-clipboard
|
(pkgs.kdePackages)
|
||||||
xclip
|
discover
|
||||||
];
|
krfb
|
||||||
|
;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -46,18 +46,19 @@ defaultSession: {
|
||||||
stateDir = "/home/${mainUser}/.local/share/decky"; # Keep scoped to user
|
stateDir = "/home/${mainUser}/.local/share/decky"; # Keep scoped to user
|
||||||
# https://github.com/Jovian-Experiments/Jovian-NixOS/blob/1171169117f63f1de9ef2ea36efd8dcf377c6d5a/modules/decky-loader.nix#L80-L84
|
# https://github.com/Jovian-Experiments/Jovian-NixOS/blob/1171169117f63f1de9ef2ea36efd8dcf377c6d5a/modules/decky-loader.nix#L80-L84
|
||||||
|
|
||||||
extraPackages = with pkgs; [
|
extraPackages = builtins.attrValues {
|
||||||
# Generic packages
|
inherit
|
||||||
curl
|
(pkgs)
|
||||||
unzip
|
curl
|
||||||
util-linux
|
unzip
|
||||||
gnugrep
|
util-linux
|
||||||
|
gnugrep
|
||||||
readline.out
|
readline
|
||||||
procps
|
procps
|
||||||
pciutils
|
pciutils
|
||||||
libpulseaudio
|
libpulseaudio
|
||||||
];
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Takes way too long to shutdown
|
# Takes way too long to shutdown
|
||||||
|
|
|
@ -14,10 +14,13 @@
|
||||||
kernelModules = ["kvm-amd"];
|
kernelModules = ["kvm-amd"];
|
||||||
|
|
||||||
# Zenpower for ryzen cpu monitoring
|
# Zenpower for ryzen cpu monitoring
|
||||||
extraModulePackages = with config.boot.kernelPackages; [
|
extraModulePackages = builtins.attrValues {
|
||||||
v4l2loopback
|
inherit
|
||||||
zenpower
|
(config.boot.kernelPackages)
|
||||||
];
|
v4l2loopback
|
||||||
|
zenpower
|
||||||
|
;
|
||||||
|
};
|
||||||
blacklistedKernelModules = ["k10temp"];
|
blacklistedKernelModules = ["k10temp"];
|
||||||
|
|
||||||
supportedFilesystems = ["ntfs"];
|
supportedFilesystems = ["ntfs"];
|
||||||
|
@ -85,10 +88,13 @@
|
||||||
libvirtd.enable = true;
|
libvirtd.enable = true;
|
||||||
spiceUSBRedirection.enable = true;
|
spiceUSBRedirection.enable = true;
|
||||||
};
|
};
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = builtins.attrValues {
|
||||||
qemu
|
inherit
|
||||||
virtiofsd
|
(pkgs)
|
||||||
];
|
qemu
|
||||||
|
virtiofsd
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
nvidia = {
|
nvidia = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -2,7 +2,9 @@
|
||||||
# NFS client setup
|
# NFS client setup
|
||||||
services.rpcbind.enable = true;
|
services.rpcbind.enable = true;
|
||||||
boot.supportedFilesystems = ["nfs"];
|
boot.supportedFilesystems = ["nfs"];
|
||||||
environment.systemPackages = with pkgs; [nfs-utils];
|
environment.systemPackages = builtins.attrValues {
|
||||||
|
inherit (pkgs) nfs-utils;
|
||||||
|
};
|
||||||
|
|
||||||
systemd.mounts = let
|
systemd.mounts = let
|
||||||
host = "10.0.0.249";
|
host = "10.0.0.249";
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
pkgs:
|
pkgs:
|
||||||
pkgs.dockerTools.pullImage {
|
pkgs.dockerTools.pullImage {
|
||||||
imageName = "rssbridge/rss-bridge";
|
imageName = "rssbridge/rss-bridge";
|
||||||
imageDigest = "sha256:327315251d038d2ddae7eb088569470f52255f8a0cdc4df41eab47dab4624318";
|
imageDigest = "sha256:ffc5966ca95af2d031a5c7561d3144454898e330a68862bb0299db6349806c25";
|
||||||
sha256 = "03w1jnhxahbvlmnby7c5v47sm1ypz98v0w5inm8bdwi765r7db60";
|
sha256 = "059qly0brjsh3ch6b2kmsn2rfsvlvayiaqkpiiydr6fyh85ryrvj";
|
||||||
finalImageName = "rssbridge/rss-bridge";
|
finalImageName = "rssbridge/rss-bridge";
|
||||||
finalImageTag = "latest";
|
finalImageTag = "latest";
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,9 +19,12 @@ in {
|
||||||
ffmpegPackage = jellyPkgs.jellyfin-ffmpeg;
|
ffmpegPackage = jellyPkgs.jellyfin-ffmpeg;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with config.services.jellyfin; [
|
environment.systemPackages = builtins.attrValues {
|
||||||
finalPackage
|
inherit
|
||||||
webPackage
|
(config.services.jellyfin)
|
||||||
ffmpegPackage
|
finalPackage
|
||||||
];
|
webPackage
|
||||||
|
ffmpegPackage
|
||||||
|
;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{pkgs, ...}: let
|
{pkgs, ...}: let
|
||||||
fsPkgs = with pkgs; [mergerfs cifs-utils];
|
fsPkgs = builtins.attrValues {inherit (pkgs) mergerfs cifs-utils;};
|
||||||
in {
|
in {
|
||||||
system.fsPackages = fsPkgs;
|
system.fsPackages = fsPkgs;
|
||||||
environment.systemPackages = fsPkgs;
|
environment.systemPackages = fsPkgs;
|
||||||
|
|
|
@ -15,11 +15,14 @@ in
|
||||||
pkgs.writeShellApplication {
|
pkgs.writeShellApplication {
|
||||||
name = "sub-clean";
|
name = "sub-clean";
|
||||||
|
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = builtins.attrValues {
|
||||||
findutils
|
inherit
|
||||||
gnugrep
|
(pkgs)
|
||||||
gawk
|
findutils
|
||||||
];
|
gnugrep
|
||||||
|
gawk
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
text = ''
|
text = ''
|
||||||
exec ${script} "$@"
|
exec ${script} "$@"
|
||||||
|
|
|
@ -2,9 +2,12 @@
|
||||||
pkgs.writeShellApplication {
|
pkgs.writeShellApplication {
|
||||||
name = "convertMkv";
|
name = "convertMkv";
|
||||||
|
|
||||||
runtimeInputs = with pkgs; [
|
runtimeInputs = builtins.attrValues {
|
||||||
ffmpeg-full
|
inherit
|
||||||
];
|
(pkgs)
|
||||||
|
ffmpeg-full
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
text = ''
|
text = ''
|
||||||
extension="$1"
|
extension="$1"
|
||||||
|
|
|
@ -13,7 +13,13 @@
|
||||||
kernelModules = ["kvm-amd"];
|
kernelModules = ["kvm-amd"];
|
||||||
|
|
||||||
# Zenpower for ryzen cpu monitoring
|
# Zenpower for ryzen cpu monitoring
|
||||||
extraModulePackages = with config.boot.kernelPackages; [zenpower];
|
extraModulePackages = builtins.attrValues {
|
||||||
|
inherit
|
||||||
|
(config.boot.kernelPackages)
|
||||||
|
zenpower
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
blacklistedKernelModules = ["k10temp"];
|
blacklistedKernelModules = ["k10temp"];
|
||||||
|
|
||||||
initrd.availableKernelModules = [
|
initrd.availableKernelModules = [
|
||||||
|
|
|
@ -14,10 +14,13 @@ in {
|
||||||
wantedBy = ["multi-user.target"];
|
wantedBy = ["multi-user.target"];
|
||||||
serviceConfig.User = "matt";
|
serviceConfig.User = "matt";
|
||||||
|
|
||||||
path = with pkgs; [
|
path = builtins.attrValues {
|
||||||
steam-run
|
inherit
|
||||||
steamcmd
|
(pkgs)
|
||||||
];
|
steam-run
|
||||||
|
steamcmd
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
script = ''
|
script = ''
|
||||||
# Make sure gamePath exists and cd to it
|
# Make sure gamePath exists and cd to it
|
||||||
|
|
|
@ -40,13 +40,18 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
path =
|
path =
|
||||||
[nix-fast-buildPkg]
|
[
|
||||||
++ (with pkgs; [
|
nix-fast-buildPkg
|
||||||
bash
|
|
||||||
config.nix.package
|
config.nix.package
|
||||||
git
|
]
|
||||||
openssh
|
++ (builtins.attrValues {
|
||||||
]);
|
inherit
|
||||||
|
(pkgs)
|
||||||
|
bash
|
||||||
|
git
|
||||||
|
openssh
|
||||||
|
;
|
||||||
|
});
|
||||||
|
|
||||||
script = ''
|
script = ''
|
||||||
cd /tmp
|
cd /tmp
|
||||||
|
|
|
@ -15,10 +15,13 @@
|
||||||
];
|
];
|
||||||
kernelModules = ["amdgpu" "kvm-amd" "acpi_call"];
|
kernelModules = ["amdgpu" "kvm-amd" "acpi_call"];
|
||||||
|
|
||||||
extraModulePackages = with config.boot.kernelPackages; [
|
extraModulePackages = builtins.attrValues {
|
||||||
acpi_call
|
inherit
|
||||||
zenpower
|
(config.boot.kernelPackages)
|
||||||
];
|
acpi_call
|
||||||
|
zenpower
|
||||||
|
;
|
||||||
|
};
|
||||||
blacklistedKernelModules = ["k10temp"];
|
blacklistedKernelModules = ["k10temp"];
|
||||||
|
|
||||||
initrd = {
|
initrd = {
|
||||||
|
@ -94,10 +97,13 @@
|
||||||
libvirtd.enable = true;
|
libvirtd.enable = true;
|
||||||
waydroid.enable = true;
|
waydroid.enable = true;
|
||||||
};
|
};
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = builtins.attrValues {
|
||||||
qemu
|
inherit
|
||||||
powertop
|
(pkgs)
|
||||||
];
|
qemu
|
||||||
|
powertop
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
# enable brightness control
|
# enable brightness control
|
||||||
programs.light.enable = true;
|
programs.light.enable = true;
|
||||||
|
|
40
flake.lock
40
flake.lock
|
@ -172,11 +172,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725001600,
|
"lastModified": 1725087993,
|
||||||
"narHash": "sha256-4RNNipvSQLTSQWuYeqyu+rb0dscUZj++m4upR1Y30VQ=",
|
"narHash": "sha256-DZMhzJKruW/CWDW+OZi9DwpISUvYeQcLrv5g3SUOOF4=",
|
||||||
"owner": "matt1432",
|
"owner": "matt1432",
|
||||||
"repo": "discord-nightly-overlay",
|
"repo": "discord-nightly-overlay",
|
||||||
"rev": "c61d7927358044647cab2b28bd400f712faef74d",
|
"rev": "6140012164764a1f3c3cf8aafacfc2158e165680",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -417,11 +417,11 @@
|
||||||
"gpu-screen-recorder-src": {
|
"gpu-screen-recorder-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725058084,
|
"lastModified": 1725068518,
|
||||||
"narHash": "sha256-6WSBV9UTFoXmQvy5fJz1VKpuHbHT3sySiH4U+Si7lPI=",
|
"narHash": "sha256-pzFO0ijeYbOFUgywLxCAivR29Zfc8NzbAvXo2yCvHaI=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "b99539af570cc725ca3881dfbb2ed9e6b202e2f6",
|
"rev": "33251a4799ea57c07b66b9cc1676cf9d377571ba",
|
||||||
"revCount": 753,
|
"revCount": 756,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://repo.dec05eba.com/gpu-screen-recorder"
|
"url": "https://repo.dec05eba.com/gpu-screen-recorder"
|
||||||
},
|
},
|
||||||
|
@ -476,11 +476,11 @@
|
||||||
"gtk-theme-src": {
|
"gtk-theme-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725052067,
|
"lastModified": 1725129614,
|
||||||
"narHash": "sha256-Y0rMdCKYVwKUC0GKgMZlzyTd0BiGPY97gUrk2xJpe6w=",
|
"narHash": "sha256-dMM07wqESVHXbhw7wjR3QRQcf+PZxU90FcVLhGQOf2k=",
|
||||||
"owner": "dracula",
|
"owner": "dracula",
|
||||||
"repo": "gtk",
|
"repo": "gtk",
|
||||||
"rev": "d46b54480979288afdc8f102579deda1c24e2a88",
|
"rev": "e59324a4166a18fe35684d4a4cc2f7ee931c9015",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -596,11 +596,11 @@
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725032272,
|
"lastModified": 1725134108,
|
||||||
"narHash": "sha256-A0AiFlPoqDK/IwUiV7SGIi8uW2zOqmmiZY6j8i367LU=",
|
"narHash": "sha256-OIOBT4NKPmTUXTND0IDUfhX+8YBQztSvhJ91LfEK4Sk=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "c5fd5771814958ad274ea9abb961fff621a35b9c",
|
"rev": "a6315b0af4e417cf396649d9c5792d3c5420b713",
|
||||||
"revCount": 5165,
|
"revCount": 5172,
|
||||||
"submodules": true,
|
"submodules": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/hyprwm/Hyprland"
|
"url": "https://github.com/hyprwm/Hyprland"
|
||||||
|
@ -1307,11 +1307,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725039046,
|
"lastModified": 1725138342,
|
||||||
"narHash": "sha256-B5Ypgx4cO0syxPyUsHTIxVFT8xChPj494WJ5uIOefDM=",
|
"narHash": "sha256-mKqQHEFoQs6ovgfSbDdCIRI8PU2EBhO7yfrbzo+yUCI=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs-wayland",
|
"repo": "nixpkgs-wayland",
|
||||||
"rev": "90cf4eb6d71f1ee8124fd57535a3569048771b33",
|
"rev": "3f77707cda31a148a5c746b4d53a380e1ca9af3c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -1821,11 +1821,11 @@
|
||||||
"ts-for-gir-src": {
|
"ts-for-gir-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724145738,
|
"lastModified": 1725114558,
|
||||||
"narHash": "sha256-LxSYZK8/dENY8UMcam+hw0CmgHxCvSSTXp1fqyM/nJQ=",
|
"narHash": "sha256-3B/hMCeFfI2pvG92tRsGu13ja82tudVH5Zuq/JgP/P8=",
|
||||||
"owner": "gjsify",
|
"owner": "gjsify",
|
||||||
"repo": "ts-for-gir",
|
"repo": "ts-for-gir",
|
||||||
"rev": "dafd5e4794e06201620c90365f9df2d0417d1b32",
|
"rev": "f0f46a3218568ecc961afd7f0aaf8d667e9a513a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -195,25 +195,28 @@ in {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
extensions = with firefoxAddons; [
|
extensions = builtins.attrValues {
|
||||||
auto-refresh-page
|
inherit
|
||||||
bitwarden
|
(firefoxAddons)
|
||||||
checkmarks-web-ext
|
auto-refresh-page
|
||||||
darkreader
|
bitwarden
|
||||||
floccus
|
checkmarks-web-ext
|
||||||
google-container
|
darkreader
|
||||||
image-search-options
|
floccus
|
||||||
istilldontcareaboutcookies
|
google-container
|
||||||
opera-gx-witchcraft-purple
|
image-search-options
|
||||||
return-youtube-dislikes
|
istilldontcareaboutcookies
|
||||||
seventv
|
opera-gx-witchcraft-purple
|
||||||
sponsorblock
|
return-youtube-dislikes
|
||||||
sound-volume
|
seventv
|
||||||
stylus
|
sponsorblock
|
||||||
ttv-lol-pro
|
sound-volume
|
||||||
ublock-origin
|
stylus
|
||||||
undoclosetabbutton
|
ttv-lol-pro
|
||||||
];
|
ublock-origin
|
||||||
|
undoclosetabbutton
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -11,7 +11,13 @@ stdenv.mkDerivation {
|
||||||
|
|
||||||
src = "${gtk-theme-src}/kde/cursors";
|
src = "${gtk-theme-src}/kde/cursors";
|
||||||
|
|
||||||
buildInputs = with pkgs; [hyprcursor xcur2png];
|
buildInputs = builtins.attrValues {
|
||||||
|
inherit
|
||||||
|
(pkgs)
|
||||||
|
hyprcursor
|
||||||
|
xcur2png
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
hyprcursor-util --extract ./Dracula-cursors
|
hyprcursor-util --extract ./Dracula-cursors
|
||||||
|
|
|
@ -11,10 +11,13 @@ inputs: rec {
|
||||||
"jovian"
|
"jovian"
|
||||||
"nixpkgs-wayland"
|
"nixpkgs-wayland"
|
||||||
])
|
])
|
||||||
++ (with inputs.self.overlays; [
|
++ (builtins.attrValues {
|
||||||
broken-packages
|
inherit
|
||||||
xdg-desktop-portal-kde
|
(inputs.self.overlays)
|
||||||
]);
|
broken-packages
|
||||||
|
xdg-desktop-portal-kde
|
||||||
|
;
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
# Function that makes the attrs that make up the specialArgs
|
# Function that makes the attrs that make up the specialArgs
|
||||||
|
@ -43,10 +46,12 @@ inputs: rec {
|
||||||
home-manager-path = inputs.home-manager.outPath;
|
home-manager-path = inputs.home-manager.outPath;
|
||||||
pkgs = extraSpecialArgs.pkgs;
|
pkgs = extraSpecialArgs.pkgs;
|
||||||
|
|
||||||
modules =
|
modules = let
|
||||||
|
inherit (pkgs.lib) mkOption types;
|
||||||
|
in
|
||||||
[
|
[
|
||||||
({config, ...}: {
|
({config, ...}: {
|
||||||
options = with pkgs.lib; {
|
options = {
|
||||||
environment.variables.FLAKE = mkOption {
|
environment.variables.FLAKE = mkOption {
|
||||||
type = with types; nullOr str;
|
type = with types; nullOr str;
|
||||||
};
|
};
|
||||||
|
|
|
@ -111,23 +111,26 @@ in {
|
||||||
|
|
||||||
packages =
|
packages =
|
||||||
[
|
[
|
||||||
|
(pkgs.callPackage ./clipboard {})
|
||||||
# TODO: replace with matugen
|
# TODO: replace with matugen
|
||||||
self.packages.${pkgs.system}.coloryou
|
self.packages.${pkgs.system}.coloryou
|
||||||
]
|
]
|
||||||
++ (with pkgs; [
|
++ (builtins.attrValues {
|
||||||
# ags
|
inherit
|
||||||
dart-sass
|
(pkgs)
|
||||||
bun
|
dart-sass
|
||||||
playerctl
|
bun
|
||||||
(callPackage ./clipboard {})
|
playerctl
|
||||||
|
pavucontrol # TODO: replace with ags widget
|
||||||
## gui
|
;
|
||||||
pavucontrol # TODO: replace with ags widget
|
})
|
||||||
])
|
++ (optionals cfgDesktop.isTouchscreen (builtins.attrValues {
|
||||||
++ (optionals cfgDesktop.isTouchscreen (with pkgs; [
|
inherit
|
||||||
lisgd
|
(pkgs)
|
||||||
ydotool
|
lisgd
|
||||||
]));
|
ydotool
|
||||||
|
;
|
||||||
|
}));
|
||||||
};
|
};
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
|
|
|
@ -51,8 +51,8 @@ in {
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
extraPortals = with pkgs; [
|
extraPortals = [
|
||||||
kdePackages.xdg-desktop-portal-kde
|
pkgs.kdePackages.xdg-desktop-portal-kde
|
||||||
];
|
];
|
||||||
|
|
||||||
config.hyprland = {
|
config.hyprland = {
|
||||||
|
@ -203,24 +203,28 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
# libs
|
# libs
|
||||||
home.packages = with pkgs; [
|
home.packages =
|
||||||
# tools
|
(builtins.attrValues {
|
||||||
bluez-tools
|
inherit
|
||||||
brightnessctl
|
(pkgs)
|
||||||
pulseaudio
|
bluez-tools
|
||||||
alsa-utils
|
brightnessctl
|
||||||
|
pulseaudio
|
||||||
qt5.qtwayland
|
alsa-utils
|
||||||
qt6.qtwayland
|
libayatana-appindicator
|
||||||
libayatana-appindicator
|
xdg-utils
|
||||||
xdg-utils
|
evtest
|
||||||
evtest
|
glib
|
||||||
glib
|
libinput
|
||||||
xorg.xrandr
|
xclip
|
||||||
libinput
|
libnotify
|
||||||
xclip
|
;
|
||||||
libnotify
|
})
|
||||||
];
|
++ [
|
||||||
|
pkgs.qt5.qtwayland
|
||||||
|
pkgs.qt6.qtwayland
|
||||||
|
pkgs.xorg.xrandr
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -3,24 +3,32 @@ self: {pkgs, ...}: {
|
||||||
inherit (self.legacyPackages.${pkgs.system}) mpvScripts;
|
inherit (self.legacyPackages.${pkgs.system}) mpvScripts;
|
||||||
in {
|
in {
|
||||||
# For kdialog-open-files
|
# For kdialog-open-files
|
||||||
home.packages = with pkgs; [
|
home.packages = [
|
||||||
kdialog
|
pkgs.kdialog
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.mpv = {
|
programs.mpv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
# https://github.com/mpv-player/mpv/wiki/User-Scripts
|
# https://github.com/mpv-player/mpv/wiki/User-Scripts
|
||||||
scripts = with mpvScripts; [
|
scripts = builtins.attrValues {
|
||||||
modernx
|
inherit
|
||||||
# Dep of touch-gestures
|
(mpvScripts)
|
||||||
pointer-event
|
modernx
|
||||||
touch-gestures
|
persist-properties
|
||||||
|
undo-redo
|
||||||
|
;
|
||||||
|
|
||||||
|
# touch-gestures & deps
|
||||||
|
inherit
|
||||||
|
(mpvScripts)
|
||||||
|
pointer-event
|
||||||
|
touch-gestures
|
||||||
|
;
|
||||||
|
|
||||||
# Ctrl + o
|
# Ctrl + o
|
||||||
kdialog-open-files
|
inherit (mpvScripts) kdialog-open-files;
|
||||||
persist-properties
|
};
|
||||||
undo-redo
|
|
||||||
];
|
|
||||||
|
|
||||||
scriptOpts = {
|
scriptOpts = {
|
||||||
persist_properties = {
|
persist_properties = {
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
config = let
|
config = let
|
||||||
cfg = config.roles.desktop;
|
cfg = config.roles.desktop;
|
||||||
in {
|
in {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = [
|
||||||
plasma5Packages.kio-admin
|
pkgs.plasma5Packages.kio-admin
|
||||||
];
|
];
|
||||||
|
|
||||||
# To make it work with firefox
|
# To make it work with firefox
|
||||||
|
@ -26,20 +26,22 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.${cfg.user}.home.packages = with pkgs;
|
home-manager.users.${cfg.user}.home.packages = builtins.attrValues {
|
||||||
[
|
inherit
|
||||||
|
(pkgs)
|
||||||
gnome-calculator
|
gnome-calculator
|
||||||
]
|
;
|
||||||
++ (with kdePackages; [
|
inherit
|
||||||
|
(pkgs.kdePackages)
|
||||||
kde-cli-tools
|
kde-cli-tools
|
||||||
])
|
;
|
||||||
++ (with plasma5Packages; [
|
|
||||||
|
inherit
|
||||||
|
(pkgs.plasma5Packages)
|
||||||
ark
|
ark
|
||||||
kcharselect
|
kcharselect
|
||||||
kdenlive
|
kdenlive
|
||||||
okular
|
okular
|
||||||
|
|
||||||
# Dolphin & co
|
|
||||||
dolphin
|
dolphin
|
||||||
dolphin-plugins
|
dolphin-plugins
|
||||||
kdegraphics-thumbnailers
|
kdegraphics-thumbnailers
|
||||||
|
@ -48,7 +50,8 @@
|
||||||
kio-admin # needs to be both here and in system pkgs
|
kio-admin # needs to be both here and in system pkgs
|
||||||
kio-extras
|
kio-extras
|
||||||
kmime
|
kmime
|
||||||
]);
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# For accurate stack trace
|
# For accurate stack trace
|
||||||
|
|
|
@ -76,70 +76,84 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages =
|
home.packages =
|
||||||
(with pkgs; [
|
(builtins.attrValues {
|
||||||
# School
|
# School
|
||||||
xournalpp
|
inherit (pkgs.hunspellDicts) en_CA;
|
||||||
virt-manager
|
inherit
|
||||||
libreoffice-fresh # TODO: declarative conf?
|
(pkgs)
|
||||||
hunspell
|
xournalpp
|
||||||
hunspellDicts.en_CA
|
virt-manager
|
||||||
|
libreoffice-fresh # TODO: declarative conf?
|
||||||
|
hunspell
|
||||||
|
;
|
||||||
|
|
||||||
# Apps
|
# Apps
|
||||||
protonmail-desktop
|
inherit
|
||||||
protonmail-bridge
|
(pkgs)
|
||||||
spotifywm
|
protonmail-desktop
|
||||||
photoqt
|
protonmail-bridge
|
||||||
nextcloud-client
|
spotifywm
|
||||||
prismlauncher
|
photoqt
|
||||||
|
nextcloud-client
|
||||||
/*
|
prismlauncher
|
||||||
Discord themes for Vencord
|
;
|
||||||
https://markchan0225.github.io/RoundedDiscord/RoundedDiscord.theme.css
|
|
||||||
https://raw.githubusercontent.com/dracula/BetterDiscord/master/Dracula_Official.theme.css
|
|
||||||
*/
|
|
||||||
(discord.override {withVencord = true;})
|
|
||||||
|
|
||||||
(symlinkJoin {
|
|
||||||
name = "gparted";
|
|
||||||
paths = [gparted];
|
|
||||||
buildInputs = [makeWrapper];
|
|
||||||
postBuild = let
|
|
||||||
newWrapper = writeShellScriptBin "Gparted" ''
|
|
||||||
(
|
|
||||||
sleep 1.5
|
|
||||||
while killall -r -0 ksshaskpass > /dev/null 2>&1
|
|
||||||
do
|
|
||||||
sleep 0.1
|
|
||||||
if [[ $(hyprctl activewindow | grep Ksshaskpass) == "" ]]; then
|
|
||||||
killall -r ksshaskpass
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
) &
|
|
||||||
exec env SUDO_ASKPASS="${libsForQt5.ksshaskpass}/bin/ksshaskpass" sudo -k -EA "${getExe gparted}" "$@"
|
|
||||||
'';
|
|
||||||
in ''
|
|
||||||
mkdir $out/.wrapped
|
|
||||||
mv $out/bin/gparted $out/.wrapped
|
|
||||||
cp ${getExe newWrapper} $out/bin/gparted
|
|
||||||
|
|
||||||
sed -i "s#Exec.*#Exec=$out/bin/gparted %f#" $out/share/applications/gparted.desktop
|
|
||||||
'';
|
|
||||||
})
|
|
||||||
|
|
||||||
# tools
|
# tools
|
||||||
wl-color-picker
|
inherit
|
||||||
wl-clipboard
|
(pkgs)
|
||||||
cliphist
|
wl-color-picker
|
||||||
grim-hyprland
|
wl-clipboard
|
||||||
slurp
|
cliphist
|
||||||
satty
|
grim-hyprland
|
||||||
])
|
slurp
|
||||||
|
satty
|
||||||
|
;
|
||||||
|
})
|
||||||
++ [
|
++ [
|
||||||
(jellyfin-flake
|
(jellyfin-flake
|
||||||
.packages
|
.packages
|
||||||
.${pkgs.system}
|
.${pkgs.system}
|
||||||
.jellyfin-media-player
|
.jellyfin-media-player
|
||||||
.override {isNvidiaWayland = isNvidia;})
|
.override {isNvidiaWayland = isNvidia;})
|
||||||
|
|
||||||
|
/*
|
||||||
|
Discord themes for Vencord
|
||||||
|
https://markchan0225.github.io/RoundedDiscord/RoundedDiscord.theme.css
|
||||||
|
https://raw.githubusercontent.com/dracula/BetterDiscord/master/Dracula_Official.theme.css
|
||||||
|
*/
|
||||||
|
(pkgs.discord.override {withVencord = true;})
|
||||||
|
|
||||||
|
# GParted
|
||||||
|
(let
|
||||||
|
inherit (pkgs) writeShellScriptBin libsForQt5 gparted makeWrapper symlinkJoin;
|
||||||
|
|
||||||
|
newWrapper = writeShellScriptBin "Gparted" ''
|
||||||
|
(
|
||||||
|
sleep 1.5
|
||||||
|
while killall -r -0 ksshaskpass > /dev/null 2>&1
|
||||||
|
do
|
||||||
|
sleep 0.1
|
||||||
|
if [[ $(hyprctl activewindow | grep Ksshaskpass) == "" ]]; then
|
||||||
|
killall -r ksshaskpass
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
) &
|
||||||
|
exec env SUDO_ASKPASS="${libsForQt5.ksshaskpass}/bin/ksshaskpass" sudo -k -EA "${getExe gparted}" "$@"
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
symlinkJoin {
|
||||||
|
name = "gparted";
|
||||||
|
paths = [gparted];
|
||||||
|
buildInputs = [makeWrapper];
|
||||||
|
postBuild = let
|
||||||
|
in ''
|
||||||
|
mkdir $out/.wrapped
|
||||||
|
mv $out/bin/gparted $out/.wrapped
|
||||||
|
cp ${getExe newWrapper} $out/bin/gparted
|
||||||
|
|
||||||
|
sed -i "s#Exec.*#Exec=$out/bin/gparted %f#" $out/share/applications/gparted.desktop
|
||||||
|
'';
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
# Enable CUPS to print documents.
|
# Enable CUPS to print documents.
|
||||||
printing = {
|
printing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
drivers = with pkgs; [
|
|
||||||
hplip
|
drivers = [
|
||||||
|
pkgs.hplip
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -58,10 +58,13 @@ in {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = with pkgs; [
|
buildInputs = builtins.attrValues {
|
||||||
bun
|
inherit
|
||||||
dart-sass
|
(pkgs)
|
||||||
];
|
bun
|
||||||
|
dart-sass
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
sass ./scss/greeter.scss style.css
|
sass ./scss/greeter.scss style.css
|
||||||
|
|
|
@ -9,8 +9,8 @@
|
||||||
|
|
||||||
cfg = osConfig.roles.desktop;
|
cfg = osConfig.roles.desktop;
|
||||||
in {
|
in {
|
||||||
home.packages = with pkgs; [
|
home.packages = [
|
||||||
gnomeExtensions.user-themes
|
pkgs.gnomeExtensions.user-themes
|
||||||
];
|
];
|
||||||
|
|
||||||
# Gtk settings
|
# Gtk settings
|
||||||
|
|
|
@ -6,7 +6,7 @@ self: {
|
||||||
config = let
|
config = let
|
||||||
wallpaper = toString self.legacyPackages.${pkgs.system}.dracula.wallpaper;
|
wallpaper = toString self.legacyPackages.${pkgs.system}.dracula.wallpaper;
|
||||||
in {
|
in {
|
||||||
home.packages = with pkgs; [hyprpaper];
|
home.packages = [pkgs.hyprpaper];
|
||||||
|
|
||||||
xdg.configFile."hypr/hyprpaper.conf" = {
|
xdg.configFile."hypr/hyprpaper.conf" = {
|
||||||
text = lib.hm.generators.toHyprconf {
|
text = lib.hm.generators.toHyprconf {
|
||||||
|
|
|
@ -9,9 +9,9 @@ self: {
|
||||||
|
|
||||||
cfg = osConfig.roles.desktop;
|
cfg = osConfig.roles.desktop;
|
||||||
in {
|
in {
|
||||||
home.packages = with pkgs; [
|
home.packages = [
|
||||||
libsForQt5.qtstyleplugin-kvantum
|
pkgs.libsForQt5.qtstyleplugin-kvantum
|
||||||
kdePackages.qtstyleplugin-kvantum
|
pkgs.kdePackages.qtstyleplugin-kvantum
|
||||||
];
|
];
|
||||||
|
|
||||||
qt = {
|
qt = {
|
||||||
|
|
|
@ -38,8 +38,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
# Script for updating the images of all images of a compose.nix file
|
# Script for updating the images of all images of a compose.nix file
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = [
|
||||||
(callPackage ./updateImage.nix {})
|
(pkgs.callPackage ./updateImage.nix {})
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -33,12 +33,15 @@ in {
|
||||||
enable = true;
|
enable = true;
|
||||||
enable32Bit = true;
|
enable32Bit = true;
|
||||||
|
|
||||||
extraPackages = with pkgs; [
|
extraPackages = builtins.attrValues {
|
||||||
vaapiVdpau
|
inherit
|
||||||
libvdpau-va-gl
|
(pkgs)
|
||||||
nvidia-vaapi-driver
|
vaapiVdpau
|
||||||
];
|
libvdpau-va-gl
|
||||||
extraPackages32 = with pkgs; [vaapiVdpau];
|
nvidia-vaapi-driver
|
||||||
|
;
|
||||||
|
};
|
||||||
|
extraPackages32 = [pkgs.vaapiVdpau];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.xserver.videoDrivers = ["nvidia"];
|
services.xserver.videoDrivers = ["nvidia"];
|
||||||
|
@ -71,13 +74,16 @@ in {
|
||||||
|
|
||||||
environment.systemPackages =
|
environment.systemPackages =
|
||||||
optionals cfg.enableCUDA [pkgs.cudaPackages.cudatoolkit]
|
optionals cfg.enableCUDA [pkgs.cudaPackages.cudatoolkit]
|
||||||
++ (with pkgs; [
|
++ (builtins.attrValues {
|
||||||
libva-utils
|
inherit (pkgs.nvtopPackages) nvidia;
|
||||||
nvidia-vaapi-driver
|
inherit
|
||||||
nvtopPackages.nvidia
|
(pkgs)
|
||||||
pciutils
|
libva-utils
|
||||||
vdpauinfo
|
nvidia-vaapi-driver
|
||||||
]);
|
pciutils
|
||||||
|
vdpauinfo
|
||||||
|
;
|
||||||
|
});
|
||||||
|
|
||||||
boot.kernelModules =
|
boot.kernelModules =
|
||||||
optionals cfg.enableCUDA ["nvidia-uvm"]
|
optionals cfg.enableCUDA ["nvidia-uvm"]
|
||||||
|
|
55
outputs.nix
55
outputs.nix
|
@ -129,8 +129,8 @@
|
||||||
|
|
||||||
devShells = perSystem (pkgs: {
|
devShells = perSystem (pkgs: {
|
||||||
default = pkgs.mkShell {
|
default = pkgs.mkShell {
|
||||||
packages = with pkgs; [
|
packages = [
|
||||||
(writeShellScriptBin "mkIso" ''
|
(pkgs.writeShellScriptBin "mkIso" ''
|
||||||
isoConfig="nixosConfigurations.live-image.config.system.build.isoImage"
|
isoConfig="nixosConfigurations.live-image.config.system.build.isoImage"
|
||||||
nom build $(realpath /etc/nixos)#$isoConfig
|
nom build $(realpath /etc/nixos)#$isoConfig
|
||||||
'')
|
'')
|
||||||
|
@ -138,32 +138,47 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
node = pkgs.mkShell {
|
node = pkgs.mkShell {
|
||||||
packages = with pkgs; [
|
packages =
|
||||||
nodejs_latest
|
(builtins.attrValues {
|
||||||
typescript
|
inherit
|
||||||
|
(pkgs)
|
||||||
(writeShellApplication {
|
nodejs_latest
|
||||||
name = "updateNpmDeps";
|
typescript
|
||||||
runtimeInputs = [prefetch-npm-deps nodejs_latest];
|
;
|
||||||
|
|
||||||
text = ''
|
|
||||||
npm i --package-lock-only || true # this command will fail but still updates the main lockfile
|
|
||||||
prefetch-npm-deps ./package-lock.json
|
|
||||||
'';
|
|
||||||
})
|
})
|
||||||
];
|
++ [
|
||||||
|
(pkgs.writeShellApplication {
|
||||||
|
name = "updateNpmDeps";
|
||||||
|
runtimeInputs = builtins.attrValues {
|
||||||
|
inherit
|
||||||
|
(pkgs)
|
||||||
|
prefetch-npm-deps
|
||||||
|
nodejs_latest
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
|
text = ''
|
||||||
|
npm i --package-lock-only || true # this command will fail but still updates the main lockfile
|
||||||
|
prefetch-npm-deps ./package-lock.json
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
subtitles-dev = pkgs.mkShell {
|
subtitles-dev = pkgs.mkShell {
|
||||||
packages = with pkgs;
|
packages = builtins.attrValues {
|
||||||
[
|
inherit
|
||||||
|
(pkgs)
|
||||||
nodejs_latest
|
nodejs_latest
|
||||||
ffmpeg-full
|
ffmpeg-full
|
||||||
typescript
|
typescript
|
||||||
]
|
;
|
||||||
++ (with nodePackages; [
|
|
||||||
|
inherit
|
||||||
|
(pkgs.nodePackages)
|
||||||
ts-node
|
ts-node
|
||||||
]);
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -1,94 +1 @@
|
||||||
final: prev: {
|
final: prev: {}
|
||||||
# FIXME: https://pr-tracker.nelim.org/?pr=334866
|
|
||||||
rubber = prev.python3Packages.buildPythonApplication rec {
|
|
||||||
pname = "rubber";
|
|
||||||
version = "1.6.6";
|
|
||||||
pyproject = true;
|
|
||||||
|
|
||||||
src = prev.fetchFromGitLab {
|
|
||||||
owner = "latex-rubber";
|
|
||||||
repo = "rubber";
|
|
||||||
rev = version;
|
|
||||||
hash = "sha256-C26PN3jyV6qwSjgPem54bykZrpKj+n8iHYYUyR+8dgI=";
|
|
||||||
};
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
sed -i -e '/texi2dvi/d' hatch_build.py
|
|
||||||
|
|
||||||
substituteInPlace tests/run.sh \
|
|
||||||
--replace-fail /var/tmp /tmp
|
|
||||||
'';
|
|
||||||
|
|
||||||
nativeBuildInputs = [prev.python3Packages.hatchling prev.texinfo];
|
|
||||||
|
|
||||||
checkPhase = ''
|
|
||||||
runHook preCheck
|
|
||||||
|
|
||||||
pushd tests >/dev/null
|
|
||||||
${prev.stdenv.shell} run.sh
|
|
||||||
popd >/dev/null
|
|
||||||
|
|
||||||
runHook postCheck
|
|
||||||
'';
|
|
||||||
meta.mainProgram = "rubber";
|
|
||||||
};
|
|
||||||
|
|
||||||
# FIXME: https://pr-tracker.nelim.org/?pr=334814
|
|
||||||
delta = prev.rustPlatform.buildRustPackage rec {
|
|
||||||
pname = "delta";
|
|
||||||
version = "0.17.0-unstable-2024-08-12";
|
|
||||||
|
|
||||||
src = prev.fetchFromGitHub {
|
|
||||||
owner = "dandavison";
|
|
||||||
repo = pname;
|
|
||||||
rev = "a01141b72001f4c630d77cf5274267d7638851e4";
|
|
||||||
hash = "sha256-My51pQw5a2Y2VTu39MmnjGfmCavg8pFqOmOntUildS0=";
|
|
||||||
};
|
|
||||||
|
|
||||||
cargoHash = "sha256-Rlc3Bc6Jh89KLLEWBWQB5GjoeIuHnwIVZN/MVFMjY24=";
|
|
||||||
|
|
||||||
nativeBuildInputs = with prev; [
|
|
||||||
installShellFiles
|
|
||||||
pkg-config
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = with prev;
|
|
||||||
[
|
|
||||||
oniguruma
|
|
||||||
]
|
|
||||||
++ lib.optionals stdenv.isDarwin [
|
|
||||||
darwin.apple_sdk_11_0.frameworks.Foundation
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeCheckInputs = [prev.git];
|
|
||||||
|
|
||||||
env.RUSTONIG_SYSTEM_LIBONIG = true;
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
installShellCompletion --cmd delta \
|
|
||||||
etc/completion/completion.{bash,fish,zsh}
|
|
||||||
'';
|
|
||||||
|
|
||||||
# test_env_parsing_with_pager_set_to_bat sets environment variables,
|
|
||||||
# which can be flaky with multiple threads:
|
|
||||||
# https://github.com/dandavison/delta/issues/1660
|
|
||||||
dontUseCargoParallelTests = true;
|
|
||||||
|
|
||||||
checkFlags = with prev;
|
|
||||||
lib.optionals stdenv.isDarwin [
|
|
||||||
"--skip=test_diff_same_non_empty_file"
|
|
||||||
];
|
|
||||||
|
|
||||||
meta.mainProgram = "delta";
|
|
||||||
};
|
|
||||||
|
|
||||||
egl-wayland = prev.egl-wayland.overrideAttrs (o: {
|
|
||||||
version = "1.1.15-f30cb0e";
|
|
||||||
src = prev.fetchFromGitHub {
|
|
||||||
owner = "Nvidia";
|
|
||||||
repo = "egl-wayland";
|
|
||||||
rev = "f30cb0e4c9a215e933dc8250f5dad4e96d4f2136";
|
|
||||||
hash = "sha256-EwMj3PqU4yzSucYhx8Yy/MqOwZbfsGkhSA+yNwOh4U0=";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,19 +1,21 @@
|
||||||
{python3Packages, ...}:
|
{python3Packages, ...}: let
|
||||||
python3Packages.buildPythonPackage {
|
inherit (python3Packages) buildPythonPackage utils material-color-utilities;
|
||||||
pname = "coloryou";
|
in
|
||||||
version = "0.0.1";
|
buildPythonPackage {
|
||||||
|
pname = "coloryou";
|
||||||
|
version = "0.0.1";
|
||||||
|
|
||||||
src = ./.;
|
src = ./.;
|
||||||
|
|
||||||
propagatedBuildInputs = with python3Packages; [utils material-color-utilities];
|
propagatedBuildInputs = [utils material-color-utilities];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
mv -v $out/bin/coloryou.py $out/bin/coloryou
|
mv -v $out/bin/coloryou.py $out/bin/coloryou
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = ''
|
|
||||||
Get Material You colors from an image.
|
|
||||||
'';
|
'';
|
||||||
};
|
|
||||||
}
|
meta = {
|
||||||
|
description = ''
|
||||||
|
Get Material You colors from an image.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
with import <nixpkgs> {};
|
|
||||||
with pkgs.python311Packages;
|
|
||||||
buildPythonPackage {
|
|
||||||
name = "coloryou";
|
|
||||||
src = ./.;
|
|
||||||
propagatedBuildInputs = [material-color-utilities utils];
|
|
||||||
}
|
|
Loading…
Reference in a new issue