mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-11 02:56:27 +00:00
fix formatting
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
# Home Manager Configuration
|
||||
|
||||
Rebuild the configuration
|
||||
|
||||
```sh
|
||||
home-manager switch --flake ~/.config/home-manager
|
||||
```
|
||||
|
||||
**Make sure new files are added to git**
|
||||
|
||||
## Initial Setup on a new machine
|
||||
@@ -11,6 +13,7 @@ home-manager switch --flake ~/.config/home-manager
|
||||
Enable flakes
|
||||
|
||||
`configuration.nix`
|
||||
|
||||
```nix
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
```
|
||||
@@ -20,4 +23,5 @@ git clone git@github.com:Theaninova/home-manager-config.git ~/.config/home-manag
|
||||
nix build '.#homeConfigurations.theaninova.activationPackage'
|
||||
./result/activate
|
||||
```
|
||||
After that reload the shell
|
||||
|
||||
After that reload the shell
|
||||
|
||||
@@ -7,7 +7,10 @@
|
||||
size = 12;
|
||||
};
|
||||
window = {
|
||||
padding = { x = 16; y = 16; };
|
||||
padding = {
|
||||
x = 16;
|
||||
y = 16;
|
||||
};
|
||||
opacity = 0.8;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
enableNvidiaPatches = true;
|
||||
@@ -151,7 +154,7 @@
|
||||
};
|
||||
programs.fuzzel = import ./fuzzel.nix;
|
||||
# programs.alacritty = import ./alacritty.nix;
|
||||
programs.kitty = import ./kitty.nix { inherit pkgs; };
|
||||
programs.kitty = import ./kitty.nix {inherit pkgs;};
|
||||
programs.wofi = import ./wofi.nix;
|
||||
programs.swaylock = import ./swaylock.nix;
|
||||
|
||||
@@ -170,13 +173,15 @@
|
||||
wl-clipboard
|
||||
polkit_gnome
|
||||
xdg-desktop-portal-gtk
|
||||
/* TODO: (flameshot.overrideAttrs(prev: {
|
||||
/*
|
||||
TODO: (flameshot.overrideAttrs(prev: {
|
||||
nativeBuildInputs = prev.nativeBuildInputs ++ [ git grim ];
|
||||
cmakeFlags = [
|
||||
"-DUSE_WAYLAND_CLIPBOARD=1"
|
||||
"-DUSE_WAYLAND_GRIM=true"
|
||||
];
|
||||
}))*/
|
||||
}))
|
||||
*/
|
||||
swww
|
||||
# ags
|
||||
glib
|
||||
@@ -232,12 +237,16 @@
|
||||
file.profile = {
|
||||
enable = true;
|
||||
target = ".zprofile"; # change to .profile if you're not using zsh
|
||||
text = /* sh */ ''
|
||||
Hyprland && echo "goodbye" && exit 0 \
|
||||
|| echo "$? couldn't launch Hyprland" && tty | grep tty1 \
|
||||
&& echo "refusing to autologin without Hyprland on tty1" && exit 0 \
|
||||
|| echo "not on tty1, letting in"
|
||||
'';
|
||||
text =
|
||||
/*
|
||||
sh
|
||||
*/
|
||||
''
|
||||
Hyprland && echo "goodbye" && exit 0 \
|
||||
|| echo "$? couldn't launch Hyprland" && tty | grep tty1 \
|
||||
&& echo "refusing to autologin without Hyprland on tty1" && exit 0 \
|
||||
|| echo "not on tty1, letting in"
|
||||
'';
|
||||
};
|
||||
|
||||
file.".config/hypr/shaders" = {
|
||||
@@ -246,4 +255,3 @@
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"SUPER,T,exec,kitty"
|
||||
"SUPER,C,togglespecialworkspace,calc"
|
||||
"SUPER_SHIFT,C,exec,hyprpicker"
|
||||
",PRINT,exec,slurp | grim -g - - | wl-copy"
|
||||
"SUPER_SHIFT,V,exec,slurp | grim -g - - | wl-copy"
|
||||
"SUPER,P,pseudo,"
|
||||
|
||||
"SUPER_SHIFT,up,movewindow,u"
|
||||
@@ -11,8 +11,8 @@
|
||||
"SUPER_SHIFT,left,movewindow,l"
|
||||
"SUPER_SHIFT,right,movewindow,r"
|
||||
|
||||
"SUPER_SHIFT,S,movetoworkspace,special"
|
||||
"SUPER,S,togglespecialworkspace,special"
|
||||
"SUPER_SHIFT,S,movetoworkspace,special:terminal"
|
||||
"SUPER,S,togglespecialworkspace,terminal"
|
||||
|
||||
"SUPER,up,movefocus,u"
|
||||
"SUPER,down,movefocus,d"
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{ pkgs }:
|
||||
{
|
||||
{pkgs}: {
|
||||
enable = true;
|
||||
shellIntegration.enableFishIntegration = true;
|
||||
font = {
|
||||
@@ -8,9 +7,9 @@
|
||||
size = 12;
|
||||
};
|
||||
extraConfig = ''
|
||||
symbol_map U+23FB-U+23FE,U+2665,U+26A1,U+2B58,U+E000-U+E00A,U+E0A0-U+E0A3,U+E0B0-U+E0D4,U+E200-U+E2A9,U+E300-U+E3E3,U+E5FA-U+E6AA,U+E700-U+E7C5,U+EA60-U+EBEB,U+F000-U+F2E0,U+F300-U+F32F,U+F400-U+F4A9,U+F500-U+F8FF,U+F0001-U+F1AF0 Symbols Nerd Font Mono
|
||||
symbol_map U+23FB-U+23FE,U+2665,U+26A1,U+2B58,U+E000-U+E00A,U+E0A0-U+E0A3,U+E0B0-U+E0D4,U+E200-U+E2A9,U+E300-U+E3E3,U+E5FA-U+E6AA,U+E700-U+E7C5,U+EA60-U+EBEB,U+F000-U+F2E0,U+F300-U+F32F,U+F400-U+F4A9,U+F500-U+F8FF,U+F0001-U+F1AF0 Symbols Nerd Font Mono
|
||||
|
||||
include ./current-theme.conf
|
||||
include ./current-theme.conf
|
||||
'';
|
||||
settings = {
|
||||
background_opacity = "0.8";
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
{
|
||||
enable = true;
|
||||
}
|
||||
@@ -6,9 +6,9 @@
|
||||
position = "top";
|
||||
height = 48;
|
||||
output = "HDMI-A-1";
|
||||
modules-left = [ "wlr/workspaces" ];
|
||||
modules-center = [ "wlr/taskbar" ];
|
||||
modules-right = [ "custom/weather" "clock" ];
|
||||
modules-left = ["wlr/workspaces"];
|
||||
modules-center = ["wlr/taskbar"];
|
||||
modules-right = ["custom/weather" "clock"];
|
||||
|
||||
"wlr/taskbar" = {
|
||||
all-outputs = true;
|
||||
|
||||
60
flake.nix
60
flake.nix
@@ -17,32 +17,40 @@
|
||||
};
|
||||
};
|
||||
|
||||
outputs = {nixpkgs, home-manager, ags, nixvim, ...}:
|
||||
let
|
||||
username = "theaninova";
|
||||
system = "x86_64-linux";
|
||||
stateVersion = "23.11";
|
||||
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
|
||||
homeDirPrefix = if pkgs.stdenv.hostPlatform.isDarwin then "/Users" else "/home";
|
||||
homeDirectory = "${homeDirPrefix}/${username}";
|
||||
|
||||
home = (import ./home.nix {
|
||||
inherit homeDirectory pkgs stateVersion system username;
|
||||
});
|
||||
in {
|
||||
homeConfigurations.theaninova = home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
outputs = {
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
ags,
|
||||
nixvim,
|
||||
...
|
||||
}: let
|
||||
username = "theaninova";
|
||||
system = "x86_64-linux";
|
||||
stateVersion = "23.11";
|
||||
|
||||
modules = [
|
||||
ags.homeManagerModules.default
|
||||
home
|
||||
nixvim.homeManagerModules.nixvim
|
||||
];
|
||||
};
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
|
||||
homeDirPrefix =
|
||||
if pkgs.stdenv.hostPlatform.isDarwin
|
||||
then "/Users"
|
||||
else "/home";
|
||||
homeDirectory = "${homeDirPrefix}/${username}";
|
||||
|
||||
home = import ./home.nix {
|
||||
inherit homeDirectory pkgs stateVersion system username;
|
||||
};
|
||||
in {
|
||||
homeConfigurations.theaninova = home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
|
||||
modules = [
|
||||
ags.homeManagerModules.default
|
||||
home
|
||||
nixvim.homeManagerModules.nixvim
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
17
home.nix
17
home.nix
@@ -1,8 +1,13 @@
|
||||
{ homeDirectory, pkgs, stateVersion, system, username }:
|
||||
let
|
||||
packages = import ./packages.nix { inherit pkgs; };
|
||||
{
|
||||
homeDirectory,
|
||||
pkgs,
|
||||
stateVersion,
|
||||
system,
|
||||
username,
|
||||
}: let
|
||||
packages = import ./packages.nix {inherit pkgs;};
|
||||
in {
|
||||
imports = [ ./desktops/hyprland/hyprland.nix ];
|
||||
imports = [./desktops/hyprland/hyprland.nix];
|
||||
|
||||
home = {
|
||||
inherit homeDirectory packages stateVersion username;
|
||||
@@ -26,6 +31,6 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
programs = import ./programs.nix { inherit pkgs; };
|
||||
services = import ./services.nix { inherit pkgs homeDirectory; };
|
||||
programs = import ./programs.nix {inherit pkgs;};
|
||||
services = import ./services.nix {inherit pkgs homeDirectory;};
|
||||
}
|
||||
|
||||
19
packages.nix
19
packages.nix
@@ -1,16 +1,17 @@
|
||||
{ pkgs }: with pkgs; [
|
||||
{pkgs}:
|
||||
with pkgs; [
|
||||
# nix
|
||||
cachix
|
||||
lorri
|
||||
|
||||
# fix for proton games not launching without any error message
|
||||
libxcrypt
|
||||
|
||||
|
||||
# browsers
|
||||
firefox-wayland
|
||||
chromium
|
||||
brave
|
||||
|
||||
|
||||
# media
|
||||
jellyfin-media-player
|
||||
youtube-music
|
||||
@@ -21,30 +22,30 @@
|
||||
bitwarden
|
||||
|
||||
# chat apps
|
||||
(import ./packages/threema-desktop.nix { inherit pkgs; })
|
||||
(import ./packages/threema-desktop.nix {inherit pkgs;})
|
||||
(discord.override {
|
||||
withOpenASAR = true;
|
||||
withVencord = false;
|
||||
})
|
||||
slack
|
||||
|
||||
|
||||
# office
|
||||
libreoffice
|
||||
apostrophe # markdown editor
|
||||
|
||||
|
||||
# creative
|
||||
gimp-with-plugins
|
||||
inkscape-with-extensions
|
||||
audacity
|
||||
# friture TODO: broken
|
||||
blender
|
||||
|
||||
|
||||
# development
|
||||
(import ./packages/intellij.nix { inherit pkgs; })
|
||||
(import ./packages/intellij.nix {inherit pkgs;})
|
||||
jetbrains.rust-rover
|
||||
insomnia
|
||||
avalonia-ilspy
|
||||
|
||||
|
||||
# gaming
|
||||
steam
|
||||
oversteer
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
{ lib, stdenv, fetchFromGitHub, pkgs }:
|
||||
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
pkgs,
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "firefox-gnome-theme";
|
||||
version = "116.0.0";
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
{ lib, stdenv, fetchFromGitHub, pkgs }:
|
||||
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
pkgs,
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "hid-fanatecff-tools";
|
||||
version = "0.1.0";
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
{ pkgs }: pkgs.jetbrains.idea-ultimate.overrideAttrs(prev: {
|
||||
version = "233.11799.30";
|
||||
{pkgs}:
|
||||
pkgs.jetbrains.idea-ultimate.overrideAttrs (prev: {
|
||||
version = "233.11799.67";
|
||||
src = builtins.fetchurl {
|
||||
url = "https://download.jetbrains.com/idea/ideaIU-233.11799.30.tar.gz";
|
||||
sha256 = "c5db01f201660c9bd3427383f6ae9179293cbdeae7e54e2d708b4d70248d8427";
|
||||
url = "https://download.jetbrains.com/idea/ideaIU-233.11799.67.tar.gz";
|
||||
sha256 = "374153baecd8a633fef3fe75fb5fe47e57f3d136e9873f7bd7ce1166f942559e";
|
||||
};
|
||||
})
|
||||
|
||||
@@ -1,17 +1,22 @@
|
||||
# This file has been generated by node2nix 1.11.1. Do not edit!
|
||||
|
||||
{pkgs ? import <nixpkgs> {
|
||||
inherit system;
|
||||
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs_14"}:
|
||||
|
||||
let
|
||||
{
|
||||
pkgs ?
|
||||
import <nixpkgs> {
|
||||
inherit system;
|
||||
},
|
||||
system ? builtins.currentSystem,
|
||||
nodejs ? pkgs."nodejs_14",
|
||||
}: let
|
||||
nodeEnv = import ./node-env.nix {
|
||||
inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
|
||||
inherit pkgs nodejs;
|
||||
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
|
||||
libtool =
|
||||
if pkgs.stdenv.isDarwin
|
||||
then pkgs.darwin.cctools
|
||||
else null;
|
||||
};
|
||||
in
|
||||
import ./node-packages.nix {
|
||||
inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
|
||||
inherit nodeEnv;
|
||||
}
|
||||
import ./node-packages.nix {
|
||||
inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
|
||||
inherit nodeEnv;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
{ pkgs }: pkgs.threema-desktop.overrideAttrs(prev: {
|
||||
postFixup = prev.postFixup + ''
|
||||
echo "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-features=WaylandWindowDecorations}}" >> $out/bin/threema
|
||||
'';
|
||||
{pkgs}:
|
||||
pkgs.threema-desktop.overrideAttrs (prev: {
|
||||
postFixup =
|
||||
prev.postFixup
|
||||
+ ''
|
||||
echo "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-features=WaylandWindowDecorations}}" >> $out/bin/threema
|
||||
'';
|
||||
})
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
{ pkgs }:
|
||||
{
|
||||
{pkgs}: {
|
||||
home-manager.enable = true;
|
||||
rbw = import ./programs/bitwarden.nix;
|
||||
git = import ./programs/git.nix;
|
||||
lazygit.enable = true;
|
||||
nixvim = import ./programs/nixvim.nix { inherit pkgs; };
|
||||
nixvim = import ./programs/nixvim.nix {inherit pkgs;};
|
||||
fish = {
|
||||
enable = true;
|
||||
interactiveShellInit = ''
|
||||
|
||||
1738
programs/.p10k.zsh
1738
programs/.p10k.zsh
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,11 @@
|
||||
{ pkgs }:
|
||||
let
|
||||
angular-ls = (import ../packages/node-packages { inherit pkgs; nodejs = pkgs.nodejs_18; })."@angular/language-server";
|
||||
nvim-treesitter-angular = (pkgs.vimUtils.buildVimPlugin {
|
||||
{pkgs}: let
|
||||
angular-ls =
|
||||
(import ../packages/node-packages {
|
||||
inherit pkgs;
|
||||
nodejs = pkgs.nodejs_18;
|
||||
})
|
||||
."@angular/language-server";
|
||||
nvim-treesitter-angular = pkgs.vimUtils.buildVimPlugin {
|
||||
name = "nvim-treesitter-angular";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "dlvandenberg";
|
||||
@@ -9,8 +13,8 @@ let
|
||||
rev = "7549872eb34934c5bc4f4df2ca71196755adfb1c";
|
||||
hash = "sha256-fayRXogWBeV9jDmjXs/u6ULlbCziKIL26pKKh9QJzf8=";
|
||||
};
|
||||
});
|
||||
tree-sitter-angular = (pkgs.tree-sitter.buildGrammar {
|
||||
};
|
||||
tree-sitter-angular = pkgs.tree-sitter.buildGrammar {
|
||||
language = "angular";
|
||||
version = "624ff10";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
@@ -19,8 +23,8 @@ let
|
||||
rev = "e0d7582e1ebbcf6136cfcfb22a37e20f4562acba";
|
||||
hash = "sha256-ADOlhAUidmRKCpDxmo70ZYHgtUIwxrfy0ucACfjkhlQ=";
|
||||
};
|
||||
});
|
||||
darkman = (pkgs.vimUtils.buildVimPlugin {
|
||||
};
|
||||
darkman = pkgs.vimUtils.buildVimPlugin {
|
||||
name = "darkman";
|
||||
src = pkgs.buildGoModule rec {
|
||||
pname = "darkman.nvim";
|
||||
@@ -33,76 +37,113 @@ let
|
||||
sha256 = "sha256-ssEYdM460I1rufjgh63CEkLi4K+bEWbwku/6gQbytno=";
|
||||
};
|
||||
postInstall = ''
|
||||
cp -r lua $out
|
||||
cp -r lua $out
|
||||
'';
|
||||
};
|
||||
});
|
||||
in
|
||||
{
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
};
|
||||
in {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
|
||||
options = {
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
options = {
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
|
||||
tabstop = 2;
|
||||
softtabstop = 2;
|
||||
shiftwidth = 2;
|
||||
expandtab = true;
|
||||
smartindent = true;
|
||||
signcolumn = "yes";
|
||||
tabstop = 2;
|
||||
softtabstop = 2;
|
||||
shiftwidth = 2;
|
||||
expandtab = true;
|
||||
smartindent = true;
|
||||
signcolumn = "yes";
|
||||
|
||||
undodir = { __raw = /* lua */ "os.getenv('HOME') .. '/.config/nvim/undodir'"; };
|
||||
undofile = true;
|
||||
undodir = {__raw = "os.getenv('HOME') .. '/.config/nvim/undodir'";};
|
||||
undofile = true;
|
||||
|
||||
scrolloff = 8;
|
||||
scrolloff = 8;
|
||||
|
||||
termguicolors = true;
|
||||
termguicolors = true;
|
||||
|
||||
updatetime = 50;
|
||||
updatetime = 50;
|
||||
|
||||
fillchars.eob = " ";
|
||||
};
|
||||
fillchars.eob = " ";
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{ key = "<leader>u"; mode = "n"; action = "<cmd>:UndotreeToggle<CR>"; }
|
||||
{ key = "<leader>ft"; action = "<cmd>:Neotree toggle<CR>"; }
|
||||
{ key = "<leader>s"; action = "<cmd>:SymbolsOutline<CR>"; }
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>u";
|
||||
mode = "n";
|
||||
action = "<cmd>:UndotreeToggle<CR>";
|
||||
}
|
||||
{
|
||||
key = "<leader>ft";
|
||||
action = "<cmd>:Neotree toggle<CR>";
|
||||
}
|
||||
{
|
||||
key = "<leader>s";
|
||||
action = "<cmd>:SymbolsOutline<CR>";
|
||||
}
|
||||
|
||||
{ key = "J"; mode = "v"; action = ":m '>+1<CR>gv=gv"; }
|
||||
{ key = "K"; mode = "v"; action = ":m '<-2<CR>gv=gv"; }
|
||||
{
|
||||
key = "J";
|
||||
mode = "v";
|
||||
action = ":m '>+1<CR>gv=gv";
|
||||
}
|
||||
{
|
||||
key = "K";
|
||||
mode = "v";
|
||||
action = ":m '<-2<CR>gv=gv";
|
||||
}
|
||||
|
||||
{ key = "<C-d>"; mode = "n"; action = "<C-d>zz"; }
|
||||
{ key = "<C-u>"; mode = "n"; action = "<C-d>zz"; }
|
||||
{
|
||||
key = "<C-d>";
|
||||
mode = "n";
|
||||
action = "<C-d>zz";
|
||||
}
|
||||
{
|
||||
key = "<C-u>";
|
||||
mode = "n";
|
||||
action = "<C-d>zz";
|
||||
}
|
||||
|
||||
{ key = "<leader>p"; mode = "x"; action = "\"_dP"; }
|
||||
{ key = "<leader>p"; mode = "n"; action = "\"_dP"; }
|
||||
{ key = "<leader>p"; mode = "v"; action = "\"_dP"; }
|
||||
];
|
||||
{
|
||||
key = "<leader>p";
|
||||
mode = "x";
|
||||
action = ''"_dP'';
|
||||
}
|
||||
{
|
||||
key = "<leader>p";
|
||||
mode = "n";
|
||||
action = ''"_dP'';
|
||||
}
|
||||
{
|
||||
key = "<leader>p";
|
||||
mode = "v";
|
||||
action = ''"_dP'';
|
||||
}
|
||||
];
|
||||
|
||||
globals = {
|
||||
minimap_width = 10;
|
||||
minimap_auto_start = 1;
|
||||
minimap_auto_start_win_enter = 1;
|
||||
minimap_close_buftypes = [ "nofile" ];
|
||||
minimap_block_filetypes = [ "NvimTree" ];
|
||||
globals = {
|
||||
minimap_width = 10;
|
||||
minimap_auto_start = 1;
|
||||
minimap_auto_start_win_enter = 1;
|
||||
minimap_close_buftypes = ["nofile"];
|
||||
minimap_block_filetypes = ["NvimTree"];
|
||||
|
||||
catppuccin_debug = true;
|
||||
catppuccin_debug = true;
|
||||
|
||||
mapleader = ";";
|
||||
};
|
||||
mapleader = ";";
|
||||
};
|
||||
|
||||
clipboard = {
|
||||
register = "unnamedplus";
|
||||
providers.wl-copy.enable = true;
|
||||
};
|
||||
clipboard = {
|
||||
register = "unnamedplus";
|
||||
providers.wl-copy.enable = true;
|
||||
};
|
||||
|
||||
extraConfigVim = /* vim */ ''
|
||||
extraConfigVim = ''
|
||||
hi Normal guibg=NONE ctermbg=NONE
|
||||
'';
|
||||
'';
|
||||
|
||||
extraConfigLua = /* lua */ ''
|
||||
extraConfigLua = ''
|
||||
require("darkman").setup()
|
||||
|
||||
local Terminal = require('toggleterm.terminal').Terminal
|
||||
@@ -112,160 +153,222 @@ in
|
||||
direction = "float",
|
||||
|
||||
on_open = function(term)
|
||||
vim.cmd("startinsert!")
|
||||
vim.api.nvim_buf_set_keymap(term.bufnr, "n", "q", "<cmd>close<CR>", {noremap = true, silent = true})
|
||||
vim.cmd("startinsert!")
|
||||
vim.api.nvim_buf_set_keymap(term.bufnr, "n", "q", "<cmd>close<CR>", {noremap = true, silent = true})
|
||||
end,
|
||||
on_close = function(term)
|
||||
vim.cmd("startinsert!")
|
||||
vim.cmd("startinsert!")
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
function _lazygit_toggle()
|
||||
lazygit:toggle()
|
||||
lazygit:toggle()
|
||||
end
|
||||
|
||||
vim.api.nvim_set_keymap("n", "<leader>g", "<cmd>lua _lazygit_toggle()<CR>", {noremap = true, silent = true})
|
||||
'';
|
||||
'';
|
||||
|
||||
colorschemes.catppuccin = {
|
||||
enable = true;
|
||||
transparentBackground = true;
|
||||
background = {
|
||||
dark = "frappe";
|
||||
light = "latte";
|
||||
};
|
||||
colorschemes.catppuccin = {
|
||||
enable = true;
|
||||
transparentBackground = true;
|
||||
background = {
|
||||
dark = "frappe";
|
||||
light = "latte";
|
||||
};
|
||||
};
|
||||
|
||||
plugins = {
|
||||
lualine = {
|
||||
enable = true;
|
||||
globalstatus = true;
|
||||
sectionSeparators = { left = ""; right = ""; };
|
||||
componentSeparators = { left = "┊"; right = "┊"; };
|
||||
sections = {
|
||||
lualine_a = [ { name = "mode"; separator = { right = ""; left = ""; }; icon = ""; } ];
|
||||
lualine_z = [ { name = "location"; separator = { right = ""; left = ""; }; } ];
|
||||
};
|
||||
plugins = {
|
||||
lualine = {
|
||||
enable = true;
|
||||
globalstatus = true;
|
||||
sectionSeparators = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
auto-save = {
|
||||
enable = true;
|
||||
triggerEvents = [ "FocusLost" "CursorHold" "BufLeave" ];
|
||||
componentSeparators = {
|
||||
left = "┊";
|
||||
right = "┊";
|
||||
};
|
||||
indent-blankline = {
|
||||
enable = true;
|
||||
indent.char = "▏";
|
||||
};
|
||||
illuminate.enable = true;
|
||||
nvim-autopairs.enable = true;
|
||||
nvim-colorizer.enable = true;
|
||||
copilot-vim.enable = true;
|
||||
neo-tree = {
|
||||
enable = true;
|
||||
filesystem.filteredItems.visible = true;
|
||||
eventHandlers = {
|
||||
file_opened = /* lua */ ''
|
||||
function()
|
||||
require('neo-tree').close_all()
|
||||
end
|
||||
'';
|
||||
};
|
||||
};
|
||||
undotree.enable = true;
|
||||
toggleterm = {
|
||||
enable = true;
|
||||
openMapping = "<leader>t";
|
||||
direction = "vertical";
|
||||
size = 60;
|
||||
};
|
||||
|
||||
telescope = {
|
||||
enable = true;
|
||||
keymaps = {
|
||||
"<leader>ff" = "git_files";
|
||||
"<leader>fa" = "find_files";
|
||||
"<leader>fg" = "live_grep";
|
||||
"<leader>fb" = "buffers";
|
||||
"<leader>fh" = "help_tags";
|
||||
};
|
||||
};
|
||||
|
||||
treesitter = {
|
||||
enable = true;
|
||||
indent = true;
|
||||
grammarPackages = pkgs.vimPlugins.nvim-treesitter.allGrammars ++ [tree-sitter-angular];
|
||||
};
|
||||
|
||||
none-ls.enable = true;
|
||||
lsp-format.enable = true;
|
||||
lsp = {
|
||||
enable = true;
|
||||
keymaps = {
|
||||
diagnostic = {
|
||||
};
|
||||
};
|
||||
enabledServers = [
|
||||
sections = {
|
||||
lualine_a = [
|
||||
{
|
||||
name = "angularls";
|
||||
extraOptions = {
|
||||
cmd = ["${angular-ls}" "--stdio" "--tsProbeLocations" "${pkgs.nodePackages.typescript-language-server}" "--ngProbeLocations" "${angular-ls}"];
|
||||
name = "mode";
|
||||
separator = {
|
||||
right = "";
|
||||
left = "";
|
||||
};
|
||||
icon = "";
|
||||
}
|
||||
];
|
||||
lualine_z = [
|
||||
{
|
||||
name = "location";
|
||||
separator = {
|
||||
right = "";
|
||||
left = "";
|
||||
};
|
||||
}
|
||||
];
|
||||
servers = {
|
||||
html.enable = true;
|
||||
cssls.enable = true;
|
||||
svelte.enable = true;
|
||||
eslint.enable = true;
|
||||
tsserver.enable = true;
|
||||
|
||||
yamlls.enable = true;
|
||||
jsonls.enable = true;
|
||||
taplo.enable = true;
|
||||
|
||||
rust-analyzer.enable = true;
|
||||
pylsp.enable = true;
|
||||
|
||||
nixd.enable = true;
|
||||
bashls.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
lspkind = {
|
||||
enable = true;
|
||||
mode = "symbol";
|
||||
cmp.after = /* lua */ ''
|
||||
function(entry, vim_item, kind)
|
||||
kind.kind = kind.kind .. " ";
|
||||
return kind
|
||||
end
|
||||
};
|
||||
auto-save = {
|
||||
enable = true;
|
||||
triggerEvents = ["FocusLost" "BufLeave"];
|
||||
};
|
||||
indent-blankline = {
|
||||
enable = true;
|
||||
indent.char = "▏";
|
||||
};
|
||||
illuminate.enable = true;
|
||||
nvim-autopairs.enable = true;
|
||||
nvim-colorizer.enable = true;
|
||||
copilot-vim.enable = true;
|
||||
neo-tree = {
|
||||
enable = true;
|
||||
filesystem.filteredItems.visible = true;
|
||||
eventHandlers = {
|
||||
file_opened = ''
|
||||
function()
|
||||
require('neo-tree').close_all()
|
||||
end
|
||||
'';
|
||||
};
|
||||
nvim-cmp = {
|
||||
enable = true;
|
||||
mapping = {
|
||||
"<C-n>" = /* lua */ "cmp.mapping.select_next_item({behavior = cmp.SelectBehavior.Select})";
|
||||
"<C-p>" = /* lua */ "cmp.mapping.select_prev_item({behavior = cmp.SelectBehavior.Select})";
|
||||
"<C-Space>" = /* lua */ "cmp.mapping.confirm({select = true})";
|
||||
"<C-Enter>" = /* lua */ "cmp.mapping.complete()";
|
||||
};
|
||||
sources = [
|
||||
{ name = "path"; }
|
||||
{ name = "nvim_lsp"; }
|
||||
{ name = "npm"; }
|
||||
{ name = "treesitter"; }
|
||||
];
|
||||
formatting.fields = [ "kind" "abbr" "menu" ];
|
||||
window.completion.border = "rounded";
|
||||
};
|
||||
|
||||
nix.enable = true;
|
||||
};
|
||||
undotree.enable = true;
|
||||
toggleterm = {
|
||||
enable = true;
|
||||
openMapping = "<leader>t";
|
||||
direction = "vertical";
|
||||
size = 60;
|
||||
};
|
||||
|
||||
extraPackages = [ angular-ls pkgs.nodePackages.typescript-language-server ];
|
||||
extraPlugins = with pkgs.vimPlugins; [
|
||||
nvim-treesitter-angular
|
||||
vim-startuptime
|
||||
darkman
|
||||
];
|
||||
}
|
||||
telescope = {
|
||||
enable = true;
|
||||
keymaps = {
|
||||
"<leader>ff" = "git_files";
|
||||
"<leader>fa" = "find_files";
|
||||
"<leader>fg" = "live_grep";
|
||||
"<leader>fb" = "buffers";
|
||||
"<leader>fh" = "help_tags";
|
||||
};
|
||||
};
|
||||
|
||||
treesitter = {
|
||||
enable = true;
|
||||
indent = true;
|
||||
grammarPackages =
|
||||
pkgs.vimPlugins.nvim-treesitter.allGrammars
|
||||
++ [tree-sitter-angular];
|
||||
nixvimInjections = true;
|
||||
};
|
||||
|
||||
none-ls = {
|
||||
enable = true;
|
||||
sources = {
|
||||
code_actions = {
|
||||
eslint.enable = true;
|
||||
shellcheck.enable = true;
|
||||
};
|
||||
diagnostics = {
|
||||
eslint.enable = true;
|
||||
shellcheck.enable = true;
|
||||
};
|
||||
formatting = {
|
||||
alejandra.enable = true;
|
||||
prettier.enable = true;
|
||||
rustfmt.enable = true;
|
||||
shfmt.enable = true;
|
||||
stylua.enable = true;
|
||||
};
|
||||
};
|
||||
onAttach = ''
|
||||
function(client, bufnr)
|
||||
if client.supports_method("textDocument/formatting") then
|
||||
vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr })
|
||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||
group = augroup,
|
||||
buffer = bufnr,
|
||||
callback = function()
|
||||
vim.lsp.buf.format({async = false})
|
||||
end,
|
||||
})
|
||||
end
|
||||
end
|
||||
'';
|
||||
};
|
||||
lsp = {
|
||||
enable = true;
|
||||
keymaps = {diagnostic = {};};
|
||||
enabledServers = [
|
||||
{
|
||||
name = "angularls";
|
||||
extraOptions = {
|
||||
cmd = [
|
||||
"${angular-ls}"
|
||||
"--stdio"
|
||||
"--tsProbeLocations"
|
||||
"${pkgs.nodePackages.typescript-language-server}"
|
||||
"--ngProbeLocations"
|
||||
"${angular-ls}"
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
servers = {
|
||||
html.enable = true;
|
||||
cssls.enable = true;
|
||||
svelte.enable = true;
|
||||
tsserver.enable = true;
|
||||
|
||||
yamlls.enable = true;
|
||||
jsonls.enable = true;
|
||||
taplo.enable = true;
|
||||
|
||||
rust-analyzer.enable = true;
|
||||
pylsp.enable = true;
|
||||
|
||||
nixd.enable = true;
|
||||
lua-ls.enable = true;
|
||||
bashls.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
lspkind = {
|
||||
enable = true;
|
||||
mode = "symbol";
|
||||
cmp.after = ''
|
||||
function(entry, vim_item, kind)
|
||||
kind.kind = kind.kind .. " ";
|
||||
return kind
|
||||
end
|
||||
'';
|
||||
};
|
||||
nvim-cmp = {
|
||||
enable = true;
|
||||
mapping = {
|
||||
"<C-n>" = "cmp.mapping.select_next_item({behavior = cmp.SelectBehavior.Select})";
|
||||
"<C-p>" = "cmp.mapping.select_prev_item({behavior = cmp.SelectBehavior.Select})";
|
||||
"<C-Space>" = "cmp.mapping.confirm({select = true})";
|
||||
"<C-Enter>" = "cmp.mapping.complete()";
|
||||
};
|
||||
sources = [
|
||||
{name = "path";}
|
||||
{name = "nvim_lsp";}
|
||||
{name = "npm";}
|
||||
{name = "treesitter";}
|
||||
];
|
||||
formatting.fields = ["kind" "abbr" "menu"];
|
||||
window.completion.border = "rounded";
|
||||
};
|
||||
|
||||
nix.enable = true;
|
||||
};
|
||||
|
||||
extraPackages = [angular-ls pkgs.nodePackages.typescript-language-server];
|
||||
extraPlugins = with pkgs.vimPlugins; [
|
||||
nvim-treesitter-angular
|
||||
vim-startuptime
|
||||
darkman
|
||||
];
|
||||
}
|
||||
|
||||
54
services.nix
54
services.nix
@@ -1,5 +1,7 @@
|
||||
{ pkgs, homeDirectory }:
|
||||
{
|
||||
pkgs,
|
||||
homeDirectory,
|
||||
}: {
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
enableSshSupport = true;
|
||||
@@ -24,7 +26,7 @@
|
||||
|
||||
vendorHash = "sha256-xEPmNnaDwFU4l2G4cMvtNeQ9KneF5g9ViQSFrDkrafY=";
|
||||
|
||||
nativeBuildInputs = [ pkgs.scdoc ];
|
||||
nativeBuildInputs = [pkgs.scdoc];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace darkman.service \
|
||||
@@ -45,13 +47,13 @@
|
||||
runHook preInstall
|
||||
make PREFIX=$out install
|
||||
runHook postInstall
|
||||
'';
|
||||
'';
|
||||
|
||||
meta = with pkgs.lib; {
|
||||
description = "Framework for dark-mode and light-mode transitions on Linux desktop";
|
||||
homepage = "https://gitlab.com/WhyNotHugo/darkman";
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.ajgrf ];
|
||||
maintainers = [maintainers.ajgrf];
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "darkman";
|
||||
};
|
||||
@@ -61,25 +63,41 @@
|
||||
lng = 13.405;
|
||||
};
|
||||
darkModeScripts = {
|
||||
gtk-theme = /* bash */ ''
|
||||
${pkgs.dconf}/bin/dconf write \
|
||||
/org/gnome/desktop/interface/color-scheme "'prefer-dark'"
|
||||
'';
|
||||
kitty-theme = /* bash */ ''
|
||||
${pkgs.kitty}/bin/kitty +kitten themes --reload-in=all --config-file-name ${homeDirectory}/.config/kitty/current-colors.conf Catppuccin-Frappe
|
||||
'';
|
||||
gtk-theme =
|
||||
/*
|
||||
bash
|
||||
*/
|
||||
''
|
||||
${pkgs.dconf}/bin/dconf write \
|
||||
/org/gnome/desktop/interface/color-scheme "'prefer-dark'"
|
||||
'';
|
||||
kitty-theme =
|
||||
/*
|
||||
bash
|
||||
*/
|
||||
''
|
||||
${pkgs.kitty}/bin/kitty +kitten themes --reload-in=all --config-file-name ${homeDirectory}/.config/kitty/current-colors.conf Catppuccin-Frappe
|
||||
'';
|
||||
wallpaper = ''
|
||||
${pkgs.swww}/bin/swww img ${./Lakeside-2/Lakeside-2-1.jpg}
|
||||
'';
|
||||
};
|
||||
lightModeScripts = {
|
||||
gtk-theme = /* bash */ ''
|
||||
${pkgs.dconf}/bin/dconf write \
|
||||
/org/gnome/desktop/interface/color-scheme "'prefer-light'"
|
||||
'';
|
||||
kitty-theme = /* bash */ ''
|
||||
${pkgs.kitty}/bin/kitty +kitten themes --reload-in=all --config-file-name ${homeDirectory}/.config/kitty/current-colors.conf Catppuccin-Latte
|
||||
'';
|
||||
gtk-theme =
|
||||
/*
|
||||
bash
|
||||
*/
|
||||
''
|
||||
${pkgs.dconf}/bin/dconf write \
|
||||
/org/gnome/desktop/interface/color-scheme "'prefer-light'"
|
||||
'';
|
||||
kitty-theme =
|
||||
/*
|
||||
bash
|
||||
*/
|
||||
''
|
||||
${pkgs.kitty}/bin/kitty +kitten themes --reload-in=all --config-file-name ${homeDirectory}/.config/kitty/current-colors.conf Catppuccin-Latte
|
||||
'';
|
||||
wallpaper = ''
|
||||
${pkgs.swww}/bin/swww img ${./Lakeside-2/Lakeside-2-10.jpg}
|
||||
'';
|
||||
|
||||
@@ -4,7 +4,7 @@ info=$(curl --silent --fail --show-error "https://download.jetbrains.com/idea/id
|
||||
checksum=$(echo $info | grep -oE '^[0-9a-f]{64}')
|
||||
filename=$(echo $info | grep -oE '[^* ]+$')
|
||||
if [ -z "${checksum}" ] || [ -z "${filename}" ]; then
|
||||
exit -1
|
||||
exit -1
|
||||
fi
|
||||
echo "Filename: $filename"
|
||||
echo "Checksum: $checksum"
|
||||
@@ -15,4 +15,3 @@ sed -i "s|sha256\s*=.*|sha256 = \"$checksum\";|" "$nixFile"
|
||||
|
||||
echo ""
|
||||
echo "IntelliJ updated to $1"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user