Skip to content

Commit

Permalink
v1.2.2 RC
Browse files Browse the repository at this point in the history
  • Loading branch information
kuiperzone committed Apr 14, 2023
1 parent 60a565b commit 8b52d8e
Show file tree
Hide file tree
Showing 16 changed files with 53 additions and 23 deletions.
7 changes: 7 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
+ VERSION 1.2.2; 2023-04-14
- Now supplied as .NET6 tool (explicitly built against .NET6 LTS rather than .NET7)
- Bug fix: AppImage failed to run on some systems (updated AppImage runtimes)
- Big fix: Added 'BuildRequires: desktop-file-utils' to RPM spec file
- Ships with: appimagetool 13 (2020-12-31)
- Tested against: rpmbuild RPM version 4.18.0, dpkg 1.21.21, flatpak-builder 1.2.3, InnoSetup 6.2.2

+ VERSION 1.2.1; 2023-04-13
- Bug fix: Unable to show --help or --version due to recent changes
- Ships with: appimagetool 13 (2020-12-31)
Expand Down
12 changes: 12 additions & 0 deletions Deploy/PupNet.metainfo.xml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,18 @@

<releases>

<release version="1.2.2" date="2023-04-14">
<description>
<ul>
<li>Now supplied as .NET6 tool (explicitly built against .NET6 LTS rather than .NET7)</li>
<li>Bug fix: AppImage failed to run on some systems (updated AppImage runtimes)</li>
<li>Bug fix: Added 'BuildRequires: desktop-file-utils' to RPM spec file</li>
<li>Ships with: appimagetool 13 (2020-12-31)</li>
<li>Tested against: rpmbuild RPM version 4.18.0, dpkg 1.21.21, flatpak-builder 1.2.3, InnoSetup 6.2.2</li>
</ul>
</description>
</release>

<release version="1.2.1" date="2023-04-13">
<description>
<ul>
Expand Down
2 changes: 1 addition & 1 deletion PupNet.Test/PupNet.Test.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsPublishable>false</IsPublishable>
Expand Down
2 changes: 1 addition & 1 deletion PupNet.pupnet.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
AppBaseName = PupNet
AppFriendlyName = PupNet Deploy
AppId = zone.kuiper.pupnet
AppVersionRelease = 1.2.1[1]
AppVersionRelease = 1.2.2[1]
AppShortSummary = Cross-platform deployment utility which packages your .NET project as a ready-to-ship installation file in a single step.
AppLicenseId = AGPL-3.0-or-later
AppLicenseFile = LICENSE
Expand Down
Empty file.
Binary file added PupNet/Assets/runtime-aarch64
Binary file not shown.
Binary file added PupNet/Assets/runtime-armhf
Binary file not shown.
Binary file removed PupNet/Assets/runtime-fuse2-aarch64
Binary file not shown.
Binary file removed PupNet/Assets/runtime-fuse2-armhf
Binary file not shown.
Binary file removed PupNet/Assets/runtime-fuse2-x86_64
Binary file not shown.
Binary file added PupNet/Assets/runtime-x86_64
Binary file not shown.
11 changes: 5 additions & 6 deletions PupNet/Builders/AppImageBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
// with PupNet. If not, see <https://www.gnu.org/licenses/>.
// -----------------------------------------------------------------------------

using System;
using System.Runtime.InteropServices;

namespace KuiperZone.PupNet.Builders;
Expand Down Expand Up @@ -184,23 +183,23 @@ public override string? MetaBuildPath
/// <exception cref="ArgumentException"/>
public static string GetRuntimePath(Architecture arch)
{
// https://github.com/AppImage/type2-runtime/releases/tag/continuous
// From: https://github.com/AppImage/AppImageKit/releases/tag/13
if (arch == System.Runtime.InteropServices.Architecture.X64)
{
return Path.Combine(AssemblyDirectory, "runtime-fuse2-x86_64");
return Path.Combine(AssemblyDirectory, "runtime-x86_64");
}

if (arch == System.Runtime.InteropServices.Architecture.Arm64)
{
return Path.Combine(AssemblyDirectory, "runtime-fuse2-aarch64");
return Path.Combine(AssemblyDirectory, "runtime-aarch64");
}

if (arch == System.Runtime.InteropServices.Architecture.Arm)
{
return Path.Combine(AssemblyDirectory, "runtime-fuse2-armhf");
return Path.Combine(AssemblyDirectory, "runtime-armhf");
}

throw new ArgumentException($"Unsupported runtime architecture {arch} - must be one of: x64, arm64, x86, arm");
throw new ArgumentException($"Unsupported runtime architecture {arch} - must be one of: x64, arm64, arm");
}


