Compare commits

...

5 Commits

2 changed files with 49 additions and 39 deletions

View File

@ -131,22 +131,19 @@ ENV XDG_CONFIG_HOME ${HOME}/.config
ENV XDG_DATA_HOME ${HOME}/.local/share ENV XDG_DATA_HOME ${HOME}/.local/share
ENV XDG_CACHE_HOME ${HOME}/.cache ENV XDG_CACHE_HOME ${HOME}/.cache
ENV STARSHIP_CONFIG ${XDG_CONFIG_HOME}/starship/config.toml ENV STARSHIP_CONFIG ${XDG_CONFIG_HOME}/starship/config.toml
ENV PATH ${LOCAL_BIN_HOME}:$PATH ENV CARGO_HOME ${XDG_DATA_HOME}/cargo
ENV RUSTUP_HOME ${XDG_DATA_HOME}/rustup
ENV PATH ${LOCAL_BIN_HOME}:${CARGO_HOME}/bin:$PATH
# command line utilities # command line utilities
RUN curl https://rtx.pub/install.sh | sh \ RUN curl https://rtx.pub/install.sh | sh \
&& curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash \ && curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash \
&& git clone https://github.com/tmux-plugins/tpm.git ${XDG_CONFIG_HOME}/tmux/plugins/tpm && git clone https://github.com/tmux-plugins/tpm.git ${XDG_CONFIG_HOME}/tmux/plugins/tpm \
&& curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y \
# git configuration && git clone https://git.sr.ht/~mpdehaan/jetporch ${LOCAL_SRC_HOME}/jetporch \
COPY ./patch/kickstart.nvim/updates.patch /tmp && cd ${LOCAL_SRC_HOME}/jetporch \
COPY ./config/nvim/lua/custom/plugins/init.lua /tmp && make \
RUN git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME}"/nvim \ && ln -s ${LOCAL_SRC_HOME}/jetporch/target/release/jetp ${LOCAL_BIN_HOME}/
&& cd ${XDG_CONFIG_HOME}/nvim \
&& git reset --hard 1915cea32e13fcb4191904de8f5e0252ad050a6e \
&& git apply /tmp/updates.patch \
&& cp /tmp/init.lua ${XDG_CONFIG_HOME}/nvim/lua/custom/plugins \
&& nvim --headless "+Lazy! sync" +qa
# configure fish and bash # configure fish and bash
RUN fish -c true \ RUN fish -c true \
@ -158,25 +155,6 @@ RUN fish -c true \
&& echo 'alias ll="l -Fahl"' >> ${XDG_CONFIG_HOME}/fish/config.fish \ && echo 'alias ll="l -Fahl"' >> ${XDG_CONFIG_HOME}/fish/config.fish \
&& echo 'alias la="l -a"' >> ${XDG_CONFIG_HOME}/fish/config.fish && echo 'alias la="l -a"' >> ${XDG_CONFIG_HOME}/fish/config.fish
# configure git
ARG GIT_USER_EMAIL
ARG GIT_USER_NAME
RUN git config --global user.email "${GIT_USER_EMAIL}" \
&& git config --global user.name "${GIT_USER_NAME}" \
&& git config --global core.editor nvim
# install rtx plugins
RUN ${XDG_DATA_HOME}/rtx/bin/rtx plugins install \
awscli \
elixir \
erlang \
helm \
kubectl \
lefthook \
poetry \
terraform \
tilt
# NOTE (jpd): the section below exists mainly to handle a project running elixir 1.11. # NOTE (jpd): the section below exists mainly to handle a project running elixir 1.11.
# It allows the usage of openssl 1.1 and a compatible elixir-ls. # It allows the usage of openssl 1.1 and a compatible elixir-ls.
@ -207,3 +185,32 @@ RUN git clone https://github.com/elixir-lsp/elixir-ls.git ${LOCAL_SRC_HOME}/elix
&& cd ${LOCAL_SRC_HOME}/elixir-ls/v0.14.6 \ && cd ${LOCAL_SRC_HOME}/elixir-ls/v0.14.6 \
&& git checkout tags/v0.14.6 \ && git checkout tags/v0.14.6 \
&& cp .release-tool-versions .tool-versions && cp .release-tool-versions .tool-versions
# git configuration
COPY ./patch/kickstart.nvim/updates.patch /tmp
COPY ./config/nvim/lua/custom/plugins/init.lua /tmp
RUN git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME}"/nvim \
&& cd ${XDG_CONFIG_HOME}/nvim \
&& git reset --hard 4d0dc8d4b1bd6b94e59f7773158149bb1b0ee5be \
&& git apply /tmp/updates.patch \
&& cp /tmp/init.lua ${XDG_CONFIG_HOME}/nvim/lua/custom/plugins \
&& nvim --headless "+Lazy! sync" +qa
# install rtx plugins
RUN ${XDG_DATA_HOME}/rtx/bin/rtx plugins install \
awscli \
elixir \
erlang \
helm \
kubectl \
lefthook \
poetry \
terraform \
tilt
# configure git
ARG GIT_USER_EMAIL
ARG GIT_USER_NAME
RUN git config --global user.email "${GIT_USER_EMAIL}" \
&& git config --global user.name "${GIT_USER_NAME}" \
&& git config --global core.editor nvim

View File

@ -1,8 +1,10 @@
:100644 100644 7e68de6 0000000 M init.lua
diff --git a/init.lua b/init.lua diff --git a/init.lua b/init.lua
index 3a98da0..e8c5b7d 100644 index 7e68de6..f886b8a 100644
--- a/init.lua --- a/init.lua
+++ b/init.lua +++ b/init.lua
@@ -229,7 +229,7 @@ require('lazy').setup({ @@ -266,7 +266,7 @@ require('lazy').setup({
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going. -- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
-- --
-- For additional information see: https://github.com/folke/lazy.nvim#-structuring-your-plugins -- For additional information see: https://github.com/folke/lazy.nvim#-structuring-your-plugins
@ -11,7 +13,7 @@ index 3a98da0..e8c5b7d 100644
}, {}) }, {})
-- [[ Setting options ]] -- [[ Setting options ]]
@@ -239,11 +239,12 @@ require('lazy').setup({ @@ -276,11 +276,12 @@ require('lazy').setup({
-- Set highlight on search -- Set highlight on search
vim.o.hlsearch = false vim.o.hlsearch = false
@ -27,7 +29,7 @@ index 3a98da0..e8c5b7d 100644
-- Sync clipboard between OS and Neovim. -- Sync clipboard between OS and Neovim.
-- Remove this option if you want your OS clipboard to remain independent. -- Remove this option if you want your OS clipboard to remain independent.
@@ -273,6 +274,14 @@ vim.o.completeopt = 'menuone,noselect' @@ -310,6 +311,14 @@ vim.o.completeopt = 'menuone,noselect'
-- NOTE: You should make sure your terminal supports this -- NOTE: You should make sure your terminal supports this
vim.o.termguicolors = true vim.o.termguicolors = true
@ -42,7 +44,7 @@ index 3a98da0..e8c5b7d 100644
-- [[ Basic Keymaps ]] -- [[ Basic Keymaps ]]
-- Keymaps for better default experience -- Keymaps for better default experience
@@ -378,11 +387,33 @@ vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc = @@ -423,11 +432,33 @@ vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc =
vim.defer_fn(function() vim.defer_fn(function()
require('nvim-treesitter.configs').setup { require('nvim-treesitter.configs').setup {
-- Add languages to be installed here that you want installed for treesitter -- Add languages to be installed here that you want installed for treesitter
@ -79,7 +81,7 @@ index 3a98da0..e8c5b7d 100644
highlight = { enable = true }, highlight = { enable = true },
indent = { enable = true }, indent = { enable = true },
incremental_selection = { incremental_selection = {
@@ -511,19 +542,24 @@ require('mason-lspconfig').setup() @@ -563,13 +594,16 @@ require('mason-lspconfig').setup()
-- If you want to override the default filetypes that your language server will attach to you can -- If you want to override the default filetypes that your language server will attach to you can
-- define the property 'filetypes' to the map in question. -- define the property 'filetypes' to the map in question.
local servers = { local servers = {
@ -103,7 +105,8 @@ index 3a98da0..e8c5b7d 100644
lua_ls = { lua_ls = {
Lua = { Lua = {
workspace = { checkThirdParty = false }, workspace = { checkThirdParty = false },
telemetry = { enable = false }, @@ -578,6 +612,8 @@ local servers = {
-- diagnostics = { disable = { 'missing-fields' } },
}, },
}, },
+ pyright = {}, + pyright = {},
@ -111,7 +114,7 @@ index 3a98da0..e8c5b7d 100644
} }
-- Setup neovim lua configuration -- Setup neovim lua configuration
@@ -542,12 +578,23 @@ mason_lspconfig.setup { @@ -596,12 +632,23 @@ mason_lspconfig.setup {
mason_lspconfig.setup_handlers { mason_lspconfig.setup_handlers {
function(server_name) function(server_name)