From d008848d52e2c519658acfff547d18ae90f51ade Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sat, 1 Oct 2022 16:15:40 -0500 Subject: [PATCH 01/35] Update garnix.yaml Try building the activationPackage directly. --- garnix.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/garnix.yaml b/garnix.yaml index 2a5ab86..5d39710 100644 --- a/garnix.yaml +++ b/garnix.yaml @@ -4,7 +4,7 @@ builds: - nixosConfigurations.* - defaultPackage.x86_64-linux - homeConfigurations.x86_64-gui - - homeConfigurations.x86_64-nogui + - homeConfigurations.x86_64-nogui.activationPackage - darwinConfigurations.* exclude: - nixosConfigurations.linode # Requires decrypted files From 8d7e66a445c46a2826aeedc08a54156e067d9f82 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 14 Nov 2022 23:41:33 -0600 Subject: [PATCH 02/35] Update flake lock --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index 2721350..9921009 100644 --- a/flake.lock +++ b/flake.lock @@ -112,11 +112,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1667991831, - "narHash": "sha256-DHgEsLZI044B9T4AjA3K6+yB9/DqLr4dyA7OIx0FG7o=", + "lastModified": 1668326430, + "narHash": "sha256-fJEsHe+lzFf3qcQVTTdK9jqRtUUVXH71tdfgjcKJNpA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "872fceeed60ae6b7766cc0a4cd5bf5901b9098ec", + "rev": "fc07622617a373a742ed96d4dd536849d4bc1ec6", "type": "github" }, "original": { From 5086cb26c325a7018cb3c76be9fa6003e4f10f64 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 14 Nov 2022 23:49:23 -0600 Subject: [PATCH 03/35] Add vim-xonsh plugin --- home/gui/default.nix | 2 +- home/vim.nix | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/home/gui/default.nix b/home/gui/default.nix index 1bafc7c..43e16b1 100644 --- a/home/gui/default.nix +++ b/home/gui/default.nix @@ -31,7 +31,7 @@ [ jellyfin-media-player nextcloud-client - ] + ] else [] ); programs = { diff --git a/home/vim.nix b/home/vim.nix index 84a3379..6b66f96 100644 --- a/home/vim.nix +++ b/home/vim.nix @@ -10,6 +10,16 @@ let sha256 = "0hi1c5zv38hwxbyrf11fz97r728jgbppz4is7fwzwhfrzhwbw0ga"; }; }; + + vim-xonsh = pkgs.vimUtils.buildVimPlugin { + name = "vim-xonsh"; + src = pkgs.fetchFromGitHub { + owner = "meatballs"; + repo = "vim-xonsh"; + rev = "2028aac"; + sha256 = "sha256-0+dqtlz8LeyOoSiS12rv8aLdzOMj31PuYAyDYWnpNzw="; + }; + }; in { programs.vim = { @@ -26,6 +36,7 @@ in vim-indent-guides vim-packer vim-rooter + vim-xonsh gruvbox syntastic ]; From d7738f23c64e42bd5af579f1bf9e2dd0c493576b Mon Sep 17 00:00:00 2001 From: greg-compass Date: Tue, 15 Nov 2022 12:57:03 -0600 Subject: [PATCH 04/35] Update darwin input --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index 9921009..699f89e 100644 --- a/flake.lock +++ b/flake.lock @@ -25,11 +25,11 @@ ] }, "locked": { - "lastModified": 1665392861, - "narHash": "sha256-bCd8fYJMAb0LzabsiXl4nxECDoz483bJOCa2hjox7N0=", + "lastModified": 1668534244, + "narHash": "sha256-8sgzegrEVUZMJUg4jEiC6pokeMPY02BFe49iXnVrXkk=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "ef56fd8979b5f4e800c4716f62076e00600b1172", + "rev": "4182ad42d5fb5001adb1f61bec3a04fae0eecb95", "type": "github" }, "original": { From c9cd7f70af08f2087261facd8fb746e10315c38b Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 15 Nov 2022 23:31:05 -0600 Subject: [PATCH 05/35] Exteralized vimrc file --- home/vim.nix | 162 +++------------------------------------------------ home/vimrc | 151 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 158 insertions(+), 155 deletions(-) create mode 100644 home/vimrc diff --git a/home/vim.nix b/home/vim.nix index 6b66f96..9e53f1a 100644 --- a/home/vim.nix +++ b/home/vim.nix @@ -22,11 +22,15 @@ let }; in { - programs.vim = { + programs.neovim = { enable = true; + viAlias = true; + vimAlias = true; + vimdiffAlias = true; plugins = with pkgs.vimPlugins; [ ansible-vim bufexplorer + context-vim direnv-vim fzf-vim nerdtree @@ -34,164 +38,12 @@ in vim-flake8 vim-fugitive vim-indent-guides + vim-nix vim-packer vim-rooter vim-xonsh gruvbox - syntastic ]; - settings = { - background = "dark"; - copyindent = true; - expandtab = false; - hidden = true; - ignorecase = true; - mouse = "a"; - number = true; - relativenumber = true; - shiftwidth = 4; - smartcase = true; - tabstop = 4; - }; - extraConfig = '' -syntax enable -set preserveindent -set softtabstop=0 -set nowrap -set showcmd -set cursorline -set lazyredraw -set showmatch -set hlsearch -" Shows non-printing characters -set listchars=tab:→\ ,extends:→,precedes:←,trail:·,eol:¬ -set list - -" Set filetype to the way I want it -let g:nix_recommended_style = 0 - -" Highlights bad whitespace -autocmd ColorScheme * highlight ExtraWhitespace ctermbg=red guibg=red -autocmd BufWinEnter * match ExtraWhitespace /\s\+$/ -autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@ \be -map :NERDTreeToggle -silent !${pkgs.git}/bin/git rev-parse --is-inside-work-tree -if v:shell_error == 0 - map :GFiles --cached --others --exclude-standard - map :GFiles? -else - map :Files -endif -map :Files -" Allows navigating splits -map j -map k -map h -map l - -colorscheme gruvbox - -" ============================================================================ -" User functions to just make life easier -" ============================================================================ -" Toggle absolute line numbers when we don't have focus, and hybrid when -" we do have it -augroup numbertoggle - autocmd! - autocmd BufEnter,FocusGained,InsertLeave * set relativenumber - autocmd BufLeave,FocusLost,InsertEnter * set norelativenumber -augroup END -" syntax highlighting for Vagrantfiles -augroup vagrant - au! - au BufRead,BufNewFile Vagrantfile set filetype=ruby -augroup END -" Creates the directory for a file if it doesn't already exist. -function! s:MkNonExDir(file, buf) - if empty(getbufvar(a:buf, '&buftype')) && a:file!~#'\v^\w+\:\/' - let dir=fnamemodify(a:file, ':h') - if !isdirectory(dir) - call mkdir(dir, 'p') - endif - endif -endfunction -augroup BWCCreateDir - autocmd! - autocmd BufWritePre * :call s:MkNonExDir(expand(''), +expand('')) -augroup END - -" Return indent (all whitespace at start of a line), converted from -" tabs to spaces if what = 1, or from spaces to tabs otherwise. -" When converting to tabs, result has no redundant spaces. -function! Indenting(indent, what, cols) - let spccol = repeat(' ', a:cols) - let result = substitute(a:indent, spccol, '\t', 'g') - let result = substitute(result, ' \+\ze\t', ''', 'g') - if a:what == 1 - let result = substitute(result, '\t', spccol, 'g') - endif - return result -endfunction - -" Convert whitespace used for indenting (before first non-whitespace). -" what = 0 (convert spaces to tabs), or 1 (convert tabs to spaces). -" cols = string with number of columns per tab, or empty to use 'tabstop'. -" The cursor position is restored, but the cursor will be in a different -" column when the number of characters in the indent of the line is changed. -function! IndentConvert(line1, line2, what, cols) - let savepos = getpos('.') - let cols = empty(a:cols) ? &tabstop : a:cols - execute a:line1 . ',' . a:line2 . 's/^\s\+/\=Indenting(submatch(0), a:what, cols)/e' - call histdel('search', -1) - call setpos('.', savepos) -endfunction -command! -nargs=? -range=% Space2Tab call IndentConvert(,,0,) -command! -nargs=? -range=% Tab2Space call IndentConvert(,,1,) -command! -nargs=? -range=% RetabIndent call IndentConvert(,,&et,) - - -""""""""" -""" Unused, but kept in case I end up on a system where I can't use my preferred plugins -""""""""" - - - -" Base of search is ordered as -" r - searching up from here to the nearest marker (.git, .hg, .svn, etc) -" a - dir of current file, unless that's a subdirectory of CWD -" c - dir of current file -let g:ctrlp_working_path_mode = 'arc' -let g:ctrlp_switch_buffer = 0 -let g:ctrlp_cmd = 'CtrlPMixed' -let g:ctrlp_show_hidden = 1 -let g:ctrlp_user_command = { - \'types': { - \1: ['.git', '${pkgs.git}/bin/git ls-files --cached --exclude-standard --others' ], - \}, - \'fallback': '${pkgs.findutils}/bin/find . -type f | ${pkgs.gnugrep}/bin/grep -v -e "\.tox/" -e "\.git/"', -\} -" let g:ctrpl_match_func = { 'match': 'pymatcher#PyMatch' } -" map :CtrlP -''; + extraConfig = builtins.readFile ./vimrc; }; } diff --git a/home/vimrc b/home/vimrc new file mode 100644 index 0000000..5d93230 --- /dev/null +++ b/home/vimrc @@ -0,0 +1,151 @@ +set background=dark +set copyindent +set noexpandtab +set hidden +set ignorecase +set mouse="a" +set number +set relativenumber +set shiftwidth=4 +set smartcase +set tabstop=4 + +syntax enable +set preserveindent +set softtabstop=0 +set nowrap +set showcmd +set cursorline +set lazyredraw +set showmatch +set hlsearch +" Shows non-printing characters +set listchars=tab:→\ ,extends:→,precedes:←,trail:·,eol:¬ +set list + +" Set filetype to the way I want it +let g:nix_recommended_style = 0 + +" Highlights bad whitespace +autocmd ColorScheme * highlight ExtraWhitespace ctermbg=red guibg=red +autocmd BufWinEnter * match ExtraWhitespace /\s\+$/ +autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@ \be +map :NERDTreeToggle +silent !${pkgs.git}/bin/git rev-parse --is-inside-work-tree +if v:shell_error == 0 + map :GFiles --cached --others --exclude-standard + map :GFiles? +else + map :Files +endif +map :Files +" Allows navigating splits +map j +map k +map h +map l + +colorscheme gruvbox + +" ============================================================================ +" User functions to just make life easier +" ============================================================================ +" Toggle absolute line numbers when we don't have focus, and hybrid when +" we do have it +augroup numbertoggle + autocmd! + autocmd BufEnter,FocusGained,InsertLeave * set relativenumber + autocmd BufLeave,FocusLost,InsertEnter * set norelativenumber +augroup END +" syntax highlighting for Vagrantfiles +augroup vagrant + au! + au BufRead,BufNewFile Vagrantfile set filetype=ruby +augroup END +" Creates the directory for a file if it doesn't already exist. +function! s:MkNonExDir(file, buf) + if empty(getbufvar(a:buf, '&buftype')) && a:file!~#'\v^\w+\:\/' + let dir=fnamemodify(a:file, ':h') + if !isdirectory(dir) + call mkdir(dir, 'p') + endif + endif +endfunction +augroup BWCCreateDir + autocmd! + autocmd BufWritePre * :call s:MkNonExDir(expand(''), +expand('')) +augroup END + +" Return indent (all whitespace at start of a line), converted from +" tabs to spaces if what = 1, or from spaces to tabs otherwise. +" When converting to tabs, result has no redundant spaces. +function! Indenting(indent, what, cols) + let spccol = repeat(' ', a:cols) + let result = substitute(a:indent, spccol, '\t', 'g') + let result = substitute(result, ' \+\ze\t', ''', 'g') + if a:what == 1 + let result = substitute(result, '\t', spccol, 'g') + endif + return result +endfunction + +" Convert whitespace used for indenting (before first non-whitespace). +" what = 0 (convert spaces to tabs), or 1 (convert tabs to spaces). +" cols = string with number of columns per tab, or empty to use 'tabstop'. +" The cursor position is restored, but the cursor will be in a different +" column when the number of characters in the indent of the line is changed. +function! IndentConvert(line1, line2, what, cols) + let savepos = getpos('.') + let cols = empty(a:cols) ? &tabstop : a:cols + execute a:line1 . ',' . a:line2 . 's/^\s\+/\=Indenting(submatch(0), a:what, cols)/e' + call histdel('search', -1) + call setpos('.', savepos) +endfunction +command! -nargs=? -range=% Space2Tab call IndentConvert(,,0,) +command! -nargs=? -range=% Tab2Space call IndentConvert(,,1,) +command! -nargs=? -range=% RetabIndent call IndentConvert(,,&et,) + + +""""""""" +""" Unused, but kept in case I end up on a system where I can't use my preferred plugins +""""""""" + + + +" Base of search is ordered as +" r - searching up from here to the nearest marker (.git, .hg, .svn, etc) +" a - dir of current file, unless that's a subdirectory of CWD +" c - dir of current file +let g:ctrlp_working_path_mode = 'arc' +let g:ctrlp_switch_buffer = 0 +let g:ctrlp_cmd = 'CtrlPMixed' +let g:ctrlp_show_hidden = 1 +let g:ctrlp_user_command = { + \'types': { + \1: ['.git', '${pkgs.git}/bin/git ls-files --cached --exclude-standard --others' ], + \}, + \'fallback': '${pkgs.findutils}/bin/find . -type f | ${pkgs.gnugrep}/bin/grep -v -e "\.tox/" -e "\.git/"', +\} +" let g:ctrpl_match_func = { 'match': 'pymatcher#PyMatch' } +" map :CtrlP + From 89550764c1cf16cdbf165249c28497c07085e74f Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 15 Nov 2022 23:47:21 -0600 Subject: [PATCH 06/35] Prevent creating backup files --- home/vimrc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/home/vimrc b/home/vimrc index 5d93230..01a773a 100644 --- a/home/vimrc +++ b/home/vimrc @@ -19,6 +19,10 @@ set cursorline set lazyredraw set showmatch set hlsearch + +set nobackup +set nowritebackup +set signcolumn=yes " Shows non-printing characters set listchars=tab:→\ ,extends:→,precedes:←,trail:·,eol:¬ set list From 8e139d4b6a793ddb42a1769357b1ea1d022b90ac Mon Sep 17 00:00:00 2001 From: greg-compass Date: Thu, 17 Nov 2022 09:58:50 -0600 Subject: [PATCH 07/35] rsync for darwin installs --- overlays/hms.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/overlays/hms.sh b/overlays/hms.sh index 7769504..c04a1f0 100644 --- a/overlays/hms.sh +++ b/overlays/hms.sh @@ -32,7 +32,7 @@ if [ "$(uname -s)" == "Darwin" ]; then echo "Updating permissions on '${app}'" chmod -R u+w "${HOME}/Applications/${app}" || true echo "Copying new version to Applications" - cp -r "${app}" "${HOME}/Applications" 2>&1 > /dev/null || true + rsync -rptgoDv "${app}" "${HOME}/Applications" 2>&1 > /dev/null || true if [ "$?" != "0" ]; then echo "An error occurred, proceeding anyway" fi From 384ca2c7fd70eb1c98e6cdb5a51a0738417f1d3b Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 17 Nov 2022 13:05:08 -0600 Subject: [PATCH 08/35] Add coc plugins --- home/home.nix | 3 ++- home/vim.nix | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/home/home.nix b/home/home.nix index f0615ba..de15528 100644 --- a/home/home.nix +++ b/home/home.nix @@ -42,8 +42,9 @@ in { hms htop jq - nmap nano + nmap + nodejs openssl tmux transcrypt diff --git a/home/vim.nix b/home/vim.nix index 9e53f1a..65aa2fa 100644 --- a/home/vim.nix +++ b/home/vim.nix @@ -30,6 +30,20 @@ in plugins = with pkgs.vimPlugins; [ ansible-vim bufexplorer + coc-cmake + coc-css + coc-go + coc-highlight + coc-html + coc-java + coc-json + coc-lists + coc-markdownlint + coc-nvim + coc-python + coc-tslint + coc-vimtex + coc-yaml context-vim direnv-vim fzf-vim From 1ea6595b818c736c42756ea7d74c2732b42e95e4 Mon Sep 17 00:00:00 2001 From: greg-compass Date: Thu, 17 Nov 2022 13:36:53 -0600 Subject: [PATCH 09/35] Significant upgrade to vim-coc --- home/vim.nix | 3 +- home/vimrc | 151 ++++++++++++++++++++++++++++++++++++++++++- overlays/default.nix | 3 + 3 files changed, 155 insertions(+), 2 deletions(-) diff --git a/home/vim.nix b/home/vim.nix index 65aa2fa..f7b58a6 100644 --- a/home/vim.nix +++ b/home/vim.nix @@ -40,7 +40,7 @@ in coc-lists coc-markdownlint coc-nvim - coc-python + coc-pyright coc-tslint coc-vimtex coc-yaml @@ -48,6 +48,7 @@ in direnv-vim fzf-vim nerdtree + vim-airline vim-gitgutter vim-flake8 vim-fugitive diff --git a/home/vimrc b/home/vimrc index 01a773a..cd20046 100644 --- a/home/vimrc +++ b/home/vimrc @@ -23,10 +23,159 @@ set hlsearch set nobackup set nowritebackup set signcolumn=yes +" Milliseconds between updates +set updatetime=300 " Shows non-printing characters set listchars=tab:→\ ,extends:→,precedes:←,trail:·,eol:¬ set list +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +""""""""""" coc.nnim configuration """"""""""""""""""""""""""""""""""""" +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" https://github.com/neoclide/coc.nvim +" Use tab for trigger completion with characters ahead and navigate. +" NOTE: There's always complete item selected by default, you may want to enable +" no select by `"suggest.noselect": true` in your configuration file. +" NOTE: Use command ':verbose imap ' to make sure tab is not mapped by +" other plugin before putting this into your config. +inoremap + \ coc#pum#visible() ? coc#pum#next(1) : + \ CheckBackspace() ? "\" : + \ coc#refresh() +inoremap coc#pum#visible() ? coc#pum#prev(1) : "\" + +" Make to accept selected completion item or notify coc.nvim to format +" u breaks current undo, please make your own choice. +inoremap coc#pum#visible() ? coc#pum#confirm() + \: "\u\\=coc#on_enter()\" + +function! CheckBackspace() abort + let col = col('.') - 1 + return !col || getline('.')[col - 1] =~# '\s' +endfunction + +" Use to trigger completion. +if has('nvim') + inoremap coc#refresh() +else + inoremap coc#refresh() +endif + +" Use `[g` and `]g` to navigate diagnostics +" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list. +nmap [g (coc-diagnostic-prev) +nmap ]g (coc-diagnostic-next) + +" GoTo code navigation. +nmap gd (coc-definition) +nmap gy (coc-type-definition) +nmap gi (coc-implementation) +nmap gr (coc-references) + +" Use K to show documentation in preview window. +nnoremap K :call ShowDocumentation() + +function! ShowDocumentation() + if CocAction('hasProvider', 'hover') + call CocActionAsync('doHover') + else + call feedkeys('K', 'in') + endif +endfunction + +" Highlight the symbol and its references when holding the cursor. +autocmd CursorHold * silent call CocActionAsync('highlight') + +" Symbol renaming. +nmap rn (coc-rename) + +" Formatting selected code. +xmap f (coc-format-selected) +nmap f (coc-format-selected) + +augroup mygroup + autocmd! + " Setup formatexpr specified filetype(s). + autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected') + " Update signature help on jump placeholder. + autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') +augroup end + +" Applying codeAction to the selected region. +" Example: `aap` for current paragraph +xmap a (coc-codeaction-selected) +nmap a (coc-codeaction-selected) + +" Remap keys for applying codeAction to the current buffer. +nmap ac (coc-codeaction) +" Apply AutoFix to problem on the current line. +nmap qf (coc-fix-current) + +" Run the Code Lens action on the current line. +nmap cl (coc-codelens-action) + +" Map function and class text objects +" NOTE: Requires 'textDocument.documentSymbol' support from the language server. +xmap if (coc-funcobj-i) +omap if (coc-funcobj-i) +xmap af (coc-funcobj-a) +omap af (coc-funcobj-a) +xmap ic (coc-classobj-i) +omap ic (coc-classobj-i) +xmap ac (coc-classobj-a) +omap ac (coc-classobj-a) + +" Remap and for scroll float windows/popups. +if has('nvim-0.4.0') || has('patch-8.2.0750') + nnoremap coc#float#has_scroll() ? coc#float#scroll(1) : "\" + nnoremap coc#float#has_scroll() ? coc#float#scroll(0) : "\" + inoremap coc#float#has_scroll() ? "\=coc#float#scroll(1)\" : "\" + inoremap coc#float#has_scroll() ? "\=coc#float#scroll(0)\" : "\" + vnoremap coc#float#has_scroll() ? coc#float#scroll(1) : "\" + vnoremap coc#float#has_scroll() ? coc#float#scroll(0) : "\" +endif + +" Use CTRL-S for selections ranges. +" Requires 'textDocument/selectionRange' support of language server. +nmap (coc-range-select) +xmap (coc-range-select) + +" Add `:Format` command to format current buffer. +command! -nargs=0 Format :call CocActionAsync('format') + +" Add `:Fold` command to fold current buffer. +command! -nargs=? Fold :call CocAction('fold', ) + +" Add `:OR` command for organize imports of the current buffer. +command! -nargs=0 OR :call CocActionAsync('runCommand', 'editor.action.organizeImport') + +" Add (Neo)Vim's native statusline support. +" NOTE: Please see `:h coc-status` for integrations with external plugins that +" provide custom statusline: lightline.vim, vim-airline. +set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')} + +" Mappings for CoCList +" Show all diagnostics. +nnoremap a :CocList diagnostics +" Manage extensions. +nnoremap e :CocList extensions +" Show commands. +nnoremap c :CocList commands +" Find symbol of current document. +nnoremap o :CocList outline +" Search workspace symbols. +nnoremap s :CocList -I symbols +" Do default action for next item. +nnoremap j :CocNext +" Do default action for previous item. +nnoremap k :CocPrev +" Resume latest coc list. +nnoremap p :CocListResume +" +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +""""""""""" END coc.nnim configuration """"""""""""""""""""""""""""""""" +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + " Set filetype to the way I want it let g:nix_recommended_style = 0 @@ -55,7 +204,7 @@ let g:diffget_upstream_map = 'gu' " Key mappings map \be map :NERDTreeToggle -silent !${pkgs.git}/bin/git rev-parse --is-inside-work-tree +silent !git rev-parse --is-inside-work-tree if v:shell_error == 0 map :GFiles --cached --others --exclude-standard map :GFiles? diff --git a/overlays/default.nix b/overlays/default.nix index 22b44ab..21067be 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -11,6 +11,9 @@ let dateutil flake8 ipython + jedi + mypy + pylint pyyaml responses ruamel-yaml From 20b37bd47c7ba91d2f7e964278f9d952250b6a87 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 23 Nov 2022 12:24:57 -0600 Subject: [PATCH 10/35] Remove vim-nix --- home/vim.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/home/vim.nix b/home/vim.nix index f7b58a6..e8da4cd 100644 --- a/home/vim.nix +++ b/home/vim.nix @@ -53,7 +53,6 @@ in vim-flake8 vim-fugitive vim-indent-guides - vim-nix vim-packer vim-rooter vim-xonsh From b8b3a2b86c888c23aa317beff67bfcc921143753 Mon Sep 17 00:00:00 2001 From: greg-compass Date: Wed, 30 Nov 2022 10:32:23 -0600 Subject: [PATCH 11/35] Strengthen Firefox --- flake.lock | 6 +++--- home/gui/firefox.nix | 2 +- overlays/hms.sh | 3 ++- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/flake.lock b/flake.lock index 699f89e..efb56e3 100644 --- a/flake.lock +++ b/flake.lock @@ -44,11 +44,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1667610227, - "narHash": "sha256-2olA2HYnz07rjDq3lMqCmDRlSegp1WL4OqR3KSy3Hy4=", + "lastModified": 1669769690, + "narHash": "sha256-4EWH+awS1714npXmBMNrMS5jPU2QQ1PXWex49RNgjuM=", "owner": "bandithedoge", "repo": "nixpkgs-firefox-darwin", - "rev": "78d9f25b7816f5711f80093721cf6618cda3e1c0", + "rev": "e8e0fd1f10b02c276a1a446e7ffd4f9c64613f5a", "type": "github" }, "original": { diff --git a/home/gui/firefox.nix b/home/gui/firefox.nix index d40f5ba..f3ea6b1 100644 --- a/home/gui/firefox.nix +++ b/home/gui/firefox.nix @@ -2,7 +2,7 @@ let # For now, we ignore this and don't install it - ffPkgs = if ( lib.hasSuffix "-darwin" pkgs.system ) + ffPkgs = if ( pkgs.stdenv.hostPlatform.isDarwin ) then pkgs.firefox-bin else pkgs.firefox-wayland.override { cfg.enableGnomeExtensions = true; }; diff --git a/overlays/hms.sh b/overlays/hms.sh index c04a1f0..005b3dc 100644 --- a/overlays/hms.sh +++ b/overlays/hms.sh @@ -30,9 +30,10 @@ if [ "$(uname -s)" == "Darwin" ]; then cd ~/.nix-profile/Applications for app in *.app; do echo "Updating permissions on '${app}'" + mkdir -p "${HOME}/Applications/${app}" chmod -R u+w "${HOME}/Applications/${app}" || true echo "Copying new version to Applications" - rsync -rptgoDv "${app}" "${HOME}/Applications" 2>&1 > /dev/null || true + rsync -rptgoDv "${app}/" "${HOME}/Applications/${app}/" 2>&1 > /dev/null || true if [ "$?" != "0" ]; then echo "An error occurred, proceeding anyway" fi From 766ef2ff2c8f382981e2b48f73dedd3bd1a32d32 Mon Sep 17 00:00:00 2001 From: greg-compass Date: Wed, 30 Nov 2022 11:13:10 -0600 Subject: [PATCH 12/35] Remove VSCode --- home/gui/default.nix | 40 ---------------------------------------- 1 file changed, 40 deletions(-) diff --git a/home/gui/default.nix b/home/gui/default.nix index 43e16b1..7c2e405 100644 --- a/home/gui/default.nix +++ b/home/gui/default.nix @@ -33,44 +33,4 @@ nextcloud-client ] else [] ); - - programs = { - vscode = let - codepkg = pkgs.vscode-with-extensions.override { - vscodeExtensions = with pkgs.vscode-extensions; [ - eamodio.gitlens - file-icons.file-icons - formulahendry.auto-rename-tag - github.vscode-pull-request-github - golang.go - johnpapa.vscode-peacock - jnoortheen.nix-ide - kamikillerto.vscode-colorize - ms-azuretools.vscode-docker - ms-python.python - redhat.java - redhat.vscode-yaml - ritwickdey.liveserver - streetsidesoftware.code-spell-checker - vscodevim.vim - yzhang.markdown-all-in-one - ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ - { - name = "vscode-bazel"; - publisher = "BazelBuild"; - version = "0.5.0"; - sha256 = "sha256-JJQSwU3B5C2exENdNsWEcxFSgWHnImYas4t/KLsgTj4="; - } - ]; - }; - in { - enable = true; - # userSettings = { - # "update.channel" = "none"; - # "editor.renderWhitespace" = "all"; - # "editor.tabWidth" = "8"; - # }; - package = codepkg; - }; - }; } From 75b1f637a0fdafff8bcce1909e63a97b53e9dc25 Mon Sep 17 00:00:00 2001 From: greg-compass Date: Mon, 12 Dec 2022 08:27:13 -0600 Subject: [PATCH 13/35] Update all inputs --- flake.lock | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/flake.lock b/flake.lock index efb56e3..20adcb3 100644 --- a/flake.lock +++ b/flake.lock @@ -25,11 +25,11 @@ ] }, "locked": { - "lastModified": 1668534244, - "narHash": "sha256-8sgzegrEVUZMJUg4jEiC6pokeMPY02BFe49iXnVrXkk=", + "lastModified": 1668784520, + "narHash": "sha256-gGgVAMwYPPmrfnvnoRi6OkEB5KRsNTb9uYzEceLdO/g=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "4182ad42d5fb5001adb1f61bec3a04fae0eecb95", + "rev": "6349b99bc2b96ded34d068a88c7c5ced406b7f7f", "type": "github" }, "original": { @@ -44,11 +44,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1669769690, - "narHash": "sha256-4EWH+awS1714npXmBMNrMS5jPU2QQ1PXWex49RNgjuM=", + "lastModified": 1670028550, + "narHash": "sha256-jrCEzbRfcNBSy0YHYPLpMSeoluryej3EuqdMZsR1bhQ=", "owner": "bandithedoge", "repo": "nixpkgs-firefox-darwin", - "rev": "e8e0fd1f10b02c276a1a446e7ffd4f9c64613f5a", + "rev": "8f3697c4ea0b138255a30b65510a25d393c4ce4c", "type": "github" }, "original": { @@ -112,11 +112,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1668326430, - "narHash": "sha256-fJEsHe+lzFf3qcQVTTdK9jqRtUUVXH71tdfgjcKJNpA=", + "lastModified": 1670751203, + "narHash": "sha256-XdoH1v3shKDGlrwjgrNX/EN8s3c+kQV7xY6cLCE8vcI=", "owner": "nixos", "repo": "nixpkgs", - "rev": "fc07622617a373a742ed96d4dd536849d4bc1ec6", + "rev": "64e0bf055f9d25928c31fb12924e59ff8ce71e60", "type": "github" }, "original": { @@ -128,11 +128,11 @@ }, "nurpkgs": { "locked": { - "lastModified": 1665979830, - "narHash": "sha256-0xcqP+Pr2zeX8A2BpqodcPwN5sR0TfC8twuXUjzG2g4=", + "lastModified": 1670819416, + "narHash": "sha256-ja1livEv48Y3piLmdKo0T+1cUHdSfmaHXOxOxJNbneA=", "owner": "nix-community", "repo": "NUR", - "rev": "704e1ef5bdb1af57b4f7988abf2ef80c897dfc9b", + "rev": "068395203bcc46e2ed19843f508383982b153271", "type": "github" }, "original": { @@ -154,11 +154,11 @@ }, "stable": { "locked": { - "lastModified": 1665927063, - "narHash": "sha256-2oImLqwQqVOQhTXsGUahqrYpe+Pufq+8XTsceYwBfJs=", + "lastModified": 1670700605, + "narHash": "sha256-5dlpATkcyITpdtMflhltuD+A3RNpsVI1Mb+dtKkll6Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8de8b98839d1f20089582cfe1a81207258fcc1f1", + "rev": "7b9eeb856cbf976482fa8d1cb295ea03fb3e1277", "type": "github" }, "original": { From 50238c7fbadfe21ccefd6751eee18ee13ff9754c Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sat, 24 Dec 2022 00:36:36 -0600 Subject: [PATCH 14/35] NixOS on WSL updates --- home/default.nix | 40 ++++++++++++++++++++------ home/gui/chat.nix | 18 ++++++++---- home/gui/default.nix | 15 +++++----- home/gui/gnome.nix | 47 ------------------------------ home/gui/terminal.nix | 13 --------- home/home.nix | 12 ++++---- home/modules/default.nix | 1 + home/modules/gnome.nix | 62 ++++++++++++++++++++++++++++++++++++++++ overlays/hms.sh | 3 ++ 9 files changed, 124 insertions(+), 87 deletions(-) delete mode 100644 home/gui/gnome.nix delete mode 100644 home/gui/terminal.nix create mode 100644 home/modules/gnome.nix diff --git a/home/default.nix b/home/default.nix index 5544d26..521f6d0 100644 --- a/home/default.nix +++ b/home/default.nix @@ -11,7 +11,11 @@ let if username == "root" then "/root" else ( if ( nixpkgs.lib.hasSuffix "-darwin" system ) then "/Users/${username}" else "/home/${username}" ); - mkhome = system: gui: + mkhome = { + system, + gui, + gnome + }: let homeDirectory = home system; @@ -26,15 +30,35 @@ let in home-manager.lib.homeManagerConfiguration rec { inherit pkgs system username homeDirectory; stateVersion = "22.05"; - configuration = import ./home.nix username { - inherit pkgs gui; + configuration = import ./home.nix { + inherit pkgs gui gnome; inherit (pkgs) config lib stdenv; }; }; + + gdm = { + gui = true; + gnome = true; + }; + + cli = { + gui = false; + gnome = false; + }; + + gui = { + gui = true; + gnome = false; + }; + + arch = { system = "aarch64-linux"; }; + x86 = { system = "x86_64-linux"; }; + darwin = { system = "x86_64-darwin"; }; in { - "aarch64-gui" = mkhome "aarch64-linux" true; - "aarch64-nogui" = mkhome "aarch64-linux" false; - "x86_64-gui" = mkhome "x86_64-linux" true; - "x86_64-nogui" = mkhome "x86_64-linux" false; - "x86_64-darwin" = mkhome "x86_64-darwin" true; + "wsl" = mkhome (gui // arch); + "aarch64-gui" = mkhome (gdm // arch); + "aarch64-nogui" = mkhome (cli // arch); + "x86_64-gui" = mkhome (gdm // x86); + "x86_64-nogui" = mkhome (cli // x86); + "x86_64-darwin" = mkhome (gdm // darwin); } diff --git a/home/gui/chat.nix b/home/gui/chat.nix index 89cbfab..f8eee62 100644 --- a/home/gui/chat.nix +++ b/home/gui/chat.nix @@ -1,10 +1,18 @@ { pkgs, lib, ... }: -{ - home.packages = with pkgs; ( if ( lib.hasSuffix "-darwin" pkgs.system) then - [] else - [ +let + darwinPkgs = []; + x86Pkgs = with pkgs; [ element-desktop slack - ]); + ]; + archPkgs = with pkgs; [ + element-desktop + ]; +in { + home.packages = ( if ( pkgs.stdenv.hostPlatform.isDarwin ) then darwinPkgs else + ( if ( lib.hasPrefix "aarch64" pkgs.system ) then archPkgs else + ( if ( lib.hasPrefix "x86_64" pkgs.system ) then x86Pkgs else [] ) + ) + ); } diff --git a/home/gui/default.nix b/home/gui/default.nix index 7c2e405..d43efcf 100644 --- a/home/gui/default.nix +++ b/home/gui/default.nix @@ -3,15 +3,12 @@ { imports = [ ./chat.nix - ./gnome.nix ./firefox.nix - ./terminal.nix ]; home.packages = with pkgs; [ bazel bazel-buildtools - bitwarden cargo # Rustc cdrtools ffmpeg @@ -22,15 +19,19 @@ handbrake jdk11 libtheora - onlyoffice-bin - synology-drive-client vlc x265 - zoom-us - ] ++ ( if pkgs.system != "x86_64-darwin" then + ] ++ ( if ( pkgs.system != "x86_64-darwin" && pkgs.system != "aarch64-linux" ) then [ jellyfin-media-player nextcloud-client ] else [] + ) ++ ( if ( pkgs.system != "aarch64-linux" ) then + [ + bitwarden + onlyoffice-bin + synology-drive-client + zoom-us + ] else [] ); } diff --git a/home/gui/gnome.nix b/home/gui/gnome.nix deleted file mode 100644 index a3ff260..0000000 --- a/home/gui/gnome.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ pkgs, lib, ... }: - -let - gv = lib.hm.gvariant; - -in { - dconf.settings = lib.mkIf ( lib.hasSuffix "-linux" pkgs.system ) { - "org/gnome/desktop/interface" = { - clock-show-weekday = true; - }; - "org/gnome/desktop/wm/keybindings" = { - switch-applications = []; - switch-applications-backward = []; - switch-windows = ["Tab"]; - switch-windows-backward = [ "Tab" ]; - }; - "org/gnome/nautilus/preferences" = { - default-folder-viewer = "icon-view"; - search-filter-time-type = "last_modified"; - search-view = "list-view"; - }; - "org/gnome/shell/window-switcher" = { - app-icon-mode = "both"; - current-workspace-only = true; - }; - "org/gnome/shell" = { - favorite-apps = [ - "org.gnome.Calendar.desktop" - "org.gnome.Nautilus.desktop" - "org.gnome.Console.desktop" - "firefox.desktop" - "vlc.desktop" - ]; - }; - "org/gnome/shell/overrides" = { - attach-modal-dialogs = true; - dynamic-workspaces = true; - edge-tiling = true; - focus-change-on-pointer-rest = true; - workspaces-only-on-primary = true; - }; - "org/virt-manager/virt-manager/connections" = { - autoconnect = [ "qemu://session" "qemu://system" ]; - uris = [ "qemu://session" "qemu://system" ]; - }; - }; -} diff --git a/home/gui/terminal.nix b/home/gui/terminal.nix deleted file mode 100644 index 822b30e..0000000 --- a/home/gui/terminal.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ lib, pkgs, ... }: - -{ - programs.gnome-terminal = lib.mkIf ( pkgs.system != "x86_64-darwin") { - enable = true; - showMenubar = true; - themeVariant = "dark"; - profile.default = { - default = true; - visibleName = "greg"; - }; - }; -} diff --git a/home/home.nix b/home/home.nix index de15528..3bb9acb 100644 --- a/home/home.nix +++ b/home/home.nix @@ -1,10 +1,6 @@ -name: { pkgs, lib, gui, config, ...}: +{ pkgs, lib, gui, gnome, ...}: -let - guiImports = if gui then - [ ./gui ] else []; - -in { +{ imports = [ ./modules ./ansible.nix @@ -15,9 +11,11 @@ in { ./templates.nix ./vim.nix ./xonsh.nix - ] ++ guiImports; + ] ++ ( if gui then [ ./gui ] else []); + greg.gnome = gnome; + programs.tmux = { enable = true; keyMode = "vi"; diff --git a/home/modules/default.nix b/home/modules/default.nix index 3357dd9..a6344c7 100644 --- a/home/modules/default.nix +++ b/home/modules/default.nix @@ -2,6 +2,7 @@ { imports = [ + ./gnome.nix ./xonsh.nix ]; } diff --git a/home/modules/gnome.nix b/home/modules/gnome.nix new file mode 100644 index 0000000..e669be9 --- /dev/null +++ b/home/modules/gnome.nix @@ -0,0 +1,62 @@ +{ config, pkgs, lib, ... }: + +let + gv = lib.hm.gvariant; + cfg = config.greg.gnome; + +in { + options.greg.gnome = lib.mkEnableOption "Enable Gnome support and settings"; + + config = (lib.mkIf cfg { + programs.gnome-terminal = lib.mkIf ( pkgs.system != "x86_64-darwin") { + enable = true; + showMenubar = true; + themeVariant = "dark"; + profile.default = { + default = true; + visibleName = "greg"; + }; + }; + + dconf.settings = { + "org/gnome/desktop/interface" = { + clock-show-weekday = true; + }; + "org/gnome/desktop/wm/keybindings" = { + switch-applications = []; + switch-applications-backward = []; + switch-windows = ["Tab"]; + switch-windows-backward = [ "Tab" ]; + }; + "org/gnome/nautilus/preferences" = { + default-folder-viewer = "icon-view"; + search-filter-time-type = "last_modified"; + search-view = "list-view"; + }; + "org/gnome/shell/window-switcher" = { + app-icon-mode = "both"; + current-workspace-only = true; + }; + "org/gnome/shell" = { + favorite-apps = [ + "org.gnome.Calendar.desktop" + "org.gnome.Nautilus.desktop" + "org.gnome.Console.desktop" + "firefox.desktop" + "vlc.desktop" + ]; + }; + "org/gnome/shell/overrides" = { + attach-modal-dialogs = true; + dynamic-workspaces = true; + edge-tiling = true; + focus-change-on-pointer-rest = true; + workspaces-only-on-primary = true; + }; + "org/virt-manager/virt-manager/connections" = { + autoconnect = [ "qemu://session" "qemu://system" ]; + uris = [ "qemu://session" "qemu://system" ]; + }; + }; + }); +} diff --git a/overlays/hms.sh b/overlays/hms.sh index 005b3dc..5ecffa2 100644 --- a/overlays/hms.sh +++ b/overlays/hms.sh @@ -7,6 +7,9 @@ if [ "$(uname -s)" == "Darwin" ]; then # On macOS src="${HOME}/.config/nix/" target="${arch}-darwin" +elif [ x"${WSL_DISTRO_NAME}" != "x" ]; then + src=/etc/nixos + target="wsl" else # On Linux/WSL2 systems if [ -z "${DISPLAY}" ]; then From 3c9ea5b145396d3ec454c45afef6de00f07e74fa Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sat, 24 Dec 2022 01:04:04 -0600 Subject: [PATCH 15/35] Remove bad link --- modules-all/modules | 1 - 1 file changed, 1 deletion(-) delete mode 120000 modules-all/modules diff --git a/modules-all/modules b/modules-all/modules deleted file mode 120000 index dc428f0..0000000 --- a/modules-all/modules +++ /dev/null @@ -1 +0,0 @@ -modules \ No newline at end of file From b1e7d952d017e0e08363001d286dabeded740822 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sat, 24 Dec 2022 01:25:01 -0600 Subject: [PATCH 16/35] Transcrypt? --- .gitattributes | 2 +- hosts/linode/synapse.nix.crypt | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.gitattributes b/.gitattributes index 3ab6513..ed82dfa 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,4 +1,4 @@ #pattern filter=crypt diff=crypt -**/*.crypt filter=crypt diff=crypt +hosts/linode/synapse.nix.crypt filter=crypt diff=crypt home/ssh/id_rsa* filter=crypt diff=crypt modules/ssh/id_* filter=crypt diff=crypt diff --git a/hosts/linode/synapse.nix.crypt b/hosts/linode/synapse.nix.crypt index 56bef7e..d589708 100644 --- a/hosts/linode/synapse.nix.crypt +++ b/hosts/linode/synapse.nix.crypt @@ -1,12 +1,12 @@ -U2FsdGVkX18oPFqz6C36wMep7NFLW1+gHEgSX2ltuQVRFUV5inWVu20TxSbwr5Lf -51sP6mT8A88DoTkUaKMiUdeDF5kRpi9534ZZ2WocW5Vax5DsAo3uAA6xP3DX+Ple -ADjJZzGyMJB9Wu8vYwLARS24gYENTThP03Cx8JpwgcijulZGRtN3ud7JMnWCE1Wu -rrppjy3L2VXi/ewsfvIH8kD15sixUPQ80eb1Q1ZESDNVCunmVjOTclnVaMoX4iuE -D/irD5JsbAN5f7Gn65vEMlNy5cl7pP8Jn5PWYj6dXFpq7h+MXX2lW2D3hoQKkXcE -nSIJ4KUdgiSVXO3f673t5fOvvcjOkyB+hAdPXJo70/i7opvJf+aqxtHnit3dIlBp -Kx0cy2v+1Rp5cYvM2Rp95vZOKsmYwDxtu3ef+MKdyrCxViqb44jXraUQzKR2CX46 -bb2IO1q2MZ3XkSAS3+zCe4ze6EISiUkC0d0ISL+Zx+09MLCliL+LmvIxD4vv7KnQ -rxzeJAYsKVB8kQrgTtdvthHrgfBpyC0b9IIfYX0AZz1Xb/AN4K4H2RJXN1JMIWq3 -K0SIAbG+2tyPuE28kHfQap1WYJJf+Y0S3dkskV+vDctQ2Ac3qR9pzIeb+kOoflhV -7EwuSDbpYrby5NVFH55b1gm4iZdU7BpScCSyOd1ku5Tv5lFnuihCKd93qh4J2jU1 -1qwm6uI3ao+ZeiJuweXIs1hG75IPhxcDhiynbrZOH08kLnMj6hCPxj9rjPWQS2Sg +x6ns0UtbX6AcSBJfaW25BVEVRXmKdZW7bRPFJvCvkt/nWw/qZPwDzwOhORRooyJR +14MXmRGmL3nfhlnZahxblVrHkOwCje4ADrE/cNf4+V4AOMlnMbIwkH1a7y9jAsBF +LbiBgQ1NOE/TcLHwmnCByKO6VkZG03e53skydYITVa6uummPLcvZVeL97Cx+8gfy +QPXmyLFQ9DzR5vVDVkRIM1UK6eZWM5NyWdVoyhfiK4QP+KsPkmxsA3l/safrm8Qy +U3LlyXuk/wmfk9ZiPp1cWmruH4xdfaVbYPeGhAqRdwSdIgngpR2CJJVc7d/rve3l +86+9yM6TIH6EB09cmjvT+Luim8l/5qrG0eeK3d0iUGkrHRzLa/7VGnlxi8zZGn3m +9k4qyZjAPG27d5/4wp3KsLFWKpvjiNetpRDMpHYJfjptvYg7WrYxndeRIBLf7MJ7 +jN7oQhKJSQLR3QhIv5nH7T0wsKWIv4ua8jEPi+/sqdCvHN4kBiwpUHyRCuBO12+2 +EeuB8GnILRv0gh9hfQBnPVdv8A3grgfZElc3UkwharcrRIgBsb7a3I+4TbyQd9Bq +nVZgkl/5jRLd2SyRX68Ny1DYBzepH2nMh5v6Q6h+WFXsTC5INulitvLk1UUfnlvW +CbiJl1TsGlJwJLI53WS7lO/mUWe6KEIp33eqHgnaNTXWrCbq4jdqj5l6Im7B5ciz +WEbvkg+HFwOGLKdutk4fTyQucyPqEI/GP2uM9ZBLZKA= From 6e7f5ae446c72d77beaed2c1f17d4ef7c0d76823 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 28 Dec 2022 15:39:44 -0600 Subject: [PATCH 17/35] Add WSL2 target for builds --- flake.lock | 56 ++++++++++++++++++++++++++++++++++++++++++- flake.nix | 11 ++++++++- hosts/wsl/default.nix | 10 ++++++++ 3 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 hosts/wsl/default.nix diff --git a/flake.lock b/flake.lock index 20adcb3..9b4372b 100644 --- a/flake.lock +++ b/flake.lock @@ -57,6 +57,37 @@ "type": "github" } }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1668681692, + "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -149,7 +180,8 @@ "home-manager": "home-manager", "nixunstable": "nixunstable", "nurpkgs": "nurpkgs", - "stable": "stable" + "stable": "stable", + "wsl": "wsl" } }, "stable": { @@ -167,6 +199,28 @@ "repo": "nixpkgs", "type": "github" } + }, + "wsl": { + "inputs": { + "flake-compat": "flake-compat", + "flake-utils": "flake-utils", + "nixpkgs": [ + "nixunstable" + ] + }, + "locked": { + "lastModified": 1671740841, + "narHash": "sha256-y9xl0aYI9uOJpNabIVja7aksDgV5nMgH8MsWaEOW2bM=", + "owner": "nix-community", + "repo": "NixOS-WSL", + "rev": "3ec8fafb7b5d1463cb166233cf18bf495dd8e944", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NixOS-WSL", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 9423ee0..4f43dfc 100644 --- a/flake.nix +++ b/flake.nix @@ -16,11 +16,15 @@ url = "github:lnl7/nix-darwin/master"; inputs.nixpkgs.follows = "nixunstable"; }; + wsl = { + url = "github:nix-community/NixOS-WSL"; + inputs.nixpkgs.follows = "nixunstable"; + }; nurpkgs.url = "github:nix-community/NUR"; ffmac.url = "github:bandithedoge/nixpkgs-firefox-darwin"; }; - outputs = {stable, nixunstable, agenix, home-manager, nurpkgs, self, ...}@inputs: + outputs = {stable, nixunstable, agenix, home-manager, nurpkgs, self, wsl, ...}@inputs: let local_overlay = import ./overlays; overlays = [ @@ -42,6 +46,7 @@ modules = [ { nixpkgs.overlays = overlays; } agenix.nixosModule + wsl.nixosModules.wsl ./modules-all ./modules-linux ./hosts/${name} @@ -76,6 +81,10 @@ "linode" = machine { name = "linode"; }; "lappy" = machine { name = "lappy"; }; "iso" = machine { name = "iso"; }; + # nix build '.#nixosConfigurations.wsl.config.system.build.installer' + "wsl" = machine { name = "wsl"; }; + # nix build '.#nixosConfigurations.wsl-aarch.config.system.build.installer' + "wsl-aarch" = machine { name = "wsl"; system = "aarch64-linux"; }; }; darwinConfigurations = diff --git a/hosts/wsl/default.nix b/hosts/wsl/default.nix new file mode 100644 index 0000000..3eeaf4e --- /dev/null +++ b/hosts/wsl/default.nix @@ -0,0 +1,10 @@ +{ pkgs, ... }: + +{ + wsl = { + enable = true; + wslConf.automount.root = "/mnt"; + defaultUser = "greg"; + startMenuLaunchers = true; + }; +} From 24891562a864004da84cf7274c9d5442a6e3365c Mon Sep 17 00:00:00 2001 From: greg-compass Date: Tue, 3 Jan 2023 11:29:40 -0600 Subject: [PATCH 18/35] Update ffmac and Darwin to non-dbus --- flake.lock | 6 +++--- home/default.nix | 10 +++++----- home/gui/chat.nix | 6 +++--- hosts/linode/synapse.nix.crypt | 28 ++++++++++++++++------------ 4 files changed, 27 insertions(+), 23 deletions(-) diff --git a/flake.lock b/flake.lock index 9b4372b..f4781c6 100644 --- a/flake.lock +++ b/flake.lock @@ -44,11 +44,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1670028550, - "narHash": "sha256-jrCEzbRfcNBSy0YHYPLpMSeoluryej3EuqdMZsR1bhQ=", + "lastModified": 1672274978, + "narHash": "sha256-Ui3WNLr/WsXwZ/GM1RI9PuBJj8nKr0DZLkBX/BHpJT4=", "owner": "bandithedoge", "repo": "nixpkgs-firefox-darwin", - "rev": "8f3697c4ea0b138255a30b65510a25d393c4ce4c", + "rev": "b147ba53ff19743066e4f8c7c15422e710164b9c", "type": "github" }, "original": { diff --git a/home/default.nix b/home/default.nix index 521f6d0..8c28d1e 100644 --- a/home/default.nix +++ b/home/default.nix @@ -51,14 +51,14 @@ let gnome = false; }; - arch = { system = "aarch64-linux"; }; + arm = { system = "aarch64-linux"; }; x86 = { system = "x86_64-linux"; }; darwin = { system = "x86_64-darwin"; }; in { - "wsl" = mkhome (gui // arch); - "aarch64-gui" = mkhome (gdm // arch); - "aarch64-nogui" = mkhome (cli // arch); + "wsl" = mkhome (gui // arm); + "aarch64-gui" = mkhome (gdm // arm); + "aarch64-nogui" = mkhome (cli // arm); "x86_64-gui" = mkhome (gdm // x86); "x86_64-nogui" = mkhome (cli // x86); - "x86_64-darwin" = mkhome (gdm // darwin); + "x86_64-darwin" = mkhome (gui // darwin); } diff --git a/home/gui/chat.nix b/home/gui/chat.nix index f8eee62..d53ffe5 100644 --- a/home/gui/chat.nix +++ b/home/gui/chat.nix @@ -6,12 +6,12 @@ let element-desktop slack ]; - archPkgs = with pkgs; [ + armPkgs = with pkgs; [ element-desktop ]; in { - home.packages = ( if ( pkgs.stdenv.hostPlatform.isDarwin ) then darwinPkgs else - ( if ( lib.hasPrefix "aarch64" pkgs.system ) then archPkgs else + home.packages = ( if ( pkgs.stdenv.hostPlatform.isDarwin ) then darwinPkgs else + ( if ( lib.hasPrefix "aarch64" pkgs.system ) then armPkgs else ( if ( lib.hasPrefix "x86_64" pkgs.system ) then x86Pkgs else [] ) ) ); diff --git a/hosts/linode/synapse.nix.crypt b/hosts/linode/synapse.nix.crypt index d589708..d9021cd 100644 --- a/hosts/linode/synapse.nix.crypt +++ b/hosts/linode/synapse.nix.crypt @@ -1,12 +1,16 @@ -x6ns0UtbX6AcSBJfaW25BVEVRXmKdZW7bRPFJvCvkt/nWw/qZPwDzwOhORRooyJR -14MXmRGmL3nfhlnZahxblVrHkOwCje4ADrE/cNf4+V4AOMlnMbIwkH1a7y9jAsBF -LbiBgQ1NOE/TcLHwmnCByKO6VkZG03e53skydYITVa6uummPLcvZVeL97Cx+8gfy -QPXmyLFQ9DzR5vVDVkRIM1UK6eZWM5NyWdVoyhfiK4QP+KsPkmxsA3l/safrm8Qy -U3LlyXuk/wmfk9ZiPp1cWmruH4xdfaVbYPeGhAqRdwSdIgngpR2CJJVc7d/rve3l -86+9yM6TIH6EB09cmjvT+Luim8l/5qrG0eeK3d0iUGkrHRzLa/7VGnlxi8zZGn3m -9k4qyZjAPG27d5/4wp3KsLFWKpvjiNetpRDMpHYJfjptvYg7WrYxndeRIBLf7MJ7 -jN7oQhKJSQLR3QhIv5nH7T0wsKWIv4ua8jEPi+/sqdCvHN4kBiwpUHyRCuBO12+2 -EeuB8GnILRv0gh9hfQBnPVdv8A3grgfZElc3UkwharcrRIgBsb7a3I+4TbyQd9Bq -nVZgkl/5jRLd2SyRX68Ny1DYBzepH2nMh5v6Q6h+WFXsTC5INulitvLk1UUfnlvW -CbiJl1TsGlJwJLI53WS7lO/mUWe6KEIp33eqHgnaNTXWrCbq4jdqj5l6Im7B5ciz -WEbvkg+HFwOGLKdutk4fTyQucyPqEI/GP2uM9ZBLZKA= +x7fcaoUM3nYDlFoW+gcKfm9bkVaoftvoKrbrJm21OCR4tnrsWCey7tuN2DDvBnru +F54E4XT/TuU6cDg73FwXjQmkQo4lzP5USwwEHeXXz1w5s0fpfMiTT9TLlD47vCyQ +LeYHiILzav+UiJQmxORSXUbso/XKLKnhL486e6TMtsfLH7h0sziXPY5OAhIJd++3 +TiNZM+njgfQaPr9Ih1fuEbfH9/6PxIqMr2V4M/IQFqQ9FW4y8OMiiyk3wXcWzpBG +Y325MIboZHzLahgeHmnWJYJlpZQzjmsd9z3ApTgHdIELy2K2bgD1uS3qitFKqUpT +1y0ZBW0BRxsbBARHz+u132jG2Z+AcTOkKuk5oZYtatDP/V5kaemH3d1GZZUBrPHY +AXbfFP4Fswvdw8FxRX6QSZRmYBVfao1xwNEZf49QmabyxgZkuDzGPBxbfMiXETg/ +lw309msVld1QpHSVtn9aJIKmjkpNEReFoPyb0oRLUEZWb3ixVwulD9NpPijWhdZS +vg1JDtK3czt9mRX63hNYif/QEHIN0dlzNh90zuith2WMa4OWQM4E+j2d42KUjpJ9 +X+5zeu2v8LmzrI8X01SGj4eMWG0CvasrbHWkCL4S1kyL0Kx+izH8mP98w/XSgV5U +rOjkw8J40ExcTlWkNDPWnDXlxHzsl8s0DLHKE9MoucczJKXqcGQOQyZTdDDVY3ww +jdt48WvJyn7xFc4m0piorQyt+615kTL6Ac8AQJVSpep4hxLAdWMSTRpCDljA488X +z2Pz2nJG7OsPu3QUy959426hyYIaXSYovybwu8NSjhnKyaXhR98IAwYc92exW1JU +xaqpPCVSpDkbndEQ3hPTucursJUvWhVspXTV1P6egwW2UGwvmtiWYXwBoEx4zQZt +CDYgvJsa9tPbyQn88PgReJnAA6P+K9M3NQDFp62rVKcm5h465UlDDrXBPWLIwUrA +mrOsRqMWr9xmbHS2eI5Wt0C8+h1tj9ktGWbwaQ0orakMSHpNogXqIltsX8P4+VJU From a4a0843139706264fd6a4d1f9d70e806ee261aa5 Mon Sep 17 00:00:00 2001 From: greg-compass Date: Tue, 3 Jan 2023 15:51:16 -0600 Subject: [PATCH 19/35] Do not install FF on Darwin --- home/gui/firefox.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home/gui/firefox.nix b/home/gui/firefox.nix index f3ea6b1..9156f6f 100644 --- a/home/gui/firefox.nix +++ b/home/gui/firefox.nix @@ -13,7 +13,7 @@ let in with lib; { programs.firefox = { - enable = true; + enable = (! pkgs.stdenv.hostPlatform.isDarwin); package = ffPkgs; extensions = with pkgs.nur.repos.rycee.firefox-addons; [ bitwarden From b5ecc6efb7c542e81e46e8e5157476a3939a6b07 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sat, 14 Jan 2023 13:42:31 -0600 Subject: [PATCH 20/35] Latest WSL updates --- flake.lock | 12 ++++++------ flake.nix | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/flake.lock b/flake.lock index f4781c6..d90d484 100644 --- a/flake.lock +++ b/flake.lock @@ -143,11 +143,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1670751203, - "narHash": "sha256-XdoH1v3shKDGlrwjgrNX/EN8s3c+kQV7xY6cLCE8vcI=", + "lastModified": 1673540789, + "narHash": "sha256-xqnxBOK3qctIeUVxecydrEDbEXjsvHCPGPbvsl63M/U=", "owner": "nixos", "repo": "nixpkgs", - "rev": "64e0bf055f9d25928c31fb12924e59ff8ce71e60", + "rev": "0f213d0fee84280d8c3a97f7469b988d6fe5fcdf", "type": "github" }, "original": { @@ -209,11 +209,11 @@ ] }, "locked": { - "lastModified": 1671740841, - "narHash": "sha256-y9xl0aYI9uOJpNabIVja7aksDgV5nMgH8MsWaEOW2bM=", + "lastModified": 1673339198, + "narHash": "sha256-5EAIJq89sTFooJ5vhsnaw7mDtKVDICvCv2ul7+BXAgA=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "3ec8fafb7b5d1463cb166233cf18bf495dd8e944", + "rev": "217178edb1127fb41ac4fd534d8a513c3dd3d81b", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 4f43dfc..828e53c 100644 --- a/flake.nix +++ b/flake.nix @@ -82,9 +82,9 @@ "lappy" = machine { name = "lappy"; }; "iso" = machine { name = "iso"; }; # nix build '.#nixosConfigurations.wsl.config.system.build.installer' - "wsl" = machine { name = "wsl"; }; + "nixos" = machine { name = "wsl"; system = "aarch64-linux"; }; # nix build '.#nixosConfigurations.wsl-aarch.config.system.build.installer' - "wsl-aarch" = machine { name = "wsl"; system = "aarch64-linux"; }; + "nixos-arm" = machine { name = "wsl"; system = "aarch64-linux"; }; }; darwinConfigurations = From f42fad1bdf5871f85a956997f9821326d5ba8fce Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sun, 22 Jan 2023 00:00:51 -0600 Subject: [PATCH 21/35] Desktop updates --- home/gui/chat.nix | 1 + hosts/linode/synapse.nix.crypt | 38 ++++++++++++++++----------- modules-all/automatic/nix.nix | 11 ++++++++ modules-linux/automatic/syncthing.nix | 2 +- 4 files changed, 35 insertions(+), 17 deletions(-) diff --git a/home/gui/chat.nix b/home/gui/chat.nix index d53ffe5..913e0e0 100644 --- a/home/gui/chat.nix +++ b/home/gui/chat.nix @@ -3,6 +3,7 @@ let darwinPkgs = []; x86Pkgs = with pkgs; [ + discord element-desktop slack ]; diff --git a/hosts/linode/synapse.nix.crypt b/hosts/linode/synapse.nix.crypt index d9021cd..62151fc 100644 --- a/hosts/linode/synapse.nix.crypt +++ b/hosts/linode/synapse.nix.crypt @@ -1,16 +1,22 @@ -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 diff --git a/modules-all/automatic/nix.nix b/modules-all/automatic/nix.nix index feb18e6..1026545 100644 --- a/modules-all/automatic/nix.nix +++ b/modules-all/automatic/nix.nix @@ -4,6 +4,17 @@ # Enable flakes nix = { package = pkgs.nixFlakes; + buildMachines = [ + { + hostName = "dns.me.ts"; + system = "aarch64-linux"; + } + + { + hostName = "jude.me.ts"; + system = "x86_64-linux"; + } + ]; settings = { experimental-features = "nix-command flakes"; diff --git a/modules-linux/automatic/syncthing.nix b/modules-linux/automatic/syncthing.nix index 1bd8471..1778dba 100644 --- a/modules-linux/automatic/syncthing.nix +++ b/modules-linux/automatic/syncthing.nix @@ -9,7 +9,7 @@ let in { services.syncthing = { - enable = true; + enable = false; user = "greg"; group = "users"; dataDir = "/home/greg/sync"; From 1c20d6ab4095c0de30a82e3b13423d948674f23b Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 15 Feb 2023 12:29:15 -0600 Subject: [PATCH 22/35] Blank commit? --- hosts/linode/synapse.nix.crypt | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/hosts/linode/synapse.nix.crypt b/hosts/linode/synapse.nix.crypt index d589708..d9021cd 100644 --- a/hosts/linode/synapse.nix.crypt +++ b/hosts/linode/synapse.nix.crypt @@ -1,12 +1,16 @@ -x6ns0UtbX6AcSBJfaW25BVEVRXmKdZW7bRPFJvCvkt/nWw/qZPwDzwOhORRooyJR -14MXmRGmL3nfhlnZahxblVrHkOwCje4ADrE/cNf4+V4AOMlnMbIwkH1a7y9jAsBF -LbiBgQ1NOE/TcLHwmnCByKO6VkZG03e53skydYITVa6uummPLcvZVeL97Cx+8gfy -QPXmyLFQ9DzR5vVDVkRIM1UK6eZWM5NyWdVoyhfiK4QP+KsPkmxsA3l/safrm8Qy -U3LlyXuk/wmfk9ZiPp1cWmruH4xdfaVbYPeGhAqRdwSdIgngpR2CJJVc7d/rve3l -86+9yM6TIH6EB09cmjvT+Luim8l/5qrG0eeK3d0iUGkrHRzLa/7VGnlxi8zZGn3m -9k4qyZjAPG27d5/4wp3KsLFWKpvjiNetpRDMpHYJfjptvYg7WrYxndeRIBLf7MJ7 -jN7oQhKJSQLR3QhIv5nH7T0wsKWIv4ua8jEPi+/sqdCvHN4kBiwpUHyRCuBO12+2 -EeuB8GnILRv0gh9hfQBnPVdv8A3grgfZElc3UkwharcrRIgBsb7a3I+4TbyQd9Bq -nVZgkl/5jRLd2SyRX68Ny1DYBzepH2nMh5v6Q6h+WFXsTC5INulitvLk1UUfnlvW -CbiJl1TsGlJwJLI53WS7lO/mUWe6KEIp33eqHgnaNTXWrCbq4jdqj5l6Im7B5ciz -WEbvkg+HFwOGLKdutk4fTyQucyPqEI/GP2uM9ZBLZKA= +x7fcaoUM3nYDlFoW+gcKfm9bkVaoftvoKrbrJm21OCR4tnrsWCey7tuN2DDvBnru +F54E4XT/TuU6cDg73FwXjQmkQo4lzP5USwwEHeXXz1w5s0fpfMiTT9TLlD47vCyQ +LeYHiILzav+UiJQmxORSXUbso/XKLKnhL486e6TMtsfLH7h0sziXPY5OAhIJd++3 +TiNZM+njgfQaPr9Ih1fuEbfH9/6PxIqMr2V4M/IQFqQ9FW4y8OMiiyk3wXcWzpBG +Y325MIboZHzLahgeHmnWJYJlpZQzjmsd9z3ApTgHdIELy2K2bgD1uS3qitFKqUpT +1y0ZBW0BRxsbBARHz+u132jG2Z+AcTOkKuk5oZYtatDP/V5kaemH3d1GZZUBrPHY +AXbfFP4Fswvdw8FxRX6QSZRmYBVfao1xwNEZf49QmabyxgZkuDzGPBxbfMiXETg/ +lw309msVld1QpHSVtn9aJIKmjkpNEReFoPyb0oRLUEZWb3ixVwulD9NpPijWhdZS +vg1JDtK3czt9mRX63hNYif/QEHIN0dlzNh90zuith2WMa4OWQM4E+j2d42KUjpJ9 +X+5zeu2v8LmzrI8X01SGj4eMWG0CvasrbHWkCL4S1kyL0Kx+izH8mP98w/XSgV5U +rOjkw8J40ExcTlWkNDPWnDXlxHzsl8s0DLHKE9MoucczJKXqcGQOQyZTdDDVY3ww +jdt48WvJyn7xFc4m0piorQyt+615kTL6Ac8AQJVSpep4hxLAdWMSTRpCDljA488X +z2Pz2nJG7OsPu3QUy959426hyYIaXSYovybwu8NSjhnKyaXhR98IAwYc92exW1JU +xaqpPCVSpDkbndEQ3hPTucursJUvWhVspXTV1P6egwW2UGwvmtiWYXwBoEx4zQZt +CDYgvJsa9tPbyQn88PgReJnAA6P+K9M3NQDFp62rVKcm5h465UlDDrXBPWLIwUrA +mrOsRqMWr9xmbHS2eI5Wt0C8+h1tj9ktGWbwaQ0orakMSHpNogXqIltsX8P4+VJU From eaa4ef076f0ab2d2aa47a0f982ebbef758ed18ba Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 16 Feb 2023 02:51:03 -0600 Subject: [PATCH 23/35] Update nixunstable Update dnsmasq to new format to avoid deprecation issues Add smart home energy modules to Home Assistant --- flake.lock | 6 ++-- hosts/2maccabees/dnsmasq.nix | 51 ++++++++++++++++------------- hosts/2maccabees/home-assistant.nix | 2 ++ 3 files changed, 33 insertions(+), 26 deletions(-) diff --git a/flake.lock b/flake.lock index d90d484..6daa6a9 100644 --- a/flake.lock +++ b/flake.lock @@ -143,11 +143,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1673540789, - "narHash": "sha256-xqnxBOK3qctIeUVxecydrEDbEXjsvHCPGPbvsl63M/U=", + "lastModified": 1676300157, + "narHash": "sha256-1HjRzfp6LOLfcj/HJHdVKWAkX9QRAouoh6AjzJiIerU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0f213d0fee84280d8c3a97f7469b988d6fe5fcdf", + "rev": "545c7a31e5dedea4a6d372712a18e00ce097d462", "type": "github" }, "original": { diff --git a/hosts/2maccabees/dnsmasq.nix b/hosts/2maccabees/dnsmasq.nix index 8d02617..578cab0 100644 --- a/hosts/2maccabees/dnsmasq.nix +++ b/hosts/2maccabees/dnsmasq.nix @@ -21,25 +21,6 @@ let ]; extraConfig = builtins.concatStringsSep "\n" [ - "expand-hosts" - "domain=thehellings.lan" - "log-dhcp" - "log-queries" - "addn-hosts=/etc/adblock_hosts" - -# "dhcp-range=eth0,10.42.0.1,10.42.1.255,255.255.0.0,static" - "dhcp-range=eth0,10.42.2.1,10.42.2.255,255.255.0.0,12h" - "dhcp-option=eth0,option:router,10.42.1.1" - "dhcp-option=eth0,option:dns-server,10.42.1.2,1.1.1.1" - "dhcp-option=eth0,option:domain-search,thehellings.lan" - - "dhcp-range=vlan66@eth0,192.168.66.3,192.168.66.150,255.255.255.0,12h" - "dhcp-option=vlan66@eth0,option:router,192.168.66.1" - "dhcp-option=vlan66@eth0,option:dns-server,192.168.66.2" - - "dhcp-range=vlan67@eth0,192.168.67.3,192.168.67.150,12h" - "dhcp-option=vlan67@eth0,option:router,192.168.67.1" - "dhcp-option=vlan67@eth0,option:dns-server,192.168.67.2" ]; in { @@ -47,10 +28,34 @@ in services.dnsmasq = { enable = true; # Public AdGuard DNS servers - servers = [ - "94.140.14.14" - "94.140.15.15" - ]; + settings = { + domain = "thehellings.lan"; + dhcp-range = [ + # "eth0,10.42.0.1,10.42.1.255,255.255.0.0,static" + "eth0,10.42.2.1,10.42.2.255,255.255.0.0,12h" + "vlan66@eth0,192.168.66.3,192.168.66.150,255.255.255.0,12h" + "vlan67@eth0,192.168.67.3,192.168.67.150,12h" + ]; + dhcp-option = [ + "eth0,option:router,10.42.1.1" + "eth0,option:dns-server,10.42.1.2,1.1.1.1" + "eth0,option:domain-search,thehellings.lan" + + "vlan66@eth0,option:router,192.168.66.1" + "vlan66@eth0,option:dns-server,192.168.66.2" + + "vlan67@eth0,option:router,192.168.67.1" + "vlan67@eth0,option:dns-server,192.168.67.2" + ]; + expand-hosts = true; + log-dhcp = true; + log-queries = true; + addn-hosts = "/etc/adblock_hosts"; + server = [ + "94.140.14.14" + "94.140.15.15" + ]; + }; extraConfig = "${extraConfig}"; }; environment.systemPackages = [ pkgs.curl ]; diff --git a/hosts/2maccabees/home-assistant.nix b/hosts/2maccabees/home-assistant.nix index 7c1f2c2..50d4af0 100755 --- a/hosts/2maccabees/home-assistant.nix +++ b/hosts/2maccabees/home-assistant.nix @@ -17,6 +17,8 @@ in "eufy" "lovelace" "nextcloud" + "smart_meter_texas" + "solaredge" "tplink" "wiz" "zwave_js" From b35055bd8eadadc76b0699c1a78d78573c0d6e29 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sun, 19 Feb 2023 21:38:12 -0600 Subject: [PATCH 24/35] Add killall to installations --- modules-all/automatic/programs.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules-all/automatic/programs.nix b/modules-all/automatic/programs.nix index 59194ea..4c130b8 100644 --- a/modules-all/automatic/programs.nix +++ b/modules-all/automatic/programs.nix @@ -14,6 +14,7 @@ hms # My own home manager switcher home-manager htop + killall nano pwgen transcrypt From 656576e251e1162ef2aff9d26cf671ac0ff663ec Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sun, 19 Feb 2023 21:39:16 -0600 Subject: [PATCH 25/35] Silly crypt file? --- hosts/linode/synapse.nix.crypt | 71 ++++++++++++++++++++-------------- 1 file changed, 41 insertions(+), 30 deletions(-) diff --git a/hosts/linode/synapse.nix.crypt b/hosts/linode/synapse.nix.crypt index d35013c..dd7d8b5 100644 --- a/hosts/linode/synapse.nix.crypt +++ b/hosts/linode/synapse.nix.crypt @@ -1,30 +1,41 @@ -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 From 6a2ef7568f8052e227a933aaf850942ce2f8f960 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 20 Feb 2023 20:02:27 -0600 Subject: [PATCH 26/35] This crypt nonsense --- hosts/linode/synapse.nix.crypt | 38 ++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/hosts/linode/synapse.nix.crypt b/hosts/linode/synapse.nix.crypt index d9021cd..62151fc 100644 --- a/hosts/linode/synapse.nix.crypt +++ b/hosts/linode/synapse.nix.crypt @@ -1,16 +1,22 @@ -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 From 17e059c203224fcebfca316e4d6a24f47581632a Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 20 Feb 2023 20:10:35 -0600 Subject: [PATCH 27/35] Remove syncthing --- modules-linux/automatic/default.nix | 1 - modules-linux/automatic/syncthing.nix | 46 --------------------------- 2 files changed, 47 deletions(-) delete mode 100644 modules-linux/automatic/syncthing.nix diff --git a/modules-linux/automatic/default.nix b/modules-linux/automatic/default.nix index f20fb29..8b667f9 100644 --- a/modules-linux/automatic/default.nix +++ b/modules-linux/automatic/default.nix @@ -2,7 +2,6 @@ { imports = [ - ./syncthing.nix ./users.nix ]; } diff --git a/modules-linux/automatic/syncthing.nix b/modules-linux/automatic/syncthing.nix deleted file mode 100644 index 1778dba..0000000 --- a/modules-linux/automatic/syncthing.nix +++ /dev/null @@ -1,46 +0,0 @@ -{ ... }: - -let - syncs = [ - "nas" - "dns" - "linode" - ]; -in -{ - services.syncthing = { - enable = false; - user = "greg"; - group = "users"; - dataDir = "/home/greg/sync"; - devices = { - nas = { - addresses = [ - "tcp://nas.thehellings.lan:22000" - "tcp://chronicles.greg-hellings.gmail.com.beta.tailscale.net:22000" - ]; - id = "74JUTZG-77EPGO3-FEYCL2P-CHDWP5G-6EXWZVB-XTAH6O5-TUXCVY2-QNRHSQ4"; - }; - dns = { - addresses = [ - "tcp://dns.thehellings.lan:22000" - "tcp://2maccabees.greg-hellings.gmail.com.beta.tailscale.net:22000" - ]; - id = "C4XJCH7-3ZNW6XZ-R5DB2EU-OEGVVT2-WPHQAG7-UDWER36-6NO5KZR-4MN5VAK"; - }; - linode = { - addresses = [ - "tcp://linode.thehellings.com:22000" - ]; - id = "ROZPUG5-G4IAXYA-JNRQXRD-5PFU2BQ-WVJTOGZ-DFMGJ5E-Q4IGXCJ-JHSNDQ6"; - }; - }; - folders = { - "mkrvy-tc6x9" = { - path = "/home/greg/drive"; - enable = true; - devices = syncs; - }; - }; - }; -} From 10e3a170a33234b70cca98176fa04900fd697ed9 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 20 Feb 2023 20:16:56 -0600 Subject: [PATCH 28/35] Remove programming tools from everything --- home/gui/default.nix | 7 ------- home/home.nix | 4 ---- 2 files changed, 11 deletions(-) diff --git a/home/gui/default.nix b/home/gui/default.nix index d43efcf..a373e40 100644 --- a/home/gui/default.nix +++ b/home/gui/default.nix @@ -7,17 +7,10 @@ ]; home.packages = with pkgs; [ - bazel - bazel-buildtools - cargo # Rustc cdrtools ffmpeg - gcc gnucash - go - gopls handbrake - jdk11 libtheora vlc x265 diff --git a/home/home.nix b/home/home.nix index 3bb9acb..d04b9c6 100644 --- a/home/home.nix +++ b/home/home.nix @@ -33,7 +33,6 @@ bitwarden-cli diffutils findutils - gh git gnupatch gregpy @@ -42,13 +41,10 @@ jq nano nmap - nodejs openssl tmux transcrypt unzip wget - yamllint - #yawsso ]; } From 9f5c46fa1ea2af2cf3f6b318c3bff5da614fd5ce Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sat, 25 Feb 2023 20:06:13 -0600 Subject: [PATCH 29/35] Update unstable & nur, add libreoffice --- flake.lock | 12 ++++++------ home/gui/default.nix | 1 + 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index 6daa6a9..8bfa0c6 100644 --- a/flake.lock +++ b/flake.lock @@ -143,11 +143,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1676300157, - "narHash": "sha256-1HjRzfp6LOLfcj/HJHdVKWAkX9QRAouoh6AjzJiIerU=", + "lastModified": 1677063315, + "narHash": "sha256-qiB4ajTeAOVnVSAwCNEEkoybrAlA+cpeiBxLobHndE8=", "owner": "nixos", "repo": "nixpkgs", - "rev": "545c7a31e5dedea4a6d372712a18e00ce097d462", + "rev": "988cc958c57ce4350ec248d2d53087777f9e1949", "type": "github" }, "original": { @@ -159,11 +159,11 @@ }, "nurpkgs": { "locked": { - "lastModified": 1670819416, - "narHash": "sha256-ja1livEv48Y3piLmdKo0T+1cUHdSfmaHXOxOxJNbneA=", + "lastModified": 1677243766, + "narHash": "sha256-a+2V68cLjb951pYBEGbQGEVBcgti40uWtxTVnzvGFhY=", "owner": "nix-community", "repo": "NUR", - "rev": "068395203bcc46e2ed19843f508383982b153271", + "rev": "9bde3171aeb5954b7955fcb09b231f53caf76b54", "type": "github" }, "original": { diff --git a/home/gui/default.nix b/home/gui/default.nix index a373e40..6f28032 100644 --- a/home/gui/default.nix +++ b/home/gui/default.nix @@ -17,6 +17,7 @@ ] ++ ( if ( pkgs.system != "x86_64-darwin" && pkgs.system != "aarch64-linux" ) then [ jellyfin-media-player + libreoffice nextcloud-client ] else [] ) ++ ( if ( pkgs.system != "aarch64-linux" ) then From 97f285797777036a02ed3943eba77942a36528fb Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 1 Mar 2023 14:57:58 -0600 Subject: [PATCH 30/35] Add version:refname to git tag sorting --- home/git.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/home/git.nix b/home/git.nix index dce6b54..313d795 100644 --- a/home/git.nix +++ b/home/git.nix @@ -22,6 +22,7 @@ init.defaultBranch = "main"; push.default = "upstream"; pull.rebase = "false"; + tag.sort = "version:refname"; }; }; } From 7bc4771f1438daaf2a71c52868b399e1eb8e14be Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 6 Mar 2023 21:59:09 -0600 Subject: [PATCH 31/35] Update nixunstable and wsl --- flake.lock | 24 ++--- hosts/linode/synapse.nix.crypt | 179 +++++++++++++++++++-------------- 2 files changed, 115 insertions(+), 88 deletions(-) diff --git a/flake.lock b/flake.lock index 8bfa0c6..ad2837f 100644 --- a/flake.lock +++ b/flake.lock @@ -60,11 +60,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1668681692, - "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", "owner": "edolstra", "repo": "flake-compat", - "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", "type": "github" }, "original": { @@ -75,11 +75,11 @@ }, "flake-utils": { "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "lastModified": 1676283394, + "narHash": "sha256-XX2f9c3iySLCw54rJ/CZs+ZK6IQy7GXNY4nSOyu2QG4=", "owner": "numtide", "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "rev": "3db36a8b464d0c4532ba1c7dda728f4576d6d073", "type": "github" }, "original": { @@ -143,11 +143,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1677063315, - "narHash": "sha256-qiB4ajTeAOVnVSAwCNEEkoybrAlA+cpeiBxLobHndE8=", + "lastModified": 1677932085, + "narHash": "sha256-+AB4dYllWig8iO6vAiGGYl0NEgmMgGHpy9gzWJ3322g=", "owner": "nixos", "repo": "nixpkgs", - "rev": "988cc958c57ce4350ec248d2d53087777f9e1949", + "rev": "3c5319ad3aa51551182ac82ea17ab1c6b0f0df89", "type": "github" }, "original": { @@ -209,11 +209,11 @@ ] }, "locked": { - "lastModified": 1673339198, - "narHash": "sha256-5EAIJq89sTFooJ5vhsnaw7mDtKVDICvCv2ul7+BXAgA=", + "lastModified": 1678115114, + "narHash": "sha256-O9BmYOgIVuUSU9iEPSW/tmy8T7V6DmQHXudAHw0uDKU=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "217178edb1127fb41ac4fd534d8a513c3dd3d81b", + "rev": "53089d5cc92713ce549ba6ee87ea2b123d6c26e9", "type": "github" }, "original": { diff --git a/hosts/linode/synapse.nix.crypt b/hosts/linode/synapse.nix.crypt index 1ff1285..597469d 100644 --- a/hosts/linode/synapse.nix.crypt +++ b/hosts/linode/synapse.nix.crypt @@ -1,76 +1,103 @@ -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 -nF4FwvAGbA2hV5dMtfrYIA== +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 +ksyTVqvLxP73CCujwch/+g== From 0084cf98866bdc5686c7712cdecb7b1ef9a010d1 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 6 Mar 2023 22:00:42 -0600 Subject: [PATCH 32/35] Add WSL to Garnix --- garnix.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/garnix.yaml b/garnix.yaml index 5d39710..8c3b37a 100644 --- a/garnix.yaml +++ b/garnix.yaml @@ -1,6 +1,7 @@ builds: include: - '*.x86_64-linux.*' + - '*.aarch64-linux.*' - nixosConfigurations.* - defaultPackage.x86_64-linux - homeConfigurations.x86_64-gui From c983a3de2c1aae126e49fc04bab2b730a8f11294 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 6 Mar 2023 22:14:20 -0600 Subject: [PATCH 33/35] Build home-manager targets --- flake.nix | 9 +++++++-- garnix.yaml | 7 +++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/flake.nix b/flake.nix index 828e53c..4c8d7d3 100644 --- a/flake.nix +++ b/flake.nix @@ -108,8 +108,13 @@ }; }; - defaultPackage."x86_64-linux" = inputs.self.nixosConfigurations.iso.config.system.build.isoImage; - defaultPackage."x86_64-darwin" = inputs.self.darwinConfigurations.C02G48H8MD6R.system; + #"x86_64-linux" = inputs.self.nixosConfigurations.iso.config.system.build.isoImage; + #"x86_64-darwin" = inputs.self.darwinConfigurations.C02G48H8MD6R.system; + defaultPackage = { + "x86_64-linux" = inputs.self.homeConfigurations."x86_64-gui".activationPackage; + "aarch64-linux" = inputs.self.homeConfigurations."aarch64-gui".activationPackage; + "x86_64-darwin" = inputs.self.homeConfigurations."x86_64-darwin".activationPackage; + }; homeConfigurations = ( import ./home { diff --git a/garnix.yaml b/garnix.yaml index 8c3b37a..1c2f208 100644 --- a/garnix.yaml +++ b/garnix.yaml @@ -4,9 +4,8 @@ builds: - '*.aarch64-linux.*' - nixosConfigurations.* - defaultPackage.x86_64-linux - - homeConfigurations.x86_64-gui - - homeConfigurations.x86_64-nogui.activationPackage - - darwinConfigurations.* + - defaultPackage.aarch64-linux + - defaultPackage.x86_64-darwin + - darwinConfigurations.C02G48H8MD6R exclude: - nixosConfigurations.linode # Requires decrypted files - #- nixosConfigurations.2maccabees # Raspberry Pi 4 From 02c88a1b0dcb1bcd9d972b67836dab7d72ae6a0c Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 6 Mar 2023 23:31:58 -0600 Subject: [PATCH 34/35] Make everything purer --- flake.lock | 18 +++++++++++++++++- flake.nix | 13 ++++--------- garnix.yaml | 2 +- home/default.nix | 48 +++++++++++++++++++++++------------------------- overlays/hms.sh | 14 +++++++------- 5 files changed, 52 insertions(+), 43 deletions(-) diff --git a/flake.lock b/flake.lock index ad2837f..e46cd7a 100644 --- a/flake.lock +++ b/flake.lock @@ -88,6 +88,21 @@ "type": "github" } }, + "flake-utils_2": { + "locked": { + "lastModified": 1676283394, + "narHash": "sha256-XX2f9c3iySLCw54rJ/CZs+ZK6IQy7GXNY4nSOyu2QG4=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3db36a8b464d0c4532ba1c7dda728f4576d6d073", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -177,6 +192,7 @@ "agenix": "agenix", "darwin": "darwin", "ffmac": "ffmac", + "flake-utils": "flake-utils", "home-manager": "home-manager", "nixunstable": "nixunstable", "nurpkgs": "nurpkgs", @@ -203,7 +219,7 @@ "wsl": { "inputs": { "flake-compat": "flake-compat", - "flake-utils": "flake-utils", + "flake-utils": "flake-utils_2", "nixpkgs": [ "nixunstable" ] diff --git a/flake.nix b/flake.nix index 4c8d7d3..ce22878 100644 --- a/flake.nix +++ b/flake.nix @@ -8,6 +8,7 @@ stable.url = "github:nixos/nixpkgs/nixos-22.05"; nixunstable.url = "github:nixos/nixpkgs/nixos-unstable"; agenix.url = "github:ryantm/agenix"; + flake-utils.url = "github:numtide/flake-utils"; home-manager = { url = "github:nix-community/home-manager/release-22.05"; inputs.nixpkgs.follows = "stable"; @@ -24,7 +25,7 @@ ffmac.url = "github:bandithedoge/nixpkgs-firefox-darwin"; }; - outputs = {stable, nixunstable, agenix, home-manager, nurpkgs, self, wsl, ...}@inputs: + outputs = {stable, nixunstable, agenix, home-manager, nurpkgs, self, wsl, flake-utils, ...}@inputs: let local_overlay = import ./overlays; overlays = [ @@ -108,17 +109,11 @@ }; }; - #"x86_64-linux" = inputs.self.nixosConfigurations.iso.config.system.build.isoImage; - #"x86_64-darwin" = inputs.self.darwinConfigurations.C02G48H8MD6R.system; - defaultPackage = { - "x86_64-linux" = inputs.self.homeConfigurations."x86_64-gui".activationPackage; - "aarch64-linux" = inputs.self.homeConfigurations."aarch64-gui".activationPackage; - "x86_64-darwin" = inputs.self.homeConfigurations."x86_64-darwin".activationPackage; - }; + defaultPackage = flake-utils.lib.eachDefaultSystemMap (system: inputs.self.homeConfigurations.gui."${system}".activationPackage); homeConfigurations = ( import ./home { - inherit nixunstable agenix home-manager overlays; + inherit nixunstable agenix home-manager overlays flake-utils; nixpkgs = nixunstable; } ); diff --git a/garnix.yaml b/garnix.yaml index 1c2f208..3887417 100644 --- a/garnix.yaml +++ b/garnix.yaml @@ -6,6 +6,6 @@ builds: - defaultPackage.x86_64-linux - defaultPackage.aarch64-linux - defaultPackage.x86_64-darwin - - darwinConfigurations.C02G48H8MD6R + - defaultPackage.aarch64-darwin exclude: - nixosConfigurations.linode # Requires decrypted files diff --git a/home/default.nix b/home/default.nix index 8c28d1e..06417d3 100644 --- a/home/default.nix +++ b/home/default.nix @@ -2,27 +2,31 @@ nixpkgs, overlays, home-manager, - username ? builtins.getEnv "USER", + flake-utils, ... }: let - home = system: + # I'm "greg" everywhere except Darwin where I'm "gregory.hellings" + user = system: + ( if ( nixpkgs.lib.hasSuffix "-darwin" system ) then "gregory.hellings" else "greg" ); + home = system: username: if username == "root" then "/root" else ( if ( nixpkgs.lib.hasSuffix "-darwin" system ) then "/Users/${username}" else "/home/${username}" ); mkhome = { system, gui, - gnome + gnome, + username }: let - homeDirectory = home system; + homeDirectory = home system username; configDir = "${homeDirectory}/.config"; pkgs = import nixpkgs { - inherit overlays; + inherit overlays system; config.allowUnfree = true; config.xdg.configHome = configDir; }; @@ -36,29 +40,23 @@ let }; }; - gdm = { +in flake-utils.lib.eachDefaultSystem (system: { + gui = mkhome { + inherit system; + gui = true; + gnome = false; + username = user system; + }; + gdm = mkhome { + inherit system; gui = true; gnome = true; + username = user system; }; - - cli = { + cli = mkhome { + inherit system; gui = false; gnome = false; + username = user system; }; - - gui = { - gui = true; - gnome = false; - }; - - arm = { system = "aarch64-linux"; }; - x86 = { system = "x86_64-linux"; }; - darwin = { system = "x86_64-darwin"; }; -in { - "wsl" = mkhome (gui // arm); - "aarch64-gui" = mkhome (gdm // arm); - "aarch64-nogui" = mkhome (cli // arm); - "x86_64-gui" = mkhome (gdm // x86); - "x86_64-nogui" = mkhome (cli // x86); - "x86_64-darwin" = mkhome (gui // darwin); -} +}) diff --git a/overlays/hms.sh b/overlays/hms.sh index 5ecffa2..d34fcf2 100644 --- a/overlays/hms.sh +++ b/overlays/hms.sh @@ -6,25 +6,25 @@ arch="$(uname -m)" if [ "$(uname -s)" == "Darwin" ]; then # On macOS src="${HOME}/.config/nix/" - target="${arch}-darwin" + flavor="gui" elif [ x"${WSL_DISTRO_NAME}" != "x" ]; then src=/etc/nixos - target="wsl" + flavor="cli" else - # On Linux/WSL2 systems + # On Linux systems if [ -z "${DISPLAY}" ]; then - target="${arch}-nogui" + flavor="cli" else - target="${arch}-gui" + flavor="gdm" fi src=/etc/nixos fi # Build and switch -echo "Building ${target}" +echo "Building ${flavor}.${arch}" dest=$(mktemp -d) pushd "${dest}" > /dev/null -nix build --impure "${src}#homeConfigurations.${target}.activationPackage" +nix build "${src}#homeConfigurations.${flavor}.${arch}.activationPackage" ./result/activate popd > /dev/null rm -r "${dest}" From 6227825a852860c8bdc67b290858a0b606fa5653 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 7 Mar 2023 00:11:41 -0600 Subject: [PATCH 35/35] Update nix stable --- flake.lock | 6 +++--- flake.nix | 18 ++++-------------- 2 files changed, 7 insertions(+), 17 deletions(-) diff --git a/flake.lock b/flake.lock index e46cd7a..d961db0 100644 --- a/flake.lock +++ b/flake.lock @@ -202,11 +202,11 @@ }, "stable": { "locked": { - "lastModified": 1670700605, - "narHash": "sha256-5dlpATkcyITpdtMflhltuD+A3RNpsVI1Mb+dtKkll6Y=", + "lastModified": 1672580127, + "narHash": "sha256-3lW3xZslREhJogoOkjeZtlBtvFMyxHku7I/9IVehhT8=", "owner": "nixos", "repo": "nixpkgs", - "rev": "7b9eeb856cbf976482fa8d1cb295ea03fb3e1277", + "rev": "0874168639713f547c05947c76124f78441ea46c", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index ce22878..4bce827 100644 --- a/flake.nix +++ b/flake.nix @@ -67,25 +67,15 @@ in { nixosConfigurations = { - "2maccabees" = machine { - system = "aarch64-linux"; - name = "2maccabees"; - channel = nixunstable; - }; - - - jude = machine { - name = "jude"; - channel = nixunstable; - }; - + "2maccabees" = machine { system = "aarch64-linux"; name = "2maccabees"; channel = nixunstable; }; + jude = machine { name = "jude"; channel = nixunstable; }; "linode" = machine { name = "linode"; }; "lappy" = machine { name = "lappy"; }; "iso" = machine { name = "iso"; }; # nix build '.#nixosConfigurations.wsl.config.system.build.installer' - "nixos" = machine { name = "wsl"; system = "aarch64-linux"; }; + "nixos" = machine { name = "wsl"; system = "aarch64-linux"; channel = nixunstable; }; # nix build '.#nixosConfigurations.wsl-aarch.config.system.build.installer' - "nixos-arm" = machine { name = "wsl"; system = "aarch64-linux"; }; + "nixos-arm" = machine { name = "wsl"; system = "aarch64-linux"; channel = nixunstable; }; }; darwinConfigurations =