diff --git a/.cross_compile.sh b/.cross_compile.sh
index a3ee9d3..de85920 100644
--- a/.cross_compile.sh
+++ b/.cross_compile.sh
@@ -4,14 +4,14 @@
# @Date: 2022-10-20 02:19:06
# @LastEditors: Vincent Yang
# @LastEditTime: 2024-03-20 16:52:40
- # @FilePath: /DeepLX/.cross_compile.sh
+ # @FilePath: /DLX/.cross_compile.sh
# @Telegram: https://t.me/missuo
#
# Copyright © 2022 by Vincent, All Rights Reserved.
###
set -e
-DIST_PREFIX="deeplx"
+DIST_PREFIX="dlx"
DEBUG_MODE=${2}
TARGET_DIR="dist"
PLATFORMS="darwin/amd64 darwin/arm64 linux/386 linux/amd64 linux/arm64 linux/mips openbsd/amd64 openbsd/arm64 freebsd/amd64 freebsd/arm64 windows/386 windows/amd64"
diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml
index 8a30021..5ab9de9 100644
--- a/.github/workflows/docker.yaml
+++ b/.github/workflows/docker.yaml
@@ -8,7 +8,7 @@ on:
- 'v*'
env:
- DOCKER_IMAGE_NAME: missuo/deeplx
+ DOCKER_IMAGE_NAME: missuo/dlx
GHCR_IMAGE_NAME: ${{ github.repository }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index 6a7c42e..d3ab36c 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -41,7 +41,7 @@ jobs:
CGO_ENABLED: "0"
run: |
mkdir -p dist
- BINARY="dist/deeplx_${GOOS}_${GOARCH}"
+ BINARY="dist/dlx_${GOOS}_${GOARCH}"
if [ "${GOOS}" = "windows" ]; then
BINARY="${BINARY}.exe"
fi
@@ -50,7 +50,7 @@ jobs:
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
- name: deeplx_${{ matrix.goos }}_${{ matrix.goarch }}
+ name: dlx_${{ matrix.goos }}_${{ matrix.goarch }}
path: dist/*
if-no-files-found: error
diff --git a/.gitignore b/.gitignore
index 441b910..d23b9a4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,5 @@
-DeepLX
+DLX
+dlx
# macOS Finder metadata
.DS_Store
diff --git a/Dockerfile b/Dockerfile
index 7ae590b..fe40b8e 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,13 +1,13 @@
FROM golang:1.25 AS builder
-WORKDIR /go/src/github.com/OwO-Network/DeepLX
+WORKDIR /go/src/github.com/OwO-Network/DLX
COPY . .
RUN go get -d -v ./
-RUN CGO_ENABLED=0 go build -a -installsuffix cgo -o deeplx .
+RUN CGO_ENABLED=0 go build -a -installsuffix cgo -o dlx .
FROM alpine:latest
WORKDIR /app
-RUN addgroup -S deeplx && adduser -h /app -G deeplx -SH deeplx
-USER deeplx:deeplx
-COPY --from=builder --chown=deeplx:deeplx /go/src/github.com/OwO-Network/DeepLX/deeplx /app/deeplx
+RUN addgroup -S dlx && adduser -h /app -G dlx -SH dlx
+USER dlx:dlx
+COPY --from=builder --chown=dlx:dlx /go/src/github.com/OwO-Network/DLX/dlx /app/dlx
EXPOSE 1188
-ENTRYPOINT ["/app/deeplx"]
+ENTRYPOINT ["/app/dlx"]
diff --git a/README.md b/README.md
index b13306a..c7b6089 100644
--- a/README.md
+++ b/README.md
@@ -2,32 +2,63 @@
* @Author: Vincent Young
* @Date: 2022-10-18 07:32:29
* @LastEditors: Vincent Yang
- * @LastEditTime: 2024-11-30 19:48:00
- * @FilePath: /DeepLX/README.md
+ * @LastEditTime: 2026-07-08 00:00:00
+ * @FilePath: /DLX/README.md
* @Telegram: https://t.me/missuo
*
* Copyright © 2022 by Vincent, All Rights Reserved.
-->
-[![GitHub Workflow][1]](https://github.com/OwO-Network/DeepLX/actions)
-[![Go Version][2]](https://github.com/OwO-Network/DeepLX/blob/main/go.mod)
-[![Go Report][3]](https://goreportcard.com/badge/github.com/OwO-Network/DeepLX)
-[![GitHub License][4]](https://github.com/OwO-Network/DeepLX/blob/main/LICENSE)
-[![Docker Pulls][5]](https://hub.docker.com/r/missuo/deeplx)
-[![Releases][6]](https://github.com/OwO-Network/DeepLX/releases)
+# DLX
-[1]: https://img.shields.io/github/actions/workflow/status/OwO-Network/DeepLX/release.yaml?logo=github
-[2]: https://img.shields.io/github/go-mod/go-version/OwO-Network/DeepLX?logo=go
-[3]: https://goreportcard.com/badge/github.com/OwO-Network/DeepLX
-[4]: https://img.shields.io/github/license/OwO-Network/DeepLX
-[5]: https://img.shields.io/docker/pulls/missuo/deeplx?logo=docker
-[6]: https://img.shields.io/github/v/release/OwO-Network/DeepLX?logo=smartthings
+[![GitHub Workflow][1]](https://github.com/OwO-Network/DLX/actions)
+[![Go Version][2]](https://github.com/OwO-Network/DLX/blob/main/go.mod)
+[![Go Report][3]](https://goreportcard.com/badge/github.com/OwO-Network/DLX)
+[![GitHub License][4]](https://github.com/OwO-Network/DLX/blob/main/LICENSE)
+[![Docker Pulls][5]](https://hub.docker.com/r/missuo/dlx)
+[![Releases][6]](https://github.com/OwO-Network/DLX/releases)
-## How to use
+[1]: https://img.shields.io/github/actions/workflow/status/OwO-Network/DLX/release.yaml?logo=github
+[2]: https://img.shields.io/github/go-mod/go-version/OwO-Network/DLX?logo=go
+[3]: https://goreportcard.com/badge/github.com/OwO-Network/DLX
+[4]: https://img.shields.io/github/license/OwO-Network/DLX
+[5]: https://img.shields.io/docker/pulls/missuo/dlx?logo=docker
+[6]: https://img.shields.io/github/v/release/OwO-Network/DLX?logo=smartthings
-> \[!TIP]
->
-> Learn more about [📘 Using DeepLX](https://deeplx.owo.network) by checking it out.
+> [!IMPORTANT]
+> **Disclaimer:** DLX is an independent, open-source project. It is **not** affiliated with, endorsed by, or sponsored by DeepL SE in any way. "DeepL" is a registered trademark of DeepL SE. Any reference to DeepL in this repository is made solely to describe interoperability with the DeepL translation service.
+
+DLX is a self-hosted translation API server written in Go. It exposes a simple HTTP API on port `1188`.
+
+## Usage
+
+### Docker
+
+```bash
+docker run -d -p 1188:1188 ghcr.io/owo-network/dlx:latest
+```
+
+Or use the provided [`compose.yaml`](compose.yaml):
+
+```bash
+docker compose up -d
+```
+
+### Binary
+
+Download the binary for your platform from [Releases](https://github.com/OwO-Network/DLX/releases) and run it:
+
+```bash
+./dlx
+```
+
+### Translate
+
+```bash
+curl -X POST http://localhost:1188/translate \
+ -H "Content-Type: application/json" \
+ -d '{"text": "Hello, world!", "source_lang": "EN", "target_lang": "ZH"}'
+```
## Discussion Group
[Telegram Group](https://t.me/+8KDGHKJCxEVkNzll)
@@ -36,12 +67,12 @@
### Contributors
-
-
+
+
## Activity

## License
-[](https://app.fossa.com/projects/git%2Bgithub.com%2FOwO-Network%2FDeepLX?ref=badge_large)
+[MIT](LICENSE)
diff --git a/compose.yaml b/compose.yaml
index eb0bd1b..5f40f2a 100644
--- a/compose.yaml
+++ b/compose.yaml
@@ -1,6 +1,6 @@
services:
- deeplx:
- image: ghcr.io/owo-network/deeplx:latest
+ dlx:
+ image: ghcr.io/owo-network/dlx:latest
restart: always
ports:
- "1188:1188"
diff --git a/deeplx.service b/dlx.service
similarity index 71%
rename from deeplx.service
rename to dlx.service
index a38c45e..1042807 100644
--- a/deeplx.service
+++ b/dlx.service
@@ -1,12 +1,12 @@
[Unit]
-Description=DeepLX Service
+Description=DLX Service
After=network.target
[Service]
Type=simple
Restart=always
WorkingDirectory=/usr/bin/
-ExecStart=/usr/bin/deeplx
+ExecStart=/usr/bin/dlx
[Install]
WantedBy=multi-user.target
diff --git a/go.mod b/go.mod
index 7de87bb..1315651 100644
--- a/go.mod
+++ b/go.mod
@@ -1,4 +1,4 @@
-module github.com/OwO-Network/DeepLX
+module github.com/OwO-Network/DLX
go 1.25.0
diff --git a/img/6a48ba28621f2465028f0.png b/img/6a48ba28621f2465028f0.png
deleted file mode 100644
index e08fe30..0000000
Binary files a/img/6a48ba28621f2465028f0.png and /dev/null differ
diff --git a/img/c5c19dd89df6fae1a256d.png b/img/c5c19dd89df6fae1a256d.png
deleted file mode 100644
index 13d9845..0000000
Binary files a/img/c5c19dd89df6fae1a256d.png and /dev/null differ
diff --git a/install.sh b/install.sh
index 44c5615..3ed2bc7 100644
--- a/install.sh
+++ b/install.sh
@@ -1,21 +1,21 @@
###
# @Author: Vincent Young
# @Date: 2023-02-12 09:53:21
- # @LastEditors: Vincent Young
- # @LastEditTime: 2023-02-12 10:01:57
- # @FilePath: /DeepLX/install.sh
+ # @LastEditors: Vincent Yang
+ # @LastEditTime: 2026-07-08 00:00:00
+ # @FilePath: /DLX/install.sh
# @Telegram: https://t.me/missuo
- #
- # Copyright © 2023 by Vincent, All Rights Reserved.
-###
+ #
+ # Copyright © 2023 by Vincent, All Rights Reserved.
+###
-install_deeplx(){
- last_version=$(curl -Ls "https://api.github.com/repos/OwO-Network/DeepLX/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
+install_dlx(){
+ last_version=$(curl -Ls "https://api.github.com/repos/OwO-Network/DLX/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
if [[ ! -n "$last_version" ]]; then
- echo -e "${red}Failed to detect DeepLX version, probably due to exceeding Github API limitations.${plain}"
+ echo -e "${red}Failed to detect DLX version, probably due to exceeding Github API limitations.${plain}"
exit 1
fi
- echo -e "DeepLX latest version: ${last_version}, Start install..."
+ echo -e "DLX latest version: ${last_version}, Start install..."
arch=$(uname -m)
case "${arch}" in
@@ -29,13 +29,13 @@ install_deeplx(){
;;
esac
- wget -q -N --no-check-certificate -O /usr/bin/deeplx https://github.com/OwO-Network/DeepLX/releases/download/${last_version}/deeplx_linux_${file_arch}
+ wget -q -N --no-check-certificate -O /usr/bin/dlx https://github.com/OwO-Network/DLX/releases/download/${last_version}/dlx_linux_${file_arch}
- chmod +x /usr/bin/deeplx
- wget -q -N --no-check-certificate -O /etc/systemd/system/deeplx.service https://raw.githubusercontent.com/OwO-Network/DeepLX/main/deeplx.service
+ chmod +x /usr/bin/dlx
+ wget -q -N --no-check-certificate -O /etc/systemd/system/dlx.service https://raw.githubusercontent.com/OwO-Network/DLX/main/dlx.service
systemctl daemon-reload
- systemctl enable deeplx
- systemctl start deeplx
+ systemctl enable dlx
+ systemctl start dlx
echo -e "Installed successfully, listening at 0.0.0.0:1188"
}
-install_deeplx
+install_dlx
diff --git a/main.go b/main.go
index baba880..891134b 100644
--- a/main.go
+++ b/main.go
@@ -3,7 +3,7 @@
* @Date: 2023-07-01 21:45:34
* @LastEditors: Jason Lyu
* @LastEditTime: 2025-04-08 13:45:00
- * @FilePath: /DeepLX/main.go
+ * @FilePath: /DLX/main.go
* @Telegram: https://t.me/missuo
* @GitHub: https://github.com/missuo
*
@@ -17,13 +17,13 @@ import (
"github.com/gin-gonic/gin"
- "github.com/OwO-Network/DeepLX/service"
+ "github.com/OwO-Network/DLX/service"
)
func main() {
cfg := service.InitConfig()
- fmt.Printf("DeepL X has been successfully launched! Listening on %v:%v\n", cfg.IP, cfg.Port)
+ fmt.Printf("DLX has been successfully launched! Listening on %v:%v\n", cfg.IP, cfg.Port)
fmt.Println("Developed by sjlleo and missuo .")
// Setting the application to release mode
diff --git a/me.missuo.deeplx.plist b/me.missuo.dlx.plist
similarity index 83%
rename from me.missuo.deeplx.plist
rename to me.missuo.dlx.plist
index 055115f..6b7d34e 100644
--- a/me.missuo.deeplx.plist
+++ b/me.missuo.dlx.plist
@@ -3,12 +3,12 @@
Label
- me.missuo.deeplx
+ me.missuo.dlx
KeepAlive
ProgramArguments
- /usr/local/bin/deeplx
+ /usr/local/bin/dlx
RunAtLoad
diff --git a/service/config.go b/service/config.go
index b1cb4c3..4d407f1 100644
--- a/service/config.go
+++ b/service/config.go
@@ -3,7 +3,7 @@
* @Date: 2024-04-23 00:39:03
* @LastEditors: Jason Lyu
* @LastEditTime: 2025-04-08 13:45:00
- * @FilePath: /DeepLX/config.go
+ * @FilePath: /DLX/service/config.go
* @Telegram: https://t.me/missuo
* @GitHub: https://github.com/missuo
*
diff --git a/service/service.go b/service/service.go
index 251d50e..cad70c2 100644
--- a/service/service.go
+++ b/service/service.go
@@ -3,7 +3,7 @@
* @Date: 2023-07-01 21:45:34
* @LastEditors: Jason Lyu
* @LastEditTime: 2025-04-08 13:45:00
- * @FilePath: /DeepLX/main.go
+ * @FilePath: /DLX/service/service.go
* @Telegram: https://t.me/missuo
* @GitHub: https://github.com/missuo
*
@@ -23,7 +23,7 @@ import (
"github.com/gin-contrib/cors"
"github.com/gin-gonic/gin"
- "github.com/OwO-Network/DeepLX/translate"
+ "github.com/OwO-Network/DLX/translate"
)
func authMiddleware(cfg *Config) gin.HandlerFunc {
@@ -101,7 +101,7 @@ func Router(cfg *Config) *gin.Engine {
r.GET("/", func(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{
"code": http.StatusOK,
- "message": "DeepL Free API, Developed by sjlleo and missuo. Go to /translate with POST. http://github.com/OwO-Network/DeepLX",
+ "message": "DLX Translation API, Developed by sjlleo and missuo. Go to /translate with POST. https://github.com/OwO-Network/DLX",
})
})
@@ -131,7 +131,7 @@ func Router(cfg *Config) *gin.Engine {
return
}
- result, err := translate.TranslateByDeepLX(sourceLang, targetLang, translateText, tagHandling, proxyURL, "")
+ result, err := translate.TranslateByDLX(sourceLang, targetLang, translateText, tagHandling, proxyURL, "")
if err != nil {
log.Printf("Translation failed: %s", err)
c.JSON(http.StatusInternalServerError, gin.H{
@@ -206,7 +206,7 @@ func Router(cfg *Config) *gin.Engine {
return
}
- result, err := translate.TranslateByDeepLX(sourceLang, targetLang, translateText, tagHandling, proxyURL, dlSession)
+ result, err := translate.TranslateByDLX(sourceLang, targetLang, translateText, tagHandling, proxyURL, dlSession)
if err != nil {
log.Printf("Translation failed: %s", err)
c.JSON(http.StatusInternalServerError, gin.H{
@@ -263,7 +263,7 @@ func Router(cfg *Config) *gin.Engine {
targetLang = jsonData.TargetLang
}
- result, err := translate.TranslateByDeepLX("", targetLang, translateText, "", proxyURL, "")
+ result, err := translate.TranslateByDLX("", targetLang, translateText, "", proxyURL, "")
if err != nil {
log.Printf("Translation failed: %s", err)
c.JSON(http.StatusInternalServerError, gin.H{
diff --git a/translate/translate.go b/translate/translate.go
index e407d36..b632272 100644
--- a/translate/translate.go
+++ b/translate/translate.go
@@ -3,7 +3,7 @@
* @Date: 2024-09-16 11:59:24
* @LastEditors: Vincent Yang
* @LastEditTime: 2026-05-22 00:00:00
- * @FilePath: /DeepLX/translate/translate.go
+ * @FilePath: /DLX/translate/translate.go
* @Telegram: https://t.me/missuo
* @GitHub: https://github.com/missuo
*
@@ -382,13 +382,13 @@ func callOneshot(endpoint string, body []byte, bearerToken, proxyURL string) (gj
return gjson.ParseBytes(raw), resp.StatusCode, nil
}
-// TranslateByDeepLX performs translation via the DeepL oneshot endpoint.
+// TranslateByDLX performs translation via the DeepL oneshot endpoint.
// Passing dlSession switches to the Pro endpoint; the value is sent
// verbatim as the Bearer token (i.e. it must be an OAuth access token,
// not the legacy dl_session cookie).
-func TranslateByDeepLX(sourceLang, targetLang, text string, tagHandling string, proxyURL string, dlSession string) (DeepLXTranslationResult, error) {
+func TranslateByDLX(sourceLang, targetLang, text string, tagHandling string, proxyURL string, dlSession string) (DLXTranslationResult, error) {
if text == "" {
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
Code: http.StatusNotFound,
Message: "No text to translate",
}, nil
@@ -396,21 +396,21 @@ func TranslateByDeepLX(sourceLang, targetLang, text string, tagHandling string,
resolvedTarget, err := resolveTargetLang(targetLang)
if err != nil {
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
Code: http.StatusBadRequest,
Message: err.Error(),
}, nil
}
resolvedSource, err := resolveSourceLang(sourceLang)
if err != nil {
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
Code: http.StatusBadRequest,
Message: err.Error(),
}, nil
}
if n := utf8.RuneCountInString(text); n > maxFreeTextLength {
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
Code: http.StatusRequestEntityTooLarge,
Message: fmt.Sprintf("text exceeds maximum length: %d characters (anonymous oneshot limit is %d)", n, maxFreeTextLength),
}, nil
@@ -443,13 +443,13 @@ func TranslateByDeepLX(sourceLang, targetLang, text string, tagHandling string,
// took too long" from other 503 failure modes (DNS, TLS, etc.).
var ue *url.Error
if errors.Is(err, context.DeadlineExceeded) || (errors.As(err, &ue) && ue.Timeout()) {
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
ID: id,
Code: http.StatusGatewayTimeout,
Message: fmt.Sprintf("upstream DeepL request timed out after %s", oneshotTimeout),
}, nil
}
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
ID: id,
Code: http.StatusServiceUnavailable,
Message: err.Error(),
@@ -460,13 +460,13 @@ func TranslateByDeepLX(sourceLang, targetLang, text string, tagHandling string,
case http.StatusOK:
// fall through to body parsing
case http.StatusTooManyRequests:
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
ID: id,
Code: http.StatusTooManyRequests,
Message: "too many requests, your IP has been blocked by DeepL temporarily, please don't request it frequently in a short time",
}, nil
default:
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
ID: id,
Code: http.StatusServiceUnavailable,
Message: fmt.Sprintf("request failed with status code: %d", status),
@@ -475,7 +475,7 @@ func TranslateByDeepLX(sourceLang, targetLang, text string, tagHandling string,
translations := result.Get("translations").Array()
if len(translations) == 0 {
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
ID: id,
Code: http.StatusServiceUnavailable,
Message: "Translation failed",
@@ -484,7 +484,7 @@ func TranslateByDeepLX(sourceLang, targetLang, text string, tagHandling string,
mainText := translations[0].Get("text").String()
if mainText == "" {
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
ID: id,
Code: http.StatusServiceUnavailable,
Message: "Translation failed",
@@ -495,7 +495,7 @@ func TranslateByDeepLX(sourceLang, targetLang, text string, tagHandling string,
sourceLang = strings.ToUpper(detected)
}
- return DeepLXTranslationResult{
+ return DLXTranslationResult{
Code: http.StatusOK,
ID: id,
Data: mainText,
diff --git a/translate/types.go b/translate/types.go
index 7b20801..284df7e 100644
--- a/translate/types.go
+++ b/translate/types.go
@@ -3,7 +3,7 @@
* @Date: 2024-09-16 11:59:24
* @LastEditors: Vincent Yang
* @LastEditTime: 2026-05-22 00:00:00
- * @FilePath: /DeepLX/translate/types.go
+ * @FilePath: /DLX/translate/types.go
* @Telegram: https://t.me/missuo
* @GitHub: https://github.com/missuo
*
@@ -12,11 +12,11 @@
package translate
-// DeepLXTranslationResult is the public response shape consumed by the HTTP
+// DLXTranslationResult is the public response shape consumed by the HTTP
// handlers in the service package. The structure predates the migration to
// the oneshot endpoint; Alternatives is now always empty because oneshot does
// not return alternative translations, and ID is synthesized from time.
-type DeepLXTranslationResult struct {
+type DLXTranslationResult struct {
Code int `json:"code"`
ID int64 `json:"id"`
Message string `json:"message,omitempty"`
diff --git a/uninstall.sh b/uninstall.sh
index e10bce0..d3f5a38 100755
--- a/uninstall.sh
+++ b/uninstall.sh
@@ -12,44 +12,44 @@ if [[ $EUID -ne 0 ]]; then
exit 1
fi
-uninstall_deeplx() {
- echo -e "${green}Starting DeepLX uninstallation...${plain}"
+uninstall_dlx() {
+ echo -e "${green}Starting DLX uninstallation...${plain}"
- # 1. Stop and disable the DeepLX service
- if systemctl is-active --quiet deeplx; then
- echo -e "${yellow}Stopping DeepLX service...${plain}"
- systemctl stop deeplx
+ # 1. Stop and disable the DLX service
+ if systemctl is-active --quiet dlx; then
+ echo -e "${yellow}Stopping DLX service...${plain}"
+ systemctl stop dlx
else
- echo -e "${yellow}DeepLX service is not running or not found.${plain}"
+ echo -e "${yellow}DLX service is not running or not found.${plain}"
fi
- if systemctl is-enabled --quiet deeplx; then
- echo -e "${yellow}Disabling DeepLX service from starting on boot...${plain}"
- systemctl disable deeplx
+ if systemctl is-enabled --quiet dlx; then
+ echo -e "${yellow}Disabling DLX service from starting on boot...${plain}"
+ systemctl disable dlx
else
- echo -e "${yellow}DeepLX service is not enabled.${plain}"
+ echo -e "${yellow}DLX service is not enabled.${plain}"
fi
# 2. Remove the systemd service file
- if [ -f /etc/systemd/system/deeplx.service ]; then
- echo -e "${yellow}Removing DeepLX systemd service file (/etc/systemd/system/deeplx.service)...${plain}"
- rm -f /etc/systemd/system/deeplx.service
+ if [ -f /etc/systemd/system/dlx.service ]; then
+ echo -e "${yellow}Removing DLX systemd service file (/etc/systemd/system/dlx.service)...${plain}"
+ rm -f /etc/systemd/system/dlx.service
systemctl daemon-reload
echo -e "${green}Systemd daemon reloaded.${plain}"
else
- echo -e "${yellow}DeepLX systemd service file not found, skipping removal.${plain}"
+ echo -e "${yellow}DLX systemd service file not found, skipping removal.${plain}"
fi
- # 3. Remove the DeepLX executable
- if [ -f /usr/bin/deeplx ]; then
- echo -e "${yellow}Removing DeepLX executable (/usr/bin/deeplx)...${plain}"
- rm -f /usr/bin/deeplx
+ # 3. Remove the DLX executable
+ if [ -f /usr/bin/dlx ]; then
+ echo -e "${yellow}Removing DLX executable (/usr/bin/dlx)...${plain}"
+ rm -f /usr/bin/dlx
else
- echo -e "${yellow}DeepLX executable not found, skipping removal.${plain}"
+ echo -e "${yellow}DLX executable not found, skipping removal.${plain}"
fi
- echo -e "${green}DeepLX uninstallation complete.${plain}"
+ echo -e "${green}DLX uninstallation complete.${plain}"
echo -e "${green}If you wish to reinstall, please run the install script again.${plain}"
}
-uninstall_deeplx
+uninstall_dlx