mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-02-18 10:04:08 +00:00
Merge pull request #327512 from Gerg-L/hyprspace
hyprspace: reinit at 0.10.2
This commit is contained in:
commit
d18b68fe6d
113
pkgs/by-name/hy/hyprspace/config_generated.go
Normal file
113
pkgs/by-name/hy/hyprspace/config_generated.go
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
// Code generated by github.com/atombender/go-jsonschema, DO NOT EDIT.
|
||||||
|
|
||||||
|
package schema
|
||||||
|
|
||||||
|
import "encoding/json"
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
type Config struct {
|
||||||
|
// List of addresses to listen on for libp2p traffic.
|
||||||
|
ListenAddresses []string `json:"listenAddresses,omitempty"`
|
||||||
|
|
||||||
|
// Trusted peers in the network.
|
||||||
|
Peers []ConfigPeersElem `json:"peers,omitempty"`
|
||||||
|
|
||||||
|
// This node's private key.
|
||||||
|
PrivateKey string `json:"privateKey"`
|
||||||
|
|
||||||
|
// The services this node provides via the Service Network.
|
||||||
|
Services ConfigServices `json:"services,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ConfigPeersElem struct {
|
||||||
|
// PeerID of this peer.
|
||||||
|
Id string `json:"id"`
|
||||||
|
|
||||||
|
// Friendly name for this peer. (optional)
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
|
||||||
|
// Networks to route to this peer. (optional)
|
||||||
|
Routes []ConfigPeersElemRoutesElem `json:"routes,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ConfigPeersElemRoutesElem struct {
|
||||||
|
// Network specification.
|
||||||
|
Net string `json:"net"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON implements json.Unmarshaler.
|
||||||
|
func (j *ConfigPeersElemRoutesElem) UnmarshalJSON(b []byte) error {
|
||||||
|
var raw map[string]interface{}
|
||||||
|
if err := json.Unmarshal(b, &raw); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if _, ok := raw["net"]; raw != nil && !ok {
|
||||||
|
return fmt.Errorf("field net in ConfigPeersElemRoutesElem: required")
|
||||||
|
}
|
||||||
|
type Plain ConfigPeersElemRoutesElem
|
||||||
|
var plain Plain
|
||||||
|
if err := json.Unmarshal(b, &plain); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
*j = ConfigPeersElemRoutesElem(plain)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON implements json.Unmarshaler.
|
||||||
|
func (j *ConfigPeersElem) UnmarshalJSON(b []byte) error {
|
||||||
|
var raw map[string]interface{}
|
||||||
|
if err := json.Unmarshal(b, &raw); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if _, ok := raw["id"]; raw != nil && !ok {
|
||||||
|
return fmt.Errorf("field id in ConfigPeersElem: required")
|
||||||
|
}
|
||||||
|
type Plain ConfigPeersElem
|
||||||
|
var plain Plain
|
||||||
|
if err := json.Unmarshal(b, &plain); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if v, ok := raw["name"]; !ok || v == nil {
|
||||||
|
plain.Name = ""
|
||||||
|
}
|
||||||
|
if v, ok := raw["routes"]; !ok || v == nil {
|
||||||
|
plain.Routes = []ConfigPeersElemRoutesElem{}
|
||||||
|
}
|
||||||
|
*j = ConfigPeersElem(plain)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// The services this node provides via the Service Network.
|
||||||
|
type ConfigServices map[string]string
|
||||||
|
|
||||||
|
// UnmarshalJSON implements json.Unmarshaler.
|
||||||
|
func (j *Config) UnmarshalJSON(b []byte) error {
|
||||||
|
var raw map[string]interface{}
|
||||||
|
if err := json.Unmarshal(b, &raw); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if _, ok := raw["privateKey"]; raw != nil && !ok {
|
||||||
|
return fmt.Errorf("field privateKey in Config: required")
|
||||||
|
}
|
||||||
|
type Plain Config
|
||||||
|
var plain Plain
|
||||||
|
if err := json.Unmarshal(b, &plain); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if v, ok := raw["listenAddresses"]; !ok || v == nil {
|
||||||
|
plain.ListenAddresses = []string{
|
||||||
|
"/ip4/0.0.0.0/tcp/8001",
|
||||||
|
"/ip4/0.0.0.0/udp/8001/quic-v1",
|
||||||
|
"/ip6/::/tcp/8001",
|
||||||
|
"/ip6/::/udp/8001/quic-v1",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if v, ok := raw["peers"]; !ok || v == nil {
|
||||||
|
plain.Peers = []ConfigPeersElem{}
|
||||||
|
}
|
||||||
|
if v, ok := raw["services"]; !ok || v == nil {
|
||||||
|
plain.Services = map[string]string{}
|
||||||
|
}
|
||||||
|
*j = Config(plain)
|
||||||
|
return nil
|
||||||
|
}
|
60
pkgs/by-name/hy/hyprspace/package.nix
Normal file
60
pkgs/by-name/hy/hyprspace/package.nix
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildGoModule,
|
||||||
|
fetchFromGitHub,
|
||||||
|
writeShellScript,
|
||||||
|
nix-update,
|
||||||
|
nix,
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildGoModule rec {
|
||||||
|
pname = "hyprspace";
|
||||||
|
version = "0.10.2";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "hyprspace";
|
||||||
|
repo = "hyprspace";
|
||||||
|
rev = "refs/tags/v${version}";
|
||||||
|
hash = "sha256-zWajCfHFqPa3Z72DHcxBUq4bmcCu1lpEKUbZZewpYOE=";
|
||||||
|
};
|
||||||
|
|
||||||
|
CGO_ENABLED = "0";
|
||||||
|
|
||||||
|
vendorHash = "sha256-LJpgGeD47Bs+Cq9Z7WWFa49F8/n3exOyxRcd6EkkL2g=";
|
||||||
|
|
||||||
|
ldflags = [
|
||||||
|
"-s"
|
||||||
|
"-w"
|
||||||
|
"-X github.com/hyprspace/hyprspace/cli.appVersion=${version}"
|
||||||
|
];
|
||||||
|
|
||||||
|
preBuild = ''
|
||||||
|
ln -s ${./config_generated.go} ./schema/config_generated.go
|
||||||
|
'';
|
||||||
|
|
||||||
|
passthru.updateScript = writeShellScript "update" ''
|
||||||
|
${lib.getExe nix-update} hyprspace
|
||||||
|
nix () {
|
||||||
|
${lib.getExe nix} --extra-experimental-features 'flakes nix-command' "$@"
|
||||||
|
}
|
||||||
|
cat "$(
|
||||||
|
nix build --print-out-paths --no-link \
|
||||||
|
"github:hyprspace/hyprspace?ref=refs/tags/v$(
|
||||||
|
nix eval .#hyprspace.version --raw
|
||||||
|
)#vendor"
|
||||||
|
)/schema/config_generated.go" \
|
||||||
|
> pkgs/by-name/hy/hyprspace/config_generated.go
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Lightweight VPN Built on top of Libp2p for Truly Distributed Networks";
|
||||||
|
homepage = "https://github.com/hyprspace/hyprspace";
|
||||||
|
license = lib.licenses.asl20;
|
||||||
|
maintainers = with lib.maintainers; [
|
||||||
|
gerg-l
|
||||||
|
max
|
||||||
|
];
|
||||||
|
platforms = lib.platforms.linux;
|
||||||
|
mainProgram = "hyprspace";
|
||||||
|
};
|
||||||
|
}
|
@ -608,7 +608,6 @@ mapAliases ({
|
|||||||
hll2390dw-cups = throw "The hll2390dw-cups package was dropped since it was unmaintained."; # Added 2024-06-21
|
hll2390dw-cups = throw "The hll2390dw-cups package was dropped since it was unmaintained."; # Added 2024-06-21
|
||||||
ht-rust = xh; # Added 2021-02-13
|
ht-rust = xh; # Added 2021-02-13
|
||||||
hydra-unstable = hydra_unstable; # added 2022-05-10
|
hydra-unstable = hydra_unstable; # added 2022-05-10
|
||||||
hyprspace = throw "hyprspace has been removed from nixpkgs because it is broken"; # Added 2024-07-15
|
|
||||||
hyper-haskell = throw "'hyper-haskell' has been removed. reason: has been broken for a long time and depends on an insecure electron version"; # Added 2024-03-14
|
hyper-haskell = throw "'hyper-haskell' has been removed. reason: has been broken for a long time and depends on an insecure electron version"; # Added 2024-03-14
|
||||||
hyper-haskell-server-with-packages = throw "'hyper-haskell-server-with-packages' has been removed. reason: has been broken for a long time"; # Added 2024-03-14
|
hyper-haskell-server-with-packages = throw "'hyper-haskell-server-with-packages' has been removed. reason: has been broken for a long time"; # Added 2024-03-14
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user