Add music
This commit is contained in:
parent
afc086cc26
commit
dc80e5b44a
2 changed files with 46 additions and 32 deletions
|
@ -1,42 +1,48 @@
|
|||
+++
|
||||
title = "setup"
|
||||
title = "Setup"
|
||||
+++
|
||||
|
||||
# setup
|
||||
# Setup
|
||||
|
||||
List of software and services I use and endorse, mostly FOSS.
|
||||
|
||||
## desktop
|
||||
## Desktop
|
||||
|
||||
- [**Arch Linux**](https://archlinux.org/) OS with rolling releases.
|
||||
- [**Home manager**](https://github.com/nix-community/home-manager) Dotfile manager.
|
||||
- [**Firefox**](https://www.mozilla.org/firefox) Browser.
|
||||
- [**Evolution**](https://wiki.gnome.org/Apps/Evolution) Email + calendar client.
|
||||
- [**Home manager** (MIT)](https://github.com/nix-community/home-manager) Dotfile manager.
|
||||
- [**Firefox** (MPL-2.0)](https://www.mozilla.org/firefox) Browser.
|
||||
- [**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.
|
||||
- [**Hugo**](https://gohugo.io/) Static site generator that powers this site.
|
||||
- [**Gitea**](https://gitea.io) Self-hosted git.
|
||||
- [**NixOS** (MIT)](https://nixos.org/) Declarative and reproducible operating system.
|
||||
- [**Hugo** (Apache-2.0)](https://gohugo.io/) Static site generator that powers this site.
|
||||
- [**Gitea** (MIT)](https://gitea.io/) Self-hosted git.
|
||||
|
||||
## mobile
|
||||
## Mobile
|
||||
|
||||
- [**DAVx5**](https://www.davx5.com/) CalDAV and CardDAV sync for Android.
|
||||
- [**Shuttle**](https://www.shuttlemusicplayer.com/) Music player.
|
||||
- [**Gadgetbridge**](https://gadgetbridge.org/) Smartwatch client.
|
||||
- [**K-9 Mail**](https://k9mail.app/) Mail client.
|
||||
- [**Feeder**](https://f-droid.org/packages/com.nononsenseapps.feeder/) RSS aggregator.
|
||||
- [**DAVx5** (GPL-3.0)](https://www.davx5.com/) CalDAV and CardDAV sync for Android.
|
||||
- [**Gadgetbridge** (AGPL-3.0)](https://gadgetbridge.org/) Smartwatch client.
|
||||
- [**K-9 Mail** (Apache-2.0)](https://k9mail.app/) Mail client.
|
||||
- [**Feeder** (GPL-3.0)](https://f-droid.org/packages/com.nononsenseapps.feeder/) RSS aggregator.
|
||||
|
||||
## services
|
||||
## Music
|
||||
|
||||
- [**ProtonMail**](https://protonmail.com/) Encrypted email.
|
||||
- [**Signal**](https://signal.org/) Encrypted chat.
|
||||
- [**Navidrome** (GPL-3.0)](https://navidrome.com) Self-hosted Subsonic-compatible streaming server.
|
||||
- [**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.
|
||||
- [**ProtonMail** (Proprietary)](https://protonmail.com/) Encrypted email.
|
||||
- [**Signal** (GPL-3.0/AGPL-3.0)](https://signal.org/) Encrypted chat.
|
||||
|
||||
## games
|
||||
## Games
|
||||
|
||||
Mostly from Steam.
|
||||
|
|
|
@ -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
|
||||
$x$.
|
||||
|
||||
[Rabin]: https://en.wikipedia.org/wiki/Rabin_cryptosystem
|
||||
|
||||
## Finding $e_1$ and $e_2$
|
||||
|
||||
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
|
||||
through an oddly-named `functor` function that:
|
||||
|
||||
$$
|
||||
\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}
|
||||
$$
|
||||
$$ 1 + e_1 + e_1^2 + \cdots + e_1^x = 1 + e_2 + e_2^2 $$
|
||||
|
||||
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
|
||||
their help throughout this challenge.
|
||||
doing a lot of the heavy-lifting to solve this challenge.
|
||||
|
||||
[Rabin]: https://en.wikipedia.org/wiki/Rabin_cryptosystem
|
||||
|
|
Loading…
Reference in a new issue