diff --git a/azure-pipelines.yml b/azure-pipelines.yml index d701c8e..23a83bc 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -29,7 +29,7 @@ jobs: publishLocation: 'Container' -- job: Linux_builds +- job: Linux_x64_builds pool: vmImage: 'ubuntu-16.04' steps: @@ -53,9 +53,37 @@ jobs: - task: PublishBuildArtifacts@1 inputs: PathtoPublish: 'publish' - ArtifactName: 'drop-linux' + ArtifactName: 'drop-linux-x64' publishLocation: 'Container' +- job: Linux_arm64_builds + pool: + vmImage: 'ubuntu-16.04' + steps: + - task: UseDotNet@2 + displayName: 'Use .NET Core sdk' + inputs: + packageType: sdk + includePreviewVersions: false + version: 3.1.x + installationPath: $(Agent.ToolsDirectory)/dotnet + - task: Bash@3 + inputs: + targetType: 'inline' + script: | + sudo apt-get install ruby ruby-dev rubygems build-essential rpm + sudo gem install --no-document fpm + - task: Bash@3 + inputs: + filePath: 'pack.sh' + arguments: 'linux-arm' + - task: PublishBuildArtifacts@1 + inputs: + PathtoPublish: 'publish' + ArtifactName: 'drop-linux-arm64' + publishLocation: 'Container' + + - job: OSX_builds pool: vmImage: 'macOS-10.14' diff --git a/lib/fvim-win10-arm64.exe b/lib/fvim-win10-arm64.exe new file mode 100644 index 0000000..2050a4a Binary files /dev/null and b/lib/fvim-win10-arm64.exe differ diff --git a/pack.ps1 b/pack.ps1 index 117882e..ecc9fc2 100644 --- a/pack.ps1 +++ b/pack.ps1 @@ -1,6 +1,6 @@ # Packs FVim for Windows platforms -param([string[]]$plat=("win7-x64","win-x64")) +param([string[]]$plat=("win7-x64","win-x64","win-arm")) #param([string[]]$plat=("win7-x64","win-x64","linux-x64","osx-x64")) New-Item -ItemType Directory -Force -Name publish -ErrorAction SilentlyContinue @@ -16,6 +16,8 @@ foreach($i in $plat) { Copy-Item ~/.nuget/packages/avalonia.angle.windows.natives/2.1.0.2020091801/runtimes/win7-x64/native/av_libglesv2.dll bin/Release/netcoreapp3.1/$i/publish/ } elseif ($i -eq "win7-x64") { Copy-Item lib/fvim-win7.exe bin/Release/netcoreapp3.1/$i/publish/FVim.exe + } elseif ($i -eq "win-arm") { + Copy-Item lib/fvim-win10-arm64.exe bin/Release/netcoreapp3.1/$i/publish/FVim.exe } Compress-Archive -Path bin/Release/netcoreapp3.1/$i/publish/* -DestinationPath publish/fvim-$i.zip -Force } diff --git a/pack.sh b/pack.sh index 6eebb90..9e0a5d0 100755 --- a/pack.sh +++ b/pack.sh @@ -2,6 +2,8 @@ # usage: # pack.sh linux-x64 # pack.sh osx-x64 +# pack.sh linux-arm +# pack.sh osx-arm mkdir -p publish rm -rf bin @@ -38,6 +40,31 @@ function pack-linux-x64() mv {*.deb,*.rpm} publish/ } +function pack-linux-arm() +{ + rm -f ./{*.deb,*.rpm} + + pushd $PKG_ROOT + cd .. + mv publish fvim + mkdir -p publish/usr/share + mkdir -p publish/usr/share/applications + mkdir -p publish/usr/share/icons/hicolor/48x48/apps/ + mkdir -p publish/usr/bin + mv fvim publish/usr/share/ + popd + cp lib/fvim-linux-launcher $PKG_ROOT/usr/bin/fvim + cp Assets/fvim.png $PKG_ROOT/usr/share/icons/hicolor/48x48/apps/fvim.png + cp lib/fvim.desktop $PKG_ROOT/usr/share/applications/fvim.desktop + + chmod +x $PKG_ROOT/usr/share/fvim/FVim + chmod +x $PKG_ROOT/usr/bin/fvim + fpm -a arm64 -s dir -t deb -n fvim -v $VERSION -C $PKG_ROOT + fpm -a arm64 -s dir -t rpm -n fvim -v $VERSION -C $PKG_ROOT + + mv {*.deb,*.rpm} publish/ +} + function pack-osx-x64() { rm -rf ./*.app