summaryrefslogtreecommitdiff
path: root/src/pages/blog/2022-04-24.md
diff options
context:
space:
mode:
authoreug-vs <eugene@eug-vs.xyz>2022-10-24 00:17:47 +0300
committereug-vs <eugene@eug-vs.xyz>2022-10-24 00:17:47 +0300
commita39f1b469eec43cd8b1eb5abb451e9914621fc4a (patch)
tree8cd009694b17c6631c38bb1bb42aabc61df04553 /src/pages/blog/2022-04-24.md
parent159150afc918cf13f353ffbcc5abd3ab1b62432c (diff)
downloadeug-vs-xyz-a39f1b469eec43cd8b1eb5abb451e9914621fc4a.tar.gz
feat!: use relative linksastro
Diffstat (limited to 'src/pages/blog/2022-04-24.md')
-rw-r--r--src/pages/blog/2022-04-24.md4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/pages/blog/2022-04-24.md b/src/pages/blog/2022-04-24.md
index 8100ea8..c0cd834 100644
--- a/src/pages/blog/2022-04-24.md
+++ b/src/pages/blog/2022-04-24.md
@@ -42,7 +42,7 @@ src_install() {
}
```
-I'm often switching machines when developing my program, so I want to make sure that all dependencies are easily installable. Since I've recently [switched my last workstation to Gentoo](./2022-04-17.md), sharing packages can't be easier for me! As you can see, I'm just passing a link to a release tarball, specifying stuff like license and keywords and some metadata. All magic is of course happening inside the functions, which are as easy as calling `make install` with some environmental overrides. There's also a default implementation for these functions, and in many cases you don't even need to override them. Now I can install my package as usual `emerge -av media-libs/raylib`, and Portage will do the job. Everything's as it should be - a *package manager* is *managing a package*.
+I'm often switching machines when developing my program, so I want to make sure that all dependencies are easily installable. Since I've recently [switched my last workstation to Gentoo](./2022-04-17), sharing packages can't be easier for me! As you can see, I'm just passing a link to a release tarball, specifying stuff like license and keywords and some metadata. All magic is of course happening inside the functions, which are as easy as calling `make install` with some environmental overrides. There's also a default implementation for these functions, and in many cases you don't even need to override them. Now I can install my package as usual `emerge -av media-libs/raylib`, and Portage will do the job. Everything's as it should be - a *package manager* is *managing a package*.
Another example would be `libspotify`, which is a *proprietary program* that enables other programs to use Spotify API:
@@ -76,7 +76,7 @@ src_uninstall() {
}
```
-It's a bit trickier: we don't need to compile it, so we explicitly say that we are doing nothing in `src_compile` function. We also [apply a patch](./2022-04-18.md) so that we can more precisely specify destination directory. It's also important to match the keywords - since this binary is precompiled for `amd64` architecture I specify the corresponding keyword and install it under `/usr/lib64`. Now I can stream my Spotify playlists from my `mopidy` server!
+It's a bit trickier: we don't need to compile it, so we explicitly say that we are doing nothing in `src_compile` function. We also [apply a patch](./2022-04-18) so that we can more precisely specify destination directory. It's also important to match the keywords - since this binary is precompiled for `amd64` architecture I specify the corresponding keyword and install it under `/usr/lib64`. Now I can stream my Spotify playlists from my `mopidy` server!
These examples are not perfect, and they are not trying to be! I've created them for personal use, but they can give you an idea about the whole process. But you can of course get them from [my overlay](https://git.eug-vs.xyz/eug-vs/ebuild-repository/). There's also a package for [openring](https://git.sr.ht/~sircmpwn/openring) and my own build of `dwmblocks`.