Compare commits
2 Commits
25b903e26c
...
bfd5776c46
@@ -272,6 +272,7 @@ footer:
|
|||||||
<a style="margin-inline:5px"target="_blank" href="https://hexo.io/zh-cn/"><img src="https://img.shields.io/badge/Frame-Hexo-blue?style=flat&logo=hexo" title="hexo 8.1"></a>
|
<a style="margin-inline:5px"target="_blank" href="https://hexo.io/zh-cn/"><img src="https://img.shields.io/badge/Frame-Hexo-blue?style=flat&logo=hexo" title="hexo 8.1"></a>
|
||||||
<a style="margin-inline:5px"target="_blank" href="https://butterfly.js.org"><img src="https://img.shields.io/badge/Theme-Butterfly-pink?style=flat" title="butterfly主题"></a>
|
<a style="margin-inline:5px"target="_blank" href="https://butterfly.js.org"><img src="https://img.shields.io/badge/Theme-Butterfly-pink?style=flat" title="butterfly主题"></a>
|
||||||
<a style="margin-inline:5px"target="_blank" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"><img src="https://img.shields.io/badge/Copyright-BY--NC--SA-red?style=flat&logo=alchemy" title="CC BY-NC-SA 4.0"></a>
|
<a style="margin-inline:5px"target="_blank" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"><img src="https://img.shields.io/badge/Copyright-BY--NC--SA-red?style=flat&logo=alchemy" title="CC BY-NC-SA 4.0"></a>
|
||||||
|
<a href="https://www.trustssl.cc/ipv6.php?domain=blog.biss.click" title="本站已支持IPv6访问" target="_blank"><img src="https://static.coolcdn.cn/images/ipv6.svg"/></a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
|
|||||||
@@ -144,6 +144,8 @@ feed:
|
|||||||
pretty_atom_file: /css/atom.xsl
|
pretty_atom_file: /css/atom.xsl
|
||||||
pretty_rss2_file: /css/rss2.xsl
|
pretty_rss2_file: /css/rss2.xsl
|
||||||
autodiscovery: true
|
autodiscovery: true
|
||||||
|
custom_elements:
|
||||||
|
- cover: 'cover'
|
||||||
|
|
||||||
sitemap:
|
sitemap:
|
||||||
path:
|
path:
|
||||||
|
|||||||
135
package-lock.json
generated
135
package-lock.json
generated
@@ -8,9 +8,9 @@
|
|||||||
"name": "hexo-site",
|
"name": "hexo-site",
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^1.13.4",
|
"axios": "^1.13.5",
|
||||||
"cheerio": "^1.2.0",
|
"cheerio": "^1.2.0",
|
||||||
"hexo": "^8.1.0",
|
"hexo": "^8.1.1",
|
||||||
"hexo-abbrlink": "^2.2.1",
|
"hexo-abbrlink": "^2.2.1",
|
||||||
"hexo-ai-summary-liushen": "^1.3.1",
|
"hexo-ai-summary-liushen": "^1.3.1",
|
||||||
"hexo-butterfly-swiper-lyx": "^1.0.2",
|
"hexo-butterfly-swiper-lyx": "^1.0.2",
|
||||||
@@ -19,13 +19,13 @@
|
|||||||
"hexo-filter-mathjax": "^0.9.1",
|
"hexo-filter-mathjax": "^0.9.1",
|
||||||
"hexo-generator-archive": "^2.0.0",
|
"hexo-generator-archive": "^2.0.0",
|
||||||
"hexo-generator-category": "^2.0.0",
|
"hexo-generator-category": "^2.0.0",
|
||||||
|
"hexo-generator-feed": "^4.0.0",
|
||||||
"hexo-generator-index": "^4.0.0",
|
"hexo-generator-index": "^4.0.0",
|
||||||
"hexo-generator-search": "^2.4.3",
|
"hexo-generator-search": "^2.4.3",
|
||||||
"hexo-generator-searchdb": "^1.5.0",
|
"hexo-generator-searchdb": "^1.5.0",
|
||||||
"hexo-generator-sitemap": "^3.0.1",
|
"hexo-generator-sitemap": "^3.0.1",
|
||||||
"hexo-generator-tag": "^2.0.0",
|
"hexo-generator-tag": "^2.0.0",
|
||||||
"hexo-indexnow": "^1.2.0",
|
"hexo-indexnow": "^1.2.0",
|
||||||
"hexo-pretty-feed": "^1.1.0",
|
|
||||||
"hexo-renderer-ejs": "^2.0.0",
|
"hexo-renderer-ejs": "^2.0.0",
|
||||||
"hexo-renderer-marked": "^7.0.1",
|
"hexo-renderer-marked": "^7.0.1",
|
||||||
"hexo-renderer-pug": "^3.0.0",
|
"hexo-renderer-pug": "^3.0.0",
|
||||||
@@ -1157,6 +1157,59 @@
|
|||||||
"integrity": "sha512-KUwE3MizTzXwhrvTTEpWbug1ngV1zfjwzdxSkeWYGUoVGaaQoid+jxgg4zm4LB+OrtnD+X2xJFq7DCO3pc3fdQ==",
|
"integrity": "sha512-KUwE3MizTzXwhrvTTEpWbug1ngV1zfjwzdxSkeWYGUoVGaaQoid+jxgg4zm4LB+OrtnD+X2xJFq7DCO3pc3fdQ==",
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
|
"node_modules/fast-xml-builder": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/fast-xml-builder/-/fast-xml-builder-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-fpZuDogrAgnyt9oDDz+5DBz0zgPdPZz6D4IR7iESxRXElrlGTRkHJ9eEt+SACRJwT0FNFrt71DFQIUFBJfX/uQ==",
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/NaturalIntelligence"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
|
"node_modules/fast-xml-parser": {
|
||||||
|
"version": "5.4.1",
|
||||||
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/fast-xml-parser/-/fast-xml-parser-5.4.1.tgz",
|
||||||
|
"integrity": "sha512-BQ30U1mKkvXQXXkAGcuyUA/GA26oEB7NzOtsxCDtyu62sjGw5QraKFhx2Em3WQNjPw9PG6MQ9yuIIgkSDfGu5A==",
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/NaturalIntelligence"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"fast-xml-builder": "^1.0.0",
|
||||||
|
"strnum": "^2.1.2"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"fxparser": "src/cli/cli.js"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/feedsmith": {
|
||||||
|
"version": "2.9.0",
|
||||||
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/feedsmith/-/feedsmith-2.9.0.tgz",
|
||||||
|
"integrity": "sha512-TYucytOx4bTrD4ON0iuJG9y0Me7fiT0EZ+7MIE0xptvd8TL6nY0Z1jVPa9W39WMJUtPqV2r27TQxL/z5DCCmdA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"entities": "^7.0.0",
|
||||||
|
"fast-xml-parser": "^5.3.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/feedsmith/node_modules/entities": {
|
||||||
|
"version": "7.0.1",
|
||||||
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/entities/-/entities-7.0.1.tgz",
|
||||||
|
"integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/entities?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/fetch-blob": {
|
"node_modules/fetch-blob": {
|
||||||
"version": "3.2.0",
|
"version": "3.2.0",
|
||||||
"resolved": "https://mirrors.huaweicloud.com/repository/npm/fetch-blob/-/fetch-blob-3.2.0.tgz",
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/fetch-blob/-/fetch-blob-3.2.0.tgz",
|
||||||
@@ -2318,6 +2371,19 @@
|
|||||||
"node": ">=14"
|
"node": ">=14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/hexo-generator-feed": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/hexo-generator-feed/-/hexo-generator-feed-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-wG0SDBwJ60B+bcMQhArjSpw/bsuP1/4o9Ar+FnxTMRq5/SEZZlj7q/r7HI60olRf0eurqEm4Dm8yHfAMKQhkoA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"feedsmith": "2.9.0",
|
||||||
|
"hexo-util": "4.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=20.19.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/hexo-generator-index": {
|
"node_modules/hexo-generator-index": {
|
||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
"resolved": "https://mirrors.huaweicloud.com/repository/npm/hexo-generator-index/-/hexo-generator-index-4.0.0.tgz",
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/hexo-generator-index/-/hexo-generator-index-4.0.0.tgz",
|
||||||
@@ -2522,57 +2588,6 @@
|
|||||||
"node": ">=14"
|
"node": ">=14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/hexo-pretty-feed": {
|
|
||||||
"version": "1.1.0",
|
|
||||||
"resolved": "https://mirrors.huaweicloud.com/repository/npm/hexo-pretty-feed/-/hexo-pretty-feed-1.1.0.tgz",
|
|
||||||
"integrity": "sha512-ZSNj14FYv1inwLBz960ZIWxPTVmjXtRFR+/6U5IPhm2qBGLgj5nD3LyizeaaSoJLXhmyhPHgykxpvGBs/ATvSg==",
|
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
|
||||||
"hexo-util": "^3.0.1",
|
|
||||||
"nunjucks": "^3.2.3"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=16"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/hexo-pretty-feed/node_modules/hexo-util": {
|
|
||||||
"version": "3.3.0",
|
|
||||||
"resolved": "https://mirrors.huaweicloud.com/repository/npm/hexo-util/-/hexo-util-3.3.0.tgz",
|
|
||||||
"integrity": "sha512-YvGngXijE2muEh5L/VI4Fmjqb+/yAkmY+VuyhWVoRwQu1X7bmWodsfYRXX7CUYhi5LqsvH8FAe/yBW1+f6ZX4Q==",
|
|
||||||
"hasInstallScript": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
|
||||||
"camel-case": "^4.1.2",
|
|
||||||
"cross-spawn": "^7.0.3",
|
|
||||||
"deepmerge": "^4.2.2",
|
|
||||||
"highlight.js": "^11.6.0",
|
|
||||||
"htmlparser2": "^9.0.0",
|
|
||||||
"prismjs": "^1.29.0",
|
|
||||||
"strip-indent": "^3.0.0"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=14"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/hexo-pretty-feed/node_modules/htmlparser2": {
|
|
||||||
"version": "9.1.0",
|
|
||||||
"resolved": "https://mirrors.huaweicloud.com/repository/npm/htmlparser2/-/htmlparser2-9.1.0.tgz",
|
|
||||||
"integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==",
|
|
||||||
"funding": [
|
|
||||||
"https://github.com/fb55/htmlparser2?sponsor=1",
|
|
||||||
{
|
|
||||||
"type": "github",
|
|
||||||
"url": "https://github.com/sponsors/fb55"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
|
||||||
"domelementtype": "^2.3.0",
|
|
||||||
"domhandler": "^5.0.3",
|
|
||||||
"domutils": "^3.1.0",
|
|
||||||
"entities": "^4.5.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/hexo-renderer-ejs": {
|
"node_modules/hexo-renderer-ejs": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://mirrors.huaweicloud.com/repository/npm/hexo-renderer-ejs/-/hexo-renderer-ejs-2.0.0.tgz",
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/hexo-renderer-ejs/-/hexo-renderer-ejs-2.0.0.tgz",
|
||||||
@@ -4299,6 +4314,18 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/strnum": {
|
||||||
|
"version": "2.1.2",
|
||||||
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/strnum/-/strnum-2.1.2.tgz",
|
||||||
|
"integrity": "sha512-l63NF9y/cLROq/yqKXSLtcMeeyOfnSQlfMSlzFt/K73oIaD8DGaQWd7Z34X9GPiKqP5rbSh84Hl4bOlLcjiSrQ==",
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/NaturalIntelligence"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/stylus": {
|
"node_modules/stylus": {
|
||||||
"version": "0.62.0",
|
"version": "0.62.0",
|
||||||
"resolved": "https://mirrors.huaweicloud.com/repository/npm/stylus/-/stylus-0.62.0.tgz",
|
"resolved": "https://mirrors.huaweicloud.com/repository/npm/stylus/-/stylus-0.62.0.tgz",
|
||||||
|
|||||||
@@ -12,9 +12,9 @@
|
|||||||
"version": "8.1.1"
|
"version": "8.1.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^1.13.4",
|
"axios": "^1.13.5",
|
||||||
"cheerio": "^1.2.0",
|
"cheerio": "^1.2.0",
|
||||||
"hexo": "^8.1.0",
|
"hexo": "^8.1.1",
|
||||||
"hexo-abbrlink": "^2.2.1",
|
"hexo-abbrlink": "^2.2.1",
|
||||||
"hexo-ai-summary-liushen": "^1.3.1",
|
"hexo-ai-summary-liushen": "^1.3.1",
|
||||||
"hexo-butterfly-swiper-lyx": "^1.0.2",
|
"hexo-butterfly-swiper-lyx": "^1.0.2",
|
||||||
@@ -23,13 +23,13 @@
|
|||||||
"hexo-filter-mathjax": "^0.9.1",
|
"hexo-filter-mathjax": "^0.9.1",
|
||||||
"hexo-generator-archive": "^2.0.0",
|
"hexo-generator-archive": "^2.0.0",
|
||||||
"hexo-generator-category": "^2.0.0",
|
"hexo-generator-category": "^2.0.0",
|
||||||
|
"hexo-generator-feed": "^4.0.0",
|
||||||
"hexo-generator-index": "^4.0.0",
|
"hexo-generator-index": "^4.0.0",
|
||||||
"hexo-generator-search": "^2.4.3",
|
"hexo-generator-search": "^2.4.3",
|
||||||
"hexo-generator-searchdb": "^1.5.0",
|
"hexo-generator-searchdb": "^1.5.0",
|
||||||
"hexo-generator-sitemap": "^3.0.1",
|
"hexo-generator-sitemap": "^3.0.1",
|
||||||
"hexo-generator-tag": "^2.0.0",
|
"hexo-generator-tag": "^2.0.0",
|
||||||
"hexo-indexnow": "^1.2.0",
|
"hexo-indexnow": "^1.2.0",
|
||||||
"hexo-pretty-feed": "^1.1.0",
|
|
||||||
"hexo-renderer-ejs": "^2.0.0",
|
"hexo-renderer-ejs": "^2.0.0",
|
||||||
"hexo-renderer-marked": "^7.0.1",
|
"hexo-renderer-marked": "^7.0.1",
|
||||||
"hexo-renderer-pug": "^3.0.0",
|
"hexo-renderer-pug": "^3.0.0",
|
||||||
|
|||||||
43
source/_posts/2026/2026.2/add-renovate-bot.md
Normal file
43
source/_posts/2026/2026.2/add-renovate-bot.md
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
title: 自建renovate-bot
|
||||||
|
categories:
|
||||||
|
- 技术
|
||||||
|
cover: https://pic.biss.click/image/fca16741-64fa-495b-aa5e-a2ef077461ef.webp
|
||||||
|
swiper_index: 3
|
||||||
|
tags:
|
||||||
|
- gitea
|
||||||
|
abbrlink: 56f57c0b
|
||||||
|
summary: >-
|
||||||
|
这篇文章介绍了如何自建Renovate Bot以自动更新依赖,并通过Docker Compose进行部署。首先,文章提供了Renovate
|
||||||
|
Bot的Docker Compose文件配置,包括使用特定平台(gitea)、设置Git
|
||||||
|
API地址、生成Token以及启用自动发现功能。接着,建议创建一个专门用于管理Renovate
|
||||||
|
Bot的账户,并为其生成登录Token。最后,通过在系统的crontab中设置定时任务,可以自动化运行更新流程。
|
||||||
|
date: 2026-02-23 10:49:17
|
||||||
|
---
|
||||||
|
|
||||||
|
最近自建了`gitea`,所以把`renovatebot`也自建一下,毕竟`renovatebot`可以自动更新依赖,但是它不对自建`git`提供服务。
|
||||||
|
这是`docker compose`文件:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
services:
|
||||||
|
renovate:
|
||||||
|
image: renovate/renovate:latest
|
||||||
|
environment:
|
||||||
|
RENOVATE_PLATFORM: 'gitea'
|
||||||
|
RENOVATE_ENDPOINT: '你的git api地址'
|
||||||
|
RENOVATE_TOKEN: 'token'
|
||||||
|
RENOVATE_AUTODISCOVER: 'true'
|
||||||
|
RENOVATE_GIT_AUTHOR: Renovate Bot <bot@biss.click>
|
||||||
|
RENOVATE_USERNAME: renovate-bot
|
||||||
|
volumes:
|
||||||
|
- ./renovate-data:/tmp/renovate
|
||||||
|
```
|
||||||
|
|
||||||
|
可以新建一个`renovate`用户来专门管理,然后登录这个账户创建一个登录`token`。然后再需要使用这个的仓库添加这个用户为协作者就可以了。
|
||||||
|
这个`docker`容器在运行后会自动退出,这是正常的。
|
||||||
|
可以在系统crontab新建一个定时任务,这样就可以自动运行更新。
|
||||||
|
```bash
|
||||||
|
cd /www/compose/renovatebot && docker compose run --rm renovate
|
||||||
|
```
|
||||||
|
|
||||||
|
{% link 官方文档,Renovatebot,https://docs.renovatebot.com/examples/self-hosting/ %}
|
||||||
41
source/_posts/2026/2026.2/install-bitwarden.md
Normal file
41
source/_posts/2026/2026.2/install-bitwarden.md
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
---
|
||||||
|
title: 自建bitwarden服务
|
||||||
|
categories:
|
||||||
|
- 技术
|
||||||
|
cover: https://pic.biss.click/image/deaddd0c-e808-45f3-8354-3c44b2b65167.webp
|
||||||
|
abbrlink: 7baa41fc
|
||||||
|
summary: >-
|
||||||
|
这篇文章介绍了如何自建Bitwarden服务,以替代浏览器自带的密码管理器。Bitwarden是一款开源、端到端加密的密码管理器,支持多种操作系统和设备,具有安全存储、自动同步、一键填充、生成随机密码和检测弱密码等功能。文章详细描述了部署Bitwarden服务的步骤,包括安装Vaultwarden、配置Nginx反向代理以及设置域名和数据卷等。通过这些步骤,用户可以轻松搭建一个功能强大的密码管理服务器,提高个人信息安全。
|
||||||
|
date: 2026-02-25 11:09:23
|
||||||
|
---
|
||||||
|
|
||||||
|
Bitwarden 是一款开源、端到端加密的密码管理器,支持 Windows、macOS、Linux、Android、iOS 以及几乎所有主流浏览器。
|
||||||
|
它可以帮你:
|
||||||
|
|
||||||
|
- 安全存储密码、银行卡、笔记、密钥等敏感信息
|
||||||
|
- 全设备自动同步
|
||||||
|
- 一键自动填充账号密码
|
||||||
|
- 生成高强度随机密码
|
||||||
|
- 检测弱密码、重复密码、泄露密码
|
||||||
|
|
||||||
|
之前一直使用浏览器自带的密码管理器,跨平台不太好用,所以自建一个Bitwarden服务器。
|
||||||
|
但是我们一般用Vaultwarden,占用更小,有一些Bitwarden的商业功能。
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
services:
|
||||||
|
vaultwarden:
|
||||||
|
image: vaultwarden/server:latest
|
||||||
|
container_name: vaultwarden
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
DOMAIN: "https://vw.domain.tld" #更改成自己的域名
|
||||||
|
volumes:
|
||||||
|
- ./vw-data/:/data/
|
||||||
|
ports:
|
||||||
|
- 127.0.0.1:8000:80
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
然后使用nignx进行反向代理,然后就可以尽情享用了。
|
||||||
|
|
||||||
|
{% link vaultwarden,vaultwarden,https://github.com/dani-garcia/vaultwarden %}
|
||||||
Reference in New Issue
Block a user