Expand Down
1 change: 1 addition & 0 deletions PupNet/Builders/RpmBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,7 @@ private string GetSpec()

if (DesktopBuildPath != null || MetaBuildPath != null)
{
sb.AppendLine("BuildRequires: desktop-file-utils");
sb.AppendLine("BuildRequires: libappstream-glib");
sb.AppendLine();
sb.AppendLine("%check");
Expand Down
13 changes: 2 additions & 11 deletions PupNet/ConfigurationReader.cs
Original file line number Diff line number Diff line change
Expand Up @@ -775,19 +775,10 @@ private string GetMandatory(string name, ValueFlags flags)
throw new ArgumentException($"Configuration {name} must contain at least 2 characters");
}

/*
// Don't do this - too strict for many fields
// Leave it to Debian to fail if this is a problem
if (char.IsDigit(value[0]))
{
throw new ArgumentException($"Configuration {name} cannot start with a numeric digit");
}
*/

foreach (var c in value)
{
// Not force lower case, but we will convert as needed
if (c != '-' && c != '+' && c != '.' && !char.IsAsciiLetterOrDigit(c))
if (c != '-' && c != '+' && c != '.' && (c < 'A' || c > 'Z') && (c < 'a' || c > 'z') && (c < '0' || c > '9'))
{
if (c != '\n' || !flags.HasFlag(ValueFlags.Multi))
{
Expand Down Expand Up @@ -825,7 +816,7 @@ private string AssertPathFlags(string name, string value, ValueFlags flags)
value = Path.Combine(LocalDirectory, value);
}

if (flags.HasFlag(ValueFlags.AssertPath) && !Path.Exists(value))
if (flags.HasFlag(ValueFlags.AssertPath) && !File.Exists(value) && !Directory.Exists(value))
{
throw new FileNotFoundException($"Configuration {name} path not found {value}");
}
Expand Down
8 changes: 4 additions & 4 deletions PupNet/PupNet.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>

Expand Down Expand Up @@ -47,13 +47,13 @@
</None>


<None Include="$(ProjectDir)\Assets\runtime-fuse2-x86_64" Link="runtime-fuse2-x86_64">
<None Include="$(ProjectDir)\Assets\runtime-x86_64" Link="runtime-x86_64">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="$(ProjectDir)\Assets\runtime-fuse2-aarch64" Link="runtime-fuse2-aarch64">
<None Include="$(ProjectDir)\Assets\runtime-aarch64" Link="runtime-aarch64">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="$(ProjectDir)\Assets\runtime-fuse2-armhf" Link="runtime-fuse2-armhf">
<None Include="$(ProjectDir)\Assets\runtime-armhf" Link="runtime-armhf">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>

Expand Down
20 changes: 20 additions & 0 deletions TODO
Original file line number Diff line number Diff line change
@@ -1 +1,21 @@
Remove RPM desktop-file-validate or add to "BuildRequires"

RPM "AutoReqProv" - investigate?

Add "Requires" conf section for RPM and DEB:
https://github.com/kuiperzone/PupNet-Deploy/issues/10

Add multiple --kind values to arguments?

Drop to .NET6 for tool

Currently, ship runtime from:
https://github.com/AppImage/type2-runtime/releases/tag/continuous
as hinted at on AppImageKit page

However, think we should use runtimes from:
https://github.com/AppImage/AppImageKit/releases/tag/13

Add parsable "changes" and integrate with RPM,deb and AppStream


0 comments on commit 8b52d8e

Please sign in to comment.