Commit graph

294 commits

Author SHA1 Message Date
Daniel Siepmann a9c1c526f1
Adjust Neovim Telescope design
Use ascending sorting to move selection to the prompt.
Also shorten width as it felt to much on my larger screen.
2022-03-21 15:49:17 +01:00
Daniel Siepmann 5fb8c7f0c0
Use buildVimPluginFrom2Nix as outer most public API 2022-03-17 11:53:49 +01:00
Daniel Siepmann c856a38eab
Auto select first autocomplete item in Neovim.
As this is most of the time what I need.
I can deselect and type freely to narrow down anyway.
2022-03-17 10:12:35 +01:00
Daniel Siepmann d7f83654e8
Add Neovim LSP for Yaml files 2022-03-17 09:01:15 +01:00
Daniel Siepmann 2dae9f5813
Update neovim plugin todo after reviewing all nixpkgs vim plugins
Also read some other sites
2022-03-17 08:04:13 +01:00
Daniel Siepmann 8448e85bb1
Add xmllint via ale to neovim
Maintain all dependencies via nix / home-manager.
Load xsd schema file.
Define nix xmllint for linting.
2022-03-16 17:12:48 +01:00
Daniel Siepmann 7d333c703b
Streamline omnifunc for php
use same as for vim
2022-03-16 16:54:46 +01:00
Daniel Siepmann 565540611b
Add vim language server 2022-03-16 16:54:23 +01:00
Daniel Siepmann 42f9578ef6
Use nix php when starting phpactor language server 2022-03-16 16:53:46 +01:00
Daniel Siepmann ab062b61d4
No need to learn lua yet 2022-03-16 16:53:12 +01:00
Daniel Siepmann 7bb2b2921e
Show neovim omnifunc completion also for single item
In order to allow to select the item.
2022-03-16 16:52:47 +01:00
Daniel Siepmann 02437cefba
Configure Neovim completion
Still use menu like default.
Do not show preview as in default.
Do not insert as in default.
Do not select as in default.

This allows me to see suggestions but continue typing to narrow down.
Also allows me to manually select a result.

That way completion is out of my way but there to support me.
2022-03-16 16:25:06 +01:00
Daniel Siepmann c8b487c3fd
Remove todo Neovim plugin telescope can already do this 2022-03-16 16:03:31 +01:00
Daniel Siepmann 3269d15f1d
Extend neovim telescope tags with sql
Also add alphabetical sorting of configuration keys.
2022-03-16 15:38:49 +01:00
Daniel Siepmann e653973ab5
Remove todo neovim plugin trouble
telescope can already show them
2022-03-16 15:15:47 +01:00
Daniel Siepmann 9d4f19af6f
Remove already done todo 2022-03-16 15:15:31 +01:00
Daniel Siepmann 668882522b
Do only list tracked files by default via telescope in neovim 2022-03-16 15:15:17 +01:00
Daniel Siepmann 40cef5b623
Add LSP basics (PHP)
Add for PHP via existing phpactor as server.
Use new signature plugin for proper none irritating inline help during
function calls.

TODO: Get rid of preview window showing up …
2022-03-16 14:46:12 +01:00
Daniel Siepmann a842f100b0
Add todos for lua programming language 2022-03-16 14:45:36 +01:00
Daniel Siepmann 0d4f5463d1
Migrate Leaderf to Telescope
Written in Lua.
Very flexible.
Clean documentation.
Easy to extend and configure.
Can do everything I wanted with a good feeling.
2022-03-16 14:44:49 +01:00
Daniel Siepmann e29ceb3b66
Optimize colors of leaderf Neovim plugin 2022-03-16 12:44:20 +01:00
Daniel Siepmann 1991be3686
Remove todo for fzf as I'm now switched to leaderf 2022-03-16 10:17:44 +01:00
Daniel Siepmann 42c78c694d
Cleanup leaderf configuration 2022-03-16 10:17:38 +01:00
Daniel Siepmann 51cb2c9ad3
Migrate Neovim CtrlP to FinderF
Way faster and matches my own preferences. Has a preview and pop up in
the center of the screen.
Comes with many other modes like colorscheme, help, line, etc.
diff --git a/home/programs/neovim.nix b/home/programs/neovim.nix
index 55783de..dda525c 100644
--- a/home/programs/neovim.nix
+++ b/home/programs/neovim.nix
@@ -239,8 +239,8 @@ in {
     }

     {
-      plugin = ctrlp-vim;
-      config = pkgs.lib.fileContents ./neovim/plugins/ctrlp.vim;
+      plugin = LeaderF;
+      config = pkgs.lib.fileContents ./neovim/plugins/leaderf.vim;
     }

     # Syntax
diff --git a/home/programs/neovim/config/functions.vim b/home/programs/neovim/config/functions.vim
index 24e0c00..fea577b 100644
--- a/home/programs/neovim/config/functions.vim
+++ b/home/programs/neovim/config/functions.vim
@@ -113,7 +113,7 @@ function! StartProfiling()
     execute(':profile file *')
 endfunc

-function! CtrlPCurrentComposerPackage()
+function! LeaderfCurrentComposerPackage()
     let l:filePath = split(expand('%:p:h'), '/')

     while !filereadable('/' . join(l:filePath + ['composer.json'], '/')) && len(l:filePath)
@@ -121,7 +121,7 @@ function! CtrlPCurrentComposerPackage()
     endwhile

     if len(l:filePath)
-        execute(':CtrlP /' . join(l:filePath, '/'))
+        execute(':LeaderfFile /' . join(l:filePath, '/'))
     else
         echom 'No composer package detected.'
     endif
diff --git a/home/programs/neovim/config/mappings.vim b/home/programs/neovim/config/mappings.vim
index bd3aee9..7b7ad7d 100644
--- a/home/programs/neovim/config/mappings.vim
+++ b/home/programs/neovim/config/mappings.vim
@@ -10,10 +10,11 @@ nnoremap <leader>v :set paste!<cr>
 nnoremap <leader>nh :nohlsearch<cr>

 " Configure navigation, e.g. go to buffer, file, ...
-nnoremap <leader>p :CtrlP<cr>
-nnoremap <leader>l :CtrlPBuffer<cr>
-nnoremap <leader>r :CtrlPBufTag<cr>
-nnoremap <silent> <leader>c :call CtrlPCurrentComposerPackage()<cr>
+nnoremap <leader>pp :LeaderfSelf<cr>
+nnoremap <leader>pf :LeaderfFile<cr>
+nnoremap <leader>pb :LeaderfBuffer<cr>
+nnoremap <leader>pt :LeaderfBufTag<cr>
+nnoremap <silent> <leader>pc :call LeaderfCurrentComposerPackage()<cr>

 nnoremap <leader>k :NERDTreeToggle<cr>
 nnoremap <leader>f :NERDTreeFind<cr>
diff --git a/home/programs/neovim/plugins/ctrlp.vim b/home/programs/neovim/plugins/ctrlp.vim
deleted file mode 100644
index c45b87e..0000000
--- a/home/programs/neovim/plugins/ctrlp.vim
+++ /dev/null
@@ -1,26 +0,0 @@
-let g:ctrlp_follow_symlinks = 2
-" Default to regex mode
-let g:ctrlp_regexp = 1
-let g:ctrlp_match_window = 'top,order:ttb,min:1,max:10'
-" let g:ctrlp_open_new_file = '0'
-" let g:ctrlp_lazy_update = 1
-let g:ctrlp_show_hidden = 1
-
-let g:ctrlp_types = ['fil', 'buf', 'buftag']
-
-let g:ctrlp_working_path_mode = 'w'
-let g:ctrlp_max_files = 0
-let g:ctrlp_clear_cache_on_exit = 0
-
-" Configure completion for tags in buffer,
-" e.g. configure which kinds to complete for css.
-let g:ctrlp_buftag_types = {
-  \ 'css' : '--css-types=vcit',
-  \ 'typescript' : '--typescript-types=cnfvmitesod',
-  \ 'xml' : '--xml-types=ci',
-  \ 'rst' : '--reStructuredText-types=csSt',
-  \ 'markdown' : '--Markdown-types=csStT',
-  \ 'fluid' : '--xml-types=si',
-  \ 'apache' : '--apache-types=s',
-  \ 'yaml' : '--yaml-types=t',
-\ }
diff --git a/home/programs/neovim/plugins/leaderf.vim b/home/programs/neovim/plugins/leaderf.vim
new file mode 100644
index 0000000..7627b07
--- /dev/null
+++ b/home/programs/neovim/plugins/leaderf.vim
@@ -0,0 +1,213 @@
+let g:Lf_WorkingDirectoryMode = 'c'
+
+let g:Lf_FollowLinks = 1
+let g:Lf_ShowHidden = 1
+
+let g:Lf_WindowPosition = 'popup'
+let g:Lf_HideHelp = 1
+
+let g:Lf_GtagsAutoUpdate = 0
+
+let g:Lf_IgnoreCurrentBufferName = 1
+
+let g:Lf_ShowDevIcons = 0
+
+" TODO: Try to port to existing colorscheme, does it work with load order?
+let g:Lf_PopupPalette = {
+    \  'dark': {
+    \   'Lf_hl_popup_inputText': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'blue',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_window': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_blank': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_cursor': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_prompt': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_spin': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_normalMode': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_inputMode': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_category': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_nameOnlyMode': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_fullPathMode': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_fuzzyMode': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_regexMode': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_cwd': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_lineInfo': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_popup_total': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_cursorline': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': '235',
+    \   },
+    \   'Lf_hl_selection': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_match0': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'blue',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_match1': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'blue',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_match2': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'blue',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_match3': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'blue',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_match4': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'blue',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_match': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'blue',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_lineLocation': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_previewTitle': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_winNumber': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_winIndicators': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_winModified': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_winNomodifiable': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_winDirname': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_quickfixFileName': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_quickfixLineNumber': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_quickfixColumnNumber': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_loclistFileName': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_loclistLineNumber': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \   'Lf_hl_loclistColumnNumber': {
+    \       'cterm': 'none',
+    \       'ctermfg': 'none',
+    \       'ctermbg': 'none',
+    \   },
+    \  }
+    \ }
+
+let g:Lf_PreviewInPopup = 1
+let g:Lf_PreviewHorizontalPosition = 'center'
+let g:Lf_PreviewCode = 0
+let g:Lf_PreviewResult = {
+    \ 'File': 1,
+    \ 'Buffer': 1,
+    \ 'BufTag': 1,
+    \}
2022-03-16 09:05:13 +01:00
Daniel Siepmann 3bf0d66f3b
Add inline todos with new plugins and programs to try 2022-03-16 09:04:03 +01:00
Daniel Siepmann 47c3440be6
Add Neovim syntax of i3 config 2022-03-16 09:03:51 +01:00
Daniel Siepmann 3131d57d46
Fix neovim terminal within tmux 2022-03-16 09:03:31 +01:00
Daniel Siepmann 271758a453
Update Neovim colorscheme 2022-03-16 09:03:19 +01:00
Daniel Siepmann 551153f446
Do note use paratest in Neovim plugin vim-test
Remove the paratest detection.
I consider paratest only for CI and executing a huge set of tests.
But I use vim-test only to execute a single test file or single test.
2022-03-15 17:29:34 +01:00
Daniel Siepmann f4b39fe17c
Do not show Neovim Ctrlp mru
I just don't use this feature.
2022-03-15 10:27:44 +01:00
Daniel Siepmann 269b15cc30
Allow Neovim Ctrlp to search only files in current composer package 2022-03-15 10:25:04 +01:00
Daniel Siepmann 51ca95129d
Adjust SAC indentation of xliff files 2022-03-15 09:57:03 +01:00
Daniel Siepmann 1a61b2b103
Optimize Neovim plugin ctrlp file selection
Do not clear cache on exit. I'm working on huge projects and want a fast
file navigation.
Do not limit number of files as default is already way to low for the
large projects I'm working on.
2022-03-15 09:09:05 +01:00
Daniel Siepmann 4b825bf453
Add Neovim syntax mustache
Customer sac is using handlebars template which have same syntax.
2022-03-15 09:08:32 +01:00
Daniel Siepmann 82e29fb63e
Add some comments to neovim setup 2022-03-15 08:41:41 +01:00
Daniel Siepmann 9e5a77f592
Migrate Neovim snippets to inline configuration
Same as with configuration.
No need for extra repository.
2022-03-15 08:16:18 +01:00
Daniel Siepmann 2a55b8e6fd
Adjust Neovim sql comment
Use TYPO3 default "#" instead of "--".
I nearly exclusively write SQL comments within TYPO3 sql files.
2022-03-15 08:10:54 +01:00
Daniel Siepmann 8541b19663
Adjust neovim configuration for sac customer 2022-03-15 08:01:46 +01:00
Daniel Siepmann 7106b7cac7
Add neovim configuration inline instead of another repository
This eases maintenance as I don't need to commit and push one repo, and
update rev and sha in here.
Instead I can just change configuration and run home-manager switch.
2022-03-15 08:00:46 +01:00
Daniel Siepmann bbaa8830c3
Remove custom grepping from neovim
I'm using plugin ag already.
2022-03-14 16:33:59 +01:00
Daniel Siepmann a683442f90
Remove neovim plugin syntastic
I'm using ale for such a long time already …
2022-03-14 16:31:57 +01:00
Daniel Siepmann a4f46efb9a
Update neovim ale plugin settings 2022-03-14 16:29:19 +01:00
Daniel Siepmann 628f9acae9
Adjust cmus preferences
Do not follow currently played track. Keep view as manually set.
Do not enable repeat by default.
2022-03-14 13:02:26 +01:00
Daniel Siepmann e59fc32ff0
Import pkgs.vimPlugins to shorten plugin definitions 2022-03-14 10:43:50 +01:00
Daniel Siepmann 5a72a2a648
Allow vim sqlformat to work
Add necessary python package which is used by the plugin.
2022-03-14 10:43:26 +01:00
Daniel Siepmann 3b8e4e757f
Use native vim plugin ctrlp file searching
This respects wildignore and removes need for custom grep command.
2022-03-14 09:47:01 +01:00
Daniel Siepmann 98f4e5c3bb
Adjust vim plugin snipMate snippet_version
Keep old version 0, as no snippet was migrated yet.
Need to migrate them prior usage of version 1.
2022-03-14 09:46:26 +01:00
Daniel Siepmann b02993e69e
Adjust Firefox content blocking
Set to level 2 block list. Blocks all detected trackers.
2022-03-14 09:45:22 +01:00
Daniel Siepmann 082ad58af1
Migrate neovim setup
I managed my setup manually.
This commit ports the existing setup to home-manager.

The program module is used to install neovim together with plugins.
Custom plugins are now maintained at Gitea / GitHub and loaded via nix as well.
2022-03-12 11:26:32 +01:00
Daniel Siepmann 7c47df37fc
Fix broken ctags configuration location
Place ctags configuration in expected location.
It wasn't loaded due to wrong location.
Do not add typescript as I'm not using typescript anymore on a
professional level.
2022-03-12 11:03:59 +01:00
Daniel Siepmann 4919105362
Migrate web apps to nix setup
Create dedicated xdg desktopEntries to start web apps.
Use chromium where necessary, e.g. due to audio / video experiences.

Start web apps with dedicated Firefox profiles.
Configure those profiles to hide any UI to have an actual app feeling.
2022-03-11 09:52:43 +01:00
Daniel Siepmann c8df55880c
Add firefox
Previously installed via apt
2022-03-10 17:15:56 +01:00
Daniel Siepmann 152e540dc1
Remove unused option to use xxdiff from git
I never used that feature, I always use less as pager and CLI context
for diffing.
2022-03-10 13:36:51 +01:00
Daniel Siepmann f901607929
Export screen instead of tmux as terminal env var 2022-03-09 10:50:34 +01:00
Daniel Siepmann be4bfa9bac
Add note to all tmux key bindings
This allows to see an info when listing all bindings.
See: https://github.com/nix-community/home-manager/issues/2540
2022-03-09 09:37:40 +01:00
Daniel Siepmann a62b3053a1
Fix broken LS_COLORS
A comment was part of the configuration.
The comment didn't make sense anyway and got removed to fix broken
coloring.
2022-03-07 09:22:06 +01:00
Daniel Siepmann a0832b3767
Add new Git alias
I use cherry-picks in one project and am to lazy to always wait for
auto completion.
2022-02-23 13:54:57 +01:00
Daniel Siepmann 00320b8a48
Use my own git diff setup
That one includes local base and remote at top.
It turns diffthis off for the merged result to have proper code
highlighting of result.
2022-02-21 13:39:22 +01:00
Daniel Siepmann 0f1959978b
Migrate JQ to use home-manager module 2022-02-14 16:06:43 +01:00
Daniel Siepmann 2cdb96acc6
Migrate TYPO3_ADDITIONAL_CONFIGURATION environment variable
This doesn't change and can be set global.
That allows nix shells to pick it up.
2022-02-14 08:03:47 +01:00
Daniel Siepmann 51fbae7d71
Move user / system specifics to .profile file instead of .zshrc
This ensures it is properly set on login.
Tools like dmenu and such are properly find when installed by nix.
This was not zsh specific anyway.
2022-02-11 11:35:34 +01:00
Daniel Siepmann a62943d0bb
Configure registry for customer projects
I created a private repository within `registries/customer-projects`.
This holds flakes.
The folder is registered as registry.

