Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Just a Question #36

Open
daxgames opened this issue Dec 8, 2023 · 3 comments
Open

Just a Question #36

daxgames opened this issue Dec 8, 2023 · 3 comments

Comments

@daxgames
Copy link

daxgames commented Dec 8, 2023

@lfilho I am getting back to trying out your fork of skwp/dotfiles via my own fork of your work. I am looking at it more critically and that has generated some questions.

You seem to be using this repo as more of an all encompassing workstation setup vs. terminal configuration framework like skwp/dotfiles.

Would that be a fair assessment?

I ask this because the Brewfile seems to install A LOT of stuff that is not terminal related, or is the extra software somehow used by the nvim plugins.

It really does more than I want and was wondering if I remove most of the stuff from the Brewfile in my fork if I was going to break a bunch of stuff.

If I chose to modify the Brewfile and continued to use it on both MacOS and Linux what would be the bare minimum Brewfile without breaking things?

brew 'bat'
brew 'ctags'
brew 'neovim'
brew 'tmux'
brew 'zsh'

I included tmux above because I compile it on Linux and do not use the native package anyway.

I was even looking at the possibility of reverting to not even using brew unless it was on MacOS and leaving the Brewfile alone since I install most of that stuff on MacOS using brew already. I would probably just create a function in the Rakefile to install the nvim requirements if the OS were Linux.

I don't know, it just seems odd to me to use Homebrew on Linux instead of the native package managers that are already there. I'm not sure how I feel about how it creates a whole separate filesystem tree with stuff it installs and that I can end up with Firefox from both native package manager and Homebrew.

Am I over thinking this?

@lfilho
Copy link
Owner

lfilho commented Dec 9, 2023

Hi @daxgames you are correct. I install more things than just vim stuff. They're most terminal related but not nvim related.

A reason for using brew on linux is it being agnostic of which flavor or linux you have and also working with macos, so it's less work to maintain it here, and i will work if you use arch, debian, or whatever ;)

Also, brew tends to keep packages more up to date than official packages from, say, Ubuntu.

I install this dotfiles first thing when installing a new system, so my Firefox will usually be the one from Brew and I won't install it from any other source anyway, so I don't have that problem you mentioned.

Hope that helped

@daxgames
Copy link
Author

daxgames commented Dec 9, 2023

Yeah I was aware of the more current versions provided by Homebrew. I am not always in full control of the machines I work with so the included Brewfile can be installing duplicate stuff.

@daxgames
Copy link
Author

Unfortunately I am also forced to work with WSL v1 in SOME CASES and it does not play nice with Homebrew.

I have jumped in with both feet and created a combined fork of skwp/dotfiles and lfilho/dotfiles that does both vim and neovim for those of us just playing with the idea of switching from vim to neovim.

Differences from lfilho/dotfiles and skwp/dotfiles:

  • Includes everything from skwp/dotfiles and lfilho/dotfiles
    • Some Aliases, Colors, and key bindings favor Skwp since that is where I am coming from.
    • vim config and plugins are from skwp/dotfiles
    • neovim config and plugins are from lfilho/dotfiles with my modifications.
      • Native LSP via Mason instead of CoC. Because I am learning and wanted to play.

      • Using lua to configure the below NEW plugins.

         " .yadr/nvim/plugins/neovim.vim
         " =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
         " neovim only plugins
         " =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
         Plug 'nvim-lua/plenary.nvim'
         Plug 'nvim-telescope/telescope.nvim', { 'branch': '0.1.x' }
         Plug 'nvim-telescope/telescope-ui-select.nvim'
         Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
         Plug 'nvim-tree/nvim-web-devicons'  " Replaces NERDTree.
         Plug 'MunifTanjim/nui.nvim'
         Plug '3rd/image.nvim'
         Plug 'nvim-neo-tree/neo-tree.nvim'
         Plug 'NvChad/nvterm' " - `,h|,v` Horizontal/Vertical Terminal in NeoVim
        
         " =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
         " LSP Config - Neovim only
         " =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
         Plug 'williamboman/mason.nvim' "Easily install and manage LSP servers, DAP servers, linters, and formatters.
         Plug 'williamboman/mason-lspconfig.nvim'
         Plug 'neovim/nvim-lspconfig'
         Plug 'nvimtools/none-ls.nvim'
         " =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
        
  • Rakefile
    • Automatic Neovim Plugin Install.
    • Only use Homebrew on MacOS.
      • install_from_github Rakefile function to include bits required for your fork on linux.
        • Currently installs nvim, bat, delta, rg in Linux
    • Limited bash functionality if someone does not want to or can't use zsh.
      • ~/.bash.before
      • ~/.bash.after
      • Git Configs
      • Vim and Neovim configs.
    • Conditional install/cfg via Rake based on Environment variables(Default: y):
      • __YADR_INSTALL_ZSH=y|n Installs prezto and zsh.
      • __YADR_INSTALL_BASH=y|n Installs Bash enhancements.
      • __YADR_INSTALL_GIT=y|n Installs Git Customizations.
      • __YADR_INSTALL_IRB=y|n Installs IRP/Pry Customizations.
      • __YADR_INSTALL_RUBYGEMS=y|n Installs RubyGems Config.
      • __YADR_INSTALL_CTAGS=y|n Installs ctags config.
      • __YADR_INSTALL_tmux=y|n Installs tmux configs.
      • __YADR_INSTALL_vimify=y|n Installs vimification of command line tools.
    • Automatic Linking of user overrides/additions if they exist.
      • $HOME/.vimrc.before to $HOME/.config/nvim/settings/before/000-userconfig-vimrc.before.vim
      • $HOME/.vimrc.after $HOME/.config/nvim/settings/after/zzz-userconfig-vimrc.after.vim

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants