129 lines
2.7 KiB
Nix
129 lines
2.7 KiB
Nix
{ pkgs, inputs, ... }:
|
|
{
|
|
config = {
|
|
# Home Manager needs a bit of information about you and the paths it should
|
|
# manage.
|
|
home.username = "jokke";
|
|
home.homeDirectory = "/home/jokke";
|
|
home.packages = with pkgs; [
|
|
ffmpeg
|
|
mediainfo
|
|
git-lfs
|
|
telegram-desktop
|
|
shards
|
|
deno
|
|
virt-manager
|
|
gimp
|
|
lftp
|
|
inkscape
|
|
wineWowPackages.waylandFull
|
|
reaper
|
|
inputs.ksoloti-pr.legacyPackages.${pkgs.system}.ksoloti
|
|
calibre
|
|
jellyfin-media-player
|
|
darktable
|
|
openscad
|
|
shutter
|
|
git-annex
|
|
hledger
|
|
hledger-ui
|
|
hledger-iadd
|
|
];
|
|
|
|
gnome.profilePicture = ../assets/profile-pictures/jokke.png;
|
|
|
|
programs.neovim = {
|
|
extraPackages = with pkgs; [
|
|
nodePackages.graphql-language-service-cli
|
|
];
|
|
withTreesitterPlugins = p: [
|
|
p.typescript
|
|
p.svelte
|
|
p.prisma
|
|
p.graphql
|
|
];
|
|
formatters = [
|
|
{
|
|
filetypes = [
|
|
"typescript"
|
|
"typescriptreact"
|
|
"svelte"
|
|
];
|
|
globs = [
|
|
"*.ts"
|
|
"*.tsx"
|
|
"*.svelte"
|
|
];
|
|
exe = "npx";
|
|
args = file: [
|
|
"prettier"
|
|
"--stdin-filepath"
|
|
file
|
|
];
|
|
stdin = true;
|
|
}
|
|
{
|
|
filetypes = [ "prisma" ];
|
|
globs = [ "*.prisma" ];
|
|
exe = "${pkgs.nodePackages.prisma}/bin/prisma";
|
|
args = file: [
|
|
"format"
|
|
"--schema"
|
|
];
|
|
stdin = false;
|
|
}
|
|
];
|
|
lsp.servers = with pkgs; [
|
|
{
|
|
name = "svelte";
|
|
package = nodePackages.svelte-language-server;
|
|
}
|
|
{
|
|
name = "denols";
|
|
package = deno;
|
|
rootPattern = [ "deno.json" ];
|
|
}
|
|
{
|
|
name = "prismals";
|
|
package = nodePackages."@prisma/language-server";
|
|
rootPattern = [
|
|
"package.json"
|
|
"deno.json"
|
|
];
|
|
}
|
|
{
|
|
name = "graphql";
|
|
package = nodePackages.graphql-language-service-cli;
|
|
config = {
|
|
filetypes = [
|
|
"typescript"
|
|
"typescriptreact"
|
|
"graphql"
|
|
"svelte"
|
|
];
|
|
};
|
|
}
|
|
];
|
|
};
|
|
|
|
programs.ssh.matchBlocks = {
|
|
"alderaan" = {
|
|
hostname = "alderaan.space";
|
|
user = "root";
|
|
};
|
|
"base.alderaan" = {
|
|
hostname = "base.alderaan.space";
|
|
user = "luke";
|
|
};
|
|
"jokke.space" = {
|
|
user = "root";
|
|
};
|
|
};
|
|
|
|
programs.git.extraConfig.user.email = "joakim@repomaa.com";
|
|
services.syncthing = {
|
|
enable = true;
|
|
};
|
|
};
|
|
}
|