A new start
This commit is contained in:
commit
72271e8cae
78 changed files with 2472 additions and 0 deletions
5
users/profiles/bat/default.nix
Normal file
5
users/profiles/bat/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
programs.bat = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
7
users/profiles/chromium/default.nix
Normal file
7
users/profiles/chromium/default.nix
Normal file
|
@ -0,0 +1,7 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
package = pkgs.ungoogled-chromium;
|
||||
};
|
||||
}
|
12
users/profiles/direnv/default.nix
Normal file
12
users/profiles/direnv/default.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
config = {
|
||||
warn_timeout = "60s"; # default was 5s
|
||||
};
|
||||
nix-direnv = {
|
||||
enable = true;
|
||||
enableFlakes = true;
|
||||
};
|
||||
};
|
||||
}
|
41
users/profiles/emacs/default.nix
Normal file
41
users/profiles/emacs/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.file."emacs" = {
|
||||
recursive = true;
|
||||
source = ./emacs.d;
|
||||
target = ".emacs.d";
|
||||
};
|
||||
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
package =
|
||||
let
|
||||
myEmacs = pkgs.emacsPgtkGcc;
|
||||
emacsWithPackages = (pkgs.emacsPackagesFor myEmacs).emacsWithPackages;
|
||||
in
|
||||
emacsWithPackages (
|
||||
epkgs: (
|
||||
with epkgs.melpaStablePackages; [ ]
|
||||
) ++ (
|
||||
with epkgs.melpaPackages; [
|
||||
all-the-icons
|
||||
use-package
|
||||
evil
|
||||
evil-collection
|
||||
projectile
|
||||
magit
|
||||
fira-code-mode
|
||||
nix-mode
|
||||
lispy
|
||||
lsp-mode
|
||||
dap-mode
|
||||
which-key
|
||||
]
|
||||
) ++ (
|
||||
with epkgs.elpaPackages; [
|
||||
modus-themes
|
||||
]
|
||||
) ++ [ ]
|
||||
);
|
||||
};
|
||||
}
|
28
users/profiles/emacs/emacs.d/config/aesthetics.el
Normal file
28
users/profiles/emacs/emacs.d/config/aesthetics.el
Normal file
|
@ -0,0 +1,28 @@
|
|||
(use-package modus-themes
|
||||
:init
|
||||
(setq
|
||||
modus-themes-region '(bg-only no-extend))
|
||||
(modus-themes-load-themes)
|
||||
:config
|
||||
(modus-themes-load-vivendi)
|
||||
:bind ("<f5>" . modus-themes-toggle)
|
||||
)
|
||||
|
||||
(use-package fira-code-mode
|
||||
:custom (fira-code-mode-disabled-ligatures '(":")) ;; List of ligatures to turn off
|
||||
:config (global-fira-code-mode))
|
||||
|
||||
|
||||
(defalias 'yes-or-no-p 'y-or-n-p)
|
||||
(setq use-dialog-box nil
|
||||
display-time-format "%H:%M"
|
||||
mouse-autoselect-window 't
|
||||
inhibit-startup-screen t)
|
||||
(menu-bar-mode -1)
|
||||
(tool-bar-mode -1)
|
||||
(scroll-bar-mode -1)
|
||||
(fringe-mode 1)
|
||||
(display-time-mode 1)
|
||||
|
||||
|
||||
(provide 'aesthetics)
|
19
users/profiles/emacs/emacs.d/config/config-evil.el
Normal file
19
users/profiles/emacs/emacs.d/config/config-evil.el
Normal file
|
@ -0,0 +1,19 @@
|
|||
|
||||
(use-package evil
|
||||
:init
|
||||
(setq evil-want-keybinding nil)
|
||||
:config
|
||||
(progn
|
||||
(evil-mode 1) ; globally enable evil-mode except for the following modes
|
||||
(mapcar (lambda (mode) (evil-set-initial-state mode 'emacs))
|
||||
'(vterm-mode
|
||||
eshell-mode
|
||||
dired-mode
|
||||
))))
|
||||
|
||||
;; (use-package evil-collection
|
||||
;; ; :after (evil company-mode vterm)
|
||||
;; :config
|
||||
;; (evil-collection-init))
|
||||
|
||||
(provide 'config-evil)
|
26
users/profiles/emacs/emacs.d/config/lsp.el
Normal file
26
users/profiles/emacs/emacs.d/config/lsp.el
Normal file
|
@ -0,0 +1,26 @@
|
|||
(use-package lsp-mode
|
||||
:init
|
||||
;; set prefix for lsp-command-keymap (few alternatives - "C-l", "C-c l")
|
||||
(setq lsp-keymap-prefix "C-c l")
|
||||
:hook (;; replace XXX-mode with concrete major-mode(e. g. python-mode)
|
||||
(nix-mode . lsp)
|
||||
;; if you want which-key integration
|
||||
(lsp-mode . lsp-enable-which-key-integration))
|
||||
:commands lsp)
|
||||
|
||||
;; optionally
|
||||
(use-package lsp-ui :commands lsp-ui-mode)
|
||||
;; if you are helm user
|
||||
(use-package helm-lsp :commands helm-lsp-workspace-symbol)
|
||||
(use-package lsp-treemacs :commands lsp-treemacs-errors-list)
|
||||
|
||||
;; optionally if you want to use debugger
|
||||
(use-package dap-mode)
|
||||
;; (use-package dap-LANGUAGE) to load the dap adapter for your language
|
||||
|
||||
;; optional if you want which-key integration
|
||||
(use-package which-key
|
||||
:config
|
||||
(which-key-mode))
|
||||
|
||||
(provide 'lsp)
|
4
users/profiles/emacs/emacs.d/config/nix.el
Normal file
4
users/profiles/emacs/emacs.d/config/nix.el
Normal file
|
@ -0,0 +1,4 @@
|
|||
(use-package nix-mode
|
||||
:mode "\\.nix\\'")
|
||||
|
||||
(provide 'nix)
|
10
users/profiles/emacs/emacs.d/init.el
Normal file
10
users/profiles/emacs/emacs.d/init.el
Normal file
|
@ -0,0 +1,10 @@
|
|||
(add-to-list 'load-path "~/.emacs.d/config")
|
||||
|
||||
(setq gc-cons-threshold 100000000
|
||||
read-process-output-max (* 1024 1024)
|
||||
)
|
||||
|
||||
(require 'aesthetics)
|
||||
(require 'config-evil)
|
||||
(require 'lsp)
|
||||
(require 'nix)
|
6
users/profiles/exa/default.nix
Normal file
6
users/profiles/exa/default.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
programs.exa = {
|
||||
enable = true;
|
||||
enableAliases = true;
|
||||
};
|
||||
}
|
50
users/profiles/firefox/default.nix
Normal file
50
users/profiles/firefox/default.nix
Normal file
|
@ -0,0 +1,50 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
#package = (pkgs.firefox.override { extraNativeMessagingHosts = [
|
||||
# pkgs.browserpass
|
||||
# pkgs.passff-host
|
||||
#]; });
|
||||
#extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
#https-everywhere
|
||||
#privacy-badger
|
||||
#ublock-origin
|
||||
#react-devtools
|
||||
#org-capture
|
||||
#clearurls
|
||||
#browserpass # not working, manually installed passff
|
||||
#firefox-color
|
||||
#darkreader
|
||||
#cookie-autodelete
|
||||
# and manually installed ghost-text for atomic-chrome
|
||||
#];
|
||||
profiles.ccr = {
|
||||
id = 0; # implies isDefault = true
|
||||
settings = {
|
||||
"browser.startup.homepage" = "https://google.it";
|
||||
"browser.search.region" = "IT";
|
||||
"browser.search.isUS" = false;
|
||||
"distribution.searchplugins.defaultLocale" = "it-IT";
|
||||
"general.useragent.locale" = "it-IT";
|
||||
"browser.bookmarks.showMobileBookmarks" = true;
|
||||
"browser.download.folderList" = 2;
|
||||
"browser.download.lastDir" = "~/downloads/";
|
||||
};
|
||||
userChrome = ''
|
||||
/* Hide tab bar in FF Quantum * /
|
||||
@-moz-document url("chrome://browser/content/browser.xul") {
|
||||
#TabsToolbar {
|
||||
visibility: collapse !important;
|
||||
margin-bottom: 21px !emportant;
|
||||
}
|
||||
|
||||
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
|
||||
visibility: collapse !important;
|
||||
}
|
||||
}
|
||||
'';
|
||||
userContent = "";
|
||||
};
|
||||
};
|
||||
}
|
18
users/profiles/foot/default.nix
Normal file
18
users/profiles/foot/default.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
programs.foot = {
|
||||
enable = true;
|
||||
server.enable = true;
|
||||
settings = {
|
||||
main = {
|
||||
term = "xterm-256color";
|
||||
|
||||
font = "Fira Code:size=11";
|
||||
dpi-aware = "yes";
|
||||
};
|
||||
|
||||
mouse = {
|
||||
hide-when-typing = "yes";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
5
users/profiles/fzf/default.nix
Normal file
5
users/profiles/fzf/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
programs.fzf = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
22
users/profiles/git/default.nix
Normal file
22
users/profiles/git/default.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
|
||||
extraConfig = {
|
||||
pull.rebase = false;
|
||||
};
|
||||
|
||||
userName = "aciceri";
|
||||
userEmail = "andrea.ciceri@autistici.org";
|
||||
signing = {
|
||||
signByDefault = true;
|
||||
key = "andrea.ciceri@autistici.org";
|
||||
};
|
||||
extraConfig = {
|
||||
url = {
|
||||
"ssh://git@github.com/" = { insteadOf = https://github.com/; };
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
}
|
12
users/profiles/gpg/default.nix
Normal file
12
users/profiles/gpg/default.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
services.gpg-agent = {
|
||||
enable = true;
|
||||
enableSshSupport = true;
|
||||
sshKeys = [ "CE2FD0D9BECBD8876811714925066CC257413416" ];
|
||||
};
|
||||
|
||||
programs.gpg = {
|
||||
enable = true;
|
||||
settings = { };
|
||||
};
|
||||
}
|
11
users/profiles/gtk/default.nix
Normal file
11
users/profiles/gtk/default.nix
Normal file
|
@ -0,0 +1,11 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
gtk = {
|
||||
enable = true;
|
||||
font.name = "DejaVu Sans";
|
||||
iconTheme = {
|
||||
name = "Adwaita";
|
||||
package = pkgs.gnome.adwaita-icon-theme;
|
||||
};
|
||||
};
|
||||
}
|
5
users/profiles/lorri/default.nix
Normal file
5
users/profiles/lorri/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
services.lorri = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
5
users/profiles/mpv/default.nix
Normal file
5
users/profiles/mpv/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
programs.mpv = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
5
users/profiles/password-store/default.nix
Normal file
5
users/profiles/password-store/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
services.pass-secret-service.enable = true;
|
||||
services.password-store-sync.enable = true;
|
||||
programs.password-store.enable = true;
|
||||
}
|
5
users/profiles/qutebrowser/default.nix
Normal file
5
users/profiles/qutebrowser/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
programs.qutebrowser = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
129
users/profiles/sway/default.nix
Normal file
129
users/profiles/sway/default.nix
Normal file
|
@ -0,0 +1,129 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [ wl-clipboard ];
|
||||
wayland = {
|
||||
windowManager.sway =
|
||||
let
|
||||
modifier = "Mod4";
|
||||
in
|
||||
{
|
||||
enable = true;
|
||||
config = {
|
||||
modifier = modifier;
|
||||
menu = "${pkgs.bemenu}/bin/bemenu-run -b -m 1 -p 'λ'";
|
||||
output = {
|
||||
HDMI-A-2 = {
|
||||
#bg = "~/dotfiles/dotfiles/xorg/wallpaper.jpg fill";
|
||||
};
|
||||
};
|
||||
#fonts = [ "Font Awesome" "Fira Code" ];
|
||||
terminal = "${pkgs.foot}/bin/footclient";
|
||||
bars = [
|
||||
{
|
||||
command = "${pkgs.waybar}/bin/waybar";
|
||||
}
|
||||
];
|
||||
#startup = [{
|
||||
#command = "systemctl --user restart redshift";
|
||||
# always = true;
|
||||
#}];
|
||||
window.commands = [
|
||||
{ criteria = { app_id = "mpv"; }; command = "sticky enable"; }
|
||||
{ criteria = { app_id = "mpv"; }; command = "floating enable"; }
|
||||
{ criteria = { title = "MetaMask Notification.*"; }; command = "floating enable"; }
|
||||
];
|
||||
input = {
|
||||
"*" = {
|
||||
xkb_layout = "us";
|
||||
xkb_variant = "intl";
|
||||
};
|
||||
};
|
||||
};
|
||||
extraConfig = ''
|
||||
bindsym ${modifier}+p move workspace to output right
|
||||
#exec systemctl --user import-environment
|
||||
#exec systemctl --user start graphical-session.target
|
||||
'';
|
||||
xwayland = true;
|
||||
systemdIntegration = true;
|
||||
};
|
||||
};
|
||||
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
style = builtins.readFile ./style.css;
|
||||
settings = [
|
||||
{
|
||||
layer = "top";
|
||||
position = "top";
|
||||
output = [ "HDMI-A-2" ];
|
||||
|
||||
modules-left = [
|
||||
"sway/mode"
|
||||
"sway/workspaces"
|
||||
];
|
||||
modules-center = [ ];
|
||||
modules-right = [
|
||||
"idle_inhibitor"
|
||||
"tray"
|
||||
"network"
|
||||
"cpu"
|
||||
"memory"
|
||||
"pulseaudio"
|
||||
"clock"
|
||||
"backlight"
|
||||
"battery"
|
||||
];
|
||||
|
||||
modules = {
|
||||
"sway/workspaces" = {
|
||||
all-outputs = true;
|
||||
disable-scroll-wraparound = true;
|
||||
};
|
||||
|
||||
"sway/mode" = { tooltip = false; };
|
||||
|
||||
idle_inhibitor = {
|
||||
format = "{icon}";
|
||||
format-icons = {
|
||||
activated = "unlocked";
|
||||
deactivated = "locking";
|
||||
};
|
||||
};
|
||||
|
||||
pulseaudio = {
|
||||
format = "vol {volume}%";
|
||||
on-click-middle = "${pkgs.sway}/bin/swaymsg exec \"${pkgs.pavucontrol}/bin/pavucontrol\"";
|
||||
};
|
||||
|
||||
network = {
|
||||
format-wifi = "{essid} {signalStrength}% {bandwidthUpBits} {bandwidthDownBits}";
|
||||
format-ethernet = "{ifname} eth {bandwidthUpBits} {bandwidthDownBits}";
|
||||
};
|
||||
|
||||
cpu = {
|
||||
interval = 2;
|
||||
format = "cpu {load}% {usage}%";
|
||||
};
|
||||
|
||||
memory.format = "mem {}%";
|
||||
|
||||
backlight = {
|
||||
format = "nit {percent}%";
|
||||
on-scroll-up = "${pkgs.light}/bin/light -A 2";
|
||||
on-scroll-down = "${pkgs.light}/bin/light -U 2";
|
||||
};
|
||||
|
||||
tray.spacing = 10;
|
||||
|
||||
clock.format = "{:%a %b %d %H:%M}";
|
||||
|
||||
battery = {
|
||||
format = "bat {}";
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
219
users/profiles/sway/style.css
Normal file
219
users/profiles/sway/style.css
Normal file
|
@ -0,0 +1,219 @@
|
|||
* {
|
||||
border: none;
|
||||
border-radius: 5;
|
||||
/* `otf-font-awesome` is required to be installed for icons */
|
||||
/* font matches sway-config.nix */
|
||||
font-family: "DejaVu Sans";
|
||||
font-weight: bold;
|
||||
font-size: 9pt;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: rgba(43, 48, 59, 0.5);
|
||||
border-bottom: 3px solid rgba(100, 114, 125, 0.5);
|
||||
color: #ffffff;
|
||||
transition-property: background-color;
|
||||
transition-duration: .5s;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
/*
|
||||
window#waybar.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
window#waybar.solo {
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
*/
|
||||
|
||||
window#waybar.termite {
|
||||
background-color: #3F3F3F;
|
||||
}
|
||||
|
||||
window#waybar.chromium {
|
||||
background-color: #000000;
|
||||
border: none;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 5px;
|
||||
background-color: transparent;
|
||||
color: #ffffff;
|
||||
border-bottom: 3px solid transparent;
|
||||
}
|
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
#workspaces button:hover {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
box-shadow: inherit;
|
||||
border-bottom: 3px solid #ffffff;
|
||||
}
|
||||
|
||||
#workspaces button.current_output {
|
||||
border-bottom: 3px solid #64727D;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
background-color: #64727D;
|
||||
}
|
||||
|
||||
#workspaces button.focused.current_output {
|
||||
border-bottom: 3px solid #ffffff;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background-color: #64727D;
|
||||
border-bottom: 3px solid #ffffff;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#custom-media,
|
||||
.srht-failed,
|
||||
.srht-success,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
margin: 0 4px;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#clock {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
color: #ffffff;
|
||||
background-color: #26A65B;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: #f53c3c;
|
||||
color: #ffffff;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
background-color: #06989A;
|
||||
}
|
||||
|
||||
#memory {
|
||||
background-color: #2980b9;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background-color: #555753;
|
||||
}
|
||||
|
||||
#network {
|
||||
background-color: #4E9A06;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
background-color: #f53c3c;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
background-color: #75507B;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #90b1b1;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#custom-media.custom-spotify {
|
||||
background-color: #66cc99;
|
||||
}
|
||||
|
||||
#custom-media.custom-vlc {
|
||||
background-color: #ffa000;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
background-color: #f0932b;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#tray {
|
||||
background-color: #C4A000;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
background-color: #2d3436;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#mpd.disconnected {
|
||||
background-color: #f53c3c;
|
||||
}
|
||||
|
||||
#mpd.stopped {
|
||||
background-color: #90b1b1;
|
||||
}
|
||||
|
||||
#mpd.paused {
|
||||
background-color: #51a37a;
|
||||
}
|
||||
|
||||
.srht-success {
|
||||
background-color: #4E9A06;
|
||||
}
|
||||
|
||||
.srht-failed {
|
||||
background-color: #f53c3c;
|
||||
}
|
5
users/profiles/vim/default.nix
Normal file
5
users/profiles/vim/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
programs.vim = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
23
users/profiles/vscode/default.nix
Normal file
23
users/profiles/vscode/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
# only purpose of this is to make vscode login to Github
|
||||
services.gnome-keyring = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
|
||||
userSettings = {
|
||||
"update.channel" = "none";
|
||||
"editor"."formatOnSave" = true;
|
||||
"window"."menuBarVisibility" = "classic";
|
||||
"[nix]"."editor.tabSize" = 2;
|
||||
"nix"."enableLanguageServer" = true;
|
||||
};
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
eamodio.gitlens
|
||||
jnoortheen.nix-ide
|
||||
];
|
||||
};
|
||||
}
|
7
users/profiles/xdg/default.nix
Normal file
7
users/profiles/xdg/default.nix
Normal file
|
@ -0,0 +1,7 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = [ pkgs.xdg-utils ];
|
||||
xdg = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
5
users/profiles/zathura/default.nix
Normal file
5
users/profiles/zathura/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
programs.zathura = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
58
users/profiles/zsh/default.nix
Normal file
58
users/profiles/zsh/default.nix
Normal file
|
@ -0,0 +1,58 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableAutosuggestions = true;
|
||||
enableCompletion = true;
|
||||
autocd = true;
|
||||
plugins = [
|
||||
{
|
||||
name = "nix-zsh-completions";
|
||||
src = pkgs.nix-zsh-completions;
|
||||
file = "share/zsh/plugins/nix/nix-zsh-completions.plugin.zsh";
|
||||
}
|
||||
{
|
||||
name = "spaceship";
|
||||
file = "share/zsh/themes/spaceship.zsh-theme";
|
||||
src = pkgs.spaceship-prompt;
|
||||
}
|
||||
{
|
||||
name = "zsh-fzf-tab";
|
||||
file = "share/fzf-tab/fzf-tab.plugin.zsh";
|
||||
src = pkgs.zsh-fzf-tab;
|
||||
}
|
||||
{
|
||||
name = "fast-zsh-syntax-highlighting";
|
||||
file = "share/zsh/site-functions/fast-syntax-highlighting.plugin.zsh";
|
||||
src = pkgs.zsh-fast-syntax-highlighting;
|
||||
}
|
||||
];
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"git"
|
||||
"sudo"
|
||||
"command-not-found"
|
||||
"colored-man-pages"
|
||||
"colorize"
|
||||
];
|
||||
};
|
||||
shellAliases = {
|
||||
"screenshot" = "scrot '~/shots/%F_%T_$wx$h.png' -e 'xclip -selection clipboard -target image/png -i $f' -s";
|
||||
"pass-clone" = "[ -d .password-store ] && echo 'Password store archive already exists' || git clone git@git.sr.ht:~zrsk/pass ~/.password-store";
|
||||
"getpass" = "pass show $(find .password-store/ -name \"*.gpg\" | sed \"s/\\.password-store\\/\\(.*\\)\\.gpg$/\\1/g\" | fzf) | wl-copy; ((sleep 60 && wl-copy --clear) &)";
|
||||
"cat" = "bat";
|
||||
"em" = "emacsclient -c";
|
||||
"emnw" = "emacsclient -c -nw";
|
||||
};
|
||||
localVariables = {
|
||||
PASSWORD_STORE_DIR = "/home/ccr/.password-store";
|
||||
SPACESHIP_TIME_SHOW = "true";
|
||||
SPACESHIP_USER_SHOW = "always";
|
||||
SPACESHIP_HOST_SHOW = "always";
|
||||
EDITOR = "vim";
|
||||
NIX_BUILD_SHELL = "${pkgs.zsh-nix-shell}/scripts/buildShellShim.zsh";
|
||||
PROMPT = "\\\${IN_NIX_SHELL:+[nix-shell] }$PROMPT";
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue