11 Commits

10 changed files with 166 additions and 51 deletions

11
.editorconfig Normal file
View File

@ -0,0 +1,11 @@
root = true
[*.{md,toml}]
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 2
trim_trailing_whitespace = true
#[*.md]
#max_line_length = 80

12
Makefile Normal file
View File

@ -0,0 +1,12 @@
all: public
public: clean
hugo
clean:
rm -rf public
push: public
rsync -arvz -e 'ssh -p 2222' --progress --delete public/ bbaovanc.com:/var/www/bbaovanc/blog/
.PHONY: all clean

View File

@ -4,70 +4,83 @@ theme = "terminal"
paginate = 5
# [permalinks]
# posts = "/:year/:month/:title/"
# posts = "/:year/:month/:title/"
[params]
# dir name of your main content (default is `content/posts`).
# the list of set content will show up on your index page (baseurl).
contentTypeName = "posts"
# dir name of your main content (default is `content/posts`).
# the list of set content will show up on your index page (baseurl).
contentTypeName = "posts"
# ["orange", "blue", "red", "green", "pink"]
themeColor = "blue"
# ["orange", "blue", "red", "green", "pink"]
themeColor = "blue"
# if you set this to 0, only submenu trigger will be visible
showMenuItems = 2
# if you set this to 0, only submenu trigger will be visible
showMenuItems = 2
# show selector to switch language
showLanguageSelector = false
# show selector to switch language
showLanguageSelector = false
# set theme to full screen width
fullWidthTheme = false
# set theme to full screen width
fullWidthTheme = false
# center theme with default width
centerTheme = true
# center theme with default width
centerTheme = true
# set a custom favicon (default is a `themeColor` square)
favicon = "img/favicon.ico"
# set a custom favicon (default is a `themeColor` square)
favicon = "icon/favicon.ico"
# set post to show the last updated
# If you use git, you can set `enableGitInfo` to `true` and then post will automatically get the last updated
showLastUpdated = false
# Provide a string as a prefix for the last update date. By default, it looks like this: 2020-xx-xx [Updated: 2020-xx-xx] :: Author
# updatedDatePrefix = "Updated"
# set post to show the last updated
# If you use git, you can set `enableGitInfo` to `true` and then post will automatically get the last updated
showLastUpdated = false
# Provide a string as a prefix for the last update date. By default, it looks like this: 2020-xx-xx [Updated: 2020-xx-xx] :: Author
# updatedDatePrefix = "Updated"
# set all headings to their default size (depending on browser settings)
# it's set to `true` by default
# oneHeadingSize = false
# set all headings to their default size (depending on browser settings)
# it's set to `true` by default
# oneHeadingSize = false
[params.twitter]
# set Twitter handles for Twitter cards
# see https://developer.twitter.com/en/docs/tweets/optimize-with-cards/guides/getting-started#card-and-content-attribution
# do not include @
creator = ""
site = ""
# set Twitter handles for Twitter cards
# see https://developer.twitter.com/en/docs/tweets/optimize-with-cards/guides/getting-started#card-and-content-attribution
# do not include @
creator = ""
site = ""
[languages]
[languages.en]
languageName = "English"
title = "bbaovanc's blog"
subtitle = "My personal blog site"
owner = "bbaovanc"
keywords = ""
copyright = ""
menuMore = "Show more"
readMore = "Read more"
readOtherPosts = "Read other posts"
newerPosts = "Newer posts"
olderPosts = "Older posts"
missingContentMessage = "Page not found..."
missingBackButtonLabel = "Back to home page"
[languages.en]
languageName = "English"
title = "bbaovanc's blog"
subtitle = "My personal blog site"
owner = "bbaovanc"
keywords = ""
copyright = ""
menuMore = "Show more"
readMore = "Read more"
readOtherPosts = "Read other posts"
newerPosts = "Newer posts"
olderPosts = "Older posts"
missingContentMessage = "Page not found..."
missingBackButtonLabel = "Back to home page"
[languages.en.params.logo]
logoText = "bbaovanc's blog"
logoHomeLink = "/blog/"
[languages.en.params.logo]
logoText = "bbaovanc's blog"
logoHomeLink = "/blog/"
[languages.en.menu]
[[languages.en.menu.main]]
identifier = "other-sites"
name = "Other Sites"
url = "/other-sites"
[languages.en.menu]
[[languages.en.menu.main]]
identifier = "other-sites"
name = "Other Sites"
url = "/other-sites"
weight = 10
[[languages.en.menu.main]]
identifier = "main-website"
name = "Main Website"
url = "https://bbaovanc.com/"
weight = 20
[[languages.en.menu.main]]
identifier = "rss"
name = "RSS Feed"
url = "/posts/index.xml"
weight = 30

