Typo fixing

This commit is contained in:
Brandon Rozek 2022-12-17 23:48:56 -05:00
parent cc8b4d90e1
commit d06aa84707
No known key found for this signature in database
GPG key ID: 26E457DA82C9F480
11 changed files with 20 additions and 20 deletions

View file

@ -6,7 +6,7 @@ tags: ["Audio-Video"]
math: false math: false
--- ---
Recently I came across a video that I wanted to split up into multiple files. Given my love for `ffmpeg` the video/audio swiss armyknife, I knew there had to be a solution for cutting a video on the terminal. Luckily on [AskUbuntu](https://askubuntu.com/a/56044), Luis Alvarado provides a command snippet. This post will go into slightly more detail on the flags used in the command Recently I came across a video that I wanted to split up into multiple files. Given my love for `ffmpeg` the video/audio swiss army knife, I knew there had to be a solution for cutting a video on the terminal. Luckily on [AskUbuntu](https://askubuntu.com/a/56044), Luis Alvarado provides a command snippet. This post will go into slightly more detail on the flags used in the command
```bash ```bash
ffmpeg -ss 00:00:00 \ ffmpeg -ss 00:00:00 \

View file

@ -20,7 +20,7 @@ u_\mathfrak{a}(s) \rightarrow \mathbb{R}
$$ $$
If the utility is positive, then we say that there are more benefits than downsides. If negative, then vice versa. As differing agents have different preferences, If the utility is positive, then we say that there are more benefits than downsides. If negative, then vice versa. As differing agents have different preferences,
the utility function is dependent upon the agent $\mathfrak{a}$. The input of the function is some *state* $s$ which represents the environment that the agent is in. The output is a continous real number. the utility function is dependent upon the agent $\mathfrak{a}$. The input of the function is some *state* $s$ which represents the environment that the agent is in. The output is a continuous real number.
A rational action in this context is the one that provides the highest utility in the next state. A rational action in this context is the one that provides the highest utility in the next state.
$$ $$
@ -51,7 +51,7 @@ Russ Roberts didn't mention MDPs in his book, but I think he had something simil
Russ then remarks on one of his key points. Russ then remarks on one of his key points.
> One of the weidest parts of the decision, as Paul pints out, is that once you become a vampire, what you like and what you dislike change. > One of the weirdest parts of the decision, as Paul pints out, is that once you become a vampire, what you like and what you dislike change.
Let's look at it in terms of value iteration. The value of becoming a vampire is equal to the reward during the initial transformation plus the discounted value of living life after the transformation. Let's look at it in terms of value iteration. The value of becoming a vampire is equal to the reward during the initial transformation plus the discounted value of living life after the transformation.
$$ $$
@ -71,7 +71,7 @@ Given the formalism, what are some possible reasons why we don't know this?
## Not Knowing the Action ## Not Knowing the Action
When an agent performs the action $a_{transform}$ does it know that it performed that specific action? One way of looking at this is to see if the agent is able to tell apart any two arbitrary actions, say $a_{tranform}$ and $a_{morph}$. I don't believe this problem is well studied in literature. Do let me know if you know of any literature covering an agent confusing actions. When an agent performs the action $a_{transform}$ does it know that it performed that specific action? One way of looking at this is to see if the agent is able to tell apart any two arbitrary actions, say $a_{transform}$ and $a_{morph}$. I don't believe this problem is well studied in literature. Do let me know if you know of any literature covering an agent confusing actions.
In the case of the vampire problem, it's likely safe to assume that the human knows the transformation action. In the case of the vampire problem, it's likely safe to assume that the human knows the transformation action.
@ -106,7 +106,7 @@ of the other party may not line up exactly with yours.
## Partial Observability ## Partial Observability
Are we able to perceive the entirity of Are we able to perceive the entirety of
a state? If not, within the field of a state? If not, within the field of
sequential decision making, we call the sequential decision making, we call the
problem *partially observable*. problem *partially observable*.
@ -117,7 +117,7 @@ limiting visibility of other traffic.
- Group Decision Making: Agents often don't have insight to other's thought processes or perceptions. - Group Decision Making: Agents often don't have insight to other's thought processes or perceptions.
One popular way of modelling this is through One popular way of modeling this is through
the introduction of belief states. A belief the introduction of belief states. A belief
state encapsulates the set of possible states. state encapsulates the set of possible states.
For example, let's say that I prefer heads on a For example, let's say that I prefer heads on a
@ -133,7 +133,7 @@ The hope is that by keeping track of the
list of possible states, when we are interacting list of possible states, when we are interacting
with the environment, we can filter out impossible with the environment, we can filter out impossible
transitions until we get to a single possibility. transitions until we get to a single possibility.
However, there's no guarentee that this will occur. However, there's no guarantee that this will occur.
Also the initial belief state may be infinitely long. Also the initial belief state may be infinitely long.
Another way that we can hope to tackle this issue Another way that we can hope to tackle this issue

View file

@ -5,7 +5,7 @@ draft: false
tags: ["Virtualization"] tags: ["Virtualization"]
--- ---
Traditionally I would hold one linux distribution per USB drive. Though with 32 GB USB Flash drives only costing $12, why hold only one per drive? That's where Ventoy comes in. With Ventoy, we can store multiple ISOs which it then presents as a boot screen. Traditionally I would hold one Linux distribution per USB drive. Though with 32 GB USB Flash drives only costing $12, why hold only one per drive? That's where Ventoy comes in. With Ventoy, we can store multiple ISOs which it then presents as a boot screen.
To install Ventoy onto a flash drive, follow the [Get Started](https://www.ventoy.net/en/doc_start.html) guide on their website. Then once it's installed you should see a mountpoint labeled "Ventoy". There you can drop off any ISOs you want to appear on the boot screen. Here are some examples of what I keep in mine: To install Ventoy onto a flash drive, follow the [Get Started](https://www.ventoy.net/en/doc_start.html) guide on their website. Then once it's installed you should see a mountpoint labeled "Ventoy". There you can drop off any ISOs you want to appear on the boot screen. Here are some examples of what I keep in mine:

View file

@ -46,7 +46,7 @@ Extend by 1G: `truncate -s +1G $HOME/scratch.img`
Shrink by 1G: `truncate -s -1G $HOME/scratch.img` Shrink by 1G: `truncate -s -1G $HOME/scratch.img`
Check the filesystem to make sure that no inconsistencies occured. With `ext(2/3/4)` we can do this with the `e2fsck` command. Check the filesystem to make sure that no inconsistencies occurred. With `ext(2/3/4)` we can do this with the `e2fsck` command.
```bash ```bash
e2fsck $HOME/scratch.img e2fsck $HOME/scratch.img
@ -81,4 +81,4 @@ rm $HOME/scratch.img
## Conclusion ## Conclusion
With virtual disks we can experiment with different types of filesystems and perhaps try out snapshotting in supported filesystems. If we create virtual disks on [`tmpfs` ](/blog/lxdtmpfs/), then we can have a super fast file system as well! With virtual disks we can experiment with different types of filesystems and perhaps try out snapshoting in supported filesystems. If we create virtual disks on [`tmpfs` ](/blog/lxdtmpfs/), then we can have a super fast file system as well!

View file

@ -21,7 +21,7 @@ Of course you can replace the python version with whichever version you like. No
source environment_name/bin/activate source environment_name/bin/activate
``` ```
This now sets up your python interpretor and other utilities to use the installation in the `environment_name` folder. You can now install python packages using `pip` and have it only reside in this environment. This now sets up your python interpreter and other utilities to use the installation in the `environment_name` folder. You can now install python packages using `pip` and have it only reside in this environment.
To save all currently installed packages into `requirements.txt`: To save all currently installed packages into `requirements.txt`:

View file

@ -13,7 +13,7 @@ Implementing this protocol will allow one to interact with users on
[Pixelfed](https://pixelfed.org/), [Pixelfed](https://pixelfed.org/),
[Friendica](https://friendi.ca/), [Friendica](https://friendi.ca/),
and [others](http://fediverse.party/). and [others](http://fediverse.party/).
Unfortuately for a static website, this protocol uses a Unfortunately for a static website, this protocol uses a
publish-subscribe pattern. A service would need to be written publish-subscribe pattern. A service would need to be written
in order to handle subscribers, pushing messages of published items, in order to handle subscribers, pushing messages of published items,
as well as receiving mentions. as well as receiving mentions.
@ -32,7 +32,7 @@ lookup. For example if I am looking up the user `brozek@brandonrozek.com`,
then the service will perform a GET request at then the service will perform a GET request at
`https://brandonrozek.com/.well-known/webfinger?resource=acct:brozek@brandonrozek.com`. `https://brandonrozek.com/.well-known/webfinger?resource=acct:brozek@brandonrozek.com`.
A webfinger request should return the handle of the user (the `subject`) as well as A Webfinger request should return the handle of the user (the `subject`) as well as
a link to its `actor`. a link to its `actor`.
```json ```json
@ -49,9 +49,9 @@ a link to its `actor`.
} }
``` ```
Now for a static site with one user, you can hardcode the webfinger directly Now for a static site with one user, you can hardcode the Webfinger directly
at `.well-known/webfinger`. The only issue is that many webservers determine the at `.well-known/webfinger`. The only issue is that many webservers determine the
mimetype of a file by its extension. In this case, we'll have to let the webserver mime-type of a file by its extension. In this case, we'll have to let the webserver
(mine is nginx) know how to serve it. (mine is nginx) know how to serve it.
```nginx ```nginx

View file

@ -21,7 +21,7 @@ The main advantage of PESOS is that my primary interaction with Mastodon is thro
- Boosts - Boosts
- Character Limits - Character Limits
- Alt Description in Images - Alt Description in Images
- Post Permisssions - Post Permissions
## Disadvantages to PESOS ## Disadvantages to PESOS

View file

@ -7,7 +7,7 @@ tags: ["Networking"]
As of this time of writing, the current version of PiHole (5.0) supports adding custom DNS records, but not wildcard records. This makes it annoying if you run a bunch of different services within your LAN following a certain pattern. As of this time of writing, the current version of PiHole (5.0) supports adding custom DNS records, but not wildcard records. This makes it annoying if you run a bunch of different services within your LAN following a certain pattern.
Though since PiHole runs on top of `dnsmasq` it is easy to add an additional configuration file to point a domain containing `example.com` to a specific ip. Though since PiHole runs on top of `dnsmasq` it is easy to add an additional configuration file to point a domain containing `example.com` to a specific IP.
If you look in `/etc/dnsmasq.d/` there are the files `01-pihole.conf` and `02-pihole-dhcp.conf`. For our wildcard record, we're going to add a new file `03-custom-dns.conf`. Let's have an example where we want to map `example.com` and `*.example.com` to `192.168.0.10`. If you look in `/etc/dnsmasq.d/` there are the files `01-pihole.conf` and `02-pihole-dhcp.conf`. For our wildcard record, we're going to add a new file `03-custom-dns.conf`. Let's have an example where we want to map `example.com` and `*.example.com` to `192.168.0.10`.

View file

@ -107,7 +107,7 @@ sudo ufw allow in on wg0 out on wg0
**On all machines:** **On all machines:**
Have the wireguard service start at boot Have the Wireguard service start at boot
```bash ```bash
sudo systemctl enable wg-quick@wg0 sudo systemctl enable wg-quick@wg0

View file

@ -5,7 +5,7 @@ draft: false
tags: [ "Linux" ] tags: [ "Linux" ]
--- ---
A dead simple way to send files between two linux machines not on the same network is to use a utility called [Magic Wormhole](https://github.com/warner/magic-wormhole). It is typically included in the standard repositories and is so simple the this blog post is going to end soon. A dead simple way to send files between two Linux machines not on the same network is to use a utility called [Magic Wormhole](https://github.com/warner/magic-wormhole). It is typically included in the standard repositories and is so simple the this blog post is going to end soon.
**Send a file:** **Send a file:**

View file

@ -32,7 +32,7 @@ Xephyr :$DNum \
-resizeable & -resizeable &
``` ```
If we're going to be using this nested X server for one application, then I recommend using the `ratpoison` window manager as it will make the application full screen and supports the reizability of the Xephyr window. If we're going to be using this nested X server for one application, then I recommend using the `ratpoison` window manager as it will make the application full screen and supports the resizing of the Xephyr window.
```bash ```bash
ratpoison -d :$DNum & ratpoison -d :$DNum &