2024-11-01 00:10:11 +01:00
|
|
|
{ config, pkgs, materusArg, materusCfg, lib, ... }:
|
2023-11-03 16:06:37 +01:00
|
|
|
{
|
|
|
|
home.stateVersion = "22.11";
|
|
|
|
home.homeDirectory = "/home/materus";
|
2024-03-31 20:01:34 +02:00
|
|
|
programs.wezterm.enable = true;
|
2023-11-03 16:06:37 +01:00
|
|
|
programs.git = {
|
2024-03-11 16:19:31 +01:00
|
|
|
userEmail = "materus@podkos.pl";
|
|
|
|
userName = "materus";
|
|
|
|
signing.signByDefault = true;
|
|
|
|
signing.key = "${materusArg.cfg.path}/extraFiles/keys/ssh/materus.pub";
|
|
|
|
extraConfig = {
|
|
|
|
commit.gpgsign = true;
|
|
|
|
gpg.format = "ssh";
|
|
|
|
};
|
2023-11-03 16:06:37 +01:00
|
|
|
};
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
programs.vscode.userSettings = {
|
|
|
|
"vscord.app.name" = "VSCodium";
|
|
|
|
"window.dialogStyle" = "custom";
|
|
|
|
"window.titleBarStyle" = "custom";
|
|
|
|
"editor.fontFamily" = "'Hack Nerd Font', 'monospace', monospace";
|
2024-11-01 15:15:20 +01:00
|
|
|
"workbench.colorTheme" = "Dracula Theme";
|
2024-11-01 00:10:11 +01:00
|
|
|
"workbench.productIconTheme" = "material-product-icons";
|
|
|
|
"workbench.iconTheme" = "material-icon-theme";
|
|
|
|
|
|
|
|
"d.aggressiveUpdate" = false;
|
|
|
|
"d.servedPath" = "${pkgs.serve-d}/bin/serve-d";
|
|
|
|
|
|
|
|
"direnv.path.executable" = "${pkgs.direnv}/bin/direnv";
|
|
|
|
|
|
|
|
"nix.enableLanguageServer" = true;
|
|
|
|
"nix.serverPath" = "${pkgs.nixd}/bin/nixd";
|
|
|
|
"nix.formatterPath" = "${pkgs.nixfmt-classic}/bin/nixfmt";
|
|
|
|
|
2024-11-01 22:51:06 +01:00
|
|
|
"C_Cpp.clang_format_path" = "${pkgs.clang-tools}/bin/clang-format";
|
|
|
|
"C_Cpp.clang_format_fallbackStyle" = "Microsoft";
|
|
|
|
"clang-tidy.executable" = "${pkgs.clang-tools}/bin/clang-tidy";
|
2024-11-01 22:26:09 +01:00
|
|
|
|
2024-11-01 22:51:06 +01:00
|
|
|
"python.defaultInterpreterPath" = "${pkgs.python3Full}/bin/python";
|
|
|
|
"[cpp]" = {
|
|
|
|
"editor.defaultFormatter" = "xaver.clang-format";
|
|
|
|
};
|
2024-11-01 00:10:11 +01:00
|
|
|
};
|
2024-11-01 15:15:20 +01:00
|
|
|
|
2023-11-03 16:06:37 +01:00
|
|
|
materus.profile = {
|
|
|
|
fonts.enable = lib.mkDefault true;
|
|
|
|
nixpkgs.enable = lib.mkDefault false;
|
|
|
|
enableDesktop = lib.mkDefault true;
|
|
|
|
enableTerminal = lib.mkDefault true;
|
|
|
|
enableTerminalExtra = lib.mkDefault true;
|
|
|
|
enableNixDevel = lib.mkDefault true;
|
2024-11-01 00:10:11 +01:00
|
|
|
editor.code.fhs.enable = false;
|
|
|
|
editor.code.fhs.extensions =
|
|
|
|
let
|
|
|
|
ext = (materusCfg.configInputs.nix-vscode-extensions.extensions."${materusCfg.arch}".forVSCodeVersion
|
|
|
|
config.programs.vscode.package.version);
|
|
|
|
in
|
|
|
|
with ext;
|
|
|
|
with pkgs;
|
|
|
|
[
|
|
|
|
#Cpp
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.twxs.cmake
|
2024-11-01 00:10:11 +01:00
|
|
|
vscode-extensions.ms-vscode.cpptools
|
|
|
|
vscode-marketplace.ms-vscode.cmake-tools
|
2024-11-01 18:25:36 +01:00
|
|
|
vscode-marketplace.cs128.cs128-clang-tidy
|
2024-11-01 22:26:09 +01:00
|
|
|
|
2024-11-01 00:10:11 +01:00
|
|
|
#Python
|
|
|
|
vscode-marketplace.ms-python.python
|
|
|
|
vscode-marketplace.ms-python.vscode-pylance
|
|
|
|
vscode-marketplace.ms-python.debugpy
|
2024-11-01 22:26:09 +01:00
|
|
|
|
2024-11-01 00:10:11 +01:00
|
|
|
# CSharp
|
2024-11-02 09:25:12 +01:00
|
|
|
open-vsx.muhammad-sammy.csharp
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
|
|
|
|
#Java
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.redhat.java
|
|
|
|
open-vsx.vscjava.vscode-java-debug
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#DLang
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.webfreak.code-d
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
|
|
|
|
#Nix
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.jnoortheen.nix-ide
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#Web
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.ecmel.vscode-html-css
|
|
|
|
open-vsx.formulahendry.auto-close-tag
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#Lua
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.sumneko.lua
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#YAML, XML
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.redhat.vscode-yaml
|
|
|
|
open-vsx.redhat.vscode-xml
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#Git
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.donjayamanne.githistory
|
|
|
|
open-vsx.mhutchie.git-graph
|
|
|
|
open-vsx.eamodio.gitlens
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#Other
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.ms-azuretools.vscode-docker
|
|
|
|
open-vsx.webfreak.debug
|
|
|
|
open-vsx.mkhl.direnv
|
2024-11-01 00:10:11 +01:00
|
|
|
vscode-marketplace.ms-vscode-remote.remote-ssh
|
|
|
|
vscode-marketplace.ms-vscode-remote.remote-containers
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.esbenp.prettier-vscode
|
|
|
|
open-vsx.formulahendry.code-runner
|
|
|
|
open-vsx.leonardssh.vscord
|
|
|
|
open-vsx.ms-vscode.hexeditor
|
|
|
|
open-vsx.alefragnani.project-manager
|
2024-11-01 22:26:09 +01:00
|
|
|
vscode-marketplace.cantonios.project-templates
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#Icons
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.pkief.material-icon-theme
|
|
|
|
open-vsx.pkief.material-product-icons
|
2024-11-01 00:10:11 +01:00
|
|
|
#Themes
|
2024-11-01 15:15:20 +01:00
|
|
|
open-vsx.dracula-theme.theme-dracula
|
2024-11-01 00:10:11 +01:00
|
|
|
|
|
|
|
#Languages
|
|
|
|
vscode-marketplace.ms-ceintl.vscode-language-pack-pl
|
|
|
|
|
|
|
|
];
|
2024-03-11 16:19:31 +01:00
|
|
|
editor.code.fhs.packages = (ps: with ps; let llvmpkgs = llvmPackages_16; in [
|
2023-11-03 16:06:37 +01:00
|
|
|
llvmpkgs.clang
|
|
|
|
llvmpkgs.llvm
|
|
|
|
llvmpkgs.bintools
|
|
|
|
llvmpkgs.lld
|
|
|
|
llvmpkgs.lldb
|
|
|
|
llvmpkgs.libllvm
|
|
|
|
llvmpkgs.libllvm.dev
|
|
|
|
|
|
|
|
|
|
|
|
gcc
|
|
|
|
gdb
|
|
|
|
|
|
|
|
cmake
|
|
|
|
gnumake
|
2024-03-11 16:19:31 +01:00
|
|
|
ninja
|
2023-11-03 16:06:37 +01:00
|
|
|
binutils
|
|
|
|
coreutils
|
|
|
|
util-linux
|
|
|
|
|
|
|
|
dotnet-sdk_8
|
|
|
|
mono
|
|
|
|
mold
|
|
|
|
python3
|
|
|
|
lua
|
|
|
|
gtk4.dev
|
|
|
|
gtk4
|
|
|
|
miniaudio
|
|
|
|
SDL2.dev
|
|
|
|
SDL2
|
|
|
|
freeglut.dev
|
|
|
|
freeglut
|
|
|
|
boost.dev
|
|
|
|
boost
|
|
|
|
glew.dev
|
|
|
|
libGL.dev
|
|
|
|
libGLU.dev
|
|
|
|
vulkan-loader.dev
|
|
|
|
|
|
|
|
jdk
|
|
|
|
|
|
|
|
|
|
|
|
ldc
|
|
|
|
dmd
|
|
|
|
dub
|
|
|
|
]);
|
|
|
|
|
2024-03-09 19:33:08 +01:00
|
|
|
editor.emacs.enable = false;
|
2024-03-11 16:19:31 +01:00
|
|
|
|
2023-11-03 16:06:37 +01:00
|
|
|
};
|
2024-11-01 00:10:11 +01:00
|
|
|
xdg.desktopEntries.brave-browser =
|
|
|
|
let
|
|
|
|
env = lib.concatStringsSep " " [
|
|
|
|
''__NV_PRIME_RENDER_OFFLOAD="1"''
|
|
|
|
''__NV_PRIME_RENDER_OFFLOAD_PROVIDER="NVIDIA-G0"''
|
|
|
|
''__GLX_VENDOR_LIBRARY_NAME="nvidia"''
|
|
|
|
''__VK_LAYER_NV_optimus="NVIDIA_only"''
|
|
|
|
''NIXOS_OZONE_WL="1"''
|
|
|
|
];
|
|
|
|
script = pkgs.writeShellScript "brave" ''
|
|
|
|
${env} brave "$@"
|
|
|
|
'';
|
|
|
|
|
|
|
|
in
|
|
|
|
{
|
|
|
|
name = "Brave Web Browser";
|
|
|
|
genericName = "Przeglądarka WWW";
|
|
|
|
comment = "Skorzystaj z internetu";
|
|
|
|
exec = "${script} %U";
|
|
|
|
icon = "brave-browser";
|
|
|
|
terminal = false;
|
|
|
|
categories = [ "Application" "Network" "WebBrowser" ];
|
|
|
|
mimeType = [
|
|
|
|
"application/pdf"
|
|
|
|
"application/rdf+xml"
|
|
|
|
"application/rss+xml"
|
|
|
|
"application/xhtml+xml"
|
|
|
|
"application/xhtml_xml"
|
|
|
|
"application/xml"
|
|
|
|
"image/gif"
|
|
|
|
"image/jpeg"
|
|
|
|
"image/png"
|
|
|
|
"image/webp"
|
|
|
|
"text/html"
|
|
|
|
"text/xml"
|
|
|
|
"x-scheme-handler/http"
|
|
|
|
"x-scheme-handler/https"
|
|
|
|
"x-scheme-handler/ipfs"
|
|
|
|
"x-scheme-handler/ipns"
|
|
|
|
];
|
|
|
|
actions.new-windows = {
|
|
|
|
exec = "${script}";
|
|
|
|
name = "Nowe okno";
|
|
|
|
};
|
|
|
|
actions.new-private-windows = {
|
|
|
|
exec = "${script} --incognito";
|
|
|
|
name = "Nowe okno incognito";
|
|
|
|
};
|
2024-05-02 10:15:29 +02:00
|
|
|
};
|
2023-11-03 16:06:37 +01:00
|
|
|
home.packages = [
|
|
|
|
pkgs.papirus-icon-theme
|
2024-11-01 00:10:11 +01:00
|
|
|
(materusArg.pkgs.polymc-qt5.wrap { withWaylandGLFW = true; extraJDKs = [ pkgs.graalvm-ce ]; })
|
2023-11-03 16:06:37 +01:00
|
|
|
];
|
|
|
|
|
|
|
|
}
|