Merge branch 'main' of https://git.marty.tf/marty/config.nix
This commit is contained in:
commit
784f214fb7
22 changed files with 225 additions and 292 deletions
|
|
@ -8,9 +8,8 @@
|
|||
{
|
||||
imports = [
|
||||
./git.nix
|
||||
./vscodium.nix
|
||||
./python.nix
|
||||
./editor.nix
|
||||
./godot.nix
|
||||
./openssl.nix
|
||||
./languages.nix
|
||||
];
|
||||
}
|
||||
|
|
|
|||
54
modules/apps/development/editor.nix
Normal file
54
modules/apps/development/editor.nix
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
development = {
|
||||
editor = {
|
||||
vscodium.enable = lib.mkEnableOption "enable vscodium";
|
||||
emacs.enable = lib.mkEnableOption "enable emacs";
|
||||
default = "vscodium";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.systemPackages = with pkgs; [
|
||||
(lib.mkIf config.development.editor.vscodium.enable vscodium)
|
||||
nixfmt
|
||||
];
|
||||
|
||||
programs = {
|
||||
vscode = lib.mkIf config.development.editor.vscodium.enable {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
defaultEditor = lib.mkIf (config.development.editor.default == "vscodium") true;
|
||||
profiles.default.extensions = with pkgs.vscode-extensions; [
|
||||
catppuccin.catppuccin-vsc
|
||||
catppuccin.catppuccin-vsc-icons
|
||||
jnoortheen.nix-ide
|
||||
alefragnani.project-manager
|
||||
naumovs.color-highlight
|
||||
geequlim.godot-tools
|
||||
stylelint.vscode-stylelint
|
||||
ecmel.vscode-html-css
|
||||
esbenp.prettier-vscode
|
||||
];
|
||||
};
|
||||
};
|
||||
services = {
|
||||
emacs = lib.mkIf config.development.editor.emacs.enable {
|
||||
enable = true;
|
||||
install = true;
|
||||
defaultEditor = lib.mkIf (config.development.editor.default == "emacs") true;
|
||||
};
|
||||
};
|
||||
home.sessionVariables = {
|
||||
EDITOR = lib.mkDefault "codium";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
{
|
||||
options = {
|
||||
development = {
|
||||
apps.development = {
|
||||
godot.enable = lib.mkEnableOption "enable godot";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.development.godot.enable {
|
||||
home.packages = with pkgs; [
|
||||
config = lib.mkIf config.apps.development.godot.enable {
|
||||
systemPackages = with pkgs; [
|
||||
godot
|
||||
];
|
||||
};
|
||||
|
|
|
|||
20
modules/apps/development/languages.nix
Normal file
20
modules/apps/development/languages.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.development.languages = {
|
||||
python = lib.mkEnableOption "enable python";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.systemPackages = with pkgs; [
|
||||
(lib.mkIf lib.mkIf config.development.languages.python.enable virtualenv)
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
development = {
|
||||
vscodium.enable = lib.mkEnableOption "enable vscodium";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.development.vscodium.enable {
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
profiles.default.extensions = with pkgs.vscode-extensions; [
|
||||
catppuccin.catppuccin-vsc
|
||||
catppuccin.catppuccin-vsc-icons
|
||||
jnoortheen.nix-ide
|
||||
alefragnani.project-manager
|
||||
naumovs.color-highlight
|
||||
geequlim.godot-tools
|
||||
stylelint.vscode-stylelint
|
||||
ecmel.vscode-html-css
|
||||
esbenp.prettier-vscode
|
||||
];
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
nixfmt
|
||||
];
|
||||
home.sessionVariables = {
|
||||
EDITOR = lib.mkDefault "codium";
|
||||
};
|
||||
};
|
||||
}
|
||||
34
modules/apps/internet/browser.nix
Normal file
34
modules/apps/internet/browser.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.internet.browsers = {
|
||||
zen-browser = {
|
||||
enable = lib.mkEnableOption "enable zen browser";
|
||||
package = inputs.zen-browser.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
binary = "${config.apps.internet.browsers.zen-browser.package}/bin/zen";
|
||||
};
|
||||
tor-browser = {
|
||||
enable = lib.mkEnableOption "enable tor browser";
|
||||
package = pkgs.tor-browser;
|
||||
binary = "${config.apps.internet.browsers.tor-browser.package}/bin/tor-browser";
|
||||
};
|
||||
default = lib.mkOption {
|
||||
default = "zen";
|
||||
description = "default browser";
|
||||
};
|
||||
};
|
||||
};
|
||||
config = {
|
||||
|
||||
environment.systemPackages = [
|
||||
(lib.mkIf config.apps.internet.browsers.zen-browser.enable config.apps.internet.browsers.zen-browser.package)
|
||||
(lib.mkIf config.apps.internet.browsers.tor-browser.enable config.apps.internet.browsers.tor-browser.package)
|
||||
];
|
||||
};
|
||||
}
|
||||
13
modules/apps/internet/default.nix
Normal file
13
modules/apps/internet/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./browser.nix
|
||||
./mail.nix
|
||||
];
|
||||
}
|
||||
|
|
@ -12,21 +12,6 @@
|
|||
obsidian.enable = lib.mkEnableOption "enable obsidian";
|
||||
bitwarden.enable = lib.mkEnableOption "enable bitwarden";
|
||||
blender.enable = lib.mkEnableOption "enable blender";
|
||||
syncthing = {
|
||||
enable = lib.mkEnableOption "enable syncthing";
|
||||
devices = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
set syncthing devices
|
||||
'';
|
||||
};
|
||||
folders = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
set syncthing folders
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -37,20 +22,15 @@
|
|||
lib.mkIf (config.desktop.shell.rofi.enable) pinentry-curses rofi-rbw
|
||||
))
|
||||
(lib.mkIf (config.apps.misc.blender.enable) blender)
|
||||
libsecret
|
||||
gcr_4
|
||||
pass
|
||||
];
|
||||
|
||||
programs = {
|
||||
seahorse.enable = true;
|
||||
};
|
||||
services = {
|
||||
syncthing = lib.mkIf config.apps.misc.syncthing.enable {
|
||||
enable = true;
|
||||
tray.enable = true;
|
||||
guiAddress = "0.0.0.0:8384";
|
||||
settings = {
|
||||
devices = config.apps.misc.syncthing.devices;
|
||||
folders = config.apps.misc.syncthing.folders;
|
||||
};
|
||||
overrideDevices = lib.mkIf (config.apps.misc.syncthing.devices == { }) false;
|
||||
overrideFolders = lib.mkIf (config.apps.misc.syncthing.folders == { }) false;
|
||||
};
|
||||
gnome.gnome-keyring.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
52
modules/apps/sync/default.nix
Normal file
52
modules/apps/sync/default.nix
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.sync = {
|
||||
kde-connect = {
|
||||
enable = lib.mkEnableOption "enable kde-connect";
|
||||
};
|
||||
syncthing = {
|
||||
enable = lib.mkEnableOption "enable syncthing";
|
||||
devices = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
set syncthing devices
|
||||
'';
|
||||
};
|
||||
folders = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
set syncthing folders
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
config = {
|
||||
programs = {
|
||||
kdeconnect = lib.mkIf config.apps.sync.kde-connect.enable {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
services = {
|
||||
syncthing = lib.mkIf config.apps.sync.syncthing.enable {
|
||||
enable = true;
|
||||
tray.enable = true;
|
||||
guiAddress = "0.0.0.0:8384";
|
||||
settings = {
|
||||
devices = config.apps.sync.syncthing.devices;
|
||||
folders = config.apps.sync.syncthing.folders;
|
||||
};
|
||||
overrideDevices = lib.mkIf (config.apps.sync.syncthing.devices == { }) false;
|
||||
overrideFolders = lib.mkIf (config.apps.sync.syncthing.folders == { }) false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
rofi.enable = lib.mkEnableOption "enable rofi";
|
||||
launcher = lib.mkOption {
|
||||
default = (lib.mkIf config.desktop.shell.walker.enable "walker");
|
||||
description = "default launcher"
|
||||
description = "default launcher";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
description = "editor hotkey";
|
||||
};
|
||||
};
|
||||
}
|
||||
};
|
||||
};
|
||||
imports = [
|
||||
./hyprland.nix
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
{
|
||||
networking = {
|
||||
domain = config.domain;
|
||||
networkmanager.enable = true;
|
||||
firewall = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -16,9 +16,9 @@
|
|||
'';
|
||||
};
|
||||
email = lib.mkOption {
|
||||
default = "${config.user.userName}@${config.domain}";
|
||||
description = "main user email"
|
||||
}
|
||||
default = "${config.user.userName}@${config.networking.domain}";
|
||||
description = "main user email";
|
||||
};
|
||||
shell = lib.mkOption {
|
||||
default = pkgs.fish;
|
||||
description = ''
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue