{"id":20358644,"url":"https://github.com/cvusmo/linuxunrealbuildtool.nvim","last_synced_at":"2025-06-15T07:02:50.922Z","repository":{"id":243249456,"uuid":"811906455","full_name":"cvusmo/LinuxUnrealBuildTool.nvim","owner":"cvusmo","description":"Linux Unreal Build Tool is a work in progress aimed at enhancing the Unreal Engine development experience on Linux through integration with Neovim. The plugin offers a simple yet powerful set of commands to streamline common tasks:","archived":false,"fork":false,"pushed_at":"2024-06-13T14:21:47.000Z","size":95,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-15T07:02:26.375Z","etag":null,"topics":["neovim-plugin","neovim-plugins"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cvusmo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-07T14:37:33.000Z","updated_at":"2025-03-12T17:13:55.000Z","dependencies_parsed_at":"2024-11-14T23:28:27.750Z","dependency_job_id":"1ff5000f-4c5e-41cc-8668-1f18506f99ef","html_url":"https://github.com/cvusmo/LinuxUnrealBuildTool.nvim","commit_stats":null,"previous_names":["cvusmo/linuxunrealbuildtool.nvim"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/cvusmo/LinuxUnrealBuildTool.nvim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvusmo%2FLinuxUnrealBuildTool.nvim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvusmo%2FLinuxUnrealBuildTool.nvim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvusmo%2FLinuxUnrealBuildTool.nvim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvusmo%2FLinuxUnrealBuildTool.nvim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cvusmo","download_url":"https://codeload.github.com/cvusmo/LinuxUnrealBuildTool.nvim/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvusmo%2FLinuxUnrealBuildTool.nvim/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259935562,"owners_count":22934382,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["neovim-plugin","neovim-plugins"],"created_at":"2024-11-14T23:28:07.615Z","updated_at":"2025-06-15T07:02:50.871Z","avatar_url":"https://github.com/cvusmo.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LinuxUnrealBuildTool\n\n\u003ca href=\"https://dotfyle.com/blacksheepcosmo/linuxunrealbuildtoolnvim-lua-linuxunrealbuildtool\"\u003e\u003cimg src=\"https://dotfyle.com/blacksheepcosmo/linuxunrealbuildtoolnvim-lua-linuxunrealbuildtool/badges/plugins?style=flat\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://dotfyle.com/blacksheepcosmo/linuxunrealbuildtoolnvim-lua-linuxunrealbuildtool\"\u003e\u003cimg src=\"https://dotfyle.com/blacksheepcosmo/linuxunrealbuildtoolnvim-lua-linuxunrealbuildtool/badges/leaderkey?style=flat\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://dotfyle.com/blacksheepcosmo/linuxunrealbuildtoolnvim-lua-linuxunrealbuildtool\"\u003e\u003cimg src=\"https://dotfyle.com/blacksheepcosmo/linuxunrealbuildtoolnvim-lua-linuxunrealbuildtool/badges/plugin-manager?style=flat\" /\u003e\u003c/a\u003e\n\nLinux Unreal Build Tool is a work in progress aimed at enhancing the Unreal Engine development experience on Linux, specifically integrated with Neovim. The plugin offers a simple yet powerful set of commands to streamline common tasks:\n\n### Features:\n\n## Project Tasks\n\n- [x] **Clean:** Remove previous build artifacts to ensure a fresh start.\n- [x] **Build:** Compile your project efficiently.\n- [x] **Rebuild:** Clean and build your project in one step.\n- [ ] **Run:** Run your Unreal Project file (*.uproject) \n- [ ] **Create New Blank C++ Projects:** Quickly set up new C++ projects.\n- [ ] **Install Plugins:** Easily manage and install plugins.\n### Usage\n\nAll functionalities are accessible via commands in Neovim, making it an ideal tool for developers who prefer a terminal-based workflow.\n\nLazyvim:\n```\nreturn {\n  {\n    \"cvusmo/LinuxUnrealBuildTool.nvim\",\n    event = \"VeryLazy\",\n    config = function()\n      require('linuxunrealbuildtool').setup({\n        project_path = \"/home/bob/path/to/project\",\n        unreal_engine_path = \"/home/bob/path/to/unrealengine\"\n      })\n    end,\n  },\n}\n```\n\n### Navigation:\n\n- [Section ᴎ - Before you begin](#section-ᴎ)\n- [Section I - Build from Source](#section-i)\n- [Section II - Neovim Integration](#section-ii)\n- [Section III](#section-iii)\n\n## Section ᴎ \n\nThis guide is designed to be simple and easy to follow. I would recommend reading each section before you execute any commands. If you don't know what a command does, look at the wiki, ask google, ask a friend, or chatgpt. I'm not responsible if you enter a command and it deletes something. \n\n### Contributing\n\nWith that out of the way, I'm moving away from IDE's and wanting to develop with neovim. Part of that is creating plugins like this to help make things a bit easier. If you encounter issues or need to install these dependencies on another distribution, or to contribute to the plugin, open an issue:\n\n- Navigate to https://www.github.com/cvusmo/linuxunrealbuildtool.nvim\n- Click on the \"Issues\" tab.\n- Click \"New issue\".\n- Fill in the title and provide any relevant information or questions.\n- Click \"Submit new issue\".\n\n### Dependencies:\n\n```\ngit base-devel clang cmake ispc dotnet-runtime-6.0 neovim bear\n```\n\nArch:\n```\nsudo pacman -S git base-devel clang cmake ispc dotnet-runtime-6.0 \n```\n\nDebian/Ubuntu:\n```\nsudo apt update\nsudo apt install git build-essential clang cmake ispc dotnet-runtime-6.0\n```\n\nFedora:\n```\nsudo dnf install git @development-tools clang cmake ispc dotnet-runtime-6.0\n```\n\nopenSUSE:\n```\nsudo zypper install git gcc gcc-c++ make automake cmake clang ispc dotnet-runtime-6.0\n```\n\n## Section I \nBuilding Unreal Engine from Source for Linux. \nSkip this section if you already have built Unreal Engine from source.\n\nBefore you follow Section I instructions, please follow the guide from Epic Games on how to get access to Unreal Engine source code:\n[Unreal Engine 5.4 Documentation - How to download source code](https://dev.epicgames.com/documentation/en-us/unreal-engine/downloading-unreal-engine-source-code?application_version=5.4)\n\n1a. check for existing ssh key\n```\nls -al ~/.ssh\n```\n\n1b. if you don't have an ssh key, generate a new ssh key pair\n```\nssh-keygen -t rsa -b 4096 -C \"your-email@exmaple.com\"\n```\n\n```\ngit config --global user.name \"Your Name\"\ngit config --global user.email \"your_email@example.com\"\n```\n\n1c. add ssh key to ssh agent\n\nbash or zsh\n```\neval \"$(ssh-agent -s)\"\nssh-add ~/.ssh/id_rsa\n```\n\nfish\n```\neval (ssh-agent -c)\nssh-add ~/.ssh/id_rsa\n```\n\n1d. add ssh key to github account\n\ncopy ssh key to clipboard using xclip\n```\nsudo pacman -S xclip\ncat ~/.ssh/id_rsa.pub | xclip -selection clipboard\n```\n\nor\n\nmanually copy the key\n\n```\ncat ~/.ssh/id_rsa.pub\n```\n\n1e. add ssh keys to github account\n\n```\n- Log in to your GitHub account.\n- Go to **Settings**.\n- In the left sidebar, click **SSH and GPG keys**.\n- Click **New SSH key**.\n- Paste your SSH key into the \"Key\" field.\n- Click **Add SSH key**.\n```\n\n1f. verify ssh connection\n\n```\nssh -T git@github.com\n```\n\nsuccess \n```\nHi username! You've successfully authenticated, but GitHub does not provide shell access.\n```\n\n2a. clone repo from github for Unreal Engine 5.4\n\nautomated:\n\n```\ncd /path/to/where/you/want/to/install/UnrealEngine\n./SourceBuild.sh\n```\n\nexample:\n```\ncd /home/echo/Build/\n./SourceBuild.sh\n```\n\nmanually:\n\nbash or zsh\n```\ngit clone -b 5.4 git@github.com:EpicGames/UnrealEngine \u0026\u0026 cd UnrealEngine\n```\n\nfish\n```\ngit clone -b 5.4 git@github.com:EpicGames/UnrealEngine; and cd UnrealEngine\n```\n\n2b. build unreal engine from source\n\n```\n./Setup.sh\n./GenerateProjectFiles.sh\nmake -j1\n```\n\nBuild error: \"Unable to read module manifest\" \n```\n./Engine/Build/BatchFiles/Linux/Build.sh UnrealEditor Linux Development -clean\n./Engine/Build/BatchFiles/Linux/Build.sh UnrealEditor Linux Development\n```\n\n3a. create blank C++ project\n\n```\ncd /home/$USER/PATH/TO/HERE/UnrealEngine/Engine/Binaries/Linux\n./UnrealEditor\n```\n## Section II \nNeovim Integration\n\n## Commands\n\n| Command                | Description                      | Arguments       |\n| ---------------------- | -------------------------------- | --------------- |\n| `:LUBT Clean`          | Cleans the project               | `\u003cProjectName\u003e` |\n| `:LUBT Build`          | Builds the project               | `\u003cProjectName\u003e` |\n| `:LUBT Rebuild`        | Rebuilds the project             | `\u003cProjectName\u003e` |\n| `:LUBT Run`            | Runs the project                 | `\u003cProjectName\u003e` |\n| `:LUBT CreateProject`  | Creates a new project            | `\u003cProjectName\u003e` |\n| `:LUBT InstallPlugins` | Installs plugins for the project | `\u003cProjectName\u003e` |\n| `:LUBT Help`           | Shows the help message           | None            |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcvusmo%2Flinuxunrealbuildtool.nvim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcvusmo%2Flinuxunrealbuildtool.nvim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcvusmo%2Flinuxunrealbuildtool.nvim/lists"}