blog | garhve's hub https://blog.garhve.com/ Recent content on blog | garhve's hub Hugo -- gohugo.io en-us Fri, 09 Dec 2022 16:38:56 +0800 测试自动创建博客 https://blog.garhve.com/posts/9/ Fri, 09 Dec 2022 16:38:56 +0800 https://blog.garhve.com/posts/9/ hugo挺不错的,就是太麻烦了。以下几点都是在使用时遇到的一些问题: 写作 编辑器随便用个支持MD的就行了,这句陈述挺好。 但现实是,我家里一台MacBook,一台arch Linux的Thinkpad,公司一台MacBook。 所以跨平台对我来说就很重要了。我有点洁癖,家目录我都在努力的把config和local 文件整合在各自不同的区域名以至于不那么乱。在每台电脑上下个markdown editor, 同步文件再在每台电脑上额外加个云,想想我都受不了。 不过目前我试过了一个软件marktext,功能和UI都很不错,但由于同步 问题我不太想用。 其实我比较倾向于下载个web app搭在我raspberry pi上,再通过公网挂出去, 达到我在任意地方都能使用的目的来着,但目前的app总有这样那样的问题 使我不是很满意,也就一直耽搁着了,现在也就是通过ssh直接到我的arch里 直接使用vim写文章,有点别扭… 用vim写markdown。 图片 图片怎么管理原本也是个问题,我买入了一个存储桶并配置好了nginx, 但这比较适合fetch图片,当我截了新图要上传时,要么登录存储桶要么scp到 服务器去上传,而且传好后的url也是一个麻烦事。试了各种方法都不太行之后。 在Mac端我用了uPic,这个比较方便的是不止可以传图片,其他文件需要 保存了也可以通过它上传,并且,它支持上传后直接拿到自定义对url,对于 我自定义了域名去匹配nginx的规则很方便。而且只需第一次配置好, 后面使用即可。 Linux端呢,则暂时没有什么好办法,只能老老实实打开网页上传了~ 发布 Hugo的发布其实也是一个问题。在上面说过,我有洁癖,其实我还有一些强迫症。 自从GitHub被微软收购后,我很少使用了。虽然我只是一介平民,但我还是希望 尽可能将我不同的指纹分散隔离开来。我用了我自有的服务器去托管我的一些服务, 其中便包括这个博客。 Hugo我是安装在我的Linux上,我并没有让它接入公网。我有在服务器上托管了一个 cgit来当我的私人仓库,于是理所当然的,我把public给git到服务器上了。 原先,发布一篇博客我的流程为, hugo new post -> vim 找到文章 -> 保存或者发布 -> 然后到public文件夹 push出去。 太麻烦了,我就写了个简单的脚本来简化一下流程,反正是自用的,所以也不用考虑 怎么处理不同的位置,并且原先由于发布比较繁琐,草稿就都存在本地了,现在 我也可以直接将草稿发布出来,看得见,我才有动力写~ ###################################################################### # @author : garhve (dev@garhve.com) # @file : blog # @created : Friday Dec 09, 2022 16:09:42 CST # # @description : simplify blog publishing. Getting unified experience https://blog.garhve.com/posts/8/ Wed, 07 Dec 2022 15:05:30 +0800 https://blog.garhve.com/posts/8/ Lately, I’m trying get my tools working seamlessly cross my 2 working machines as well as a server. Since I already heard dotfiles for a while, but didn’t get chance to familiar with. So I start searching around trying to set a dotfile up. Frankly, it is not that simple as I thought, given that my grounds differ from each other: 1x macOS, 1x archLinux, 1x archLinux server. Here’s a brief description: all configuration files I want to put in . Past Is Great https://blog.garhve.com/posts/7/ Mon, 07 Nov 2022 09:16:15 +0800 https://blog.garhve.com/posts/7/ Lately, there’s a sign has been keeping jumping out in front of my eyes. That the past is great! First is in the movie Midnight in Paris, directed by Woody Allen, which I just finished a week ago. It tells a story of how a screen writer love 20th century because his loving artists all living in it. Though he finally realize that he loves past because the present is imperfect. Mess with Bash(2) https://blog.garhve.com/posts/6/ Thu, 29 Sep 2022 09:43:02 +0800 https://blog.garhve.com/posts/6/ More info is in this tutorial all value expansions (ie. all syntax with a $ prefix) can only expand inside quoted arguments if the argument was double-quoted . Single quotes will turn the dollar-syntax into literal characters, causing bash to output the dollar rather than expand its value in-place! “Value expansions ($...) must always be double-quoted.” Never leave a value expansion unquoted. Redirection File Redirection 0 is standard input, 1 is standard output, 2 is standard error Escape Sequences https://blog.garhve.com/posts/5/ Mon, 12 Sep 2022 09:02:06 +0800 https://blog.garhve.com/posts/5/ copied from github in case one day it disappears more information could visit vt100 User Guide ANSI Escape Sequences Standard escape codes are prefixed with Escape: Ctrl-Key: ^[ Octal: \033 Unicode: \u001b Hexadecimal: \x1B Decimal: 27 Followed by the command, somtimes delimited by opening square bracket ([), known as a Control Sequence Introducer (CSI), optionally followed by arguments and the command itself. Arguments are delimeted by semi colon (;). Architecture of Linux Kernel https://blog.garhve.com/posts/4/ Sat, 03 Sep 2022 14:33:37 +0800 https://blog.garhve.com/posts/4/ Description Modern microcontrollers nowadays support at least two privilege levels. Intel/AMD x86-64 family supports 4 levels, whilst ARM (32bit) microcontrollers support up to 7 levels (6 privileged, 1 non-privileged). Modern operating systems support at least 2 levels: User space: For applications to run in unprivileged user mode Kernel space: For the kernel (and all its components) to run in privileged mode – kernel mode Address of these 2 spaces are separate. Mess with bash(1) https://blog.garhve.com/posts/3/ Thu, 25 Aug 2022 13:40:56 +0800 https://blog.garhve.com/posts/3/ Crontab crontab is a useful tool, I really regret that I don’t familar it earlier. It’s usage really simple, and these two are my frequent using: crontab -e #edit crontab file that reside in /var/spool/cron crontab -l #list current crontab job It basic syntax as follow, also really simple example of usage: delete file foo every minute * * * * * rm foo delete file foo every 15 minutes 15 * * * * rm foo delete file foo every beginning of hour 0 * * * * rm foo delete file foo every minute after 3 hours * 3 * * * rm foo delete file foo every day at 18:30 30 18 * * * rm foo delete file foo every beginning of month 0 0 0 * * rm foo delete file foo on beginning of 1st,10th of month 0 0 1,10 * * rm foo The usage really simple, I now use it to renew my SSL certification and daily update bt-tracker. Install arch linux on Tencent server https://blog.garhve.com/posts/2/ Wed, 10 Aug 2022 19:24:59 +0800 https://blog.garhve.com/posts/2/ In order to build a website for myself, I rent a server from Tencent. This is my final decision, the process is turtuous… My requirement as below: abroad provider because they don’t have to register.. the the budget’s not relax, all I can choosing was in range of $0 - $10. It can runs Arch linux seamlessly I already eye on one: Linode. But they don’t see me… and banned all my gmail account from their service… First Website https://blog.garhve.com/posts/1/ Wed, 10 Aug 2022 17:21:02 +0800 https://blog.garhve.com/posts/1/ So now I can say my website is on.. even though it just literally has nothing but a printing hello I got this garhve.com domain on namesilo for $9.95 per year, it’s really cheap! I always want a domain that is .com suffix. Now, the web is https, this is a bit difficult for me. Due to personal interest, I didn’t choose frame to base my website. I use Nginx but I don’t familiar with it.