formated using alejandra

This commit is contained in:
Don Harper 2024-06-30 09:47:45 -05:00
parent 88a48b895c
commit 4b1114a616
92 changed files with 1377 additions and 1156 deletions

View file

@ -1,6 +1,9 @@
{ config, pkgs, ... }:
{
imports = [ ./bash_complition.nix ];
config,
pkgs,
...
}: {
imports = [./bash_complition.nix];
home.file.".bash_local".source = files/bash/bash_local;
home.file.".bash_aliases".source = files/bash/bash_aliases;
home.file.".bash_functions".source = files/bash/bash_functions;

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
home.file = {
doascomplete = {
enable = true;
@ -8,10 +8,10 @@
{
local cur prev words cword split
_init_completion -s || return
local i mode=normal
[[ ''$1 == *doasedit ]] && mode=edit
[[ ''$mode == normal ]] &&
for ((i = 1; i <= cword; i++)); do
if [[ ''${words[i]} != -* ]]; then
@ -23,16 +23,16 @@
[[ ''${words[i]} == -@(!(-*)[uUgCp]) ]] &&
((i++))
done
case "''$prev" in
-u)
COMPREPLY=(''$(compgen -u -- "''$cur"))
return
;;
esac
''$split && return
if [[ ''$cur == -* ]]; then
local opts=''$(_parse_help "''$1")
COMPREPLY=(''$(compgen -W ' ''${opts:-''$(_parse_usage "''$1")}' -- "''$cur"))
@ -103,33 +103,33 @@
################################################################################
#the following variable is substituted for by ../../test/bash_completion.t
taskcommand='task rc.verbose:nothing rc.confirmation:no rc.hooks:off'
_task_get_tags() {
''$taskcommand _tags
}
_task_get_config() {
''$taskcommand _config
}
_task_offer_priorities() {
COMPREPLY=( ''$(compgen -W "L M H" -- ''${cur/*:/}) )
}
_task_offer_projects() {
COMPREPLY=( ''$(compgen -W "''$(''$taskcommand _projects)" -- ''${cur/*:/}) )
}
_task_offer_contexts() {
COMPREPLY=( ''$(compgen -W "''$(''$taskcommand _context) define delete list none show" -- ''$cur) )
}
_task_context_alias=''$(''$taskcommand show | grep alias.*context | cut -d' ' -f1 | cut -d. -f2)
_task()
{
local cur prev opts base
COMPREPLY=()
cur="''${COMP_WORDS[COMP_CWORD]}"
prev="''${COMP_WORDS[COMP_CWORD-1]}"
@ -143,11 +143,11 @@
# echo -e "\ncur='''$cur'"
# echo "prev='''$prev'"
# echo "prev2='''$prev2'"
abbrev_min=''$(''$taskcommand show | grep "abbreviation.minimum" | awk {'print ''$2'})
commands_aliases=''$(echo ''$(''$taskcommand _commands; ''$taskcommand _aliases) | tr " " "\n"|sort|tr "\n" " ")
opts="''$commands_aliases ''$(''$taskcommand _columns)"
case "''${prev}" in
''$_task_context_alias|cont|conte|contex|context)
_task_offer_contexts
@ -237,7 +237,7 @@
esac
;;
esac
COMPREPLY=( ''$(compgen -W "''${opts}" -- ''${cur}) )
return 0
}
@ -257,7 +257,7 @@
{
echo "annotate cancel config continue day delete diagnostics export extensions gaps get help join lengthen modify month move report resize shorten show split start stop summary tag tags track undo untag week"
}
function __get_subcommands()
{
case "''${1}" in
@ -269,17 +269,17 @@
;;
esac
}
function __get_help_items()
{
echo -e "''$( __get_commands ) interval hints date duration dom"
}
function __get_options()
{
echo -e "--help --verbose --version"
}
function __get_ids()
{
local count
@ -290,17 +290,17 @@
seq -f "@%g" 1 "''${count}"
fi
}
function __get_tags()
{
timew tags | tail -n +4 -- | sed -e "s|[[:space:]]*-''$||"
}
function __get_extensions()
{
timew extensions | awk '{if(NR>6)print ''$1}'
}
function __has_entered_id()
{
for word in "''${COMP_WORDS[@]}" ; do
@ -308,14 +308,14 @@
return 0
fi
done
return 1
}
function __has_entered_subcommand()
{
local subcommands=''$( __get_subcommands "''${1}" )
for word in "''${COMP_WORDS[@]}" ; do
for cmd in ''${subcommands} ; do
if [[ "''${word}" == "''${cmd}" ]] ; then
@ -323,14 +323,14 @@
fi
done
done
return 1
}
function __has_entered_help_item()
{
local items=''$( __get_help_items )
for word in "''${COMP_WORDS[@]:2}" ; do
for item in ''${items} ; do
if [[ "''${word}" == "''${item}" ]] ; then
@ -338,10 +338,10 @@
fi
done
done
return 1
}
function __is_entering_id()
{
if [[ "''${COMP_WORDS[COMP_CWORD]}" =~ @[0-9]* ]] ; then
@ -350,36 +350,36 @@
return 1
fi
}
function __complete_tag()
{
COMPREPLY=()
cur="''${COMP_WORDS[COMP_CWORD]}"
local line wordlist
declare -a wordlist
while IFS=''$'\n' read -r line ; do
wordlist+=( "''${line}" )
done <<< "''$( __get_tags )"
declare -a completions
while read -r line ; do
completions+=( "''${line}" )
done < <( compgen -W "''$(printf '%q ' "''${wordlist[@]}")" -- "''${cur}" 2>/dev/null )
for completion in "''${completions[@]}" ; do
COMPREPLY+=( "''$(printf "%q" "''${completion}")" )
done
}
function _timew()
{
local cur first wordlist
COMPREPLY=()
cur="''${COMP_WORDS[COMP_CWORD]}"
first="''${COMP_WORDS[1]}"
case "''${first}" in
cancel|config|diagnostics|day|extensions|get|month|show|undo|week)
wordlist=""
@ -425,10 +425,10 @@
wordlist=''$( __get_commands )
;;
esac
COMPREPLY=(''$( compgen -W "''${wordlist}" -- "''${cur}" ))
}
complete -F _timew timew
complete -F _timew tt
'';

View file

@ -1,5 +1,8 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
#home.packages = with pkgs; [ btop ];
programs.btop = {
enable = true;

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs.neovim = {
plugins = with pkgs.vimPlugins; [
{
@ -22,12 +21,12 @@
fg = { attribute = "fg", highlight = "TabLine" },
bg = { attribute = "bg", highlight = "TabLine" },
},
buffer_visible = {
fg = { attribute = "fg", highlight = "TabLine" },
bg = { attribute = "bg", highlight = "TabLine" },
},
close_button = {
fg = { attribute = "fg", highlight = "TabLine" },
bg = { attribute = "bg", highlight = "TabLine" },
@ -36,7 +35,7 @@
fg = { attribute = "fg", highlight = "TabLine" },
bg = { attribute = "bg", highlight = "TabLine" },
},
tab_selected = {
fg = { attribute = "fg", highlight = "Normal" },
bg = { attribute = "bg", highlight = "Normal" },
@ -49,7 +48,7 @@
fg = { attribute = "fg", highlight = "TabLineSel" },
bg = { attribute = "bg", highlight = "Normal" },
},
duplicate_selected = {
fg = { attribute = "fg", highlight = "TabLineSel" },
bg = { attribute = "bg", highlight = "TabLineSel" },
@ -65,7 +64,7 @@
bg = { attribute = "bg", highlight = "TabLine" },
italic = true,
},
modified = {
fg = { attribute = "fg", highlight = "TabLine" },
bg = { attribute = "bg", highlight = "TabLine" },
@ -78,7 +77,7 @@
fg = { attribute = "fg", highlight = "TabLine" },
bg = { attribute = "bg", highlight = "TabLine" },
},
separator = {
fg = { attribute = "bg", highlight = "TabLine" },
bg = { attribute = "bg", highlight = "TabLine" },
@ -99,3 +98,4 @@
};
}
# vim: shiftwidth=2 tabstop=2 expandtab

View file

@ -1,5 +1,8 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
imports = [
./bash.nix
./btop.nix

View file

@ -1,6 +1,8 @@
{ pkgs, config, ... }:
{
pkgs,
config,
...
}: {
programs.lazygit = {
settings = {
os.editPreset = "lvim";

View file

@ -1,5 +1,4 @@
{ ... }:
{
{...}: {
programs.gpg = {
enable = true;
settings = {

View file

@ -1,5 +1,5 @@
{ pkgs, ... }: {
home.packages = with pkgs; [ khal ];
{pkgs, ...}: {
home.packages = with pkgs; [khal];
xdg.configFile."khal/config".text = ''
[calendars]
[[work]]

View file

@ -1,12 +1,15 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
programs.khard = {
enable = true;
settings = {
general = {
default_action = "list";
editor = "${pkgs.neovim}/bin/nvim";
merge_editor = [ "${pkgs.neovim}/bin/nvim" "-d" ];
merge_editor = ["${pkgs.neovim}/bin/nvim" "-d"];
};
"contact table" = {
display = "first_name";
@ -16,11 +19,11 @@
show_uids = "no";
sort = "last_name";
localize_dates = "yes";
preferred_phone_number_type = [ "pref" "cell" "home" ];
preferred_email_address_type = [ "pref" "work" "home" ];
preferred_phone_number_type = ["pref" "cell" "home"];
preferred_email_address_type = ["pref" "work" "home"];
};
vcard = {
private_objects = [ "Jabber" "Skype" "Twitter" "Mastodon" ];
private_objects = ["Jabber" "Skype" "Twitter" "Mastodon"];
preferred_version = "3.0";
search_in_source_files = "no";
skip_unparsable = "no";

View file

@ -1,6 +1,8 @@
{ pkgs, config, ... }:
{
pkgs,
config,
...
}: {
xdg.configFile."lf/icons".source = ./icons;
programs.lf = {
@ -8,16 +10,15 @@
commands = {
editor-open = ''$$EDITOR $f'';
mkdir = ''
''${{
printf "Directory Name: "
read DIR
mkdir $DIR
}}
''${{
printf "Directory Name: "
read DIR
mkdir $DIR
}}
'';
};
keybindings = {
"\\\"" = "";
o = "";
c = "mkdir";
@ -27,7 +28,7 @@
"<enter>" = "open";
"<delete>" = "delete";
"dd" = "delete";
"g~" = "cd";
gh = "cd";
"g/" = "/";
@ -45,28 +46,25 @@
ignorecase = true;
};
extraConfig =
let
previewer =
pkgs.writeShellScriptBin "pv.sh" ''
extraConfig = let
previewer = pkgs.writeShellScriptBin "pv.sh" ''
file=$1
w=$2
h=$3
x=$4
y=$5
if [[ "$( ${pkgs.file}/bin/file -Lb --mime-type "$file")" =~ ^image ]]; then
${pkgs.kitty}/bin/kitty +kitten icat --silent --stdin no --transfer-mode file --place "''${w}x''${h}@''${x}x''${y}" "$file" < /dev/null > /dev/tty
exit 1
fi
${pkgs.pistol}/bin/pistol "$file"
'';
cleaner = pkgs.writeShellScriptBin "clean.sh" ''
${pkgs.kitty}/bin/kitty +kitten icat --clear --stdin no --silent --transfer-mode file < /dev/null > /dev/tty
'';
in
''
in ''
set cleaner ${cleaner}/bin/clean.sh
set previewer ${previewer}/bin/pv.sh
'';

View file

@ -1,5 +1,5 @@
{ pkgs, ... }: {
home.packages = with pkgs; [ liquidprompt ];
{pkgs, ...}: {
home.packages = with pkgs; [liquidprompt];
xdg.configFile."liquidpromptrc".text = ''
source ~/.config/liquidprompt.theme
LOCAL_RCFILE=$HOME/.config/liquidpromptrc.local

View file

@ -1,6 +1,9 @@
{ config, pkgs, ... }:
{
home.packages = with pkgs; [ listadmin ];
config,
pkgs,
...
}: {
home.packages = with pkgs; [listadmin];
home.file."listadmin.ini" = {
enable = true;
target = ".listadmin.ini";
@ -18,4 +21,3 @@
'';
};
}

View file

@ -1,5 +1,8 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
accounts.email.accounts = {
"don@donharper.org" = {
primary = true;
@ -14,8 +17,8 @@
programs.notmuch = {
enable = true;
new = {
tags = [ "unread" ];
ignore = [ ".mbsyncstate" ".uidvalidity" ".mbsyncstate.journal" ".mbsyncstate.new" ".mbsyncstate.lock" ];
tags = ["unread"];
ignore = [".mbsyncstate" ".uidvalidity" ".mbsyncstate.journal" ".mbsyncstate.new" ".mbsyncstate.lock"];
};
extraConfig = {
database = {
@ -30,12 +33,12 @@
home.file.".signature".text = ''
--
--
Don Harper
'';
systemd.user = {
timers.mbsync = {
systemd.user = {
timers.mbsync = {
Timer = {
OnUnitActiveSec = "5m";
AccuracySec = "1m";
@ -46,26 +49,26 @@
};
services.mbsync = {
Service = {
ExecStart = "/home/don/bin/mbsync";
Service = {
ExecStart = "/home/don/bin/mbsync";
Environment = "PATH=/run/current-system/sw/bin";
Type = "oneshot";
};
Type = "oneshot";
};
Install = {
WantedBy = [ "mbsync.timer" ];
WantedBy = ["mbsync.timer"];
};
};
services."mbsync-all" = {
Service = {
ExecStart = "/home/don/bin/mbsync gmail";
Service = {
ExecStart = "/home/don/bin/mbsync gmail";
Environment = "PATH=/run/current-system/sw/bin";
Type = "oneshot";
};
Type = "oneshot";
};
Install = {
WantedBy = ["mbsync-all.timer"];
};
};
};
timers."mbsync-all" = {
Timer = {
@ -75,6 +78,6 @@
Install = {
WantedBy = ["timers.target"];
};
};
};
};
}

View file

@ -1,6 +1,8 @@
{ pkgs, config, ... }:
{
pkgs,
config,
...
}: {
services = {
mopidy = {
enable = true;

View file

@ -1,13 +1,15 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
programs.neovim = {
enable = true;
defaultEditor = false;
viAlias = true;
vimAlias = true;
vimdiffAlias = true;
extraConfig =
''
extraConfig = ''
colorscheme dracula
set backspace="indent,eol,start"
set autoindent
@ -29,7 +31,7 @@
"set listchars="eol:,tab:·,trail:,nbsp:"
set background=dark
set laststatus=2
set t_Co=256
set t_Co=256
let g:ale_linters = { 'nix': ['statix']}
let g:vimwiki_list = [{'path': '~/org/', 'syntax': 'markdown', 'ext': '.md'}]
let g:vimwiki_global_ext = 0
@ -39,7 +41,7 @@
CheckAttach
Recover-vim
Shade-nvim # color
SpaceCamp # color
SpaceCamp # color
#YouCompleteMe
ale
ansible-vim

View file

@ -1,20 +1,22 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
programs.newsboat = {
enable = true;
autoReload = true;
browser = "~/bin/myweb";
reloadThreads = 4;
reloadThreads = 4;
reloadTime = 45;
extraConfig =
''
extraConfig = ''
article-sort-order date
bind-key D mark-feed-read
bind-key D mark-feed-read
bind-key J next-feed
bind-key K prev-feed
bind-key N toggle-article-read
bind-key SPACE open
bind-key a mark-feed-read
bind-key a mark-feed-read
bind-key d toggle-article-read
bind-key i quit
bind-key j next

View file

@ -1,6 +1,5 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [ taskwarrior taskwarrior-tui tasksh vit timewarrior ];
{pkgs, ...}: {
home.packages = with pkgs; [taskwarrior taskwarrior-tui tasksh vit timewarrior];
programs.taskwarrior = {
enable = true;
colorTheme = "dark-green-256";

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs.tmux = {
enable = true;
aggressiveResize = true;
@ -21,106 +20,103 @@
pkgs.tmuxPlugins.vim-tmux-navigator
{
plugin = pkgs.tmuxPlugins.online-status;
extraConfig =
''
set -g @online_icon "ok"
set -g @offline_icon "offline!"
'';
}
{
plugin = pkgs.tmuxPlugins.dracula;
extraConfig =
''
set -g @dracula-plugins "cpu-usage network battery weather time"
set -g @dracula-border-contrast true
set -g @dracula-refresh-rate 10
set -g @dracula-show-left-icon session
set -g @dracula-border-contrast true
set -g @dracula-show-powerline true
set -g @dracula-synchronize-panes-label "Sync"
set -g @dracula-show-flags true
set -g @dracula-show-timezone false
set -g @dracula-fixed-location "Katy, Texas"
set -g @dracula-show-location false
'';
}
];
extraConfig =
''
bind '~' split-window "exec btop"
bind - split-window -v -c "#{pane_current_path}"
bind | split-window -h -c "#{pane_current_path}"
bind -n C-1 select-window -t 11
bind -n C-2 select-window -t 12
bind -n C-3 select-window -t 13
bind -n C-4 select-window -t 14
bind -n C-left swap-window -t -1
bind -n C-right swap-window -t +1
bind -n S-down new-window
bind -n S-left prev
bind -n S-right next
bind 0 select-window -t 10
bind 1 select-window -t 1
bind 2 select-window -t 2
bind 3 select-window -t 3
bind 4 select-window -t 4
bind 5 select-window -t 5
bind 6 select-window -t 6
bind 7 select-window -t 7
bind 8 select-window -t 8
bind 9 select-window -t 9
bind C-0 select-window -t 20
bind C-5 select-window -t 15
bind C-6 select-window -t 16
bind C-7 select-window -t 17
bind C-8 select-window -t 18
bind C-9 select-window -t 19
bind C-c run "tmux show-buffer | wl-copy"
bind C-t neww -n vit "exec vit"
bind C-v run "tmux set-buffer -- \"$(wl-paste)\"; tmux paste-buffer"
bind F1 select-window -t 11
bind F10 select-window -t 20
bind F2 select-window -t 12
bind F3 select-window -t 13
bind F4 select-window -t 14
bind F5 select-window -t 15
bind F6 select-window -t 16
bind F7 select-window -t 17
bind F8 select-window -t 18
bind F9 select-window -t 19
bind I neww -n khal "exec ikhal"
bind K split-window -h "exec ikhal"
bind S split-window -v -l 5
bind Tab choose-window
bind ^b last-window
bind e setw synchronize-panes
bind g select-layout tiled
bind o select-pane -t :.-
bind-key u capture-pane \; save-buffer /tmp/tmux-buffer \; new-window -n "urlscan" '$SHELL -c "urlscan -c -d < /tmp/tmux-buffer"'
set -g bell-action any
set -g buffer-limit 9
set -g display-panes-active-colour red
set -g display-panes-colour blue
set -g display-panes-time 1000
set -g display-time 750
set -g focus-events on
set -g lock-after-time 120
set -g lock-command 'tty | grep -q "^/dev/tty" && vlock'
set -g renumber-windows off
set -g set-titles on
set -g set-titles-string "#S:#I:#W - "#T""
set -g status on
set -g status-interval 0
set -g status-interval 15
set -g status-justify left
set -g status-position top
set -g visual-activity off
set -g visual-bell off
set -sa terminal-features ',tmux-256color:RGB'
set -sa terminal-overrides ",tmux-256color:RGB"
set -sg escape-time 0
'';
};
extraConfig = ''
set -g @online_icon "ok"
set -g @offline_icon "offline!"
'';
}
{
plugin = pkgs.tmuxPlugins.dracula;
extraConfig = ''
set -g @dracula-plugins "cpu-usage network battery weather time"
set -g @dracula-border-contrast true
set -g @dracula-refresh-rate 10
set -g @dracula-show-left-icon session
set -g @dracula-border-contrast true
set -g @dracula-show-powerline true
set -g @dracula-synchronize-panes-label "Sync"
set -g @dracula-show-flags true
set -g @dracula-show-timezone false
set -g @dracula-fixed-location "Katy, Texas"
set -g @dracula-show-location false
'';
}
];
extraConfig = ''
bind '~' split-window "exec btop"
bind - split-window -v -c "#{pane_current_path}"
bind | split-window -h -c "#{pane_current_path}"
bind -n C-1 select-window -t 11
bind -n C-2 select-window -t 12
bind -n C-3 select-window -t 13
bind -n C-4 select-window -t 14
bind -n C-left swap-window -t -1
bind -n C-right swap-window -t +1
bind -n S-down new-window
bind -n S-left prev
bind -n S-right next
bind 0 select-window -t 10
bind 1 select-window -t 1
bind 2 select-window -t 2
bind 3 select-window -t 3
bind 4 select-window -t 4
bind 5 select-window -t 5
bind 6 select-window -t 6
bind 7 select-window -t 7
bind 8 select-window -t 8
bind 9 select-window -t 9
bind C-0 select-window -t 20
bind C-5 select-window -t 15
bind C-6 select-window -t 16
bind C-7 select-window -t 17
bind C-8 select-window -t 18
bind C-9 select-window -t 19
bind C-c run "tmux show-buffer | wl-copy"
bind C-t neww -n vit "exec vit"
bind C-v run "tmux set-buffer -- \"$(wl-paste)\"; tmux paste-buffer"
bind F1 select-window -t 11
bind F10 select-window -t 20
bind F2 select-window -t 12
bind F3 select-window -t 13
bind F4 select-window -t 14
bind F5 select-window -t 15
bind F6 select-window -t 16
bind F7 select-window -t 17
bind F8 select-window -t 18
bind F9 select-window -t 19
bind I neww -n khal "exec ikhal"
bind K split-window -h "exec ikhal"
bind S split-window -v -l 5
bind Tab choose-window
bind ^b last-window
bind e setw synchronize-panes
bind g select-layout tiled
bind o select-pane -t :.-
bind-key u capture-pane \; save-buffer /tmp/tmux-buffer \; new-window -n "urlscan" '$SHELL -c "urlscan -c -d < /tmp/tmux-buffer"'
set -g bell-action any
set -g buffer-limit 9
set -g display-panes-active-colour red
set -g display-panes-colour blue
set -g display-panes-time 1000
set -g display-time 750
set -g focus-events on
set -g lock-after-time 120
set -g lock-command 'tty | grep -q "^/dev/tty" && vlock'
set -g renumber-windows off
set -g set-titles on
set -g set-titles-string "#S:#I:#W - "#T""
set -g status on
set -g status-interval 0
set -g status-interval 15
set -g status-justify left
set -g status-position top
set -g visual-activity off
set -g visual-bell off
set -sa terminal-features ',tmux-256color:RGB'
set -sa terminal-overrides ",tmux-256color:RGB"
set -sg escape-time 0
'';
};
xdg.configFile."tmuxinator" = {
recursive = true;
source = ./files/tmuxinator;
@ -131,20 +127,20 @@
enable = true;
target = ".tmux-cssh";
text = ''
vps:-sc www -sc nuwww
local:-sc harper -sc mini -sc display -sc harper2 -sc pihole -sc fred
server:-cs vps -cs local
laptop:-sc loki -sc dragon
arch:-sc harper -sc pihole -sc nuwww -sc display
nix:-sc loki -sc eve -sc smaug
nix-all:-cs nix -sc dragon -sc ace -sc pocket2 -sc fred
ubuntu:-sc mini -sc www -sc harper2
vm:-sc vm1 -sc vm2
all-laptop:-cs laptop -sc smaug -sc dragon -sc pocket2 -sc ace -sc eve
# -sc pine
#all:-cs server -cs laptop
all:-cs server -cs all-laptop
test:-cs all -cs vm
vps:-sc www -sc nuwww
local:-sc harper -sc mini -sc display -sc harper2 -sc pihole -sc fred
server:-cs vps -cs local
laptop:-sc loki -sc dragon
arch:-sc harper -sc pihole -sc nuwww -sc display
nix:-sc loki -sc eve -sc smaug
nix-all:-cs nix -sc dragon -sc ace -sc pocket2 -sc fred
ubuntu:-sc mini -sc www -sc harper2
vm:-sc vm1 -sc vm2
all-laptop:-cs laptop -sc smaug -sc dragon -sc pocket2 -sc ace -sc eve
# -sc pine
#all:-cs server -cs laptop
all:-cs server -cs all-laptop
test:-cs all -cs vm
'';
};
};

View file

@ -1,11 +1,15 @@
{ pkgs, ... }: {
home.packages = with pkgs; [ todoman ];
xdg.configFile."todoman/config.py".text = /* python */ ''
path = "~/.config/vdirsyncer/storage/calendar/*"
date_format = "%Y-%m-%d"
time_format = "%H:%M"
default_list = "duckunix@gmail.com"
# default_due = 48
default_command = "list --startable"
'';
{pkgs, ...}: {
home.packages = with pkgs; [todoman];
xdg.configFile."todoman/config.py".text =
/*
python
*/
''
path = "~/.config/vdirsyncer/storage/calendar/*"
date_format = "%Y-%m-%d"
time_format = "%H:%M"
default_list = "duckunix@gmail.com"
# default_due = 48
default_command = "list --startable"
'';
}

View file

@ -1,5 +1,8 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
programs.topgrade = {
enable = true;
settings = {
@ -23,7 +26,7 @@
set_title = false;
cleanup = true;
#commands = {
#"Run garbage collection on Nix store" = "nix-collect-garbage";
#"Run garbage collection on Nix store" = "nix-collect-garbage";
#};
};
git = {

View file

@ -1,5 +1,5 @@
{ pkgs, ... }: {
home.packages = with pkgs; [ vifm-full ];
{pkgs, ...}: {
home.packages = with pkgs; [vifm-full];
xdg.configFile."vifm/vifmrc".text = ''
" vim: filetype=vifm :
set runexec
@ -17,7 +17,7 @@
" VIFM COLORS
" dracula
" based on: https://github.com/istib/dotfiles/blob/master/vifm/vifm-colors
" Default = -1 = None, can be used for transparency or default color
" Black = 0
" Red = 1
@ -27,31 +27,31 @@
" Magenta = 5
" Cyan = 6
" White = 7
" STYLES
" bold
" underline
" reverse or inverse
" standout
" none
highlight clear
highlight Win cterm=none ctermfg=default ctermbg=none
highlight TopLine cterm=none ctermfg=blue ctermbg=none
highlight TopLineSel cterm=none ctermfg=magenta ctermbg=none
highlight StatusLine cterm=none ctermfg=blue ctermbg=none
highlight Border cterm=none ctermfg=blue ctermbg=none
highlight Selected cterm=bold ctermfg=magenta ctermbg=default
highlight CurrLine cterm=bold ctermfg=236 ctermbg=blue
highlight WildMenu cterm=none,reverse ctermfg=blue ctermbg=236
highlight CmdLine cterm=none ctermfg=255 ctermbg=236
highlight ErrorMsg cterm=none ctermfg=red ctermbg=black
highlight Directory cterm=none ctermfg=blue ctermbg=default
highlight Link cterm=none ctermfg=cyan ctermbg=default
highlight BrokenLink cterm=none ctermfg=red ctermbg=default

View file

@ -1,8 +1,10 @@
{ inputs, outputs, ... }:
{
imports = [ inputs.home-manager.nixosModules.home-manager ];
home-manager.extraSpecialArgs = { inherit inputs outputs; };
inputs,
outputs,
...
}: {
imports = [inputs.home-manager.nixosModules.home-manager];
home-manager.extraSpecialArgs = {inherit inputs outputs;};
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs.alacritty = {
enable = true;
settings = {
@ -15,3 +14,4 @@
};
}
# vim: shiftwidth=2 tabstop=2 expandtab

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
xdg.configFile."autostart" = {
recursive = true;
source = ./files/autostart;

View file

@ -1,4 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
home.packages = with pkgs; [
gnome.gnome-boxes
libvirt

View file

@ -1,5 +1,8 @@
{ pkgs, inputs, ... }:
{
pkgs,
inputs,
...
}: {
home-manager.users.don = {
imports = [
./alacritty.nix
@ -13,97 +16,99 @@
./sway.nix
./terminals.nix
];
home.packages = with pkgs; [
anonymousPro
at-spi2-core
blueberry
clipman
cura
darktable
dmenu-wayland
element-desktop
errands
firefox
font-awesome
fractal
gnome.gnome-tweaks
gnome.simple-scan
gnumeric
headset-charge-indicator
ibm-plex
imv
jellyfin-media-player
jetbrains-mono
kanshi
libappindicator
libnotify
libreoffice-fresh
libsForQt5.kwallet
neovim-qt
nerdfonts
networkmanagerapplet
nextcloud-client
nvd
obsidian
overpass
pasystray
pavucontrol
poweralertd
powerline-fonts
prusa-slicer
pwvucontrol
qpwgraph
quickemu
quickgui
qutebrowser
rofi
signal-desktop
shikane
shortwave
source-code-pro
sway-audio-idle-inhibit
syncthingtray
telegram-desktop
texlive.combined.scheme-medium
thunderbird
victor-mono
widevine-cdm
wofi
yt-dlp
] ++ lib.optional (pkgs.hostPlatform.system == "x86_64-linux") sonixd;
home.packages = with pkgs;
[
anonymousPro
at-spi2-core
blueberry
clipman
cura
darktable
dmenu-wayland
element-desktop
errands
firefox
font-awesome
fractal
gnome.gnome-tweaks
gnome.simple-scan
gnumeric
headset-charge-indicator
ibm-plex
imv
jellyfin-media-player
jetbrains-mono
kanshi
libappindicator
libnotify
libreoffice-fresh
libsForQt5.kwallet
neovim-qt
nerdfonts
networkmanagerapplet
nextcloud-client
nvd
obsidian
overpass
pasystray
pavucontrol
poweralertd
powerline-fonts
prusa-slicer
pwvucontrol
qpwgraph
quickemu
quickgui
qutebrowser
rofi
signal-desktop
shikane
shortwave
source-code-pro
sway-audio-idle-inhibit
syncthingtray
telegram-desktop
texlive.combined.scheme-medium
thunderbird
victor-mono
widevine-cdm
wofi
yt-dlp
]
++ lib.optional (pkgs.hostPlatform.system == "x86_64-linux") sonixd;
xdg = {
mimeApps = {
enable = true;
associations.added = {
"application/octet-stream" = [ "gvim.desktop" ];
"application/pdf" = [ "qpdfview.desktop;org.gnome.Evince.desktop;org.pwmt.zathura-pdf-mupdf.desktop" ];
"audio/mpeg" = [ "org.kde.kid3.desktop" ];
"image/jpeg" = [ "darktable.desktop;gimp.desktop;imv.desktop" ];
"image/png" = [ "darktable.desktop;gimp.desktop;imv-folder.desktop;imv.desktop" ];
"image/x-adobe-dng" = [ "imv.desktop" ];
"inode/directory" = [ "thunar.desktop" ];
"text/plain" = [ "gvim.desktop" ];
"x-scheme-handler/pdf" = [ "pdfview.desktop" ];
"x-scheme-handler/tg" = [ "userapp-Telegram Desktop-9M6O50.desktop;userapp-Telegram Desktop-6IJLW1.desktop;userapp-Telegram Desktop-IQIXX1.desktop;userapp-Telegram Desktop-FK06Y1.desktop;userapp-Telegram Desktop-1SZ7Y1.desktop;userapp-Telegram Desktop-C24MZ1.desktop;userapp-Telegram Desktop-29FD01.desktop;userapp-Telegram Desktop-21P401.desktop;userapp-Telegram Desktop-LOTG11.desktop" ];
"application/octet-stream" = ["gvim.desktop"];
"application/pdf" = ["qpdfview.desktop;org.gnome.Evince.desktop;org.pwmt.zathura-pdf-mupdf.desktop"];
"audio/mpeg" = ["org.kde.kid3.desktop"];
"image/jpeg" = ["darktable.desktop;gimp.desktop;imv.desktop"];
"image/png" = ["darktable.desktop;gimp.desktop;imv-folder.desktop;imv.desktop"];
"image/x-adobe-dng" = ["imv.desktop"];
"inode/directory" = ["thunar.desktop"];
"text/plain" = ["gvim.desktop"];
"x-scheme-handler/pdf" = ["pdfview.desktop"];
"x-scheme-handler/tg" = ["userapp-Telegram Desktop-9M6O50.desktop;userapp-Telegram Desktop-6IJLW1.desktop;userapp-Telegram Desktop-IQIXX1.desktop;userapp-Telegram Desktop-FK06Y1.desktop;userapp-Telegram Desktop-1SZ7Y1.desktop;userapp-Telegram Desktop-C24MZ1.desktop;userapp-Telegram Desktop-29FD01.desktop;userapp-Telegram Desktop-21P401.desktop;userapp-Telegram Desktop-LOTG11.desktop"];
};
defaultApplications = {
"inode/directory" = [ "thunar.desktop" ];
"model/3mf" = [ "com.ultimaker.cura.desktop" ];
"model/gltf+json" = [ "com.ultimaker.cura.desktop" ];
"model/gltf-binary" = [ "com.ultimaker.cura.desktop" ];
"model/stl" = [ "com.ultimaker.cura.desktop" ];
"text/html" = [ "org.qutebrowser.qutebrowser.desktop" ];
"x-scheme-handler/about" = [ "org.qutebrowser.qutebrowser.desktop" ];
"x-scheme-handler/etcher" = [ "balena-etcher.desktop" ];
"x-scheme-handler/http" = [ "org.qutebrowser.qutebrowser.desktop" ];
"x-scheme-handler/https" = [ "org.qutebrowser.qutebrowser.desktop" ];
"x-scheme-handler/msteams" = [ "teams-for-linux.desktop" ];
"x-scheme-handler/pdf" = [ "myweb.desktop" ];
"x-scheme-handler/tg" = [ "userapp-Telegram Desktop-LOTG11.desktop" ];
"x-scheme-handler/tootle" = [ "com.github.bleakgrey.tootle.desktop" ];
"x-scheme-handler/unknown" = [ "org.qutebrowser.qutebrowser.desktop" ];
"application/pdf" = [ "org.pwmt.zathura-pdf-mupdf.desktop" ];
"x-scheme-handler/mailto" = [ "neomutt.desktop" ];
"inode/directory" = ["thunar.desktop"];
"model/3mf" = ["com.ultimaker.cura.desktop"];
"model/gltf+json" = ["com.ultimaker.cura.desktop"];
"model/gltf-binary" = ["com.ultimaker.cura.desktop"];
"model/stl" = ["com.ultimaker.cura.desktop"];
"text/html" = ["org.qutebrowser.qutebrowser.desktop"];
"x-scheme-handler/about" = ["org.qutebrowser.qutebrowser.desktop"];
"x-scheme-handler/etcher" = ["balena-etcher.desktop"];
"x-scheme-handler/http" = ["org.qutebrowser.qutebrowser.desktop"];
"x-scheme-handler/https" = ["org.qutebrowser.qutebrowser.desktop"];
"x-scheme-handler/msteams" = ["teams-for-linux.desktop"];
"x-scheme-handler/pdf" = ["myweb.desktop"];
"x-scheme-handler/tg" = ["userapp-Telegram Desktop-LOTG11.desktop"];
"x-scheme-handler/tootle" = ["com.github.bleakgrey.tootle.desktop"];
"x-scheme-handler/unknown" = ["org.qutebrowser.qutebrowser.desktop"];
"application/pdf" = ["org.pwmt.zathura-pdf-mupdf.desktop"];
"x-scheme-handler/mailto" = ["neomutt.desktop"];
};
};
desktopEntries = {
@ -129,7 +134,7 @@
terminal = false;
name = "myweb";
exec = "/home/don/bin/myweb %u";
mimeType = [ "x-scheme-handler/pdf" ];
mimeType = ["x-scheme-handler/pdf"];
};
cooking-notebook = {
type = "Application";
@ -137,25 +142,25 @@
icon = "obsidian";
exec = "/home/don/bin/cooking-notebook";
};
mynotes = {
mynotes = {
name = "My Notes";
exec = "/home/don/bin/mynotes";
terminal = false;
type = "Application";
icon = "obsidian";
comment = "Obsidian";
mimeType = [ "x-scheme-handler/obsidian" ];
categories = [ "Office" ];
mimeType = ["x-scheme-handler/obsidian"];
categories = ["Office"];
};
journal = {
journal = {
name = "Journal";
exec = "/home/don/bin/newjournal";
terminal = false;
type = "Application";
icon = "obsidian";
comment = "Obsidian Journal";
mimeType = [ "x-scheme-handler/obsidian" ];
categories = [ "Office" ];
mimeType = ["x-scheme-handler/obsidian"];
categories = ["Office"];
};
};
configFile = {

View file

@ -1,6 +1,9 @@
{ config, pkgs, ... }:
{
home.packages = with pkgs; [ fuzzel ];
config,
pkgs,
...
}: {
home.packages = with pkgs; [fuzzel];
programs.fuzzel = {
enable = true;
settings = {

View file

@ -1,5 +1,5 @@
{ pkgs, ... }: {
home.packages = with pkgs; [ ktimer ];
{pkgs, ...}: {
home.packages = with pkgs; [ktimer];
xdg.configFile."ktimerrc".text = ''
[Job0]
Command[$e]=$HOME/bin/timeup
@ -8,7 +8,7 @@
Loop=false
OneInstance=true
State=0
[Job1]
Command[$e]=$HOME/bin/timeup
Consecutive=false
@ -16,7 +16,7 @@
Loop=false
OneInstance=true
State=0
[Job2]
Command[$e]=$HOME/bin/timeup
Consecutive=false
@ -24,7 +24,7 @@
Loop=false
OneInstance=true
State=0
[Jobs]
Number=3
'';

View file

@ -1,36 +1,35 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs = {
mpv = {
enable = true;
# package = pkgs.wrapMpv (pkgs.mpv-unwrapped.override { vapoursynthSupport = true; }) { youtubeSupport = true; };
config = {
cache="yes";
cache-on-disk="no";
cache-pause-initial="yes";
cache-pause-wait="5";
cache-secs="3600";
demuxer-cache-wait="no";
demuxer-donate-buffer="yes";
demuxer-max-back-bytes="244141KiB";
demuxer-max-bytes="732422KiB";
demuxer-readahead-secs="60";
demuxer-seekable-cache="auto";
demuxer-thread="yes";
force-seekable="yes";
hls-bitrate="max";
hr-seek-framedrop="no";
hr-seek="yes";
index="default";
save-position-on-quit="yes";
script-opts="ytdl_hook-ytdl_path=/etc/profiles/per-user/don/bin/yt-dlp";
cache = "yes";
cache-on-disk = "no";
cache-pause-initial = "yes";
cache-pause-wait = "5";
cache-secs = "3600";
demuxer-cache-wait = "no";
demuxer-donate-buffer = "yes";
demuxer-max-back-bytes = "244141KiB";
demuxer-max-bytes = "732422KiB";
demuxer-readahead-secs = "60";
demuxer-seekable-cache = "auto";
demuxer-thread = "yes";
force-seekable = "yes";
hls-bitrate = "max";
hr-seek-framedrop = "no";
hr-seek = "yes";
index = "default";
save-position-on-quit = "yes";
script-opts = "ytdl_hook-ytdl_path=/etc/profiles/per-user/don/bin/yt-dlp";
# scripts=[ pkgs.mpvScripts.autoload ];
slang="en";
user-agent="Mozilla/5.0";
video-reversal-buffer="488281KiB";
ytdl="yes";
ytdl-format="bestvideo+bestaudio";
ytdl-raw-options="no-playlist=";
slang = "en";
user-agent = "Mozilla/5.0";
video-reversal-buffer = "488281KiB";
ytdl = "yes";
ytdl-format = "bestvideo+bestaudio";
ytdl-raw-options = "no-playlist=";
};
profiles = {
"protocol.https" = {
@ -41,8 +40,7 @@
};
yt-dlp = {
enable = true;
extraConfig =
''
extraConfig = ''
--no-mtime
'';
settings = {

View file

@ -1,5 +1,4 @@
{ ... }:
{
{...}: {
programs.qutebrowser = {
enable = true;
loadAutoconfig = true;
@ -175,23 +174,22 @@
wikipedia = "https://www.wikipedia.org/";
zoom = "https://zoom.us/";
};
extraConfig =
''
import dracula.draw
dracula.draw.blood(c, {
'spacing': {
'vertical': 6,
'horizontal': 8
}
})
c.statusbar.padding = { 'top': 6, 'right': 8, 'bottom': 6, 'left': 8 }
c.tabs.padding = { 'top': 1, 'right': 8, 'bottom': 1, 'left': 8 }
#c.bindings = { key_mappings = ['<Ctrl+6>': '<Ctrl+^>' '<Ctrl+Enter>': '<Ctrl+Return>' '<Ctrl+j>': '<Return>' '<Ctrl+m>': '<Return>' '<Ctrl+[>': '<Escape>' '<Enter>': '<Return>' '<Shift+Enter>': '<Return>' '<Shift+Return>': '<Return>']}
'';
settings = {
auto_save = {
session = true;
};
extraConfig = ''
import dracula.draw
dracula.draw.blood(c, {
'spacing': {
'vertical': 6,
'horizontal': 8
}
})
c.statusbar.padding = { 'top': 6, 'right': 8, 'bottom': 6, 'left': 8 }
c.tabs.padding = { 'top': 1, 'right': 8, 'bottom': 1, 'left': 8 }
#c.bindings = { key_mappings = ['<Ctrl+6>': '<Ctrl+^>' '<Ctrl+Enter>': '<Ctrl+Return>' '<Ctrl+j>': '<Return>' '<Ctrl+m>': '<Return>' '<Ctrl+[>': '<Escape>' '<Enter>': '<Return>' '<Shift+Enter>': '<Return>' '<Shift+Return>': '<Return>']}
'';
settings = {
auto_save = {
session = true;
};
#};
colors = {
webpage = {
@ -228,14 +226,14 @@
};
fileselect = {
folder = {
command = ["kitty" "-e" "ranger" "--choosedir={}"];
command = ["kitty" "-e" "ranger" "--choosedir={}"];
};
handler = "external";
multiple_files = {
command = ["kitty" "-e" "ranger" "--choosefile={}"];
command = ["kitty" "-e" "ranger" "--choosefile={}"];
};
single_file = {
command = ["kitty" "-e" "ranger" "--choosefile={}"];
command = ["kitty" "-e" "ranger" "--choosefile={}"];
};
};
qt = {

View file

@ -1,5 +1,8 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
services.redshift = {
enable = true;
latitude = "29.74";
@ -13,8 +16,8 @@
brightness-night = "0.7";
# This *should work*
#temperature = {
#day = 6500;
#night = 3500;
#day = 6500;
#night = 3500;
#};
};
};

View file

@ -1,5 +1,4 @@
{ ... }:
{
{...}: {
services = {
gnome-keyring = {
enable = true;

View file

@ -1,7 +1,13 @@
{ inputs, pkgs, hostname, outputs, osConfig, ... }:
{
inputs,
pkgs,
hostname,
outputs,
osConfig,
...
}: {
xdg.configFile."sway/config".source = ./files/sway/${osConfig.networking.hostName};
programs = {
swaylock = {
enable = true;
@ -130,62 +136,61 @@
};
};
};
style =
''
* {
border: none; border-radius: 0;
font-family: "JetBrains Mono", FontAwesome6Free, SymbolsNerdFont, Roboto, Helvetica, Arial, sans-serif;
font-size: 10px; min-height: 0;
style = ''
* {
border: none; border-radius: 0;
font-family: "JetBrains Mono", FontAwesome6Free, SymbolsNerdFont, Roboto, Helvetica, Arial, sans-serif;
font-size: 10px; min-height: 0;
}
window#waybar {
background: rgba(43, 48, 59, 0.5);
border-bottom: 3px solid rgba(100, 114, 125, 0.5);
color: #ffffff;
}
window#waybar.hidden { opacity: 0.0; }
#workspaces button {
padding: 0 5px;
background: transparent;
color: #ffffff;
border-bottom: 3px solid transparent;
}
window#waybar {
background: rgba(43, 48, 59, 0.5);
border-bottom: 3px solid rgba(100, 114, 125, 0.5);
color: #ffffff;
}
window#waybar.hidden { opacity: 0.0; }
#workspaces button {
padding: 0 5px;
background: transparent;
color: #ffffff;
border-bottom: 3px solid transparent;
}
#workspaces button.focused { background: #64727D; border-bottom: 3px solid #ffffff; }
#workspaces button.urgent { background-color: #eb4d4b; }
#mode { background: #64727D; border-bottom: 3px solid #ffffff; }
#clock, #battery, #cpu, #memory, #temperature, #backlight, #network, #pulseaudio, #custom-mymusic, #tray, #mode, #idle_inhibitor, #bluetooth {
padding: 0 5px;
margin: 0 0px;
}
#clock { background-color: #64727D; color: #f1fa8c; }
#battery { color: #000000; background-color: #50fa7b; }
#battery.warning { color: #000000; background-color: #ff79c6; }
#battery.critical { color: #ffffff; background-color: #ff5555; }
#battery.charging { color: #44475a; background-color: #50fa7b; }
@keyframes blink { to { background-color: #ffffff; color: #000000; } }
#battery.critical:not(.charging) {
background: #f53c3c; color: #ffffff;
animation-name: blink; animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#cpu { background: #2ecc71; color: #000000; }
#memory { background: #9b59b6; }
#backlight { color: #000000; background: #90b1b1; }
#bluetooth { background: #ffb86c; color: #000000; }
#network { background: #bd93f9; color: #000000; }
#network.disconnected { background: #ff5555; }
#pulseaudio { background: #ffb86c; color: #000000; }
#pulseaudio.muted { background: #90b1b1; color: #2a5c45; }
#custom-mytimew { background: #bd93f9; color: #000000; }
#custom-mymusic { background: #8be9fd; color: #000000; }
#custom-mycal { background: #cccc99; color: #2a5c45; }
#temperature { background: #f0932b; }
#temperature.critical { background: #eb4d4b; }
#tray { background-color: #64727D; }
#idle_inhibitor { background-color: #2d3436; }
#idle_inhibitor.activated { background-color: #ecf0f1; color: #2d3436; }
'';
};
};
#workspaces button.focused { background: #64727D; border-bottom: 3px solid #ffffff; }
#workspaces button.urgent { background-color: #eb4d4b; }
#mode { background: #64727D; border-bottom: 3px solid #ffffff; }
#clock, #battery, #cpu, #memory, #temperature, #backlight, #network, #pulseaudio, #custom-mymusic, #tray, #mode, #idle_inhibitor, #bluetooth {
padding: 0 5px;
margin: 0 0px;
}
#clock { background-color: #64727D; color: #f1fa8c; }
#battery { color: #000000; background-color: #50fa7b; }
#battery.warning { color: #000000; background-color: #ff79c6; }
#battery.critical { color: #ffffff; background-color: #ff5555; }
#battery.charging { color: #44475a; background-color: #50fa7b; }
@keyframes blink { to { background-color: #ffffff; color: #000000; } }
#battery.critical:not(.charging) {
background: #f53c3c; color: #ffffff;
animation-name: blink; animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#cpu { background: #2ecc71; color: #000000; }
#memory { background: #9b59b6; }
#backlight { color: #000000; background: #90b1b1; }
#bluetooth { background: #ffb86c; color: #000000; }
#network { background: #bd93f9; color: #000000; }
#network.disconnected { background: #ff5555; }
#pulseaudio { background: #ffb86c; color: #000000; }
#pulseaudio.muted { background: #90b1b1; color: #2a5c45; }
#custom-mytimew { background: #bd93f9; color: #000000; }
#custom-mymusic { background: #8be9fd; color: #000000; }
#custom-mycal { background: #cccc99; color: #2a5c45; }
#temperature { background: #f0932b; }
#temperature.critical { background: #eb4d4b; }
#tray { background-color: #64727D; }
#idle_inhibitor { background-color: #2d3436; }
#idle_inhibitor.activated { background-color: #ecf0f1; color: #2d3436; }
'';
};
};
}

View file

@ -1,5 +1,8 @@
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
programs.kitty = {
enable = true;
settings = {

View file

@ -1,5 +1,9 @@
{ config, pkgs, inputs, ... }:
{
config,
pkgs,
inputs,
...
}: {
home.packages = with pkgs; [
citrix_workspace
];

View file

@ -1,5 +1,8 @@
{ pkgs, inputs, ... }:
{
pkgs,
inputs,
...
}: {
home-manager.users.don = {
imports = [
./citrix.nix

View file

@ -1,19 +1,22 @@
{ config, pkgs, ... }:
{
home.packages = with pkgs; [ zoom-us ];
config,
pkgs,
...
}: {
home.packages = with pkgs; [zoom-us];
xdg = {
configFile."zoom.conf".source = files/zoom.conf;
configFile."zoomus.conf".source = files/zoomus.conf;
desktopEntries = {
myzoom = {
myzoom = {
name = "My Zoom-Zoom";
exec = "/home/don/bin/myzoom %u";
terminal = false;
type = "Application";
icon = "Zoom";
comment = "Zoom Video";
mimeType = [ "x-scheme-handler/zoommtg" "x-scheme-handler/zoomus" "x-scheme-handler/tel" "x-scheme-handler/callto" "x-scheme-handler/zoomphonecall" "application/x-zoom" ];
categories = [ "Network" "Application""Application" ];
mimeType = ["x-scheme-handler/zoommtg" "x-scheme-handler/zoomus" "x-scheme-handler/tel" "x-scheme-handler/callto" "x-scheme-handler/zoomphonecall" "application/x-zoom"];
categories = ["Network" "Application" "Application"];
};
};
};