Merge pull request 'docs: init new structure' (#5157) from improve_vars_docs2 into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5157
This commit is contained in:
27
docs/site/community/services/index.md
Normal file
27
docs/site/community/services/index.md
Normal file
@@ -0,0 +1,27 @@
|
||||
Services provided by the community
|
||||
|
||||
!!! tip "Add your own!"
|
||||
|
||||
Have you built a service or a tool for? Open a PR adding a link to this page!
|
||||
|
||||
<div class="grid cards" markdown>
|
||||
|
||||
- [Your Service Foo](https://example.com) :octicons-link-external-16:
|
||||
|
||||
---
|
||||
|
||||
Does this and that
|
||||
|
||||
- [Your Service Foo](https://example.com) :octicons-link-external-16:
|
||||
|
||||
---
|
||||
|
||||
Does this and that
|
||||
|
||||
- [Your Service Foo](https://example.com) :octicons-link-external-16:
|
||||
|
||||
---
|
||||
|
||||
Does this and that
|
||||
|
||||
</div>
|
||||
@@ -5,7 +5,7 @@ This guide provides an example setup for a single-disk ZFS system with native en
|
||||
This configuration only applies to `systemd-boot` enabled systems and **requires** UEFI booting.
|
||||
|
||||
!!! Info "Secure Boot"
|
||||
This guide is compatible with systems that have [secure boot disabled](../guides/secure-boot.md). If you encounter boot issues, check if secure boot needs to be disabled in your UEFI settings.
|
||||
This guide is compatible with systems that have [secure boot disabled](./secure-boot.md). If you encounter boot issues, check if secure boot needs to be disabled in your UEFI settings.
|
||||
|
||||
Replace the highlighted lines with your own disk-id.
|
||||
You can find our your disk-id by executing:
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
Machines can be added using the following methods
|
||||
|
||||
- Create a file `machines/{machine_name}/configuration.nix` (See: [File Autoincludes](../../concepts/autoincludes.md))
|
||||
- Create a file `machines/{machine_name}/configuration.nix` (See: [File Autoincludes](../inventory/autoincludes.md))
|
||||
- Imperative via cli command: `clan machines create`
|
||||
- Editing nix expressions in flake.nix See [`clan-core.lib.clan`](/options/?scope=Flake Options (clan.nix file))
|
||||
|
||||
See the complete [list](../../concepts/autoincludes.md) of auto-loaded files.
|
||||
See the complete [list](../inventory/autoincludes.md) of auto-loaded files.
|
||||
|
||||
## Create a machine
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ In Clan Services are multi-Host & role-based:
|
||||
|
||||
- You can use tags instead of explicit machine names.
|
||||
|
||||
To learn more: [Guide about clanService](../clanServices.md)
|
||||
To learn more: [Guide about clanService](../inventory/clanServices.md)
|
||||
|
||||
!!! Important
|
||||
It is recommended to add at least one networking service such as `zerotier` that allows to reach all your clan machines from your setup computer across the globe.
|
||||
@@ -41,7 +41,7 @@ To learn more: [Guide about clanService](../clanServices.md)
|
||||
```
|
||||
|
||||
1. See [reference/clanServices](../../reference/clanServices/index.md) for all available services and how to configure them.
|
||||
Or read [authoring/clanServices](../../guides/services/community.md) if you want to bring your own
|
||||
Or read [authoring/clanServices](../services/community.md) if you want to bring your own
|
||||
|
||||
2. Replace `__YOUR_CONTROLLER_` with the *name* of your machine.
|
||||
|
||||
|
||||
@@ -171,7 +171,7 @@ Clan needs to know where it can reach your hosts. For testing purpose set
|
||||
}
|
||||
```
|
||||
|
||||
See our guide on for properly [configuring machines networking](../networking.md)
|
||||
See our guide on for properly [configuring machines networking](../networking/networking.md)
|
||||
|
||||
## Next Steps
|
||||
|
||||
|
||||
@@ -152,7 +152,7 @@ sudo umount /dev/sdb1
|
||||
|
||||
## Boot From USB Stick
|
||||
|
||||
- To use, boot from the Clan USB drive with **secure boot turned off**. For step by step instructions go to [Disabling Secure Boot](../../guides/secure-boot.md)
|
||||
- To use, boot from the Clan USB drive with **secure boot turned off**. For step by step instructions go to [Disabling Secure Boot](../secure-boot.md)
|
||||
|
||||
## (Optional) Connect to Wifi Manually
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
Now that you have created a machine, added some services, and set up secrets, this guide will walk you through how to deploy it.
|
||||
|
||||
|
||||
### Step 0. Prerequisites
|
||||
### Prerequisites
|
||||
- [x] RAM > 2GB
|
||||
- [x] **Two Computers**: You need one computer that you're getting ready (we'll call this the Target Computer) and another one to set it up from (we'll call this the Setup Computer). Make sure both can talk to each other over the network using SSH.
|
||||
- [x] **Machine configuration**: See our basic [adding and configuring machine guide](./add-machines.md)
|
||||
@@ -45,7 +45,7 @@ This is an example of the booted installer.
|
||||
│ │Onion address: 6evxy5yhzytwpnhc2vpscrbti3iktxdhpnf6yim6bbs25p4v6beemzyd.onion │ │
|
||||
│ │Multicast DNS: nixos-installer.local │ │
|
||||
│ └─────────────────────────────────────────────────────────────────────────────────┘ │
|
||||
│ Press 'Ctrl-C' for console access │
|
||||
│ Press 'Ctrl-C' for console access │
|
||||
│ │
|
||||
└─────────────────────────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
@@ -75,12 +75,12 @@ This is an example of the booted installer.
|
||||
|
||||
There are two ways to deploy your machine:
|
||||
|
||||
### Generating a Hardware Report
|
||||
|
||||
The following command will generate a hardware report with [nixos-facter](https://github.com/nix-community/nixos-facter) and writes it back into your machine folder. The `--phases kexec` flag makes sure we are not yet formatting anything, instead if the target system is not a NixOS machine it will use [kexec](https://wiki.archlinux.org/title/Kexec) to switch to a NixOS kernel.
|
||||
|
||||
=== "Password"
|
||||
### Generating a Hardware Report
|
||||
|
||||
The following command will generate a hardware report with [nixos-facter](https://github.com/nix-community/nixos-facter) and writes it back into your machine folder. The `--phases kexec` flag makes sure we are not yet formatting anything, instead if the target system is not a NixOS machine it will use [kexec](https://wiki.archlinux.org/title/Kexec) to switch to a NixOS kernel.
|
||||
|
||||
**Password**
|
||||
|
||||
```terminal
|
||||
clan machines install [MACHINE] \
|
||||
@@ -90,11 +90,10 @@ There are two ways to deploy your machine:
|
||||
```
|
||||
|
||||
=== "QR Code"
|
||||
### Generating a Hardware Report
|
||||
**QR Code**
|
||||
|
||||
The following command will generate a hardware report with [nixos-facter](https://github.com/nix-community/nixos-facter) and writes it back into your machine folder. The `--phases kexec` flag makes sure we are not yet formatting anything, instead if the target system is not a NixOS machine it will use [kexec](https://wiki.archlinux.org/title/Kexec) to switch to a NixOS kernel.
|
||||
**Using a JSON String or File Path**:
|
||||
|
||||
#### Using a JSON String or File Path
|
||||
Copy the JSON string contained in the QR Code and provide its path or paste it directly:
|
||||
```terminal
|
||||
clan machines install [MACHINE] --json [JSON] \
|
||||
@@ -102,7 +101,8 @@ There are two ways to deploy your machine:
|
||||
--phases kexec
|
||||
```
|
||||
|
||||
#### Using an Image Containing the QR Code
|
||||
**Using an Image Containing the QR Code**:
|
||||
|
||||
Provide the path to an image file containing the QR code displayed by the installer:
|
||||
```terminal
|
||||
clan machines install [MACHINE] --png [PATH] \
|
||||
@@ -112,3 +112,5 @@ There are two ways to deploy your machine:
|
||||
|
||||
|
||||
If you are using our template `[MACHINE]` would be `jon`
|
||||
|
||||
[Next Step (Choose Disk Format)](./choose-disk.md){ .md-button .md-button--primary }
|
||||
@@ -32,7 +32,7 @@ Ensure that the root login is secured and only used when necessary.
|
||||
|
||||
## Multiple Target Hosts
|
||||
|
||||
You can now experiment with a new interface that allows you to define multiple `targetHost` addresses for different VPNs. Learn more and try it out in our [networking guide](../networking.md).
|
||||
You can now experiment with a new interface that allows you to define multiple `targetHost` addresses for different VPNs. Learn more and try it out in our [networking guide](../networking/networking.md).
|
||||
|
||||
## Updating Machine Configurations
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
# Using the Inventory
|
||||
|
||||
Clan's inventory system is a composable way to define and deploy services across
|
||||
machines.
|
||||
|
||||
@@ -70,7 +68,7 @@ inventory.instances = {
|
||||
## Module Settings
|
||||
|
||||
Each role might expose configurable options. See clan's [clanServices
|
||||
reference](../reference/clanServices/index.md) for all available options.
|
||||
reference](../../reference/clanServices/index.md) for all available options.
|
||||
|
||||
Settings can be set in per-machine or per-role. The latter is applied to all
|
||||
machines that are assigned to that role.
|
||||
@@ -157,13 +155,13 @@ inventory.instances = {
|
||||
|
||||
You can use services exposed by Clan's core module library, `clan-core`.
|
||||
|
||||
🔗 See: [List of Available Services in clan-core](../reference/clanServices/index.md)
|
||||
🔗 See: [List of Available Services in clan-core](../../reference/clanServices/index.md)
|
||||
|
||||
## Defining Your Own Service
|
||||
|
||||
You can also author your own `clanService` modules.
|
||||
|
||||
🔗 Learn how to write your own service: [Authoring a service](../guides/services/community.md)
|
||||
🔗 Learn how to write your own service: [Authoring a service](../services/community.md)
|
||||
|
||||
You might expose your service module from your flake — this makes it easy for other people to also use your module in their clan.
|
||||
|
||||
@@ -179,7 +177,7 @@ ______________________________________________________________________
|
||||
|
||||
## What's Next?
|
||||
|
||||
- [Author your own clanService →](../guides/services/community.md)
|
||||
- [Migrate from clanModules →](../guides/migrations/migrate-inventory-services.md)
|
||||
- [Author your own clanService →](../services/community.md)
|
||||
- [Migrate from clanModules →](../migrations/migrate-inventory-services.md)
|
||||
|
||||
<!-- TODO: * [Understand the architecture →](../explanation/clan-architecture.md) -->
|
||||
@@ -17,13 +17,13 @@ The following tutorial will walk through setting up a Backup service where the t
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- [x] [Add some machines](../guides/getting-started/add-machines.md) to your Clan.
|
||||
- [x] [Add some machines](../getting-started/add-machines.md) to your Clan.
|
||||
|
||||
## Services
|
||||
|
||||
The inventory defines `instances` of clan services. Membership of `machines` is defined via `roles` exclusively.
|
||||
|
||||
See each [modules documentation](../reference/clanServices/index.md) for its available roles.
|
||||
See each [modules documentation](../../reference/clanServices/index.md) for its available roles.
|
||||
|
||||
### Adding services to machines
|
||||
|
||||
@@ -7,7 +7,7 @@ This guide explains how to manage macOS machines using Clan.
|
||||
Currently, Clan supports the following features for macOS:
|
||||
|
||||
- `clan machines update` for existing [nix-darwin](https://github.com/nix-darwin/nix-darwin) installations
|
||||
- Support for [vars](../guides/vars/vars-overview.md)
|
||||
- Support for [vars](./vars/vars-overview.md)
|
||||
|
||||
## Add Your Machine to Your Clan Flake
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Migrating from using `clanModules` to `clanServices`
|
||||
|
||||
**Audience**: This is a guide for **people using `clanModules`**.
|
||||
If you are a **module author** and need to migrate your modules please consult our **new** [clanServices authoring guide](../../guides/services/community.md)
|
||||
If you are a **module author** and need to migrate your modules please consult our **new** [clanServices authoring guide](../services/community.md)
|
||||
|
||||
## What's Changing?
|
||||
|
||||
@@ -378,6 +378,6 @@ instances = {
|
||||
|
||||
## Further reference
|
||||
|
||||
* [Inventory Concept](../../concepts/inventory.md)
|
||||
* [Authoring a 'clan.service' module](../../guides/services/community.md)
|
||||
* [ClanServices](../clanServices.md)
|
||||
* [Inventory Concept](../inventory/inventory.md)
|
||||
* [Authoring a 'clan.service' module](../services/community.md)
|
||||
* [ClanServices](../inventory/clanServices.md)
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
For a high level overview about `vars` see our [blog post](https://clan.lol/blog/vars/).
|
||||
|
||||
This guide will help you migrate your modules that still use our [`facts`](../../guides/secrets.md) backend
|
||||
to the [`vars`](../../guides/vars/vars-overview.md) backend.
|
||||
This guide will help you migrate your modules that still use our [`facts`](../secrets.md) backend
|
||||
to the [`vars`](../vars/vars-overview.md) backend.
|
||||
|
||||
The `vars` [module](../../reference/clan.core/vars.md) and the clan [command](../../reference/cli/vars.md) work in tandem, they should ideally be kept in sync.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
This article provides an overview over the underlying secrets system which is used by [Vars](../guides/vars/vars-overview.md).
|
||||
Under most circumstances you should use [Vars](../guides/vars/vars-overview.md) directly instead.
|
||||
This article provides an overview over the underlying secrets system which is used by [Vars](./vars/vars-overview.md).
|
||||
Under most circumstances you should use [Vars](./vars/vars-overview.md) directly instead.
|
||||
|
||||
Consider using `clan secrets` only for managing admin users and groups, as well as a debugging tool.
|
||||
|
||||
|
||||
@@ -301,5 +301,5 @@ instnaces.machine-type = {
|
||||
## Further Reading
|
||||
|
||||
- [Reference Documentation for Service Authors](../../reference/clanServices/clan-service-author-interface.md)
|
||||
- [Migration Guide from ClanModules to ClanServices](../../guides/migrations/migrate-inventory-services.md)
|
||||
- [Migration Guide from ClanModules to ClanServices](../migrations/migrate-inventory-services.md)
|
||||
- [Decision that lead to ClanServices](../../decisions/01-ClanModules.md)
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
# Vars System Overview
|
||||
|
||||
The vars system is clan's declarative solution for managing generated files, secrets, and dynamic configuration in your NixOS deployments. It eliminates the manual steps of generating credentials, certificates, and other dynamic values by automating these processes within your infrastructure-as-code workflow.
|
||||
|
||||
@@ -19,7 +18,7 @@ This approach has several problems:
|
||||
|
||||
- **Not reproducible**: Manual steps vary between team members
|
||||
|
||||
- **Hard to maintain**: Updating secrets requires remembering manual commands
|
||||
- **Hard to maintain**: Updating secrets requires remembering manual commands
|
||||
|
||||
- **Deployment friction**: Secrets must be managed outside of your configuration
|
||||
|
||||
@@ -38,7 +37,7 @@ clan.core.vars.generators.root-password = {
|
||||
runtimeInputs = [ pkgs.mkpasswd ];
|
||||
};
|
||||
|
||||
users.users.root.hashedPasswordFile =
|
||||
users.users.root.hashedPasswordFile =
|
||||
config.clan.core.vars.generators.root-password.files.hash.path;
|
||||
```
|
||||
|
||||
@@ -92,7 +91,7 @@ Define how to create files from inputs:
|
||||
|
||||
- **Prompts**: Values requested from users
|
||||
|
||||
- **Scripts**: Generation logic
|
||||
- **Scripts**: Generation logic
|
||||
|
||||
- **Dependencies**: Other generators this depends on
|
||||
|
||||
@@ -123,9 +122,9 @@ Here's a complete example showing password generation and usage:
|
||||
'';
|
||||
runtimeInputs = [ pkgs.mkpasswd ];
|
||||
};
|
||||
|
||||
|
||||
users.users.myuser = {
|
||||
hashedPasswordFile =
|
||||
hashedPasswordFile =
|
||||
config.clan.core.vars.generators.user-password.files.hash.path;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,39 +1,107 @@
|
||||
---
|
||||
hide:
|
||||
- navigation
|
||||
- toc
|
||||
---
|
||||
|
||||
# :material-home: What is Clan?
|
||||
# What is Clan?
|
||||
<style>
|
||||
.clamp-wrap {
|
||||
--lines: 5; /* visible lines when collapsed */
|
||||
--fade-height: 2.5rem;/* fade size */
|
||||
font: inherit;
|
||||
color: inherit;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
[Clan](https://clan.lol/) is a peer-to-peer computer management framework that
|
||||
empowers you to **selfhost in a reliable and scalable way**.
|
||||
/* Accessible, visually hidden checkbox */
|
||||
.clamp-toggle {
|
||||
position: absolute;
|
||||
width: 1px; height: 1px;
|
||||
margin: -1px; border: 0; padding: 0;
|
||||
clip: rect(0 0 0 0); clip-path: inset(50%);
|
||||
overflow: hidden; white-space: nowrap;
|
||||
}
|
||||
|
||||
Built on NixOS, Clan provides a **declarative interface for managing machines** with automated [secret management](./guides/secrets.md), easy [mesh VPN
|
||||
connectivity](./guides/mesh-vpn.md), and [automated backups](./guides/backups.md).
|
||||
.clamp-content {
|
||||
display: -webkit-box;
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: var(--lines);
|
||||
overflow: hidden;
|
||||
|
||||
Whether you're running a homelab or maintaining critical computing infrastructure,
|
||||
Clan will help **reduce maintenance burden** by allowing a **git repository to define your whole network** of computers.
|
||||
/* Fade via mask (no overlay needed) */
|
||||
-webkit-mask-image: linear-gradient(
|
||||
to bottom,
|
||||
black,
|
||||
black calc(100% - var(--fade-height)),
|
||||
transparent
|
||||
);
|
||||
mask-image: linear-gradient(
|
||||
to bottom,
|
||||
black,
|
||||
black calc(100% - var(--fade-height)),
|
||||
transparent
|
||||
);
|
||||
}
|
||||
|
||||
In combination with [sops-nix](https://github.com/Mic92/sops-nix), [nixos-anywhere](https://github.com/nix-community/nixos-anywhere) and [disko](https://github.com/nix-community/disko), Clan makes it possible to have **collaborative infrastructure**.
|
||||
/* Right-aligned Read more/less */
|
||||
.clamp-more {
|
||||
display: block;
|
||||
width: max-content;
|
||||
/* margin-left: auto; */
|
||||
margin-top: 0.5rem;
|
||||
cursor: pointer;
|
||||
color: #0057d9;
|
||||
text-decoration: underline;
|
||||
user-select: none;
|
||||
}
|
||||
.clamp-more:hover,
|
||||
.clamp-more:focus { text-decoration: none; }
|
||||
|
||||
At the heart of Clan are [Clan Services](./reference/clanServices/index.md) - the core
|
||||
concept that enables you to add functionality across multiple machines in your
|
||||
network. While Clan ships with essential core services, you can [create custom
|
||||
services](./guides/clanServices.md) tailored to your specific needs.
|
||||
/* Expanded state */
|
||||
.clamp-toggle:checked ~ .clamp-content {
|
||||
-webkit-line-clamp: initial;
|
||||
display: block;
|
||||
-webkit-mask-image: none;
|
||||
mask-image: none;
|
||||
}
|
||||
|
||||
/* Dynamic label text */
|
||||
.clamp-more::after { content: "Read more"; }
|
||||
.clamp-toggle:checked ~ .clamp-more::after { content: "Read less"; }
|
||||
</style>
|
||||
|
||||
## :material-book: Guides
|
||||
<div class="clamp-wrap" style="--lines: 3;">
|
||||
<input type="checkbox" id="clan-readmore" class="clamp-toggle" />
|
||||
<div class="clamp-content">
|
||||
<p><a href="https://clan.lol/">Clan</a> is a peer-to-peer computer management framework that empowers you to selfhost in a reliable and scalable way</strong>.</p>
|
||||
<p>Built on NixOS, Clan provides a declarative interface for managing machines</strong> with automated <a href="./guides/secrets.md">secret management</a>, easy <a href="./guides/mesh-vpn.md">mesh VPN connectivity</a>, and <a href="./guides/backups.md">automated backups</a>.</p>
|
||||
<p>Whether you're running a homelab or maintaining critical computing infrastructure, Clan will help reduce maintenance burden</strong> by allowing a git repository to define your whole network</strong> of computers.</p>
|
||||
<p>In combination with <a href="https://github.com/Mic92/sops-nix">sops-nix</a>, <a href="https://github.com/nix-community/nixos-anywhere">nixos-anywhere</a> and <a href="https://github.com/nix-community/disko">disko</a>, Clan makes it possible to have collaborative infrastructure</strong>.</p>
|
||||
<p>At the heart of Clan are <a href="./reference/clanServices/index.md">Clan Services</a> - the core concept that enables you to add functionality across multiple machines in your network. While Clan ships with essential core services, you can <a href="./guides/inventory/clanServices.md">create custom services</a> tailored to your specific needs.</p>
|
||||
</div>
|
||||
<label class="clamp-more" for="clan-readmore"></label>
|
||||
</div>
|
||||
|
||||
How-to Guides for achieving a certain goal or solving a specific issue.
|
||||
---
|
||||
|
||||
[Get started](./guides/getting-started/index.md){ .md-button .md-button--primary }
|
||||
[View on Gitea](https://git.clan.lol/clan/clan-core){ .md-button }
|
||||
|
||||
## Guides
|
||||
|
||||
<div class="grid cards" markdown>
|
||||
|
||||
- [:material-clock-fast: Getting Started](./guides/getting-started/index.md)
|
||||
- [Inventory](./guides/inventory/inventory.md)
|
||||
|
||||
---
|
||||
|
||||
Get started in less than 20 minutes!
|
||||
Learn how about inventory
|
||||
|
||||
- [Vars](./guides/vars/vars-overview.md)
|
||||
|
||||
---
|
||||
|
||||
Learn how to use vars
|
||||
|
||||
- [macOS](./guides/macos.md)
|
||||
|
||||
@@ -41,35 +109,40 @@ How-to Guides for achieving a certain goal or solving a specific issue.
|
||||
|
||||
Using Clan to manage your macOS machines
|
||||
|
||||
- [Contribute](./guides/contributing/CONTRIBUTING.md)
|
||||
|
||||
---
|
||||
|
||||
How to set up a development environment
|
||||
|
||||
</div>
|
||||
|
||||
## Concepts
|
||||
|
||||
Explore the underlying principles of Clan
|
||||
## Reference
|
||||
|
||||
<div class="grid cards" markdown>
|
||||
|
||||
- [Vars](./guides/vars/vars-overview.md)
|
||||
- [CLI](./reference/cli/index.md)
|
||||
|
||||
---
|
||||
|
||||
Learn about Generators, our way to secret management
|
||||
command line interface
|
||||
|
||||
- [Inventory](./concepts/inventory.md)
|
||||
- [Clan Options](/options)
|
||||
|
||||
---
|
||||
|
||||
Learn about the Inventory, a multi machine Nix interface
|
||||
Search all options
|
||||
|
||||
- [Services](./reference/clanServices/index.md)
|
||||
|
||||
---
|
||||
|
||||
Discover services
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
## Blog
|
||||
|
||||
Visit our [Clan Blog](https://clan.lol/blog/) for the latest updates, tutorials, and community stories.
|
||||
<div class="grid cards" markdown>
|
||||
|
||||
- [Clan Blog](https://clan.lol/blog/)
|
||||
|
||||
---
|
||||
|
||||
For the latest updates, tutorials, and community stories.
|
||||
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user