That allows to run the following from within a customer project:

    nix run cp\#reuter-phpstan

In order to execute the customer specific application from flake.
2022-02-11 10:03:01 +01:00
Daniel Siepmann e17ea91263
Remove grep alias
grep should behave as expected.
There is no official none deprecated way.
2022-02-11 08:48:38 +01:00
Daniel Siepmann 593a1ad7e2
Make use of cachix in order to fetch pre compiled phpcs packages
The phps used via flake for local development of legacy projects
distributed pre build packages via cachix.

Install cachix and add configuration to allow fetching of pre compiled
packages.
2022-02-10 20:38:16 +01:00
Daniel Siepmann 2ba1a01f2c
Migrate borg excludes and installation 2022-02-10 16:19:28 +01:00
Daniel Siepmann 4c095733d7
Remove node-version switcher script
My host does no longer provide any node or npm or yarn.
Project are partially migrated to shell.nix already.
I still need to migrate all projects. But I'm not working to much on
frontend and don't need to re compile assets to often, so no worries.

Some stuff will not work anymore, e.g. coc within neovim needs nodejs.
That's broken for now, but I don't care to much, not sure whether I used
it at all.

That will be part of neovim migration to home-manager / nix.
2022-02-09 21:16:13 +01:00
Daniel Siepmann b758d564ed
Fix broken tmux default shell
I don't understand the issue, I thought tmux would inspect env $SHELL.
Looks like it doesn't and use sh instead.
So we configure to use zsh instead.
2022-02-08 17:46:08 +01:00
Daniel Siepmann ce41d98ba3
Add keepassxs community version 2022-02-08 17:27:07 +01:00
Daniel Siepmann bb7203bf12
Allow experimental nix commands like flake 2022-02-07 21:11:25 +01:00
Daniel Siepmann 12be4eb1d3
Fix broken path to SHELL
The shell actually is within /bin/zsh instead.
2022-02-07 21:10:25 +01:00
Daniel Siepmann c372dacc8c
Migrate mailhog
Install via nix package.
Also configure with custom module, inspired by nix os module.
Bind hard to localhost, do not listen to outer world.
2022-02-07 19:26:50 +01:00
Daniel Siepmann 2ab2fb414a
Migrate zsh configuration
Use zsh with old configuration.
Ensure i3 will start st terminal with zsh from path (nix / home-manager)
instead of system shell (zsh by Ubuntu).
2022-02-07 14:07:31 +01:00
Daniel Siepmann 305a4089b5
Fix broken phpactor configuration option
The option itself contains a dot. Therefore wrap in double quotes.
2022-02-07 11:04:36 +01:00
Daniel Siepmann 940690646b
Migrate cmus configuration
This is now also maintained here.
It no longer starts with class and can't be detected by i3.
2022-02-07 10:19:04 +01:00
Daniel Siepmann b140b4b559
Migrate tig configuration 2022-02-07 09:43:48 +01:00
Daniel Siepmann d4c7a04a14
Migrate phpactor configuration 2022-02-07 09:41:26 +01:00
Daniel Siepmann 65c870484a
Adjust litecli configuration 2022-02-07 09:11:01 +01:00
Daniel Siepmann de7506d368
Migrate litecli configuration 2022-02-07 09:10:09 +01:00
Daniel Siepmann 1073beb30d
Migrate i3 configuration
Still manage i3 tools with apt (Ubuntu), see i3lock issue.

