@Neko-san How to rebuild ? The @upstream in git fetch --depth=1 origin tag @{upstream}
is not working.
Search Criteria
Package Details: unreal-engine 5.5.0-0
Package Actions
Git Clone URL: | https://aur.archlinux.org/unreal-engine.git (read-only, click to copy) |
---|---|
Package Base: | unreal-engine |
Description: | A 3D game engine by Epic Games which can be used non-commercially for free. |
Upstream URL: | https://www.unrealengine.com/ |
Keywords: | 3D engine game ue5 Unreal |
Licenses: | GPL3, custom:UnrealEngine |
Submitter: | acerix |
Maintainer: | Shatur (Neko-san) |
Last Packager: | Neko-san |
Votes: | 76 |
Popularity: | 0.97 |
First Submitted: | 2016-05-01 18:37 (UTC) |
Last Updated: | 2024-11-16 03:10 (UTC) |
Dependencies (29)
- coreutils (coreutils-gitAUR, busybox-coreutilsAUR, coreutils-hybrid-gitAUR, coreutils-selinuxAUR, coreutils-uutilsAUR, coreutils-hybridAUR)
- dos2unix (dos2unix-gitAUR)
- dotnet-runtime (dotnet-runtime-2.2AUR, dotnet-runtime-3.0AUR, dotnet-runtime-2.1AUR, dotnet-runtime-5.0-binAUR, dotnet-runtime-7.0-binAUR, dotnet-runtime-6.0-binAUR, dotnet-runtime-preview-binAUR, dotnet-runtime-binAUR, dotnet-runtime-8.0-binAUR)
- dotnet-sdk (dotnet-sdk-2.2AUR, dotnet-sdk-2.2-vs2017AUR, dotnet-sdk-3.0AUR, dotnet-sdk-2.1AUR, dotnet-sdk-5.0-binAUR, dotnet-sdk-6.0.110-binAUR, dotnet-sdk-7.0-binAUR, dotnet-sdk-8.0.300-binAUR, dotnet-sdk-6.0-binAUR, dotnet-sdk-preview-binAUR, dotnet-sdk-binAUR, dotnet-sdk-8.0-binAUR)
- findutils (findutils-gitAUR, busybox-coreutilsAUR, findutils-selinuxAUR)
- icu63AUR
- lld (llvm-rocm-gitAUR, llvm-gitAUR)
- openssl (openssl-gitAUR, openssl-staticAUR)
- python (python37AUR, python311AUR, python310AUR)
- sdl2 (sdl2-gitAUR, sdl2-compat-gitAUR)
- steam
- vulkan-icd-loader (vulkan-icd-loader-gitAUR)
- xdg-user-dirs
- git (git-gitAUR, git-glAUR) (make)
- glibc (glibc-gitAUR, glibc-linux4AUR, glibc-eacAUR, glibc-eac-binAUR, glibc-eac-rocoAUR) (make)
- grep (grep-gitAUR, busybox-coreutilsAUR, grep-compatAUR) (make)
- openssh (openssh-gitAUR, openssh-dotconfigAUR, openssh-dotconfig-binAUR, openssh-selinuxAUR, openssh-hpn-shimAUR, openssh-gssapiAUR) (make)
- sed (busybox-coreutilsAUR, sed-gitAUR) (make)
- wget (wget-gitAUR, wurlAUR) (make)
- clionAUR (optional) – IDE for projects
- Show 9 more dependencies...
Required by (1)
Sources (6)
Latest Comments
« First ‹ Previous 1 .. 24 25 26 27 28 29 30 31 32 33 34 .. 81 Next › Last »
Galaxy commented on 2022-01-18 04:27 (UTC)
Paul4936 commented on 2022-01-11 16:50 (UTC)
@zerophase Maybe it is better to keep this outdated package(in case if someone will strive for UE4) and create a new one for UE5?
ruestique commented on 2022-01-11 16:14 (UTC)
hey @Neko-san - consider to create 5.0 aur package ;)
Neko-san commented on 2022-01-09 03:01 (UTC)
I updated the PKGBUILD below again to a branch of UE5 that's more stable.
Neko-san commented on 2021-12-24 07:50 (UTC)
Fixed; read the post for more info
lehthanis commented on 2021-12-24 04:56 (UTC)
@Neko-san I tried your UE5 PKGBUILD and I can't get it to work...I'd really like to get this working on Arch...any suggestions? It's currently giving me a not found error for https://github.com/EpicGames/UnrealEngine/tree/5.0.0-early-access-2.git
I tried replacing it with https://github.com/EpicGames/UnrealEngine/tree/ue5-early-access.git but same error.
Neko-san commented on 2021-12-08 10:18 (UTC) (edited on 2022-01-09 03:00 (UTC) by Neko-san)
For anyone who wants to try using UE5, I have a version of the PKGBUILD here that you can use.
Just don't expect the ccache
or system mono
patches to work because, in my experience, the mono
one specifically just breaks the build process.
EDIT: I edited the PKGBUILD to target UE5-main instead since targeting Early Access 2 with git is a pain. This should resolve issues with not being able to clone the repo.
Side note: The Clang patch isn't needed anymore, for UE5; UE5 can detect its needed toolchain for Linux properly now (unless someone at Epic decides to mess that code up in the future).
Another note: if you build in a chroot, don't, unless you know how to work with them well. Contacting github for permission for access to the repo doesn't work properly in a chroot and attempting to do so will give you headaches and wasted hours.
# Maintainer: Dylan Ferris <dylan@psilly.com>
# Maintainer: Michael Lojkovic <mikelojkovic@gmail.com>
# Maintainer: Shatur95 <genaloner@gmail.com>
# Updated for UE5 by Neko-san <nekoNexus at protonmail dot ch>
# The source is about 200 MiB, with an extra ~11 GiB of dependencies downloaded in Setup.sh, and may take several hours to compile.
# If you want to turn on additional patches there are switches below.
pkgname=unreal-engine
pkgver=5.0
pkgrel=1
pkgdesc='A 3D game engine by Epic Games which can be used non-commercially for free.'
arch=(x86_64 x86_64_v3)
url=https://www.unrealengine.com/
makedepends=(git openssh)
depends=(icu sdl2 python lld xdg-user-dirs dos2unix)
optdepends=('qt5-base: qmake build system for projects'
'cmake: build system for projects'
'qtcreator: IDE for projects'
'codelite: IDE for projects'
'kdevelop: IDE for projects'
'clion: IDE for projects')
license=(custom:UnrealEngine)
source=(com.unrealengine.UE4Editor.desktop
ccache_executor.patch
stop_mono_clone.patch)
sha256sums=('15e9f9d8dc8bd8513f6a5eca990e2aab21fd38724ad57d213b06a6610a951d58'
'33982486f7fafac35a33dfa37c85cfba8543aa78b5fe13c395d9cccf691ef4b3'
'aa9eb83c9f58c539d3cd43e919a4ebd6714c0aa2d32eb9b320049cf04dd01587')
# Not sure if compiling Unreal with LTO is legal? Lot's of different proprietary software goes into Unreal
options=(!strip staticlibs !lto) # Package is 3 Gib smaller with "strip" but it takes a long time and generates many warnings
#PACMAN_AUTH=(doas)
## Patches probably don't work for this build
#_ccache_support=false # Patches for ccache. More optimizations might be needed.
#_system_mono=false # Uses System mono for unreal. Must set UE_USE_SYSTEM_MONO in your environment for it to work after install.
_install_dir="opt/$pkgname" # Default engine installation directory. Can be useful if you do not have a lot of space in /opt directory.
if [[ $_ccache_support == true ]]
then
depends+=(ccache)
fi
if [[ $_system_mono == true ]]
then
depends+=(mono mono-msbuild)
fi
prepare() {
# Check access to the repository
if ! git ls-remote git@github.com:EpicGames/UnrealEngine &>/dev/null
then
error 'You must register at unrealengine.com and link your github account to access this private repo. See the wiki for more info: https://wiki.archlinux.org/index.php/Unreal_Engine_4'
exit 1
fi
# Download Unreal Engine source or update if the folder exists
if [[ ! -d $pkgname ]]
then
git clone --depth=1 --branch=5.0 git@github.com:EpicGames/UnrealEngine $pkgname
cd $pkgname
else
cd $pkgname
rm -f .git/index.lock
git fetch --depth=1 origin tag @{upstream}
git reset --hard @{upstream}
fi
# Apply custom patches
#patch -p1 -i "$srcdir/clang_path_fix.patch" # Replace Windows specific search with the correct path (used for -mode=GenerateClangDatabase in UBT)
if [[ $_system_mono == true ]]
then
export UE_USE_SYSTEM_MONO=1
patch -p1 -i "$srcdir/stop_mono_clone.patch"
fi
if [[ $_ccache_support == true ]]
then
patch -p1 -i "$srcdir/ccache_executor.patch"
fi
# Qt Creator source code access
if [[ ! -d Engine/Plugins/Developer/QtCreatorSourceCodeAccess ]]
then
git -C Engine/Plugins/Developer clone --depth=1 git@github.com:fire/QtCreatorSourceCodeAccess
fi
# For some reason, despite this file explicitly asking not to be removed, it was removed from the UE5 source; it has to be re-added or the build will fail
if [[ ! -f $pkgname/Engine/Source/ThirdParty/Linux/HaveLinuxDependencies ]]
then
mkdir -p $pkgname/Engine/Source/ThirdParty/Linux/
touch $pkgname/Engine/Source/ThirdParty/Linux/HaveLinuxDependencies
sed -i "1c\This file must have no extension so that GitDeps considers it a binary dependency - it will only be pulled by the Setup script if Linux is enabled. Please do not remove this file." $pkgname/Engine/Source/ThirdParty/Linux/HaveLinuxDependencies
fi
./Setup.sh
}
build() {
cd $pkgname
Engine/Build/BatchFiles/RunUAT.sh BuildGraph -target="Make Installed Build Linux" -script=Engine/Build/InstalledEngineBuild.xml -set:WithDDC=false -set:HostPlatformOnly=true
}
package() {
# Desktop entry
if [[ "$_install_dir" != "opt/$pkgname" ]] # Set new path if dir changed
then
if [[ -f com.unrealengine.UE4Editor.desktop ]]
then
sed -i "5c\Path=/$_install_dir/Engine/Binaries/Linux/" com.unrealengine.UE4Editor.desktop
sed -i "6c\Exec=/$_install_dir/Engine/Binaries/Linux/UnrealEditor %F" com.unrealengine.UE4Editor.desktop
sed -i 's/Unreal Engine 4 Editor/Unreal Engine 5 Editor/g' com.unrealengine.UE4Editor.desktop
sed -i 's/Icon=ue4editor/Icon=ue5editor/g' com.unrealengine.UE4Editor.desktop
mv com.unrealengine.UE4Editor.desktop com.unrealengine.UE5Editor.desktop
install -Dm775 com.unrealengine.UE5Editor.desktop "$pkgdir/usr/share/applications/com.unrealengine.UE5Editor.desktop"
else
install -Dm775 com.unrealengine.UE5Editor.desktop "$pkgdir/usr/share/applications/com.unrealengine.UE5Editor.desktop"
fi
fi
cd $pkgname
# Icon for Desktop entry
install -Dm770 Engine/Source/Programs/UnrealVS/UnrealVS.2022/Resources/Preview.png "$pkgdir/usr/share/pixmaps/ue5editor.png"
# License
install -Dm770 LICENSE.md "$pkgdir/usr/share/licenses/UnrealEngine/LICENSE.md"
# Engine
install -dm770 "$pkgdir/$_install_dir/Engine"
mv LocalBuilds/Engine/Linux/* "$pkgdir/$_install_dir"
}
12eason commented on 2021-11-08 13:03 (UTC)
This package is basically broken and unmaintained at the moment.
shuriken commented on 2021-10-28 22:18 (UTC) (edited on 2021-10-28 22:19 (UTC) by shuriken)
4.27.1 is out and appart from ccache executor patch everything else works, If anyone wants to use the patches all the other patches are working as expected. Simply change the pkgver to the desired branch version.
Pinned Comments
Neko-san commented on 2022-11-01 02:32 (UTC) (edited on 2023-06-25 01:19 (UTC) by Neko-san)
@juancarlospaco this is easily done on your own system, not in a PKGBUILD, given that building packages runs as root:
Permission issues like this are already mentioned on the UE Arch wiki page: https://wiki.archlinux.org/title/Unreal_Engine_4#Installing_from_the_AUR
This is a user system problem; I already did what I could without needing users to do the above by giving the
777
permissions. If it still gives you trouble, you'll have to use the example to solve it or change the install location to somewhere you have user permissions by default (as I cannot do this for you).zerophase commented on 2021-05-27 08:15 (UTC) (edited on 2021-05-30 08:41 (UTC) by zerophase)
Will update to 5.0 when it is released.