225 lines
9.9 KiB
C#
225 lines
9.9 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using System.Runtime.InteropServices.WindowsRuntime;
|
|
using Foodsoft.Alpm;
|
|
|
|
namespace Foodsoft.Alpm
|
|
{
|
|
// ReSharper disable once InconsistentNaming
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
internal struct alpm_list_t
|
|
{
|
|
internal IntPtr data;
|
|
internal readonly IntPtr prev;
|
|
internal readonly IntPtr next;
|
|
}
|
|
|
|
// ReSharper disable once InconsistentNaming
|
|
internal static class alpm
|
|
{
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_pkg_should_ignore(SafeAlpmHandle handle, SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_filename(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_base(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_name(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_version(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern PackageOrigin alpm_pkg_get_origin(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_desc(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_url(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern long alpm_pkg_get_builddate(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern long alpm_pkg_get_installdate(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_packager(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_md5sum(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_sha256sum(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_arch(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern long alpm_pkg_get_size(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern long alpm_pkg_get_isize(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern InstallReason alpm_pkg_get_reason(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_licenses(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_groups(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_depends(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_optdepends(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_checkdepends(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_makedepends(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_conflicts(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_pkg_get_provides(SafePackageHandle pkg);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_pkg_set_reason(SafePackageHandle pkg, InstallReason reason);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_pkg_free(IntPtr ptr);
|
|
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern IntPtr alpm_option_get_cachedirs(SafeAlpmHandle handle);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_option_set_cachedirs(SafeAlpmHandle handle, IntPtr cachedirs);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_option_add_cachedir(SafeAlpmHandle handle,
|
|
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))] string cachedir);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_option_remove_cachedir(SafeAlpmHandle handle,
|
|
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))] string cachedir);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern ErrNo alpm_errno(SafeAlpmHandle handle);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_strerror(ErrNo err);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern IntPtr alpm_get_localdb(SafeAlpmHandle handle);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern unsafe alpm_list_t* alpm_option_get_syncdbs();
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern IntPtr alpm_register_syncdb(SafeAlpmHandle handle, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))] string treename, SigLevel sigLevel);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_db_unregister_all_syncdbs(SafeAlpmHandle handle);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern unsafe alpm_list_t* alpm_list_next(alpm_list_t* list);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern UIntPtr alpm_list_count(IntPtr list);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern void alpm_list_free(IntPtr list);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern IntPtr alpm_list_find_str(IntPtr list, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))] string needle);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_unlock(Handle handle);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_version();
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern caps alpm_capabilities();
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern SafeAlpmHandle alpm_initialize(
|
|
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))]
|
|
string root, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))]
|
|
string dbpath, out ErrNo err);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_release(IntPtr handle);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_db_remove_server(SafeDatabaseHandle db,
|
|
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))]
|
|
string url);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_db_unregister(IntPtr db);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8OutMarshaler))]
|
|
public static extern string alpm_db_get_name(SafeDatabaseHandle db);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern SigLevel alpm_db_get_siglevel(SafeDatabaseHandle db);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_db_get_valid(SafeDatabaseHandle db);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_db_update(int force, SafeDatabaseHandle db);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern IntPtr alpm_db_get_servers(SafeDatabaseHandle db);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_db_set_servers(SafeDatabaseHandle db, IntPtr list);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern int alpm_db_add_server(SafeDatabaseHandle db,
|
|
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))]
|
|
string url);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern IntPtr alpm_pkg_get_pkg(SafeDatabaseHandle db,
|
|
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(UTF8InMarshaler))]
|
|
string name);
|
|
|
|
[DllImport(nameof(alpm))]
|
|
public static extern IntPtr alpm_pkg_get_pkgcache(SafeDatabaseHandle db);
|
|
|
|
}
|
|
} |