Add simpledash config
3
.gitmodules
vendored
@ -1,6 +1,3 @@
|
|||||||
[submodule "themes/ananke"]
|
|
||||||
path = themes/ananke
|
|
||||||
url = https://github.com/theNewDynamic/gohugo-theme-ananke
|
|
||||||
[submodule "themes/doks"]
|
[submodule "themes/doks"]
|
||||||
path = themes/doks
|
path = themes/doks
|
||||||
url = https://github.com/h-enk/doks
|
url = https://github.com/h-enk/doks
|
||||||
|
@ -2,6 +2,5 @@
|
|||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="VcsDirectoryMappings">
|
<component name="VcsDirectoryMappings">
|
||||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/themes/ananke" vcs="Git" />
|
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
@ -41,7 +41,87 @@
|
|||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="6d777def-cf1a-4067-90b0-e601bfe77217" name="Default Changelist" comment="">
|
<list default="true" id="6d777def-cf1a-4067-90b0-e601bfe77217" name="Default Changelist" comment="">
|
||||||
|
<change afterPath="$PROJECT_DIR$/content/docs/orchestra/_index.md" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/content/docs/simpledash/_index.md" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/content/docs/simpledash/configuration.md" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/content/docs/simpledash/installation.md" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/.gitmodules" beforeDir="false" afterPath="$PROJECT_DIR$/.gitmodules" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/.idea/vcs.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/content/_index.md" beforeDir="false" afterPath="$PROJECT_DIR$/content/_index.md" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/functions/hi-from-lambda.js" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/404.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/_headers" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/_redirects" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/android-chrome-192x192.png" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/android-chrome-512x512.png" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/apple-touch-icon.png" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/contributors/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/contributors/index.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/css/highlightjs/dracula.min.css" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/css/vendor/.gitkeep" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/advmake/build-files/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/advmake/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/advmake/index.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/advmake/installation/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/advmake/page/1/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/advmake/sitemap.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/index.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/kbdemu/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/kbdemu/index.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/kbdemu/installation/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/kbdemu/page/1/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/kbdemu/sitemap.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/kbdemu/usage/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/opensend/gui/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/opensend/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/opensend/index.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/opensend/installation/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/opensend/page/1/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/opensend/sitemap.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/opensend/usage/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/page/1/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/pak/configuration/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/pak/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/pak/index.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/pak/installation/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/pak/page/1/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/pak/sitemap.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/pak/usage/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/docs/sitemap.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/doks.png" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/doks.svg" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/favicon-16x16.png" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/favicon-32x32.png" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/favicon.ico" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/.gitkeep" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-500.woff" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-500.woff2" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-500italic.woff" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-500italic.woff2" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-700.woff" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-700.woff2" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-700italic.woff" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-700italic.woff2" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-italic.woff" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-italic.woff2" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-regular.woff" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/fonts/vendor/jost/jost-v4-latin-regular.woff2" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/images/vendor/.gitkeep" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/index.html" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/index.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/js/highlightjs/highlight.min.js" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/js/vendor/.gitkeep" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/logo-doks.png" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/robots.txt" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/site.webmanifest" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/public/sitemap.xml" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/resources/_gen/assets/scss/scss/app.scss_6f53526eddd329453a95af44b07404cf.content" beforeDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/resources/_gen/assets/scss/scss/app.scss_6f53526eddd329453a95af44b07404cf.json" beforeDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
@ -55,9 +135,13 @@
|
|||||||
</list>
|
</list>
|
||||||
</option>
|
</option>
|
||||||
</component>
|
</component>
|
||||||
|
<component name="GOROOT" url="file:///usr/lib/go" />
|
||||||
<component name="Git.Settings">
|
<component name="Git.Settings">
|
||||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||||
</component>
|
</component>
|
||||||
|
<component name="MacroExpansionManager">
|
||||||
|
<option name="directoryName" value="mcdssh25" />
|
||||||
|
</component>
|
||||||
<component name="ProjectId" id="1ikie6rCic6zTz95QYEGOHpup76" />
|
<component name="ProjectId" id="1ikie6rCic6zTz95QYEGOHpup76" />
|
||||||
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
||||||
<component name="ProjectViewState">
|
<component name="ProjectViewState">
|
||||||
@ -67,10 +151,21 @@
|
|||||||
<component name="PropertiesComponent">
|
<component name="PropertiesComponent">
|
||||||
<property name="DefaultHtmlFileTemplate" value="HTML File" />
|
<property name="DefaultHtmlFileTemplate" value="HTML File" />
|
||||||
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
|
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
|
||||||
|
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
||||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/../cstate" />
|
<property name="go.import.settings.migrated" value="true" />
|
||||||
|
<property name="go.sdk.automatically.set" value="true" />
|
||||||
|
<property name="go.vendoring.notification.had.been.shown" value="true" />
|
||||||
|
<property name="last_opened_file_path" value="$PROJECT_DIR$/content/docs/simpledash" />
|
||||||
|
<property name="settings.editor.selected.configurable" value="project.propVCSSupport.Mappings" />
|
||||||
<property name="vue.rearranger.settings.migration" value="true" />
|
<property name="vue.rearranger.settings.migration" value="true" />
|
||||||
</component>
|
</component>
|
||||||
|
<component name="RecentsManager">
|
||||||
|
<key name="CopyFile.RECENT_KEYS">
|
||||||
|
<recent name="$PROJECT_DIR$/content/docs/simpledash" />
|
||||||
|
<recent name="$PROJECT_DIR$/content/docs/orchestra" />
|
||||||
|
</key>
|
||||||
|
</component>
|
||||||
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
||||||
<component name="TaskManager">
|
<component name="TaskManager">
|
||||||
<task active="true" id="Default" summary="Default task">
|
<task active="true" id="Default" summary="Default task">
|
||||||
@ -101,15 +196,9 @@
|
|||||||
</option>
|
</option>
|
||||||
<option name="oldMeFiltersMigrated" value="true" />
|
<option name="oldMeFiltersMigrated" value="true" />
|
||||||
</component>
|
</component>
|
||||||
<component name="WindowStateProjectService">
|
<component name="VcsManagerConfiguration">
|
||||||
<state x="973" y="362" width="326" height="365" key="FileChooserDialogImpl" timestamp="1603222206412">
|
<ignored-roots>
|
||||||
<screen x="0" y="27" width="1920" height="1053" />
|
<path value="$PROJECT_DIR$/themes/ananke" />
|
||||||
</state>
|
</ignored-roots>
|
||||||
<state x="973" y="362" key="FileChooserDialogImpl/0.27.1920.1053/1920.0.1920.1080@0.27.1920.1053" timestamp="1603222206412" />
|
|
||||||
<state x="973" y="362" width="326" height="365" key="FileChooserDialogImpl/0.27.1920.1053/1920.0.2560.1080@0.27.1920.1053" timestamp="1602564252356" />
|
|
||||||
<state x="853" y="264" width="505" height="399" key="search.everywhere.popup" timestamp="1602458728726">
|
|
||||||
<screen x="0" y="27" width="1920" height="1053" />
|
|
||||||
</state>
|
|
||||||
<state x="853" y="264" width="505" height="399" key="search.everywhere.popup/0.27.1920.1053/1920.0.2560.1080@0.27.1920.1053" timestamp="1602458728726" />
|
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
@ -15,10 +15,10 @@ draft: false
|
|||||||
{{< button-gitea project="opensend" text="Opensend" owner="opensend" color="green" >}}
|
{{< button-gitea project="opensend" text="Opensend" owner="opensend" color="green" >}}
|
||||||
{{< button-gitlab project="opensend" text="Opensend" color="OrangeRed" >}}
|
{{< button-gitlab project="opensend" text="Opensend" color="OrangeRed" >}}
|
||||||
|
|
||||||
- Statusboard: A full-stack web application that tracks website status written in Swift, Swift Crypto, and the Vapor stack. It uses a tabler web UI for the dashboard, a JSON config to define servers to track, and an SQLite database to keep track of log-ins and show private servers. My instance can be found [here](https://status.arsenm.dev)
|
- Simpledash: A full-stack web application to act as a dashboard for important links and information. It is written mostly in go, other than the SQLite driver for session storage. It is configured via a TOML file called `simpledash.toml`. Passwords are stored as bcrypt hashes.
|
||||||
|
|
||||||
{{< button-gitea project="statusboard" text="Statusboard" color="green" >}}
|
{{< button-gitea project="simpledash" text="Simpledash" color="green" >}}
|
||||||
{{< button-gitlab project="statusboard" text="Statusboard" color="OrangeRed" >}}
|
{{< button-gitlab project="" text="Simpledash (WIP)" color="OrangeRed" >}}
|
||||||
|
|
||||||
- Chromebook Linux Audio: A collection of bash scripts to compile and install the required kernel and audio server to enable audio and other chromebook features in a mainline linux distro.
|
- Chromebook Linux Audio: A collection of bash scripts to compile and install the required kernel and audio server to enable audio and other chromebook features in a mainline linux distro.
|
||||||
|
|
||||||
|
8
content/docs/orchestra/_index.md
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: "Orchestra Docs"
|
||||||
|
draft: true
|
||||||
|
description: "Documentation for Orchestra, a very simple orchestrator"
|
||||||
|
menu:
|
||||||
|
docs:
|
||||||
|
parent: "docs"
|
||||||
|
---
|
8
content/docs/simpledash/_index.md
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: "Simpledash Docs"
|
||||||
|
draft: false
|
||||||
|
description: "Documentation for Simpledash, a simple and fast web dashboard"
|
||||||
|
menu:
|
||||||
|
docs:
|
||||||
|
parent: "docs"
|
||||||
|
---
|
144
content/docs/simpledash/configuration.md
Normal file
@ -0,0 +1,144 @@
|
|||||||
|
---
|
||||||
|
title: "Configuration"
|
||||||
|
draft: false
|
||||||
|
description: "Configuring simpledash"
|
||||||
|
---
|
||||||
|
|
||||||
|
## Flags
|
||||||
|
|
||||||
|
Simpledash can be run using the simpledash binary directly, or for convenience, using `advmake run`.
|
||||||
|
|
||||||
|
If using the binary directly, the listen IP, port, etc. can be configured via flags.
|
||||||
|
|
||||||
|
This is the help screen of simpledash:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Usage of ./simpledash:
|
||||||
|
-a, --addr ip Bind address for HTTP server (default 0.0.0.0)
|
||||||
|
-c, --config string TOML config file (default "simpledash.toml")
|
||||||
|
--hash string Generate new bcrypt password hash
|
||||||
|
-p, --port int Bind port for HTTP server (default 8080)
|
||||||
|
simpledash: help requested
|
||||||
|
```
|
||||||
|
The default address of simpledash is `0.0.0.0:8080` meaning any origin IP on any interface, port 8080.
|
||||||
|
|
||||||
|
The `--hash` option creates a suitable bcrypt password hash for use in the config, prints it, and exits.
|
||||||
|
|
||||||
|
## Config file
|
||||||
|
|
||||||
|
Simpledash is configured using a TOML configuration file (simpledash.toml by default). It contains the users, cards, etc.
|
||||||
|
|
||||||
|
An example file is provided in the simpledash repository. It contains examples of all the card types in simpledash.
|
||||||
|
|
||||||
|
This is the example:
|
||||||
|
```toml
|
||||||
|
title = "SimpleDash"
|
||||||
|
theme = "dark"
|
||||||
|
loginRequired = false
|
||||||
|
allowProxy = ["https://www.metaweather.com/", "https://ifconfig.co/json"]
|
||||||
|
|
||||||
|
[session]
|
||||||
|
name = "simpledash-session"
|
||||||
|
|
||||||
|
[users]
|
||||||
|
[[users._public_.card]]
|
||||||
|
type = "weather"
|
||||||
|
title = "Weather"
|
||||||
|
data = {"woeid" = "2442047"}
|
||||||
|
|
||||||
|
[[users._public_.card]]
|
||||||
|
type = "api"
|
||||||
|
title = "Server IP (API card example)"
|
||||||
|
url = "https://ifconfig.co/json"
|
||||||
|
data = {"format" = """
|
||||||
|
<p class="subtitle">${data.ip}</p>
|
||||||
|
Country: ${data.country} (${data.country_iso})
|
||||||
|
Time zone: ${data.time_zone}
|
||||||
|
"""}
|
||||||
|
|
||||||
|
[users.admin]
|
||||||
|
passwordHash = "$2a$10$w00dzQ1PP6nwXLhuzV2pFOUU6m8bcZXtDX3UVxpOYq3fTSwVMqPge"
|
||||||
|
showPublic = true
|
||||||
|
|
||||||
|
[[users.admin.card]]
|
||||||
|
type = "status"
|
||||||
|
title = "Google"
|
||||||
|
icon = "ion:logo-google"
|
||||||
|
desc = "Google search engine. Status card example."
|
||||||
|
url = "https://www.google.com"
|
||||||
|
|
||||||
|
[[users.admin.card]]
|
||||||
|
type = "simple"
|
||||||
|
title = "Gmail"
|
||||||
|
icon = "simple-icons:gmail"
|
||||||
|
desc = "Gmail mail client. Simple card example"
|
||||||
|
url = "https://mail.google.com/"
|
||||||
|
|
||||||
|
[[users.admin.card]]
|
||||||
|
type = "collection"
|
||||||
|
title = "Programming"
|
||||||
|
icon = "entypo:code"
|
||||||
|
[users.admin.card.data]
|
||||||
|
Godoc = {"url" = "https://pkg.go.dev", "target" = "newTab"}
|
||||||
|
Ruby-Doc = {"url" = "https://ruby-doc.org/", "target" = "sameTab"}
|
||||||
|
|
||||||
|
[[users.admin.card]]
|
||||||
|
type = "collection"
|
||||||
|
title = "Science"
|
||||||
|
icon = "ic:outline-science"
|
||||||
|
data = {"Google Scholar" = {"url" = "https://scholar.google.com/", "target" = "sameTab"}}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Title
|
||||||
|
|
||||||
|
The title field sets the name of the website which will be used in all mentions including title tags and headers.
|
||||||
|
|
||||||
|
### Theme
|
||||||
|
|
||||||
|
The theme can either be dark or light. The dark theme was generated using darkreader.
|
||||||
|
|
||||||
|
### LoginRequired
|
||||||
|
|
||||||
|
The loginRequired field denotes whether login is required to view the dashboard. If `false`, public cards will be viewable without logging in.
|
||||||
|
|
||||||
|
### Session
|
||||||
|
|
||||||
|
The session section contains one field, `name`. This field is the name of the session cookie set in the browser upon visiting simpledash.
|
||||||
|
|
||||||
|
### Users
|
||||||
|
|
||||||
|
The `users` section contains all users and their associated cards. A user can be defined like so:
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[users.admin]
|
||||||
|
passwordHash = "$2a$10$w00dzQ1PP6nwXLhuzV2pFOUU6m8bcZXtDX3UVxpOYq3fTSwVMqPge"
|
||||||
|
showPublic = true
|
||||||
|
```
|
||||||
|
|
||||||
|
The `passwordHash` field contains a hash as created by the `--hash` flag.
|
||||||
|
|
||||||
|
The `showPublic` field is a boolean denoting whether to show public cards as well when logged in.
|
||||||
|
|
||||||
|
### Cards
|
||||||
|
|
||||||
|
Cards reside under their respective user in the config file. A card can be defined like so:
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[[users.admin.card]]
|
||||||
|
type = "status"
|
||||||
|
title = "Google"
|
||||||
|
icon = "ion:logo-google"
|
||||||
|
desc = "Google search engine. Status card example."
|
||||||
|
url = "https://www.google.com"
|
||||||
|
```
|
||||||
|
|
||||||
|
The cards contain various fields, some required, some not:
|
||||||
|
|
||||||
|
- `type`: The type of the card. (required)
|
||||||
|
- `title`: The title of the card to be used in the header. (required)
|
||||||
|
- `icon`: The icon to be used in various places depending on the card. Icons can be anything from [iconify](https://iconify.design).
|
||||||
|
- `desc`: The description of the card's content.
|
||||||
|
- `url`: The URL of the card to be used for various purposes depending on the card.
|
||||||
|
- `data`: A dictionary containing any extra data not listed above.
|
||||||
|
|
||||||
|
Card types can be added simply by adding a file to `resources/templates/cards`. The name of the file will be used as the name of the card type
|
40
content/docs/simpledash/installation.md
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
title: "Installation"
|
||||||
|
draft: false
|
||||||
|
description: "Installing simpledash"
|
||||||
|
---
|
||||||
|
|
||||||
|
## Building from source
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
|
||||||
|
Simpledash utilizes an SQLite database for session storage. That means that sqlite3 must be installed along with its development files to build simpledash. It also means cross-compilation is not as simple as setting some environment variables.
|
||||||
|
|
||||||
|
On Debian, the required packages are: `sqlite3` and `sqlite3-dev`.
|
||||||
|
|
||||||
|
On Arch, the required package is `sqlite`.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Building
|
||||||
|
|
||||||
|
To build simpledash, first, clone the git repository of simpledash. Then, use a terminal to enter the cloned directory and run:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
go build
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Building with Advmake
|
||||||
|
|
||||||
|
Simpledash can be built with another of my projects, `advmake`. Using this also builds the CSS framework used in this project, Bulma.
|
||||||
|
|
||||||
|
To build simpledash using advmake, simply run:
|
||||||
|
```shell
|
||||||
|
advmake
|
||||||
|
```
|
||||||
|
To run via advmake, run:
|
||||||
|
```shell
|
||||||
|
advmake run
|
||||||
|
```
|
@ -1 +0,0 @@
|
|||||||
!function(e,t){for(var n in t)e[n]=t[n]}(exports,function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t){t.handler=(e,t,n)=>{n(null,{statusCode:200,headers:{"Content-Type":"application/json"},body:JSON.stringify({message:"Hi from Lambda."})})}}]));
|
|
@ -1,4 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="noindex, follow"><title>404 Page not found | Arsen Dev</title><meta name=description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><link rel=canonical href=/404.html><meta name=twitter:card content="summary"><meta name=twitter:title content="404 Page not found"><meta name=twitter:description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="404 Page not found"><meta property="og:description" content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta property="og:type" content="website"><meta property="og:url" content="/404.html"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"404.html","item":"\/404.html\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class=error404><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class=nav-item><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Page not found :(</h1><p class=text-center>The page you are looking for doesn't exist or has been moved.</p></article></div></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,9 +0,0 @@
|
|||||||
/*
|
|
||||||
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
|
|
||||||
X-Content-Type-Options: nosniff
|
|
||||||
X-XSS-Protection: 1; mode=block
|
|
||||||
Content-Security-Policy: default-src 'self'; frame-ancestors https://jamstackthemes.dev; manifest-src 'self'; connect-src 'self'; font-src 'self'; img-src 'self' data:; script-src 'self'; style-src 'self'
|
|
||||||
X-Frame-Options: SAMEORIGIN
|
|
||||||
Referrer-Policy: strict-origin
|
|
||||||
Feature-Policy: geolocation 'self'
|
|
||||||
Cache-Control: public, max-age=31536000
|
|
@ -1 +0,0 @@
|
|||||||
# redirects for Netlify - https://www.netlify.com/docs/redirects/
|
|
Before Width: | Height: | Size: 5.6 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 5.0 KiB |
@ -1,4 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Contributors | Arsen Dev</title><meta name=description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><link rel=canonical href=/contributors/><meta name=twitter:card content="summary"><meta name=twitter:title content="Contributors"><meta name=twitter:description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Contributors"><meta property="og:description" content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta property="og:type" content="website"><meta property="og:url" content="/contributors/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><link rel=alternate type=application/rss+xml href=/contributors/index.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Contributors","item":"\/contributors\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="contributors list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class=nav-item><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Contributors</h1><div class=text-center></div><div class=card-list></div></article></div></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Contributors on</title><link>/contributors/</link><description>Recent content in Contributors on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/contributors/index.xml" rel="self" type="application/rss+xml"/></channel></rss>
|
|
1
public/css/highlightjs/dracula.min.css
vendored
@ -1 +0,0 @@
|
|||||||
.hljs{display:block;overflow-x:auto;padding:.5em;background:#282a36}.hljs-keyword,.hljs-link,.hljs-literal,.hljs-section,.hljs-selector-tag{color:#8be9fd}.hljs-function .hljs-keyword{color:#ff79c6}.hljs,.hljs-subst{color:#f8f8f2}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-name,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#f1fa8c}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#6272a4}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic}
|
|
0
public/css/vendor/.gitkeep
vendored
@ -1,80 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Build Files | Arsen Dev</title><meta name=description content="Understanding AdvMake Build Files"><link rel=canonical href=/docs/advmake/build-files/><meta name=twitter:card content="summary"><meta name=twitter:title content="Build Files"><meta name=twitter:description content="Understanding AdvMake Build Files"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Build Files"><meta property="og:description" content="Understanding AdvMake Build Files"><meta property="og:type" content="article"><meta property="og:url" content="/docs/advmake/build-files/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsadvmakebuild Files","item":"\/docsadvmakebuild-files\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#format>Format</a></li><li><a href=#configuration>Configuration</a></li><li><a href=#modules>Modules</a><ul><li><a href=#runtime><code>runtime</code></a></li><li><a href=#encoding><code>encoding</code></a></li><li><a href=#file><code>file</code></a></li><li><a href=#strings><code>strings</code></a></li><li><a href=#input><code>input</code></a></li><li><a href=#url><code>url</code></a></li><li><a href=#shell><code>shell</code></a></li><li><a href=#net><code>net</code></a></li><li><a href=#log><code>log</code></a></li><li><a href=#fmt><code>fmt</code></a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ AdvMake Docs</a><h1 style=margin-top:.2rem>Build Files</h1><p class=lead></p><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/Arsen6331/advmake><span class=iconify data-icon=cib:gitea></span> AdvMake</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/advmake><span class=iconify data-icon=fa-brands:gitlab></span> AdvMake</a></p><h2 id=format>Format<a href=#format class=anchor aria-hidden=true>#</a></h2><p>AdvMake uses <a href=https://github.com/bazelbuild/starlark>Starlark</a> as the format for its build files.
|
|
||||||
Modules are also defined for both convenience and extra functionality.</p><p>Starlark is a Python-like language meant for configuration files.</p><h2 id=configuration>Configuration<a href=#configuration class=anchor aria-hidden=true>#</a></h2><p>Build files are by default called <code>AdvMakefile</code>, but that can be set via <code>-f</code></p><p>An AdvMakefile example can be found at AdvMake’s repo as it uses AdvMake itself.</p><p>AdvMake runs functions exposed by starlark in the format <code><name>_<target></code>.
|
|
||||||
To set the default name and target, the global variables <code>defaultName</code>, and <code>defaultTarget</code> must be set.
|
|
||||||
Here is an example from AdvMake’s AdvMakefile:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>defaultName</span> <span class=o>=</span> <span class=s2>"advmake"</span>
|
|
||||||
<span class=n>defaultTarget</span> <span class=o>=</span> <span class=s2>"build"</span>
|
|
||||||
</code></pre></div><p>This will tell AdvMake to run the function <code>advmake_build()</code> when run with no arguments.</p><p>If AdvMake is run with one argument (such as <code>advmake install</code>), it will use the default name with the specified target,
|
|
||||||
so in that case, it would run <code>advmake_install()</code>.</p><p>If run with two arguments, AdvMake will use the first argument as the name and the second as the target.
|
|
||||||
So, running <code>advmake hello world</code> would run the function <code>hello_world()</code>.</p><h2 id=modules>Modules<a href=#modules class=anchor aria-hidden=true>#</a></h2><p>As previously mentioned, AdvMake comes with modules. Those are as follows:</p><h3 id=runtime><code>runtime</code><a href=#runtime class=anchor aria-hidden=true>#</a></h3><p>The runtime module exposes some of golang’s runtime methods and variables.</p><hr><h4 id=runtimegoos><code>runtime.GOOS</code><a href=#runtimegoos class=anchor aria-hidden=true>#</a></h4><p>Stores a string denoting the operating system being used.</p><a class=btn style=color:#fff;background-color:#00acd7 href=https://pkg.go.dev/runtime#GOOS><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h4 id=runtimegoarch><code>runtime.GOARCH</code><a href=#runtimegoarch class=anchor aria-hidden=true>#</a></h4><p>Stores a string denoting the CPU architecture being used.</p><a class=btn style=color:#fff;background-color:#00acd7 href=https://pkg.go.dev/runtime#GOARCH><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h4 id=runtimenumcpu><code>runtime.NumCPU()</code><a href=#runtimenumcpu class=anchor aria-hidden=true>#</a></h4><p>Get the number of logical CPUs available to the current process</p><a class=btn style=color:#fff;background-color:#00acd7 href=https://pkg.go.dev/runtime#NumCPU><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h4 id=runtimegomaxprocs><code>runtime.GOMAXPROCS()</code><a href=#runtimegomaxprocs class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>runtime.GOMAXPROCS(n)</code></p><p>Get or set the value of the GOMAXPROCS environment variable. This variable controls the maximum number of CPUs that can execute. This function will set GOMAXPROCS to n and then return the previous value. If <code>n<1</code>, this function will not set the variable and will instead return the current setting</p><a class=btn style=color:#fff;background-color:#00acd7 href=https://pkg.go.dev/runtime#GOMAXPROCS><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h3 id=encoding><code>encoding</code><a href=#encoding class=anchor aria-hidden=true>#</a></h3><p>The strings module contains functions for encoding and decoding various formats. This module contains submodules for the various formats</p><p>Available submodules:</p><ul><li><code>Json</code></li><li><code>Yaml</code></li><li><code>Toml</code></li><li><code>Hex</code></li></ul><hr><h4 id=encodingsubmoduleload><code>encoding.<Submodule>.Load()</code><a href=#encodingsubmoduleload class=anchor aria-hidden=true>#</a></h4><p>Load a string formatted as the submodule format into a dictionary or string.</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>x</span> <span class=o>=</span> <span class=n>encoding</span><span class=o>.</span><span class=n>Json</span><span class=o>.</span><span class=n>Load</span><span class=p>(</span><span class=s1>'{"encoding": "json"}'</span><span class=p>)</span>
|
|
||||||
<span class=c1># x["encoding"] == "json"</span>
|
|
||||||
<span class=n>y</span> <span class=o>=</span> <span class=n>encoding</span><span class=o>.</span><span class=n>Hex</span><span class=o>.</span><span class=n>Load</span><span class=p>(</span><span class=s1>'546573740a'</span><span class=p>)</span>
|
|
||||||
<span class=c1># y == "Test"</span>
|
|
||||||
</code></pre></div><hr><h4 id=encodingsubmoduledump><code>encoding.<Submodule>.Dump()</code><a href=#encodingsubmoduledump class=anchor aria-hidden=true>#</a></h4><p>Dump a string formatted as the submodule format from a dictionary or string</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>xDict</span> <span class=o>=</span> <span class=p>{</span><span class=s2>"encoding"</span><span class=p>:</span> <span class=p>{</span><span class=s2>"type"</span><span class=p>:</span> <span class=s2>"toml"</span><span class=p>}}</span>
|
|
||||||
<span class=n>x</span> <span class=o>=</span> <span class=n>encoding</span><span class=o>.</span><span class=n>Toml</span><span class=o>.</span><span class=n>Dump</span><span class=p>(</span><span class=n>xDict</span><span class=p>)</span>
|
|
||||||
<span class=c1># x == '''</span>
|
|
||||||
<span class=c1>#</span>
|
|
||||||
<span class=c1># [encoding]</span>
|
|
||||||
<span class=c1># type = "toml"</span>
|
|
||||||
<span class=c1>#</span>
|
|
||||||
<span class=c1># '''</span>
|
|
||||||
<span class=n>y</span> <span class=o>=</span> <span class=n>encoding</span><span class=o>.</span><span class=n>Hex</span><span class=o>.</span><span class=n>Dump</span><span class=p>(</span><span class=s2>"Test"</span><span class=p>)</span>
|
|
||||||
<span class=c1># y = "546573740a"</span>
|
|
||||||
</code></pre></div><hr><h3 id=file><code>file</code><a href=#file class=anchor aria-hidden=true>#</a></h3><p>The file module contains functions for manipulation and checking of files</p><hr><h4 id=fileexpand><code>file.Expand()</code><a href=#fileexpand class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>file.Expand(file, mappings)</code></p><p>Expand any instances of <code>$VAR</code> in a file according to provided mappings.</p><p>Examples:</p><p><code>file.txt</code> before:</p><div class=highlight><pre class=chroma><code class=language-text data-lang=text>I am running on $OS and architecture $arch
|
|
||||||
</code></pre></div><p>Code:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=nb>file</span><span class=o>.</span><span class=n>Expand</span><span class=p>(</span><span class=s2>"file.txt"</span><span class=p>,</span> <span class=p>{</span><span class=s2>"OS"</span><span class=p>:</span> <span class=n>runtime</span><span class=o>.</span><span class=n>GOOS</span><span class=p>,</span> <span class=s2>"arch"</span><span class=p>:</span> <span class=n>runtime</span><span class=o>.</span><span class=n>GOARCH</span><span class=p>})</span>
|
|
||||||
</code></pre></div><p><code>file.txt</code> after:</p><div class=highlight><pre class=chroma><code class=language-text data-lang=text>I am running on linux and architecture x86_64
|
|
||||||
</code></pre></div><hr><h4 id=fileexists><code>file.Exists()</code><a href=#fileexists class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>file.Exists(filepath)</code></p><p>Check whether a file exists</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=nb>file</span><span class=o>.</span><span class=n>Exists</span><span class=p>(</span><span class=s2>"/etc/fstab"</span><span class=p>)</span> <span class=c1># True</span>
|
|
||||||
</code></pre></div><hr><h4 id=filecontent><code>file.Content()</code><a href=#filecontent class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>file.Content(filepath)</code></p><p>Returns contents of a file as a string</p><p>Example:</p><p>file.txt:</p><div class=highlight><pre class=chroma><code class=language-text data-lang=text>This is a file
|
|
||||||
</code></pre></div><p>Code:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=nb>file</span><span class=o>.</span><span class=n>Content</span><span class=p>(</span><span class=s2>"file.txt"</span><span class=p>)</span> <span class=c1># "This is a file"</span>
|
|
||||||
</code></pre></div><hr><h3 id=strings><code>strings</code><a href=#strings class=anchor aria-hidden=true>#</a></h3><p>The strings module contains functions for the manipulation of strings</p><hr><h4 id=stringsregex><code>strings.Regex()</code><a href=#stringsregex class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>strings.Regex(string, pattern, regex)</code></p><p>Parse a string using a regular expression and return the result in the specified format.</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>x</span> <span class=o>=</span> <span class=n>strings</span><span class=o>.</span><span class=n>Regex</span><span class=p>(</span><span class=s2>"Hello, World"</span><span class=p>,</span> <span class=s2>"$2, $1"</span><span class=p>,</span> <span class=s2>"(.+), (.+)"</span><span class=p>)</span>
|
|
||||||
<span class=c1># x == "World, Hello"</span>
|
|
||||||
<span class=n>y</span> <span class=o>=</span> <span class=n>strings</span><span class=o>.</span><span class=n>Regex</span><span class=p>(</span><span class=s2>"Hello, World"</span><span class=p>,</span> <span class=s2>"$y, $x"</span><span class=p>,</span> <span class=s2>"(?P<x>.+), (?P<y>.+)"</span><span class=p>)</span>
|
|
||||||
<span class=c1># y == "World, Hello"</span>
|
|
||||||
<span class=n>z</span> <span class=o>=</span> <span class=n>strings</span><span class=o>.</span><span class=n>Regex</span><span class=p>(</span><span class=s2>"Hello, World"</span><span class=p>,</span> <span class=s2>"$match, $2, $1"</span><span class=p>,</span> <span class=s2>"(.+), (.+)"</span><span class=p>)</span>
|
|
||||||
<span class=c1># z == "Hello, World, World, Hello"</span>
|
|
||||||
</code></pre></div><hr><h4 id=stringshassuffix><code>strings.HasSuffix()</code><a href=#stringshassuffix class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>strings.HasSuffix(string, suffix)</code></p><p>Check whether a string ends with a suffix.</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>strings</span><span class=o>.</span><span class=n>HasSuffix</span><span class=p>(</span><span class=s2>"doc.pdf"</span><span class=p>,</span> <span class=s2>".pdf"</span><span class=p>)</span> <span class=c1># True</span>
|
|
||||||
<span class=n>strings</span><span class=o>.</span><span class=n>HasSuffix</span><span class=p>(</span><span class=s2>"doc.pdf"</span><span class=p>,</span> <span class=s2>".md"</span><span class=p>)</span> <span class=c1># False</span>
|
|
||||||
</code></pre></div><hr><h4 id=stringshasprefix><code>strings.HasPrefix()</code><a href=#stringshasprefix class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>strings.HasPrefix(string, prefix)</code></p><p>Check whether a string starts with a prefix.</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>strings</span><span class=o>.</span><span class=n>HasPrefix</span><span class=p>(</span><span class=s2>"doc.pdf"</span><span class=p>,</span> <span class=s2>"doc"</span><span class=p>)</span> <span class=c1># True</span>
|
|
||||||
</code></pre></div><hr><h4 id=stringstrimsuffix><code>strings.TrimSuffix()</code><a href=#stringstrimsuffix class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>strings.HasSuffix(string, suffix)</code></p><p>Remove suffix from string if it exists. If it does not exist, the string is returned unchanged.</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>strings</span><span class=o>.</span><span class=n>TrimSuffix</span><span class=p>(</span><span class=s2>"doc.pdf"</span><span class=p>,</span> <span class=s2>".pdf"</span><span class=p>)</span> <span class=c1># "doc"</span>
|
|
||||||
</code></pre></div><hr><h4 id=stringstrimprefix><code>strings.TrimPrefix()</code><a href=#stringstrimprefix class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>strings.TrimPrefix(string, prefix)</code></p><p>Remove prefix from string if it exists. If it does not exist, the string is returned unchanged.</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>strings</span><span class=o>.</span><span class=n>TrimPrefix</span><span class=p>(</span><span class=s2>"doc.pdf"</span><span class=p>,</span> <span class=s2>"doc"</span><span class=p>)</span> <span class=c1># ".pdf"</span>
|
|
||||||
</code></pre></div><hr><h4 id=stringstrimspace><code>strings.TrimSpace()</code><a href=#stringstrimspace class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>strings.TrimSpace(string)</code></p><p>Trim leading and trailing white space, as defined by Unicode</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>strings</span><span class=o>.</span><span class=n>TrimSpace</span><span class=p>(</span><span class=s2>" Hi "</span><span class=p>)</span> <span class=c1># "Hi"</span>
|
|
||||||
</code></pre></div><hr><h3 id=input><code>input</code><a href=#input class=anchor aria-hidden=true>#</a></h3><p>The input module prompts the user for input</p><hr><h4 id=inputprompt><code>input.Prompt()</code><a href=#inputprompt class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>input.Prompt(prompt)</code></p><p>Print prompt and wait for input, returning on newline</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=nb>input</span><span class=o>.</span><span class=n>Prompt</span><span class=p>(</span><span class=s2>"Enter number: "</span><span class=p>)</span>
|
|
||||||
</code></pre></div><hr><h4 id=inputchoice><code>input.Choice()</code><a href=#inputchoice class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>input.Choice(prompt, choices)</code></p><p>Assign number to each choice and prompt user to choose one</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=nb>input</span><span class=o>.</span><span class=n>Choice</span><span class=p>(</span><span class=s2>"Choose greeting"</span><span class=p>,</span> <span class=p>[</span><span class=s2>"Hi"</span><span class=p>,</span> <span class=s2>"Hello"</span><span class=p>,</span> <span class=s2>"Good morning"</span><span class=p>])</span>
|
|
||||||
</code></pre></div><p>The above example looks like this to the user:</p><div class=highlight><pre class=chroma><code class=language-text data-lang=text>[1] "Hi"
|
|
||||||
[2] "Hello"
|
|
||||||
[3] "Good Morning"
|
|
||||||
Choose greeting:
|
|
||||||
</code></pre></div><p>When the user chooses a number, the function will return the associated string. So, if the user chooses 1, <code>"Hi"</code> will be returned.</p><hr><h3 id=url><code>url</code><a href=#url class=anchor aria-hidden=true>#</a></h3><p>The url module contains functions for the manipulation of URLs</p><hr><h4 id=urlparse><code>url.Parse()</code><a href=#urlparse class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>url.Parse(urlString)</code></p><p>Parses a URL and returns its components</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>parsed</span> <span class=o>=</span> <span class=n>url</span><span class=o>.</span><span class=n>Parse</span><span class=p>(</span><span class=s2>"https://www.arsenm.dev/docs/advmake/build-files"</span><span class=p>)</span>
|
|
||||||
<span class=c1># parsed.Scheme == "https"</span>
|
|
||||||
<span class=c1># parsed.Host == "www.arsenm.dev"</span>
|
|
||||||
<span class=c1># parsed.Path == "/docs/advmake/build-files"</span>
|
|
||||||
</code></pre></div><a class=btn style=color:#fff;background-color:#00acd7 href=https://pkg.go.dev/net/url#URL><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h3 id=shell><code>shell</code><a href=#shell class=anchor aria-hidden=true>#</a></h3><p>The shell module contains functions for accessing and utilizing the shell.</p><hr><h4 id=shellexec><code>shell.Exec()</code><a href=#shellexec class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>shell.Exec(command, output?, concurrent?)</code></p><p>Runs a command or script using <code>sh -c</code>, sending the output to <code>STDOUT</code> and returning it unless set otherwise. It can also be concurrent.</p><p>Examples:</p><p>Code:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>x</span> <span class=o>=</span> <span class=n>shell</span><span class=o>.</span><span class=n>Exec</span><span class=p>(</span><span class=s2>"date +</span><span class=si>%r</span><span class=s2>"</span><span class=p>)</span> <span class=c1># "12:00:00 AM"</span>
|
|
||||||
<span class=n>y</span> <span class=o>=</span> <span class=n>shell</span><span class=o>.</span><span class=n>Exec</span><span class=p>(</span><span class=s2>"date +</span><span class=si>%r</span><span class=s2>"</span><span class=p>,</span> <span class=n>output</span><span class=o>=</span><span class=s1>'return'</span><span class=p>)</span> <span class=c1># "12:00:00 AM"</span>
|
|
||||||
<span class=n>z</span> <span class=o>=</span> <span class=n>shell</span><span class=o>.</span><span class=n>Exec</span><span class=p>(</span><span class=s2>"date +</span><span class=si>%r</span><span class=s2> | base64"</span><span class=p>,</span> <span class=n>output</span><span class=o>=</span><span class=s1>'stdout'</span><span class=p>)</span> <span class=c1># None</span>
|
|
||||||
<span class=n>shell</span><span class=o>.</span><span class=n>Exec</span><span class=p>(</span><span class=s2>"""
|
|
||||||
</span><span class=s2> sleep 1
|
|
||||||
</span><span class=s2> sleep 2
|
|
||||||
</span><span class=s2>"""</span><span class=p>,</span> <span class=n>concurrent</span><span class=o>=</span><span class=bp>True</span><span class=p>)</span> <span class=c1># Sleeps for two seconds</span>
|
|
||||||
</code></pre></div><p>STDOUT:</p><div class=highlight><pre class=chroma><code class=language-text data-lang=text>12:00:00 AM
|
|
||||||
MTI6MDA6MDAgQU0K
|
|
||||||
</code></pre></div><hr><h4 id=shellgetenv><code>shell.Getenv()</code><a href=#shellgetenv class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>shell.Getenv(key)</code></p><p>Returns the value of an environment variable</p><p>Example:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>shell</span><span class=o>.</span><span class=n>Getenv</span><span class=p>(</span><span class=s1>'TERM'</span><span class=p>)</span> <span class=c1># "xterm"</span>
|
|
||||||
</code></pre></div><a class=btn style=color:#fff;background-color:#00acd7 href=https://pkg.go.dev/os#Getenv><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h4 id=shellsetenv><code>shell.Setenv()</code><a href=#shellsetenv class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>shell.Setenv(key, value, onlyIfUnset?)</code></p><p>Sets the value of an environment variable. It can be configured not to set the value if it is already set</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>shell</span><span class=o>.</span><span class=n>Setenv</span><span class=p>(</span><span class=s2>"X"</span><span class=p>,</span> <span class=s2>"x"</span><span class=p>)</span> <span class=c1># $X = x</span>
|
|
||||||
<span class=n>shell</span><span class=o>.</span><span class=n>Setenv</span><span class=p>(</span><span class=s2>"CC"</span><span class=p>,</span> <span class=s2>"gcc"</span><span class=p>)</span> <span class=c1># if $CC unset, $CC = gcc</span>
|
|
||||||
</code></pre></div><hr><h4 id=shelllookpath><code>shell.LookPath()</code><a href=#shelllookpath class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>shell.LookPath(command)</code></p><p>Returns the path to the executable of the specified command. Returns <code>-1</code> if the command is not found in <code>PATH</code>.</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>shell</span><span class=o>.</span><span class=n>LookPath</span><span class=p>(</span><span class=s1>'sh'</span><span class=p>)</span> <span class=c1># "/bin/sh"</span>
|
|
||||||
<span class=n>shell</span><span class=o>.</span><span class=n>LookPath</span><span class=p>(</span><span class=s1>'nonExistentCommand'</span><span class=p>)</span> <span class=c1># -1</span>
|
|
||||||
</code></pre></div><hr><h3 id=net><code>net</code><a href=#net class=anchor aria-hidden=true>#</a></h3><p>The net module contains various network functions</p><hr><h4 id=netdownload><code>net.Download()</code><a href=#netdownload class=anchor aria-hidden=true>#</a></h4><p>Download a file from a URL, optionally specifying the filename. It will show progress if the <code>Content-Length</code> header is present.</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>net</span><span class=o>.</span><span class=n>Download</span><span class=p>(</span><span class=s2>"https://minio.arsenm.dev/advmake/0.0.1/advmake-linux-x86_64"</span><span class=p>)</span>
|
|
||||||
<span class=n>net</span><span class=o>.</span><span class=n>Download</span><span class=p>(</span><span class=s2>"https://minio.arsenm.dev/advmake/0.0.1/advmake-linux-x86_64"</span><span class=p>,</span> <span class=n>filename</span><span class=o>=</span><span class=s2>"advmake"</span><span class=p>)</span>
|
|
||||||
</code></pre></div><hr><h3 id=log><code>log</code><a href=#log class=anchor aria-hidden=true>#</a></h3><p>The log module contains functions to log events at various levels</p><p>The available levels are:</p><ul><li><code>Info</code></li><li><code>Debug</code></li><li><code>Warn</code></li><li><code>Fatal</code></li></ul><hr><h4 id=loglevel><code>log.<Level>()</code><a href=#loglevel class=anchor aria-hidden=true>#</a></h4><p>Definition: <code>log.<Level>(message)</code></p><p>Logs a message at the specified level. The fatal level quits after logging the message.</p><p>Examples:</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>log</span><span class=o>.</span><span class=n>Info</span><span class=p>(</span><span class=s2>"Test log"</span><span class=p>)</span>
|
|
||||||
<span class=n>log</span><span class=o>.</span><span class=n>Fatal</span><span class=p>(</span><span class=s2>"Error"</span><span class=p>)</span>
|
|
||||||
</code></pre></div><hr><h3 id=fmt><code>fmt</code><a href=#fmt class=anchor aria-hidden=true>#</a></h3><p>The fmt module exposes all the text functions from the golang fmt package except for all the <code>Fprint</code> and <code>Fscan</code> functions.</p><div class=highlight><pre class=chroma><code class=language-python data-lang=python><span class=n>fmt</span><span class=o>.</span><span class=n>Sprintf</span><span class=p>(</span><span class=s2>"Print </span><span class=si>%s</span><span class=s2> string"</span><span class=p>,</span> <span class=s2>"formatted"</span><span class=p>)</span> <span class=c1># "Print formatted string"</span>
|
|
||||||
</code></pre></div><a class=btn style=color:#fff;background-color:#00acd7 href=https://pkg.go.dev/fmt><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,4 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>AdvMake Docs | Arsen Dev</title><meta name=description content="Documentation for the AdvMake build system"><link rel=canonical href=/docs/advmake/><meta name=twitter:card content="summary"><meta name=twitter:title content="AdvMake Docs"><meta name=twitter:description content="Documentation for the AdvMake build system"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="AdvMake Docs"><meta property="og:description" content="Documentation for the AdvMake build system"><meta property="og:type" content="website"><meta property="og:url" content="/docs/advmake/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><link rel=alternate type=application/rss+xml href=/docs/advmake/index.xml><link rel=sitemap type=application/xml href=/docs/advmake/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsadvmake","item":"\/docsadvmake\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><a href=..><p class=text-center>⇐ Docs</p></a><h1 style=margin:0 class=text-center>AdvMake Docs</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/advmake/build-files/>Build Files ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/advmake/installation/>Installation ⇒</a></div></div></div></article></div></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,8 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>AdvMake Docs on</title><link>/docs/advmake/</link><description>Recent content in AdvMake Docs on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/docs/advmake/index.xml" rel="self" type="application/rss+xml"/><item><title>Build Files</title><link>/docs/advmake/build-files/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/advmake/build-files/</guid><description>&nbsp;AdvMake &nbsp;AdvMake Format AdvMake uses Starlark as the format for its build files. Modules are also defined for both convenience and extra functionality.
|
|
||||||
Starlark is a Python-like language meant for configuration files.
|
|
||||||
Configuration Build files are by default called AdvMakefile, but that can be set via -f
|
|
||||||
An AdvMakefile example can be found at AdvMake&rsquo;s repo as it uses AdvMake itself.
|
|
||||||
AdvMake runs functions exposed by starlark in the format &lt;name&gt;_&lt;target&gt;.</description></item><item><title>Installation</title><link>/docs/advmake/installation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/advmake/installation/</guid><description>&nbsp;AdvMake &nbsp;AdvMake Building from source Downloading AdvMake is hosted on my Gitea instance. If that is down, it is also mirrored on Gitlab.
|
|
||||||
To download AdvMake, you can either use the download button on Gitea or Gitlab, or you can use the git CLI
|
|
||||||
To clone AdvMake using the CLI, run one of the following commands:
|
|
||||||
git clone https://gitea.arsenm.dev/Arsen6331/advmake.git OR git clone https://gitlab.com/moussaelianarsen/advmake.git Building AdvMake is written in Go.</description></item></channel></rss>
|
|
@ -1,14 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Installation | Arsen Dev</title><meta name=description content="Installing AdvMake"><link rel=canonical href=/docs/advmake/installation/><meta name=twitter:card content="summary"><meta name=twitter:title content="Installation"><meta name=twitter:description content="Installing AdvMake"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Installation"><meta property="og:description" content="Installing AdvMake"><meta property="og:type" content="article"><meta property="og:url" content="/docs/advmake/installation/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsadvmakeinstallation","item":"\/docsadvmakeinstallation\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#building-from-source>Building from source</a><ul><li><a href=#downloading>Downloading</a></li><li><a href=#building>Building</a></li><li><a href=#installing>Installing</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ AdvMake Docs</a><h1 style=margin-top:.2rem>Installation</h1><p class=lead></p><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/Arsen6331/advmake><span class=iconify data-icon=cib:gitea></span> AdvMake</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/advmake><span class=iconify data-icon=fa-brands:gitlab></span> AdvMake</a></p><h2 id=building-from-source>Building from source<a href=#building-from-source class=anchor aria-hidden=true>#</a></h2><h3 id=downloading>Downloading<a href=#downloading class=anchor aria-hidden=true>#</a></h3><p>AdvMake is hosted on my Gitea instance. If that is down, it is also mirrored on Gitlab.</p><p>To download AdvMake, you can either use the download button on Gitea or Gitlab, or
|
|
||||||
you can use the git CLI</p><p>To clone AdvMake using the CLI, run one of the following commands:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>git clone https://gitea.arsenm.dev/Arsen6331/advmake.git
|
|
||||||
OR
|
|
||||||
git clone https://gitlab.com/moussaelianarsen/advmake.git
|
|
||||||
</code></pre></div><h3 id=building>Building<a href=#building class=anchor aria-hidden=true>#</a></h3><p>AdvMake is written in Go. This means go must be installed on your computer. Most
|
|
||||||
linux distros call the package that provides it either <code>go</code> or <code>golang</code>.</p><p>Once go is installed, you can check that it runs by running</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>go version
|
|
||||||
</code></pre></div><p>To compile AdvMake, run</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>go build
|
|
||||||
</code></pre></div><h3 id=installing>Installing<a href=#installing class=anchor aria-hidden=true>#</a></h3><p>To install AdvMake, run:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>sudo install -Dm755 advmake /usr/bin
|
|
||||||
</code></pre></div><p>Once the command completes, AdvMake should be ready and you can run the following to make sure it works:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>advmake -h
|
|
||||||
</code></pre></div></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<!doctype html><html><head><title>/docs/advmake/</title><link rel=canonical href=/docs/advmake/><meta name=robots content="noindex"><meta charset=utf-8><meta http-equiv=refresh content="0; url=/docs/advmake/"></head></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/advmake/build-files/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/advmake/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>
|
|
@ -1,4 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Docs | Arsen Dev</title><meta name=description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><link rel=canonical href=/docs/><meta name=twitter:card content="summary"><meta name=twitter:title content="Docs"><meta name=twitter:description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Docs"><meta property="og:description" content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta property="og:type" content="website"><meta property="og:url" content="/docs/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><link rel=alternate type=application/rss+xml href=/docs/index.xml><link rel=sitemap type=application/xml href=/docs/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docs","item":"\/docs\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><a href=..><p class=text-center>⇐ Home</p></a><h1 style=margin:0 class=text-center>Docs</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/advmake/>AdvMake Docs ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/kbdemu/>KbdEmu Docs ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/opensend/>OpenSend Docs ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/pak/>Pak Docs ⇒</a></div></div></div></article></div></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Docs on</title><link>/docs/</link><description>Recent content in Docs on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/docs/index.xml" rel="self" type="application/rss+xml"/></channel></rss>
|
|
@ -1,4 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>KbdEmu Docs | Arsen Dev</title><meta name=description content="Documentation for KbdEmu, the HID emulator"><link rel=canonical href=/docs/kbdemu/><meta name=twitter:card content="summary"><meta name=twitter:title content="KbdEmu Docs"><meta name=twitter:description content="Documentation for KbdEmu, the HID emulator"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="KbdEmu Docs"><meta property="og:description" content="Documentation for KbdEmu, the HID emulator"><meta property="og:type" content="website"><meta property="og:url" content="/docs/kbdemu/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><link rel=alternate type=application/rss+xml href=/docs/kbdemu/index.xml><link rel=sitemap type=application/xml href=/docs/kbdemu/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docskbdemu","item":"\/docskbdemu\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><a href=..><p class=text-center>⇐ Docs</p></a><h1 style=margin:0 class=text-center>KbdEmu Docs</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/kbdemu/installation/>Installation ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/kbdemu/usage/>Usage ⇒</a></div></div></div></article></div></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,5 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>KbdEmu Docs on</title><link>/docs/kbdemu/</link><description>Recent content in KbdEmu Docs on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/docs/kbdemu/index.xml" rel="self" type="application/rss+xml"/><item><title>Installation</title><link>/docs/kbdemu/installation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/kbdemu/installation/</guid><description>Using precompiled binary KbdEmu uses continuous integration to compile. You can find the binary by clicking the CI badge above, selecting &ldquo;Ubuntu2004&rdquo; for the linux build or &ldquo;macOS&rdquo; for the macOS build, and then going to the artifacts tab.
|
|
||||||
Building from source Downloading KbdEmu is hosted in two places, Gitea and Gitlab. Either one can be used as it is mirrored from Gitea to Gitlab
|
|
||||||
&nbsp;KbdEmu &nbsp;KbdEmu To download kbdemu, you can either use the download button on one of the above, or you can use the git command</description></item><item><title>Usage</title><link>/docs/kbdemu/usage/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/kbdemu/usage/</guid><description>This page assumes you have already installed KbdEmu. If not, follow the installation instructions on the installation page:
|
|
||||||
Installation Scripts KbdEmu uses scpt as its scripting language. The example script for kbdemu looks like this:
|
|
||||||
set testKey to &quot;x&quot; keystroke $testKey with action &quot;hold&quot; sleep &quot;1s&quot; keystroke $testKey with action &quot;release&quot; type &quot;AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz&quot; scroll 5 with direction &quot;up&quot; click &quot;right&quot; move-mouse [0, 0] send-notification &quot;Test&quot; beep open-location &quot;https://www.</description></item></channel></rss>
|
|
@ -1,25 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Installation | Arsen Dev</title><meta name=description content="Installing kbdemu"><link rel=canonical href=/docs/kbdemu/installation/><meta name=twitter:card content="summary"><meta name=twitter:title content="Installation"><meta name=twitter:description content="Installing kbdemu"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Installation"><meta property="og:description" content="Installing kbdemu"><meta property="og:type" content="article"><meta property="og:url" content="/docs/kbdemu/installation/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docskbdemuinstallation","item":"\/docskbdemuinstallation\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#using-precompiled-binary>Using precompiled binary</a></li><li><a href=#building-from-source>Building from source</a><ul><li><a href=#downloading>Downloading</a></li><li><a href=#building>Building</a></li><li><a href=#installing>Installing</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ KbdEmu Docs</a><h1 style=margin-top:.2rem>Installation</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/kbdemu><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/km2f1wiy7enuh6il?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/kbdemu><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><h2 id=using-precompiled-binary>Using precompiled binary<a href=#using-precompiled-binary class=anchor aria-hidden=true>#</a></h2><p>KbdEmu uses continuous integration to compile. You can find the binary by
|
|
||||||
clicking the CI badge above, selecting “Ubuntu2004” for the linux build or
|
|
||||||
“macOS” for the macOS build, and then going to the artifacts tab.</p><h2 id=building-from-source>Building from source<a href=#building-from-source class=anchor aria-hidden=true>#</a></h2><h3 id=downloading>Downloading<a href=#downloading class=anchor aria-hidden=true>#</a></h3><p>KbdEmu is hosted in two places, Gitea and Gitlab. Either one can be used as
|
|
||||||
it is mirrored from Gitea to Gitlab</p><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/Arsen6331/kbdemu><span class=iconify data-icon=cib:gitea></span> KbdEmu</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/kbdemu><span class=iconify data-icon=fa-brands:gitlab></span> KbdEmu</a></p><p>To download kbdemu, you can either use the download button on one of the above, or
|
|
||||||
you can use the git command</p><p>To clone kbdemu using the command, run one of the following commands:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>git clone https://gitea.arsenm.dev/Arsen6331/kbdemu
|
|
||||||
OR
|
|
||||||
git clone https://gitlab.com/moussaelianarsen/kbdemu
|
|
||||||
</code></pre></div><p>Now, you will want to <code>cd</code> into the root of this repo before completing the rest
|
|
||||||
of these instructions</p><h3 id=building>Building<a href=#building class=anchor aria-hidden=true>#</a></h3><p>Since KbdEmu is written in go, you will need go installed in order to compile it.
|
|
||||||
Most linux distros call the package providing it either <code>go</code> or <code>golang</code>.</p><p>Once go is installed, you can check that it runs by running</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>go version
|
|
||||||
</code></pre></div><p>To compile KbdEmu, run the following commands:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>go get github.com/go-vgo/robotgo
|
|
||||||
go get github.com/BurntSushi/toml
|
|
||||||
go get github.com/rs/zerolog/log
|
|
||||||
<span class=nb>source</span> .envrc
|
|
||||||
go build
|
|
||||||
</code></pre></div><h3 id=installing>Installing<a href=#installing class=anchor aria-hidden=true>#</a></h3><p>To install kbdemu, run the following command:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>sudo install -Dm755 kbdemu /usr/bin
|
|
||||||
</code></pre></div><p>Once this command completes, to test whether kbdemu was installed properly, run
|
|
||||||
this command:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>kbdemu
|
|
||||||
</code></pre></div><p>You should get an error warning you that kbdemu cannot find a TOML file. If you do,
|
|
||||||
kbdemu is properly installed.</p></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<!doctype html><html><head><title>/docs/kbdemu/</title><link rel=canonical href=/docs/kbdemu/><meta name=robots content="noindex"><meta charset=utf-8><meta http-equiv=refresh content="0; url=/docs/kbdemu/"></head></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/kbdemu/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/kbdemu/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>
|
|
@ -1,53 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Usage | Arsen Dev</title><meta name=description content="Using kbdemu"><link rel=canonical href=/docs/kbdemu/usage/><meta name=twitter:card content="summary"><meta name=twitter:title content="Usage"><meta name=twitter:description content="Using kbdemu"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Usage"><meta property="og:description" content="Using kbdemu"><meta property="og:type" content="article"><meta property="og:url" content="/docs/kbdemu/usage/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docskbdemuusage","item":"\/docskbdemuusage\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#scripts>Scripts</a></li><li><a href=#builtins>Builtins</a><ul><li><a href=#numcpu><code>numcpu</code></a></li><li><a href=#sleep><code>sleep</code></a></li><li><a href=#display-dialog><code>display-dialog</code></a></li><li><a href=#send-notification><code>send-notification</code></a></li><li><a href=#beep><code>beep</code></a></li><li><a href=#click><code>click</code></a></li><li><a href=#scroll><code>scroll</code></a></li><li><a href=#move-mouse><code>move-mouse</code></a></li><li><a href=#keystroke><code>keystroke</code></a></li><li><a href=#type><code>type</code></a></li><li><a href=#mouse-position><code>mouse-position</code></a></li><li><a href=#pixel-color><code>pixel-color</code></a></li><li><a href=#log><code>log</code></a></li><li><a href=#user-choice><code>user-choice</code></a></li><li><a href=#open-location><code>open-location</code></a></li></ul></li><li><a href=#variables>Variables</a><ul><li><a href=#goos><code>$GOOS</code></a></li><li><a href=#goarch><code>$GOARCH</code></a></li><li><a href=#arguments><code>$arguments</code></a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ KbdEmu Docs</a><h1 style=margin-top:.2rem>Usage</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/kbdemu><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/km2f1wiy7enuh6il?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/kbdemu><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><p>This page assumes you have already installed KbdEmu. If not, follow the installation instructions on the installation page:</p><a class=btn style=color:#fff;background-color:#357edd href=../installation>Installation</a><h2 id=scripts>Scripts<a href=#scripts class=anchor aria-hidden=true>#</a></h2><p>KbdEmu uses <a href=https://gitea.arsenm.dev/Arsen6331/scpt>scpt</a> as its scripting language. The example script for kbdemu looks like this:</p><pre><code>set testKey to "x"
|
|
||||||
keystroke $testKey with action "hold"
|
|
||||||
sleep "1s"
|
|
||||||
keystroke $testKey with action "release"
|
|
||||||
type "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"
|
|
||||||
scroll 5 with direction "up"
|
|
||||||
click "right"
|
|
||||||
move-mouse [0, 0]
|
|
||||||
send-notification "Test"
|
|
||||||
beep
|
|
||||||
open-location "https://www.arsenm.dev/"
|
|
||||||
set showDetails to (display-dialog "Show details?" with type "yesno")
|
|
||||||
if $showDetails {
|
|
||||||
display-dialog {"Color: " + (pixel-color [100, 100]) + ", Mouse: " + (str (mouse-position))} with title "Details"
|
|
||||||
}
|
|
||||||
print {"\n" + (user-choice "test" with items ["Hello", "World", 3.1415926535, $GOOS, $GOARCH, true, false, (numcpu)])}
|
|
||||||
log "Complete!"
|
|
||||||
</code></pre><p>By default, the <code>kbdemu</code> command will look for and execute a file called <code>kbdemu.scpt</code>, but that can be changed using the <code>--file</code> flag.</p><hr><h2 id=builtins>Builtins<a href=#builtins class=anchor aria-hidden=true>#</a></h2><p>KbdEmu comes with some extra functions for automation</p><hr><h3 id=numcpu><code>numcpu</code><a href=#numcpu class=anchor aria-hidden=true>#</a></h3><p>Returns the amount of available CPUs as a number.</p><p>Example:</p><pre><code>print (numcpu)
|
|
||||||
</code></pre><hr><h3 id=sleep><code>sleep</code><a href=#sleep class=anchor aria-hidden=true>#</a></h3><p>Sleeps for a duration as specified by an unnamed string argument formatted according to the specification of golang’s <code>time.ParseDuration()</code>:</p><a class=btn style=color:#fff;background-color:#00acd7 href=https://golang.org/pkg/time#ParseDuration><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><p>Examples:</p><pre><code>sleep "1s"
|
|
||||||
sleep "1h2m"
|
|
||||||
</code></pre><hr><h3 id=display-dialog><code>display-dialog</code><a href=#display-dialog class=anchor aria-hidden=true>#</a></h3><p>Displays a dialog window with the specified parameters.</p><p>Examples:</p><pre><code>display-dialog "Test1"
|
|
||||||
display-dialog "Test2" with title "Title Test"
|
|
||||||
print (display-dialog "Test3" with title "Entry Test" with type "entry")
|
|
||||||
</code></pre><p>These are all the supported dialog types:</p><ul><li>info</li><li>warning</li><li>error</li><li>entry</li><li>yesno</li></ul><p>Default dialog type is info.</p><hr><h3 id=send-notification><code>send-notification</code><a href=#send-notification class=anchor aria-hidden=true>#</a></h3><p>Sends a notification according to the specified parameters</p><p>Examples:</p><pre><code>send-notification "Test"
|
|
||||||
send-notification "Test" with title "Title"
|
|
||||||
send-notification "Test" with title "Title" with icon "test.png"
|
|
||||||
</code></pre><hr><h3 id=beep><code>beep</code><a href=#beep class=anchor aria-hidden=true>#</a></h3><p>Creates a beep sound, if impossible, falls back to sending bell character.</p><p>Examples:</p><pre><code>beep
|
|
||||||
beep "3s"
|
|
||||||
</code></pre><hr><h3 id=click><code>click</code><a href=#click class=anchor aria-hidden=true>#</a></h3><p>Emulates a mouse click</p><p>Example:</p><pre><code>click "right"
|
|
||||||
</code></pre><hr><h3 id=scroll><code>scroll</code><a href=#scroll class=anchor aria-hidden=true>#</a></h3><p>Scrolls the specifed amount in the specified direction</p><p>Example:</p><pre><code>scroll 5 with direction "up"
|
|
||||||
</code></pre><hr><h3 id=move-mouse><code>move-mouse</code><a href=#move-mouse class=anchor aria-hidden=true>#</a></h3><p>Moves the cursor to the specified coordinates</p><p>Example:</p><pre><code>move-mouse [100, 200]
|
|
||||||
</code></pre><hr><h3 id=keystroke><code>keystroke</code><a href=#keystroke class=anchor aria-hidden=true>#</a></h3><p>Emulates a key event</p><p>Examples:</p><pre><code>keystroke "y" with action "hold"
|
|
||||||
sleep "2s"
|
|
||||||
keystroke "y" with action "release"
|
|
||||||
keystroke "x"
|
|
||||||
</code></pre><p>Default action is <code>tap</code> which presses and releases the key.</p><hr><h3 id=type><code>type</code><a href=#type class=anchor aria-hidden=true>#</a></h3><p>Types a string using the keyboard</p><p>Example:</p><pre><code>type "Hello, World"
|
|
||||||
</code></pre><hr><h3 id=mouse-position><code>mouse-position</code><a href=#mouse-position class=anchor aria-hidden=true>#</a></h3><p>Returns the current mouse position in the form of an array containing two number elements.</p><p>Example:</p><pre><code>print (mouse-position) # [0 0]
|
|
||||||
</code></pre><hr><h3 id=pixel-color><code>pixel-color</code><a href=#pixel-color class=anchor aria-hidden=true>#</a></h3><p>Returns a string containing the hex color of the given coordinates.</p><p>Example:</p><pre><code>print (pixel-color [100, 100]) # ffffff
|
|
||||||
</code></pre><hr><h3 id=log><code>log</code><a href=#log class=anchor aria-hidden=true>#</a></h3><p>Logs the provided message at the given level.</p><p>Examples:</p><pre><code>log "Complete"
|
|
||||||
log "Error" with level "fatal"
|
|
||||||
</code></pre><p>The available levels are:</p><ul><li>info</li><li>debug</li><li>warn</li><li>fatal</li></ul><p>Default log level is info</p><hr><h3 id=user-choice><code>user-choice</code><a href=#user-choice class=anchor aria-hidden=true>#</a></h3><p>Displays a user choice dialog window with provided items, returns selected item.</p><p>Example:</p><pre><code>user-choice "Choose an option" with items ["Hello", "World", 1, 3.14159, 6.28318]
|
|
||||||
</code></pre><hr><h3 id=open-location><code>open-location</code><a href=#open-location class=anchor aria-hidden=true>#</a></h3><p>Opens given URL in the default application set to open it.</p><p>Examples:</p><pre><code>open-location "https://www.arsenm.dev"
|
|
||||||
open-location "/home"
|
|
||||||
</code></pre><hr><h2 id=variables>Variables<a href=#variables class=anchor aria-hidden=true>#</a></h2><p>KbdEmu exposes some variables for use in scripts.</p><hr><h3 id=goos><code>$GOOS</code><a href=#goos class=anchor aria-hidden=true>#</a></h3><p>The value from golang’s <code>runtime.GOOS</code></p><a class=btn style=color:#fff;background-color:#00acd7 href=https://golang.org/pkg/runtime#GOOS><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h3 id=goarch><code>$GOARCH</code><a href=#goarch class=anchor aria-hidden=true>#</a></h3><p>The value from golang’s <code>runtime.GOARCH</code></p><a class=btn style=color:#fff;background-color:#00acd7 href=https://golang.org/pkg/runtime#GOARCH><span class="iconify icon:cib:go"></span>
|
|
||||||
Godoc</a><hr><h3 id=arguments><code>$arguments</code><a href=#arguments class=anchor aria-hidden=true>#</a></h3><p>Non-flag command line arguments provided to KbdEmu</p><p>Example:</p><p>Command:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>kbdemu --file script.scpt <span class=s2>"Hello, World"</span>
|
|
||||||
</code></pre></div><p>Contents of <code>script.scpt</code>:</p><pre><code>print $arguments[0] # Hello, World
|
|
||||||
</code></pre></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,8 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>GUI | Arsen Dev</title><meta name=description content="Opensend fyne GUI"><link rel=canonical href=/docs/opensend/gui/><meta name=twitter:card content="summary"><meta name=twitter:title content="GUI"><meta name=twitter:description content="Opensend fyne GUI"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="GUI"><meta property="og:description" content="Opensend fyne GUI"><meta property="og:type" content="article"><meta property="og:url" content="/docs/opensend/gui/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsopensendgui","item":"\/docsopensendgui\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><ul><li><a href=#gui-installation>GUI Installation</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ OpenSend Docs</a><h1 style=margin-top:.2rem>GUI</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/opensend><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/wrv3bbuujw57578h?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/opensend><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><p>This page assumes you have already installed Opensend. If not, follow the installation
|
|
||||||
instructions on the installation page.</p><a class=btn style=color:;background-color: href=../installation>Installation</a><h3 id=gui-installation>GUI Installation<a href=#gui-installation class=anchor aria-hidden=true>#</a></h3><p>Opensend GUI has been written in golang using <a href=https://fyne.io>fyne</a>. Its source code can be found here:</p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/opensend/opensend-gui><span class=iconify data-icon=cib:gitea></span> Opensend GUI</a><p>To download Opensend GUI, run the following command</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>git clone https://gitea.arsenm.dev/opensend/opensend-gui.git
|
|
||||||
</code></pre></div><p>To build Opensend GUI, <code>go</code> must be installed. The process for that is explained in the installation instructions for Opensend. Once <code>go</code> is installed, run:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>go build
|
|
||||||
</code></pre></div><p>This may take a while as <code>go</code> downloads and compiles Opensend GUI and Fyne.</p><p>Once the build is complete, there should be a file named <code>opensend-gui</code> in the directory. Run this file to open the GUI which should look like this:</p><img src=/opensend/gui_start.webp alt="Opensend GUI on start"></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,4 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>OpenSend Docs | Arsen Dev</title><meta name=description content="Documentation for the OpenSend file sharing program"><link rel=canonical href=/docs/opensend/><meta name=twitter:card content="summary"><meta name=twitter:title content="OpenSend Docs"><meta name=twitter:description content="Documentation for the OpenSend file sharing program"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="OpenSend Docs"><meta property="og:description" content="Documentation for the OpenSend file sharing program"><meta property="og:type" content="website"><meta property="og:url" content="/docs/opensend/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><link rel=alternate type=application/rss+xml href=/docs/opensend/index.xml><link rel=sitemap type=application/xml href=/docs/opensend/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsopensend","item":"\/docsopensend\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><a href=..><p class=text-center>⇐ Docs</p></a><h1 style=margin:0 class=text-center>OpenSend Docs</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/opensend/gui/>GUI ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/opensend/installation/>Installation ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/opensend/usage/>Usage ⇒</a></div></div></div></article></div></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,9 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>OpenSend Docs on</title><link>/docs/opensend/</link><description>Recent content in OpenSend Docs on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/docs/opensend/index.xml" rel="self" type="application/rss+xml"/><item><title>GUI</title><link>/docs/opensend/gui/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/opensend/gui/</guid><description>This page assumes you have already installed Opensend. If not, follow the installation instructions on the installation page.
|
|
||||||
Installation GUI Installation Opensend GUI has been written in golang using fyne. Its source code can be found here:
|
|
||||||
&nbsp;Opensend GUI To download Opensend GUI, run the following command
|
|
||||||
git clone https://gitea.arsenm.dev/opensend/opensend-gui.git To build Opensend GUI, go must be installed. The process for that is explained in the installation instructions for Opensend.</description></item><item><title>Installation</title><link>/docs/opensend/installation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/opensend/installation/</guid><description>Using precompiled binary Opensend uses continuous integration to compile. You can find the binary by clicking the download binary badge above.
|
|
||||||
Building from source Downloading Opensend is hosted on Gitea.
|
|
||||||
&nbsp;Opensend &nbsp;Opensend To download opensend, you can either use the download button on one of the above, or you can use the git command
|
|
||||||
To clone opensend using the command, run the following command:</description></item><item><title>Usage</title><link>/docs/opensend/usage/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/opensend/usage/</guid><description>This page assumes you have already installed Opensend. If not, follow the installation instructions on the installation page.
|
|
||||||
Installation Configuration Opensend allows configuration by TOML and by command line flags. It looks at the following paths for configs in the specified order:
|
|
||||||
Config files Config path from --config flag ~/.config/opensend.toml /etc/opensend.toml Command line flags Usage of opensend: -d string Data to send -dest-dir string Destination directory for files or dirs sent over opensend (default &#34;/home/arsen/Downloads&#34;) -r Receive data -s Send data -send-to string Use IP address of receiver instead of mDNS -skip-mdns Skip zeroconf service registration (use if mdns fails) -t string Type of data being sent The purpose of the mdns-skipping flags is to account for the iSH app in iOS, as the mdns resolver and registration fails on it.</description></item></channel></rss>
|
|
@ -1,16 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Installation | Arsen Dev</title><meta name=description content="Installing opensend"><link rel=canonical href=/docs/opensend/installation/><meta name=twitter:card content="summary"><meta name=twitter:title content="Installation"><meta name=twitter:description content="Installing opensend"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Installation"><meta property="og:description" content="Installing opensend"><meta property="og:type" content="article"><meta property="og:url" content="/docs/opensend/installation/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsopensendinstallation","item":"\/docsopensendinstallation\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#using-precompiled-binary>Using precompiled binary</a></li><li><a href=#building-from-source>Building from source</a><ul><li><a href=#downloading>Downloading</a></li><li><a href=#building>Building</a></li><li><a href=#installing>Installing</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ OpenSend Docs</a><h1 style=margin-top:.2rem>Installation</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/opensend><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/wrv3bbuujw57578h?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/opensend><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><h2 id=using-precompiled-binary>Using precompiled binary<a href=#using-precompiled-binary class=anchor aria-hidden=true>#</a></h2><p>Opensend uses continuous integration to compile. You can find the binary by clicking the download binary badge above.</p><h2 id=building-from-source>Building from source<a href=#building-from-source class=anchor aria-hidden=true>#</a></h2><h3 id=downloading>Downloading<a href=#downloading class=anchor aria-hidden=true>#</a></h3><p>Opensend is hosted on Gitea.</p><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/opensend/opensend><span class=iconify data-icon=cib:gitea></span> Opensend</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/opensend><span class=iconify data-icon=fa-brands:gitlab></span> Opensend</a></p><p>To download opensend, you can either use the download button on one of the above, or
|
|
||||||
you can use the git command</p><p>To clone opensend using the command, run the following command:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>git clone https://gitea.arsenm.dev/opensend/opensend.git
|
|
||||||
</code></pre></div><p>Now, you will want to <code>cd</code> into the root of this repo before completing the rest
|
|
||||||
of these instructions</p><h3 id=building>Building<a href=#building class=anchor aria-hidden=true>#</a></h3><p>Since Opensend is written in go, you will need go installed in order to compile it.
|
|
||||||
Most linux distros call the package providing it either <code>go</code> or <code>golang</code>.</p><p>Once go is installed, you can check that it runs by running</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>go version
|
|
||||||
</code></pre></div><p>To compile Opensend, run the following command:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>make
|
|
||||||
</code></pre></div><h3 id=installing>Installing<a href=#installing class=anchor aria-hidden=true>#</a></h3><p>To install opensend, run one of the following commands:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>sudo make install <span class=c1># Linux</span>
|
|
||||||
sudo make install-macos <span class=c1># macOS</span>
|
|
||||||
</code></pre></div><p>Once this command completes, to test whether opensend was installed properly, run
|
|
||||||
this command:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>opensend -h
|
|
||||||
</code></pre></div><p>You should get the usage for opensend.</p></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<!doctype html><html><head><title>/docs/opensend/</title><link rel=canonical href=/docs/opensend/><meta name=robots content="noindex"><meta charset=utf-8><meta http-equiv=refresh content="0; url=/docs/opensend/"></head></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/opensend/gui/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>
|
|
@ -1,19 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Usage | Arsen Dev</title><meta name=description content="Using opensend"><link rel=canonical href=/docs/opensend/usage/><meta name=twitter:card content="summary"><meta name=twitter:title content="Usage"><meta name=twitter:description content="Using opensend"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Usage"><meta property="og:description" content="Using opensend"><meta property="og:type" content="article"><meta property="og:url" content="/docs/opensend/usage/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsopensendusage","item":"\/docsopensendusage\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><ul><li><a href=#configuration>Configuration</a></li><li><a href=#algorithms-and-software-used>Algorithms and software used</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ OpenSend Docs</a><h1 style=margin-top:.2rem>Usage</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/opensend><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/wrv3bbuujw57578h?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/opensend><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><p>This page assumes you have already installed Opensend. If not, follow the installation
|
|
||||||
instructions on the installation page.</p><a class=btn style=color:;background-color: href=../installation>Installation</a><h3 id=configuration>Configuration<a href=#configuration class=anchor aria-hidden=true>#</a></h3><p>Opensend allows configuration by TOML and by command line flags. It looks at the following paths for configs in the specified order:</p><h4 id=config-files>Config files<a href=#config-files class=anchor aria-hidden=true>#</a></h4><ol><li>Config path from <code>--config</code> flag</li><li><code>~/.config/opensend.toml</code></li><li><code>/etc/opensend.toml</code></li></ol><h4 id=command-line-flags>Command line flags<a href=#command-line-flags class=anchor aria-hidden=true>#</a></h4><div class=highlight><pre class=chroma><code class=language-text data-lang=text>Usage of opensend:
|
|
||||||
-d string
|
|
||||||
Data to send
|
|
||||||
-dest-dir string
|
|
||||||
Destination directory for files or dirs sent over opensend (default "/home/arsen/Downloads")
|
|
||||||
-r Receive data
|
|
||||||
-s Send data
|
|
||||||
-send-to string
|
|
||||||
Use IP address of receiver instead of mDNS
|
|
||||||
-skip-mdns
|
|
||||||
Skip zeroconf service registration (use if mdns fails)
|
|
||||||
-t string
|
|
||||||
Type of data being sent
|
|
||||||
</code></pre></div><p>The purpose of the mdns-skipping flags is to account for the iSH app in iOS, as the mdns resolver and registration fails on it.</p><h3 id=algorithms-and-software-used>Algorithms and software used<a href=#algorithms-and-software-used class=anchor aria-hidden=true>#</a></h3><ul><li>RSA for asymmetric encryption</li><li>AES for symmetric encryption</li><li>Tar for archiving directories</li><li>Zstandard for compression</li><li>Base91 for encoding</li><li>Gob for serialization</li><li>JSON for serialization</li><li>TCP sockets for transfer</li><li>Zeroconf/mDNS for device discovery</li></ul></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<!doctype html><html><head><title>/docs/</title><link rel=canonical href=/docs/><meta name=robots content="noindex"><meta charset=utf-8><meta http-equiv=refresh content="0; url=/docs/"></head></html>
|
|
@ -1,22 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Configuration | Arsen Dev</title><meta name=description content="Configuring pak"><link rel=canonical href=/docs/pak/configuration/><meta name=twitter:card content="summary"><meta name=twitter:title content="Configuration"><meta name=twitter:description content="Configuring pak"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Configuration"><meta property="og:description" content="Configuring pak"><meta property="og:type" content="article"><meta property="og:url" content="/docs/pak/configuration/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docspakconfiguration","item":"\/docspakconfiguration\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><ul><li><a href=#config-file>Config file</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ Pak Docs</a><h1 style=margin-top:.2rem>Configuration</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/pak><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/e4yacqd78gkte8a0?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/pak><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><h3 id=config-file>Config file<a href=#config-file class=anchor aria-hidden=true>#</a></h3><p>Pak uses a custom config file at <code>/etc/pak.cfg</code>. For example, this is what the
|
|
||||||
apt config looks like:</p><div class=highlight><pre class=chroma><code class=language-cfg data-lang=cfg><span class=c1># Write the name of the package manager in all lowercase below</span>
|
|
||||||
<span class=na>apt</span>
|
|
||||||
<span class=c1># Write a comma separated list of commands from the manager below</span>
|
|
||||||
<span class=na>install,remove,update,upgrade,search,download</span>
|
|
||||||
<span class=c1># Write "yes" or "no" depending on whether you want to use root</span>
|
|
||||||
<span class=na>yes</span>
|
|
||||||
<span class=c1># Write command to use for root</span>
|
|
||||||
<span class=na>sudo</span>
|
|
||||||
<span class=c1># Write a comma separated list of shortcuts below</span>
|
|
||||||
<span class=na>rm,inst</span>
|
|
||||||
<span class=c1># Write a comma separated list of shortcut mappings from the manager below</span>
|
|
||||||
<span class=na>remove,install</span>
|
|
||||||
|
|
||||||
</code></pre></div><p>This file is read by pak to tell it what to do. The comments above each keyword
|
|
||||||
explain what it’s for.</p><p>Here is a list of all the fields and their uses:</p><ol><li>Command to invoke the package manager.</li><li>Comma-separated list of commands supported by the package manager.</li><li>Whether or not to invoke the root command.</li><li>Command to use for root invocation (<code>sudo</code>, <code>doas</code>, etc.)</li><li>Comma-separated list of shortcuts for pak to accept</li><li>Comma-separated list of shortcut mappings (what each shortcut sends to the
|
|
||||||
package manager). These do not necessarily need to be in the commands list.</li></ol><p>Once you have made the config, just place it at <code>/etc/pak.cfg</code> and pak will
|
|
||||||
automatically use it.</p></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,4 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Pak Docs | Arsen Dev</title><meta name=description content="Documentation for the Pak package manager wrapper"><link rel=canonical href=/docs/pak/><meta name=twitter:card content="summary"><meta name=twitter:title content="Pak Docs"><meta name=twitter:description content="Documentation for the Pak package manager wrapper"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Pak Docs"><meta property="og:description" content="Documentation for the Pak package manager wrapper"><meta property="og:type" content="website"><meta property="og:url" content="/docs/pak/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><link rel=alternate type=application/rss+xml href=/docs/pak/index.xml><link rel=sitemap type=application/xml href=/docs/pak/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docspak","item":"\/docspak\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><a href=..><p class=text-center>⇐ Docs</p></a><h1 style=margin:0 class=text-center>Pak Docs</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/pak/configuration/>Configuration ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/pak/installation/>Installation ⇒</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/pak/usage/>Usage ⇒</a></div></div></div></article></div></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Pak Docs on</title><link>/docs/pak/</link><description>Recent content in Pak Docs on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/docs/pak/index.xml" rel="self" type="application/rss+xml"/><item><title>Configuration</title><link>/docs/pak/configuration/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/pak/configuration/</guid><description>Config file Pak uses a custom config file at /etc/pak.cfg. For example, this is what the apt config looks like:
|
|
||||||
# Write the name of the package manager in all lowercase below apt # Write a comma separated list of commands from the manager below install,remove,update,upgrade,search,download # Write &#34;yes&#34; or &#34;no&#34; depending on whether you want to use root yes # Write command to use for root sudo # Write a comma separated list of shortcuts below rm,inst # Write a comma separated list of shortcut mappings from the manager below remove,install This file is read by pak to tell it what to do.</description></item><item><title>Installation</title><link>/docs/pak/installation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/pak/installation/</guid><description>Using precompiled binary Pak uses continuous integration to compile. You can find the binary by clicking the download badge above.
|
|
||||||
Using the AUR If you are running an arch-based linux distro, you can use the Arch User Repository to install pak. First, make sure the yay AUR helper is installed, then run the following:
|
|
||||||
yay -S pak Building from source Downloading Pak is hosted on my Gitea instance. If that is down, it is also mirrored on Gitlab.</description></item><item><title>Usage</title><link>/docs/pak/usage/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/pak/usage/</guid><description>Using pak is simple, just run pak and one of the commands from the config file. Pak understands partial commands, so these commands will be identical:
|
|
||||||
pak in &lt;package&gt; OR pak inst &lt;package&gt; OR pak install &lt;package&gt; The lack of sudo is intentional. Pak will not allow running from root by default as it already invokes root internally. To bypass this, simply give pak the -r flag.
|
|
||||||
Using shortcuts in pak is just as simple as commands, just run pak and a shortcut, like this:</description></item></channel></rss>
|
|
@ -1,20 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Installation | Arsen Dev</title><meta name=description content="Installing pak"><link rel=canonical href=/docs/pak/installation/><meta name=twitter:card content="summary"><meta name=twitter:title content="Installation"><meta name=twitter:description content="Installing pak"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Installation"><meta property="og:description" content="Installing pak"><meta property="og:type" content="article"><meta property="og:url" content="/docs/pak/installation/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docspakinstallation","item":"\/docspakinstallation\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#using-precompiled-binary>Using precompiled binary</a></li><li><a href=#using-the-aur>Using the AUR</a></li><li><a href=#building-from-source>Building from source</a><ul><li><a href=#downloading>Downloading</a></li><li><a href=#building>Building</a></li><li><a href=#installing>Installing</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ Pak Docs</a><h1 style=margin-top:.2rem>Installation</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/pak><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/e4yacqd78gkte8a0?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/pak><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><h2 id=using-precompiled-binary>Using precompiled binary<a href=#using-precompiled-binary class=anchor aria-hidden=true>#</a></h2><p>Pak uses continuous integration to compile. You can find the binary by clicking the download badge above.</p><h2 id=using-the-aur>Using the AUR<a href=#using-the-aur class=anchor aria-hidden=true>#</a></h2><p>If you are running an arch-based linux distro, you can use the Arch User Repository
|
|
||||||
to install pak. First, make sure the <code>yay</code> AUR helper is installed, then run the following:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>yay -S pak
|
|
||||||
</code></pre></div><h2 id=building-from-source>Building from source<a href=#building-from-source class=anchor aria-hidden=true>#</a></h2><h3 id=downloading>Downloading<a href=#downloading class=anchor aria-hidden=true>#</a></h3><p>Pak is hosted on my Gitea instance. If that is down, it is also mirrored on Gitlab.</p><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/Arsen6331/pak><span class=iconify data-icon=cib:gitea></span> Pak</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/pak><span class=iconify data-icon=fa-brands:gitlab></span> Pak</a></p><p>To download pak, you can either use the download button on Gitea or Gitlab, or
|
|
||||||
you can use the git CLI</p><p>To clone pak using the CLI, run one of the following commands:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>git clone https://gitea.arsenm.dev/Arsen6331/pak
|
|
||||||
OR
|
|
||||||
git clone https://gitlab.com/moussaelianarsen/pak
|
|
||||||
</code></pre></div><h3 id=building>Building<a href=#building class=anchor aria-hidden=true>#</a></h3><p>Pak is written in Go. This means go must be installed on your computer. Most
|
|
||||||
linux distros call the package that provides it either <code>go</code> or <code>golang</code>.</p><p>Once go is installed, you can check that it runs by running</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>go version
|
|
||||||
</code></pre></div><p>To compile pak, run</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>make
|
|
||||||
</code></pre></div><p>Then, you will need to figure out which package manager you have. Here is a list
|
|
||||||
of package managers with ready to use configs:</p><ul><li>apt</li><li>aptitude</li><li>brew</li><li>yay (with wrapper)</li><li>pacman (with wrapper)</li><li>zypper</li><li>snap</li></ul><p>If your package manager is not in the list, you can make a config for it. Go to
|
|
||||||
the Configuration page for more information.</p><h3 id=installing>Installing<a href=#installing class=anchor aria-hidden=true>#</a></h3><p>If your package manager is in the list, use one of these:</p><ul><li>apt: <code>sudo make aptinstall</code></li><li>aptitude: <code>sudo make aptitude</code></li><li>brew: <code>sudo make brewinstall</code></li><li>yay: <code>sudo make yayinstall</code></li><li>pacman: <code>sudo make pacinstall</code></li><li>zypper: <code>sudo make zyppinstall</code></li><li>snap: <code>sudo make snapinstall</code></li><li>custom: <code>sudo make installbinonly</code></li></ul><p>Once the command completes, unless you’re using a custom config, pak should be ready
|
|
||||||
and you can run the following to make sure it works:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>pak
|
|
||||||
</code></pre></div><p>Go to the Configuration page for instructions on making a custom config, you <strong>must</strong>
|
|
||||||
have a config for pak to function.</p></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<!doctype html><html><head><title>/docs/pak/</title><link rel=canonical href=/docs/pak/><meta name=robots content="noindex"><meta charset=utf-8><meta http-equiv=refresh content="0; url=/docs/pak/"></head></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/pak/configuration/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>
|
|
@ -1,14 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Usage | Arsen Dev</title><meta name=description content="Using pak"><link rel=canonical href=/docs/pak/usage/><meta name=twitter:card content="summary"><meta name=twitter:title content="Usage"><meta name=twitter:description content="Using pak"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Usage"><meta property="og:description" content="Using pak"><meta property="og:type" content="article"><meta property="og:url" content="/docs/pak/usage/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docspakusage","item":"\/docspakusage\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/>Home</a></li><li class="nav-item active"><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Docs</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/advmake/>AdvMake Docs</a></li><li><a class=docs-link href=/docs/kbdemu/>KbdEmu Docs</a></li><li><a class=docs-link href=/docs/opensend/>OpenSend Docs</a></li><li><a class=docs-link href=/docs/pak/>Pak Docs</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><a href=..>⇐ Pak Docs</a><h1 style=margin-top:.2rem>Usage</h1><p class=lead></p><p><a style=margin-left:1px;margin-right:1px;display:inline-block href=https://ci.appveyor.com/project/moussaelianarsen/pak><img style=height:18px;width:100px src="https://ci.appveyor.com/api/projects/status/e4yacqd78gkte8a0?svg=true"></a>
|
|
||||||
<a style=margin-left:1px;margin-right:1px;display:inline-block href=https://minio.arsenm.dev/minio/pak><img style=height:18px;width:100px src="https://img.shields.io/static/v1.svg?label=download&message=binary&color=blue"></a></p><p>Using pak is simple, just run <code>pak</code> and one of the commands from the config file.
|
|
||||||
Pak understands partial commands, so these commands will be identical:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>pak in <package>
|
|
||||||
OR
|
|
||||||
pak inst <package>
|
|
||||||
OR
|
|
||||||
pak install <package>
|
|
||||||
</code></pre></div><p>The lack of <code>sudo</code> is intentional. Pak will not allow running from root by default
|
|
||||||
as it already invokes root internally. To bypass this, simply give pak the <code>-r</code> flag.</p><p>Using shortcuts in pak is just as simple as commands, just run <code>pak</code> and a shortcut,
|
|
||||||
like this:</p><div class=highlight><pre class=chroma><code class=language-bash data-lang=bash>pak rm <package>
|
|
||||||
</code></pre></div></main></div></div></div><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/advmake/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/kbdemu/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/advmake/build-files/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/advmake/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/kbdemu/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/kbdemu/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/gui/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/configuration/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>
|
|
BIN
public/doks.png
Before Width: | Height: | Size: 8.0 KiB |
@ -1 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#E1E8ED" d="M32.415 9.586l-9-9C23.054.225 22.553 0 22 0c-1.104 0-1.999.896-2 2 0 .552.224 1.053.586 1.415l-3.859 3.859 9 9 3.859-3.859c.362.361.862.585 1.414.585 1.104 0 2.001-.896 2-2 0-.552-.224-1.052-.585-1.414z"/><path fill="#CCD6DD" d="M22 0H7C4.791 0 3 1.791 3 4v28c0 2.209 1.791 4 4 4h22c2.209 0 4-1.791 4-4V11h-9c-1 0-2-1-2-2V0z"/><path fill="#99AAB5" d="M22 0h-2v9c0 2.209 1.791 4 4 4h9v-2h-9c-1 0-2-1-2-2V0zm-5 8c0 .552-.448 1-1 1H8c-.552 0-1-.448-1-1s.448-1 1-1h8c.552 0 1 .448 1 1zm0 4c0 .552-.448 1-1 1H8c-.552 0-1-.448-1-1s.448-1 1-1h8c.552 0 1 .448 1 1zm12 4c0 .552-.447 1-1 1H8c-.552 0-1-.448-1-1s.448-1 1-1h20c.553 0 1 .448 1 1zm0 4c0 .553-.447 1-1 1H8c-.552 0-1-.447-1-1 0-.553.448-1 1-1h20c.553 0 1 .447 1 1zm0 4c0 .553-.447 1-1 1H8c-.552 0-1-.447-1-1 0-.553.448-1 1-1h20c.553 0 1 .447 1 1zm0 4c0 .553-.447 1-1 1H8c-.552 0-1-.447-1-1 0-.553.448-1 1-1h20c.553 0 1 .447 1 1z"/></svg>
|
|
Before Width: | Height: | Size: 972 B |
Before Width: | Height: | Size: 416 B |
Before Width: | Height: | Size: 773 B |
Before Width: | Height: | Size: 15 KiB |
0
public/fonts/vendor/.gitkeep
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-500.woff
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-500.woff2
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-700.woff
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-700.woff2
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-italic.woff
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-italic.woff2
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-regular.woff
vendored
BIN
public/fonts/vendor/jost/jost-v4-latin-regular.woff2
vendored
0
public/images/vendor/.gitkeep
vendored
@ -1,7 +0,0 @@
|
|||||||
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><script src=https://code.iconify.design/1/1.0.7/iconify.min.js></script><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css integrity="sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Arsen Dev | Home</title><meta name=description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><link rel=canonical href=/><meta name=twitter:card content="summary"><meta name=twitter:title content="Home"><meta name=twitter:description content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Home"><meta property="og:description" content="Doks is a Hugo theme helping you build modern docu`tation websites that are secure, fast, and SEO-ready — by default."><meta property="og:type" content="website"><meta property="og:url" content="/"><meta property="og:site_name" content="Arsen Dev"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content><link rel=alternate type=application/rss+xml href=/index.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><link rel=stylesheet href=/css/highlightjs/dracula.min.css><script src=/js/highlightjs/highlight.min.js></script><script>hljs.initHighlightingOnLoad();</script></head><body class=home><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
|
|
||||||
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 mr-auto" href=/>Arsen Dev</a>
|
|
||||||
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
|
|
||||||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://gitea.arsenm.dev/Arsen6331><span class=iconify data-icon=cib:gitea data-inline=false></span><span class="ml-2 sr-only">Gitea</span></a></li><li class=nav-item><a class=nav-link href=https://gitlab.com/moussaelianarsen><span class=iconify data-icon=fa-brands:gitlab data-inline=false></span><span class="ml-2 sr-only">GitLab</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav mr-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/>Home</a></li><li class=nav-item><a class=nav-link href=/docs/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><section class="section container-fluid mt-n3 pb-3"><div class="row justify-content-center"><div class="col-lg-12 text-center"><h1 class=mt-0>Home</h1></div><div class="col-lg-9 col-xl-8 text-center"><p class=lead></p></div></div></section></div></div><section class="section section-sm container-fluid"><div class="row justify-content-center text-center"><div class=col-lg-9><h3 id=my-projects>My Projects</h3><hr><ul><li>Pak: A cross-platform wrapper written in go designed to unify package managers. It uses TOML configs to define package managers. Options include commands, shortcuts, root user invocation, root user invocation command, and package manager command.</li></ul><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/Arsen6331/pak><span class=iconify data-icon=cib:gitea></span> Pak</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/pak><span class=iconify data-icon=fa-brands:gitlab></span> Pak</a></p><ul><li>Opensend: A program made to share files and websites between computers securely and reliably, written in go, using zeroconf for discovery, AES and RSA for encryption, and Tar + Zstandard for compression.</li></ul><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/opensend/opensend><span class=iconify data-icon=cib:gitea></span> Opensend</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/opensend><span class=iconify data-icon=fa-brands:gitlab></span> Opensend</a></p><ul><li>Statusboard: A full-stack web application that tracks website status written in Swift, Swift Crypto, and the Vapor stack. It uses a tabler web UI for the dashboard, a JSON config to define servers to track, and an SQLite database to keep track of log-ins and show private servers. My instance can be found <a href=https://status.arsenm.dev>here</a></li></ul><p><a class=btn style=color:#fff;background-color:green href=https://gitea.arsenm.dev/Arsen6331/statusboard><span class=iconify data-icon=cib:gitea></span> Statusboard</a>
|
|
||||||
<a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/statusboard><span class=iconify data-icon=fa-brands:gitlab></span> Statusboard</a></p><ul><li>Chromebook Linux Audio: A collection of bash scripts to compile and install the required kernel and audio server to enable audio and other chromebook features in a mainline linux distro.</li></ul><a class=btn style=color:#fff;background-color:OrangeRed href=https://www.gitlab.com/moussaelianarsen/chromebook-linux-audio><span class=iconify data-icon=fa-brands:gitlab></span> Chromebook Linux Audio</a></div></div></section><br><script src=/main.f6b484f556ad1f3bcf6061082139a2f21fa759f13930c39a25fe4a9f78f35e64122c2d86dffd56e67b292dabbda4095d8077194f196e0e348441c106a9f3d40e.js integrity="sha512-9rSE9VatHzvPYGEIITmi8h+nWfE5MMOaJf5Kn3jzXmQSLC2G3/1W5nspLau9pAldgHcZTxluDjSEQcEGqfPUDg==" crossorigin=anonymous defer></script><script src=/index.min.62fb3c8cfeb57442869c870d0aa4097451dc6fe9de70b1c63ef4e25068adfe13bbe1398854c68f4d8fc47ab4a2c1b0840685a16bb51b1a658dea09ec42eca1cb.js integrity="sha512-Yvs8jP61dEKGnIcNCqQJdFHcb+necLHGPvTiUGit/hO74TmIVMaPTY/EerSiwbCEBoWha7UbGmWN6gnsQuyhyw==" crossorigin=anonymous defer></script></body></html>
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Home on</title><link>/</link><description>Recent content in Home on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/index.xml" rel="self" type="application/rss+xml"/><item><title>Docs</title><link>/docs/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/</guid><description/></item></channel></rss>
|
|
1296
public/js/highlightjs/highlight.min.js
vendored
0
public/js/vendor/.gitkeep
vendored
Before Width: | Height: | Size: 20 KiB |
@ -1,4 +0,0 @@
|
|||||||
User-agent: *
|
|
||||||
Allow: /
|
|
||||||
|
|
||||||
Sitemap: /sitemap.xml
|
|
@ -1 +0,0 @@
|
|||||||
{"name":"Doks Theme","short_name":"Doks","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#fff","background_color":"#fff","display":"standalone"}
|
|
@ -1 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/advmake/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/advmake/build-files/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/configuration/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/contributors/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/gui/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/advmake/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/kbdemu/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/installation/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/kbdemu/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/kbdemu/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/opensend/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/pak/usage/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>
|
|
@ -0,0 +1 @@
|
|||||||
|
{"Target":"main.css","MediaType":"text/css","Data":{}}
|
@ -1 +0,0 @@
|
|||||||
{"Target":"main.db7090cddb6602125f0ed93682d138976ae6d5a9a2f2f92c4bcd4de73e6debc939331bf2ec54e8cd7b933fa961527404e59b7ddc6eede1ed4bb4cf90ad77caab.css","MediaType":"text/css","Data":{"Integrity":"sha512-23CQzdtmAhJfDtk2gtE4l2rm1ami8vksS81N5z5t68k5Mxvy7FTozXuTP6lhUnQE5Zt93G7t4e1LtM+QrXfKqw=="}}
|
|