Also migrate existing `.config/` file to use `xdg.configFile` instead.
2022-02-07 08:45:08 +01:00
Daniel Siepmann 30015279ba
Document desktop entries for now
Do not create desktop item in file system, instead use proper xdg
configuration option. That way we do not need to hard code location of
file and can use a proper set with validation from module.
2022-02-07 08:03:43 +01:00
Daniel Siepmann 77f3038cde
Migrate languagetool setup to nix module
Define new module which provides the systemd service.
Do not clutter home.nix and do not use custom systemd/ folder.
2022-02-03 15:14:00 +01:00
Daniel Siepmann a3087e4259
Fix wrong sorting direction in htop 2022-02-03 14:47:12 +01:00
Daniel Siepmann c41a367660
Add cmus as own module with desktop file (not linked out of box) 2022-02-03 14:34:32 +01:00
Daniel Siepmann ea1d4136ca
Allow navigation and resize via vim keys (hjkl) 2022-02-03 12:37:53 +01:00
Daniel Siepmann 4ecb26bfed
Cleanup folder structure for services, systemd and configurations 2022-02-03 09:12:36 +01:00
Daniel Siepmann 654e91ab8b
Migrate tmux setup to home-manager 2022-02-03 09:10:22 +01:00
Daniel Siepmann 459169b9b8
Migrate htop configuration to home-manager
There is a module for htop, so use that one instead of home.file.
The cool thing is: It has "constants" for some strange integer values.
So nix version is actually readable while the generated config is
strange.

That's a cool pro of nix files.
2022-02-02 22:53:03 +01:00
Daniel Siepmann 12e5103903
Migrate silver-searcher setup to home-manager
Yeah the agignore is not that cool, but that's what I had.
Needs some polishing in future.
2022-02-02 22:25:13 +01:00
Daniel Siepmann e8e076d85f
Migrate universal-ctags setup to home-manager
As we add more and more files, move to set with curly braces.
Maybe home-files is a better approach, but not documented and I don't
understand it to well yet. I guess I've to create a derivation which
"builds" all the files. Maybe to complicated right now.

Might also make sense to build modules for such tools in future where I
can configure within nix, just like git.nix, and it will generate the
config. Might be cool for some things where configs might change, but
the actual things to configure might not. The generation of the file can
change within nix, while configuration within nix stays the same?! ;)
2022-02-02 22:19:55 +01:00
Daniel Siepmann 6a67e5df5d
Migrate git setup to home-manager
This was previously done through custom dotfiles.
2022-02-02 21:50:24 +01:00
Daniel Siepmann 1d843a2b68
Initially add .myclirc file 2022-02-02 21:02:07 +01:00
Daniel Siepmann a02f8c3341
Make languageserver service configurable
Do not hard code all values, instead configure them within home.nix.

This is more for learning purposes.
But port and allow might also be changed more frequently in general.
2022-02-02 20:38:24 +01:00
Daniel Siepmann fdbb403bce
Add systemd service for languagetool
home-manager doesn't provide a systemd service itself.
That's why we build one ourself.

That also revealed a change in our directory structure.
The structure is now documented within readme.
2022-02-02 18:17:06 +01:00
Daniel Siepmann b096d6b0db
Move service configuration to separate file
Do not clutter home.nix with endless configurations.
Instead move configuration per derivation to its own file and import.
2022-02-02 17:24:49 +01:00