From a7d54a2a26645000237e9bbaa23708766da641c1 Mon Sep 17 00:00:00 2001 From: DarkMatter-999 Date: Sun, 27 Aug 2023 10:40:30 +0530 Subject: [PATCH 1/2] Added support for MINGW neovim install on Windows hosts --- lua/presence/init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lua/presence/init.lua b/lua/presence/init.lua index 1d2aefe..c3b31c1 100644 --- a/lua/presence/init.lua +++ b/lua/presence/init.lua @@ -181,7 +181,7 @@ end -- Normalize the OS name from uname function Presence.get_os_name(uname) - if uname.sysname:find("Windows") then + if uname.sysname:find("Windows") or uname.sysname:find("MINGW") then return "windows" elseif uname.sysname:find("Darwin") then return "macos" From f1f0a10b02c1a7eb95c1e33181127fa388134689 Mon Sep 17 00:00:00 2001 From: DarkMatter-999 Date: Sat, 11 Nov 2023 10:54:13 +0530 Subject: [PATCH 2/2] Added better Support for MinGW nvim --- lua/presence/init.lua | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/lua/presence/init.lua b/lua/presence/init.lua index c3b31c1..afb0150 100644 --- a/lua/presence/init.lua +++ b/lua/presence/init.lua @@ -92,6 +92,11 @@ function Presence:setup(...) local separator = package.config:sub(1,1) local wsl_distro_name = os.getenv("WSL_DISTRO_NAME") local os_name = self.get_os_name(uname) + + if os_name == "mingw" then + separator = "/" + end + self.os = { name = os_name, is_wsl = uname.release:lower():find("microsoft") ~= nil, @@ -181,12 +186,14 @@ end -- Normalize the OS name from uname function Presence.get_os_name(uname) - if uname.sysname:find("Windows") or uname.sysname:find("MINGW") then + if uname.sysname:find("Windows") then return "windows" elseif uname.sysname:find("Darwin") then return "macos" elseif uname.sysname:find("Linux") then return "linux" + elseif uname.sysname:find("MINGW") then + return "mingw" end return "unknown" @@ -370,7 +377,7 @@ function Presence:get_discord_socket_path() if self.os.is_wsl then -- Use socket created by relay for WSL sock_path = "/var/run/"..sock_name - elseif self.os.name == "windows" then + elseif self.os.name == "windows" or self.os.name == "mingw" then -- Use named pipe in NPFS for Windows sock_path = [[\\.\pipe\]]..sock_name elseif self.os.name == "macos" then @@ -441,7 +448,7 @@ function Presence:get_project_name(file_path) end -- Since git always uses forward slashes, replace with backslash in Windows - if self.os.name == "windows" then + if self.os.name == "windows" or self.os.name == "mingw" then project_path = project_path:gsub("/", [[\]]) end @@ -517,7 +524,7 @@ function Presence:get_nvim_socket_paths(on_done) "-c", shell_cmd, } - elseif self.os.name == "windows" then + elseif self.os.name == "windows" or self.os.name == "mingw" then cmd = { "powershell.exe", "-Command",