Add music

This commit is contained in:
Michael Zhang 2022-02-08 00:15:05 -06:00
parent afc086cc26
commit dc80e5b44a
2 changed files with 46 additions and 32 deletions

View file

@ -1,42 +1,48 @@
+++ +++
title = "setup" title = "Setup"
+++ +++
# setup # Setup
List of software and services I use and endorse, mostly FOSS. List of software and services I use and endorse, mostly FOSS.
## desktop ## Desktop
- [**Arch Linux**](https://archlinux.org/) OS with rolling releases. - [**Arch Linux**](https://archlinux.org/) OS with rolling releases.
- [**Home manager**](https://github.com/nix-community/home-manager) Dotfile manager. - [**Home manager** (MIT)](https://github.com/nix-community/home-manager) Dotfile manager.
- [**Firefox**](https://www.mozilla.org/firefox) Browser. - [**Firefox** (MPL-2.0)](https://www.mozilla.org/firefox) Browser.
- [**Evolution**](https://wiki.gnome.org/Apps/Evolution) Email + calendar client. - [**Thunderbird** (MPL-2.0)](https://www.thunderbird.net) Email + calendar client.
## development ## Development
- [**Neovim**](https://neovim.io/) Text editor. - [**Neovim** (Apache-2.0/Vim)](https://neovim.io/) Text editor.
## server ## Server
- [**NixOS**](https://nixos.org/) Declarative and reproducible operating system. - [**NixOS** (MIT)](https://nixos.org/) Declarative and reproducible operating system.
- [**Hugo**](https://gohugo.io/) Static site generator that powers this site. - [**Hugo** (Apache-2.0)](https://gohugo.io/) Static site generator that powers this site.
- [**Gitea**](https://gitea.io) Self-hosted git. - [**Gitea** (MIT)](https://gitea.io/) Self-hosted git.
## mobile ## Mobile
- [**DAVx5**](https://www.davx5.com/) CalDAV and CardDAV sync for Android. - [**DAVx5** (GPL-3.0)](https://www.davx5.com/) CalDAV and CardDAV sync for Android.
- [**Shuttle**](https://www.shuttlemusicplayer.com/) Music player. - [**Gadgetbridge** (AGPL-3.0)](https://gadgetbridge.org/) Smartwatch client.
- [**Gadgetbridge**](https://gadgetbridge.org/) Smartwatch client. - [**K-9 Mail** (Apache-2.0)](https://k9mail.app/) Mail client.
- [**K-9 Mail**](https://k9mail.app/) Mail client. - [**Feeder** (GPL-3.0)](https://f-droid.org/packages/com.nononsenseapps.feeder/) RSS aggregator.
- [**Feeder**](https://f-droid.org/packages/com.nononsenseapps.feeder/) RSS aggregator.
## services ## Music
- [**ProtonMail**](https://protonmail.com/) Encrypted email. - [**Navidrome** (GPL-3.0)](https://navidrome.com) Self-hosted Subsonic-compatible streaming server.
- [**Signal**](https://signal.org/) Encrypted chat. - [**Sublime Music** (GPL-3.0)](https://sublimemusic.app) GTK Subsonic-compatible music client.
- [**Subtracks** (GPL-3.0)](https://github.com/austinried/subtracks) Android Subsonic-compatible music client.
## Services
- [**SourceHut** (AGPL-3.0)](https://sourcehut.org) Git, mailing list, IRC bouncer, etc. hosting.
- [**Element**](https://element.io/) Federated chat provider. - [**Element**](https://element.io/) Federated chat provider.
- [**ProtonMail** (Proprietary)](https://protonmail.com/) Encrypted email.
- [**Signal** (GPL-3.0/AGPL-3.0)](https://signal.org/) Encrypted chat.
## games ## Games
Mostly from Steam. Mostly from Steam.

View file

@ -32,22 +32,30 @@ first, but there are some important differences to note:
- We're not given the public keys $e_1$ and $e_2$, but they are related through - We're not given the public keys $e_1$ and $e_2$, but they are related through
$x$. $x$.
[Rabin]: https://en.wikipedia.org/wiki/Rabin_cryptosystem
## Finding $e_1$ and $e_2$ ## Finding $e_1$ and $e_2$
We know that $e_1$ and $e_2$ are related through $x$, which is some even number We know that $e_1$ and $e_2$ are related through $x$, which is some even number
greater than 2, but we're not given any of their real values. We're also given greater than 2, but we're not given any of their real values. We're also given
through an oddly-named `functor` function that: through an oddly-named `functor` function that:
$$ $$ 1 + e_1 + e_1^2 + \cdots + e_1^x = 1 + e_2 + e_2^2 $$
\begin{aligned}
1 + e_1 + e_1^2 + \cdots + e_1^x &= 1 + e_2 + e_2^2 \\\
\frac{1 - e_1^x}{1 - e_1} &= 1 + e_2 + e_2^2
\end{aligned}
$$
Interestingly enough, since $e_1$ and $e_2$ are primes, that means Taking the entire equation $\mod e_1$ gives us:
$$\begin{aligned}
1 &\equiv 1 + e_2 + e_2^2 \mod e_1 \\\
0 &\equiv e_2 + e_2^2 \\\
0 &\equiv e_2(1 + e_2)
\end{aligned}$$
This means there are two possibilities: either $e_1 = e_2$ or $e_1$ is even
(since we know $e_2$ is a prime). The first case isn't possible, because with $x
\> 2$, the geometric series equation would not be satisfied. So it must be true
that $\boxed{e_1 = 2}$, the only even prime.
Applying geometric series expansion, $1 + e_2 + e_2^2 = 2^x - 1$.
I'd like to thank @10, @sahuang, and @thebishop in the Project Sekai discord for I'd like to thank @10, @sahuang, and @thebishop in the Project Sekai discord for
their help throughout this challenge. doing a lot of the heavy-lifting to solve this challenge.
[Rabin]: https://en.wikipedia.org/wiki/Rabin_cryptosystem