From b1dd47cbb0d1c07fbb7db341c6cf74b85a836f8e Mon Sep 17 00:00:00 2001 From: "Adam C. Stephens" Date: Tue, 10 Jun 2025 09:19:38 -0400 Subject: [PATCH] incus: 6.12.0 -> 6.13.0 https://discuss.linuxcontainers.org/t/incus-6-13-has-been-released/23899 https://github.com/lxc/incus/releases/tag/v6.13.0 --- pkgs/by-name/in/incus/1995.diff | 93 ------------------------------- pkgs/by-name/in/incus/package.nix | 11 ++-- 2 files changed, 4 insertions(+), 100 deletions(-) delete mode 100644 pkgs/by-name/in/incus/1995.diff diff --git a/pkgs/by-name/in/incus/1995.diff b/pkgs/by-name/in/incus/1995.diff deleted file mode 100644 index 092bd149d856..000000000000 --- a/pkgs/by-name/in/incus/1995.diff +++ /dev/null @@ -1,93 +0,0 @@ -diff --git a/internal/server/firewall/drivers/drivers_consts.go b/internal/server/firewall/drivers/drivers_consts.go -index 2790e07a605..944bca5930e 100644 ---- a/internal/server/firewall/drivers/drivers_consts.go -+++ b/internal/server/firewall/drivers/drivers_consts.go -@@ -1,8 +1,6 @@ - package drivers - - import ( -- "encoding/json" -- "fmt" - "net" - ) - -@@ -67,62 +65,12 @@ type NftListSetsOutput struct { - - // NftListSetsEntry structure to read JSON output of nft set listing. - type NftListSetsEntry struct { -- Metainfo *NftMetainfo `json:"metainfo,omitempty"` -- Set *NftSet `json:"set,omitempty"` --} -- --// NftMetainfo structure representing metainformation returned by nft. --type NftMetainfo struct { -- Version string `json:"version"` -- ReleaseName string `json:"release_name"` -- JSONSchemaVersion int `json:"json_schema_version"` -+ Set *NftSet `json:"set,omitempty"` - } - - // NftSet structure to parse the JSON of a set returned by nft -j list sets. - type NftSet struct { -- Family string `json:"family"` -- Name string `json:"name"` -- Table string `json:"table"` -- Type string `json:"type"` -- Handle int `json:"handle"` -- Flags []string `json:"flags"` -- Elem ElemField `json:"elem"` --} -- --// ElemField supports both string elements (IP, MAC) and dictionary-based CIDR elements. --// In order to parse it correctly a custom unsmarshalling is defined in drivers_nftables.go . --type ElemField struct { -- Addresses []string // Stores plain addresses and CIDR notations as strings. --} -- --// UnmarshalJSON handles both plain strings and CIDR dictionaries inside `elem`. --func (e *ElemField) UnmarshalJSON(data []byte) error { -- var rawElems []any -- err := json.Unmarshal(data, &rawElems) -- if err != nil { -- return err -- } -- -- for _, elem := range rawElems { -- switch v := elem.(type) { -- case string: -- // Plain address (IPv4, IPv6, or MAC). -- e.Addresses = append(e.Addresses, v) -- case map[string]any: -- // CIDR notation (prefix dictionary). -- prefix, ok := v["prefix"].(map[string]any) -- if ok { -- addr, addrOk := prefix["addr"].(string) -- lenFloat, lenOk := prefix["len"].(float64) // JSON numbers are float64 by default. -- if addrOk && lenOk { -- e.Addresses = append(e.Addresses, fmt.Sprintf("%s/%d", addr, int(lenFloat))) -- } -- } -- -- default: -- return fmt.Errorf("Unsupported element type in NFTables set: %v", elem) -- } -- } -- -- return nil -+ Family string `json:"family"` -+ Name string `json:"name"` -+ Table string `json:"table"` - } -diff --git a/internal/server/firewall/drivers/drivers_nftables.go b/internal/server/firewall/drivers/drivers_nftables.go -index fd9be2e2fbb..f803de9dff5 100644 ---- a/internal/server/firewall/drivers/drivers_nftables.go -+++ b/internal/server/firewall/drivers/drivers_nftables.go -@@ -387,7 +387,7 @@ func (d Nftables) NetworkClear(networkName string, _ bool, _ []uint) error { - return fmt.Errorf("Failed clearing nftables rules for network %q: %w", networkName, err) - } - -- err = d.RemoveIncusAddressSets("inet") -+ err = d.RemoveIncusAddressSets("bridge") - if err != nil { - return fmt.Errorf("Error in deletion of address sets: %w", err) - } diff --git a/pkgs/by-name/in/incus/package.nix b/pkgs/by-name/in/incus/package.nix index 68044192d84f..7dc60062e7d7 100644 --- a/pkgs/by-name/in/incus/package.nix +++ b/pkgs/by-name/in/incus/package.nix @@ -1,11 +1,8 @@ import ./generic.nix { - hash = "sha256-hgZc30SRnmALTvuD32dNuO0r4pfpXXvN4CtJqn2fGuk="; - version = "6.12.0"; - vendorHash = "sha256-/GwJG6kmjbiUUh0AWQ+IUbeK1kRcuWrwmNdTzH5LT38="; - patches = [ - # fix nft, remove 6.13 - ./1995.diff - ]; + hash = "sha256-f02BBEZ9EqLWJNxJ+Qj8PtcgkRT2Dy/hwUA/1aAZXC8="; + version = "6.13.0"; + vendorHash = "sha256-g71ORfg/BMucohBfPWwSbyLdmo5SpkStUKbszZFFaKQ="; + patches = [ ]; nixUpdateExtraArgs = [ "--override-filename=pkgs/by-name/in/incus/package.nix" ];