mirror of
https://github.com/Artemis-RGB/Artemis
synced 2025-12-12 21:38:38 +00:00
Added Linux CI
This commit is contained in:
parent
f97d328f32
commit
4eacb3eb6e
46
.github/workflows/linux-package.yml
vendored
Normal file
46
.github/workflows/linux-package.yml
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
name: Build Artemis deb package
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches:
|
||||
- feature/linux-ci
|
||||
|
||||
jobs:
|
||||
package:
|
||||
name: Package deb
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Artemis
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: Artemis
|
||||
- name: Checkout Plugins
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: Artemis-RGB/Artemis.Plugins
|
||||
path: Artemis.Plugins
|
||||
- name: Setup .NET
|
||||
uses: actions/setup-dotnet@v2
|
||||
with:
|
||||
dotnet-version: '6.0.x'
|
||||
- name: Install dotnet deb
|
||||
run: dotnet tool install --global dotnet-deb
|
||||
- name: Publish Artemis
|
||||
run: dotnet publish --configuration Release --runtime linux-x64 --self-contained Artemis/src/Artemis.UI.Linux/Artemis.UI.Linux.csproj
|
||||
- name: Publish Plugins
|
||||
run: |
|
||||
New-Item -ItemType "Directory" -Path Artemis/src/Artemis.UI.Linux/bin/linux-x64/publish/Plugins
|
||||
Get-ChildItem -File -Recurse -Filter *.csproj Artemis.Plugins/src/ |
|
||||
Foreach-Object -Parallel {
|
||||
dotnet publish --configuration Release --runtime linux-x64 --output build-plugins/$($_.BaseName) --no-self-contained $($_.FullName);
|
||||
Compress-Archive -Path "build-plugins/$($_.BaseName)" -DestinationPath "Artemis/src/Artemis.UI.Linux/bin/linux-x64/publish/Plugins/$($_.BaseName).zip";
|
||||
}
|
||||
shell: pwsh
|
||||
- name: Build deb
|
||||
run: dotnet deb -r linux-x64 Artemis/src/Artemis.UI.Linux/Artemis.UI.Linux.csproj
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Artemis.UI.Linux.1.0.0.linux-x64.deb
|
||||
path: Artemis/src/Artemis.UI.Linux/bin/linux-x64/Artemis.UI.Linux.1.0.0.linux-x64.deb
|
||||
@ -27,4 +27,13 @@
|
||||
<ProjectReference Include="..\Artemis.Core\Artemis.Core.csproj" />
|
||||
<ProjectReference Include="..\Artemis.UI\Artemis.UI.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="Assets/artemis.png" CopyToPublishDirectory="PreserveNewest">
|
||||
<LinuxPath>/usr/share/icons/artemis.png</LinuxPath>
|
||||
</Content>
|
||||
<Content Include="Assets/artemis.desktop" CopyToPublishDirectory="PreserveNewest">
|
||||
<LinuxPath>/usr/share/applications/artemis.desktop</LinuxPath>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
6
src/Artemis.UI.Linux/Assets/artemis.desktop
Normal file
6
src/Artemis.UI.Linux/Assets/artemis.desktop
Normal file
@ -0,0 +1,6 @@
|
||||
[Desktop Entry]
|
||||
Name=Artemis
|
||||
Type=Application
|
||||
Exec=/usr/share/Artemis.UI.Linux/Artemis.UI.Linux
|
||||
Icon=/usr/share/icons/artemis.png
|
||||
Categories=Tools
|
||||
BIN
src/Artemis.UI.Linux/Assets/artemis.png
Normal file
BIN
src/Artemis.UI.Linux/Assets/artemis.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
9
src/Artemis.UI.Linux/Directory.Build.props
Normal file
9
src/Artemis.UI.Linux/Directory.Build.props
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Packaging.Targets">
|
||||
<Version>0.1.220-*</Version>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
Loading…
x
Reference in New Issue
Block a user