View File

@ -0,0 +1,35 @@
+++
title = "Checkra1n GUI on Other Distros"
date = "2021-03-25T21:19:51-05:00"
author = "bbaovanc"
cover = "/blog/media/checkra1n-gui-on-arch-linux.png"
tags = ["linux", "archlinux", "jailbreak", "checkra1n"]
keywords = ["checkra1n", "gui", "linux", "arch linux"]
description = "You can run the GUI version of checkra1n on non Debian-based distributions. (The GUI looks garbled here because I have a high DPI monitor)"
showFullContent = false
toc = true
+++
*The GUI above looks garbled because I have a high DPI monitor.*
## Introduction
The official cross-distribution build of checkra1n only contains a CLI and TUI. However, the version available in the [checkra1n APT repository](https://checkra.in/linux) also contains a GTK-based GUI which can be accessed using the `--gui` flag, or the included `checkra1n.desktop` file.
## Other Distributions
First, download the Debian package available at `https://assets.checkra.in/debian/checkra1n_VERSION_amd64.deb` (as of writing, `VERSION` is currently `0.12.2`). Then, extract the `checkra1n` executable from the package, and install the correct shared libraries. Here are the most important ones, and their corresponding package names on Arch Linux:
- libimobiledevice-1.0.so.6 (`libimobiledevice`)
- libirecovery-1.0.so.3 (`libirecovery`)
- libtvcontrol.so (`libtvcontrol`)
- libplist-2.0.so.3 (`libplist`)
- libncurses.so.5 (`ncurses5-compat-libs`)
I found these by running the binary and then finding and installing the package that contained the shared object I was missing.
I also made an AUR package named [`checkra1n-gui`](https://aur.archlinux.org/packages/checkra1n-gui), which does all this automatically.
## Conclusion
As I expected, there is nothing preventing the checkra1n GUI from working on non Debian-based distributions (as far as I can tell).

View File

@ -0,0 +1,22 @@
+++
title = "Put (edited) in the middle of a message in Discord"
date = "2021-03-25T18:48:34-05:00"
author = "bbaovanc"
cover = "media/discord-tricks/edited-in-middle-of-message.png"
tags = ["discord", "discord-tricks"]
keywords = ["discord", "edited"]
description = "With a bit of trickery using the RLE character (U+202B), you can get the (edited) text on a message to be somewhere other than at the end of the message."
showFullContent = false
+++
## Tutorial
1. Copy the "right-to-left embedding" character (U+202A) to your clipboard.
2. Open editing box of a message
3. Delete all text inside
4. Paste the character
5. Type the text you want on the right of `(edited)`
6. Press space and paste the character
7. Type the text you want on the left of `(edited)`
*This post was adapted from [gitea:bbaovanc/discord-tricks](https://git.bbaovanc.com/bbaovanc/discord-tricks)*

View File

@ -0,0 +1,22 @@
+++
title = "Text Substitution in Discord using `sed`"
date = "2021-03-25T18:48:15-05:00"
author = "bbaovanc"
tags = ["discord", "discord-tricks"]
keywords = ["discord", "sed", "text", "replacement"]
description = "Discord has (very primitive) support for text replacement using `sed` syntax."
showFullContent = false
+++
## How-to
[Example Video](/blog/media/discord-tricks/sed-text-replacement.mov)
If you send a message using `sed` substitution format (`s/old text/new text`), Discord will execute it on the message you've last sent.
## Caveats
- Regex is not supported
- Global substitution is not supported
*This post was adapted from [gitea:bbaovanc/discord-tricks](https://git.bbaovanc.com/bbaovanc/discord-tricks)*

View File

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.