Commit Graph

317 Commits

Author SHA1 Message Date
Gabriel Arazas
6cb95c3a2a profiles/dev: add timer for profile upgrade service 2022-10-10 11:41:16 +08:00
Gabriel Arazas
267df4029e profiles/dev: add diffoscope for git difftool 2022-10-10 11:40:19 +08:00
Gabriel Arazas
66f535df97 tasks/multimedia-archive: clean up 2022-10-03 16:43:26 +08:00
Gabriel Arazas
da68210d38 tasks/multimedia-archive: refactor and reformat 2022-10-01 12:59:17 +08:00
Gabriel Arazas
a070dddc67 tasks/multimedia-archive: update to schema and restructuring 2022-10-01 12:59:17 +08:00
Gabriel Arazas
b0ee4ef296 tasks/multimedia-archive: add a schema for jobs database 2022-09-30 17:13:59 +08:00
Gabriel Arazas
ef2648bf3a config: add convention for setting profiles conditionally 2022-09-28 19:49:44 +08:00
Gabriel Arazas
1cb8b8c2cd config: change removed aliases to their non-aliased versions 2022-09-28 19:12:56 +08:00
Gabriel Arazas
38d8d19054 docs: update 2022-09-28 19:12:38 +08:00
Gabriel Arazas
a46c73bd24 tasks/multimedia-archive: add URLs for gallery-dl art job 2022-09-28 08:55:41 +08:00
Gabriel Arazas
cd9e1f7667 programs/kiwmi: fix module again :) 2022-09-28 08:55:30 +08:00
Gabriel Arazas
e8b45d36d7 programs/kiwmi: fix module
I always forget to readd the file every time I create a new file. :/
2022-09-26 14:33:56 +08:00
Gabriel Arazas
394aa2bddf docs: update profile doc 2022-09-26 14:33:56 +08:00
Gabriel Arazas
be2d6bcfcb workflows: discourage usage of profiles
I haven't realized that my own workflows use them when profiles are not
even exported in the flake output. Whoops...

For this, I'll put up a compromise by explicitly importing them.
2022-09-26 11:47:16 +08:00
Gabriel Arazas
646eb5296b programs/kiwmi: init module 2022-09-26 08:37:00 +08:00
Gabriel Arazas
72d3ee9f82 profiles/dev: add more debugging tools 2022-09-26 08:35:10 +08:00
Gabriel Arazas
bd11015b97 themes/a-happy-gnome: create .editorconfig 2022-09-25 11:50:35 +08:00
Gabriel Arazas
6a884de15a profiles/system: configure limits for audio setup 2022-09-24 13:07:56 +08:00
Gabriel Arazas
9cf40ed1af profiles/dev: add schedule for user profile update 2022-09-21 14:24:01 +08:00
Gabriel Arazas
3cee4ed9fb profiles/system: update Flatpak remotes hash 2022-09-21 14:17:11 +08:00
Gabriel Arazas
14f1f8c75f config: disable Archivebox
It is broken and it has been like that for a couple of months so we'll
just disable it completely. I mostly use the web UI with manual
management of archiving anyways.
2022-09-21 14:17:11 +08:00
Gabriel Arazas
9f5b9c1be3 themes/a-happy-gnome: add PaperWM shell extension 2022-09-21 14:17:11 +08:00
Gabriel Arazas
9fc40da4f0 themes/a-happy-gnome: format dconf keyfiles 2022-09-21 14:17:11 +08:00
Gabriel Arazas
b047d0c7e3 profiles/i18n: fix assertion 2022-09-19 20:57:56 +08:00
Gabriel Arazas
39e11eac71 profiles/i18n: modularize common config into separate options 2022-09-12 18:51:09 +08:00
Gabriel Arazas
d20b192c41 services: refactor 2022-09-12 17:36:22 +08:00
Gabriel Arazas
fc7c2849bd profiles/desktop: update audio config 2022-09-02 08:51:04 +08:00
Gabriel Arazas
91097f18df tasks/backup-archive: format and refactor 2022-09-01 22:47:22 +08:00
Gabriel Arazas
9b3c3f6c1b tasks/multimedia-archive: update yt-dlp service config 2022-08-31 14:39:24 +08:00
Gabriel Arazas
767bfddead services/yt-dlp: update config to log to journal
Apparently, it doesn't really log the errors in the journal so it can
make the service failed for no reason. It can be configured to redirect
it to journal.
2022-08-31 14:37:58 +08:00
Gabriel Arazas
7d51879c9f chore: update miscellaneous parts of config 2022-08-27 13:41:12 +08:00
Gabriel Arazas
58ee2be8c5 docs: add README for profiles and update project README 2022-08-27 13:41:12 +08:00
Gabriel Arazas
6cb1515d91 themes: rename into workflows
More self-descriptive == better. Plus it does imply that themes only
change aesthetics which is not often the case with the usual modules
that are defined here.
2022-08-27 13:41:12 +08:00
Gabriel Arazas
b1aad9bd52 profiles/filesystem: fix the options 2022-08-20 14:24:58 +08:00
Gabriel Arazas
f5d0367dcb tasks/backup-archive: refactor 2022-08-20 14:15:16 +08:00
Gabriel Arazas
c53618add6 profiles/system: update config 2022-08-20 14:13:54 +08:00
Gabriel Arazas
2c17d207b6 profiles/filesystem: create module
This is primarily intended to centralize where we define our
filesystems. This way, it would also avoid potential misconfiguration
with the mount options.
2022-08-20 13:54:23 +08:00
Gabriel Arazas
57a35230e9 tasks/multimedia-archive: update script to dump JSON with UTF 2022-08-19 17:36:33 +08:00
Gabriel Arazas
84f53a2f50 tasks/backup-archive: refactor and update secrets keys 2022-08-19 17:36:33 +08:00
Gabriel Arazas
96ab200946 programs/pop-launcher: fix package list to actually install the specified package 2022-08-14 11:31:57 +08:00
Gabriel Arazas
08160eb827 misc: update and refactor 2022-08-13 08:31:44 +08:00
Gabriel Arazas
2d5f4ec996 tasks/multimedia-archive: improve script and refactor 2022-08-11 09:44:12 +08:00
Gabriel Arazas
36909a281f services/yt-dlp: refactor 2022-08-11 09:43:17 +08:00
Gabriel Arazas
8651fc7a4d programs/pop-launcher: make plugin packages not rewrite symlinks 2022-08-10 12:43:33 +08:00
Gabriel Arazas
4e996a58cf programs/wezterm: correct profile path 2022-08-10 12:14:44 +08:00
Gabriel Arazas
0126b4e1e7 programs/wezterm: create module 2022-08-08 11:18:10 +08:00
Gabriel Arazas
70de1fc6fa themes/a-happy-gnome: fix moved config 2022-08-07 19:46:29 +08:00
Gabriel Arazas
6fb793d24a programs/pop-launcher: create module
This is to easily install launcher plugins and scripts in NixOS. I don't
know if this is also possible on home-manager (which I think it could be
since it also has the capability to set files).
2022-08-07 17:43:57 +08:00
Gabriel Arazas
49b1d34a06 profiles/system: remove printing services 2022-08-06 15:45:54 +08:00
Gabriel Arazas
220b16e954 services/bleachbit: properly escape shell arguments 2022-08-06 15:44:50 +08:00
Gabriel Arazas
631b14f8b5 services/archivebox: add job-specific service persistence 2022-08-06 14:04:21 +08:00
Gabriel Arazas
201999056f themes/a-happy-gnome: update dconf filenames
And also some minor tweaks to them.
2022-08-05 12:45:54 +08:00
Gabriel Arazas
ab8cd0238d tasks/multimedia-archive: fix erroneous attribute 2022-08-01 20:08:55 +08:00
Gabriel Arazas
7d4c971558 themes/a-happy-gnome: update keybindings and portal settings 2022-07-31 14:44:29 +08:00
Gabriel Arazas
d423e7d692 tasks/multimedia-archive: refactor 2022-07-31 14:44:29 +08:00
Gabriel Arazas
4dd2acfe7f services/archivebox: change jobs.<name>.links to jobs.<name>.urls 2022-07-31 14:44:29 +08:00
Gabriel Arazas
8590f4ea32 services/recoll: remove since it is upstreamed 2022-07-31 14:44:29 +08:00
Gabriel Arazas
8fdd60098f services: fix correct module documentation 2022-07-30 16:22:24 +08:00
Gabriel Arazas
faf11bb6ee services: fix proper values 2022-07-26 20:04:08 +08:00
Gabriel Arazas
0fe9fa6c29 tasks/multimedia-archive: update service config 2022-07-22 19:05:08 +08:00
Gabriel Arazas
906ea48993 services: change dependency requirement
I didn't realize `network.target` is very ambiguous. The next best thing
for booting up the service after the system is up is `default.target`
but we're being explicit here for NixOS services just to make sure.
2022-07-22 15:02:30 +08:00
Gabriel Arazas
d9811b1d84 services/gallery-dl: add job persistence 2022-07-21 09:54:36 +08:00
Gabriel Arazas
e9c2c3d226 services/yt-dlp: add job persistence 2022-07-21 09:54:00 +08:00
Gabriel Arazas
bd84463d42 tasks/multimedia-archive: update to service change
We'll also start using sops-nix to manage the secrets required for
extractors that have authentication.
2022-07-20 17:00:03 +08:00
Gabriel Arazas
37a1c4ee33 services/yt-dlp: escape extra arguments
Proper service scripting and all that.
2022-07-20 16:58:31 +08:00
Gabriel Arazas
dd9921fc7e services/gallery-dl: add job-specific settings
The arguments are also arranged to let the resulting settings cascade
from service-wide to job-specific settings.
2022-07-20 16:56:44 +08:00
Gabriel Arazas
01bf630a9d tasks/backup-archive: organize secrets and update remote backup 2022-07-20 12:00:51 +08:00
Gabriel Arazas
8afa2b4d52 gnome-dialect: remove package
It is available in nixpkgs now so...
2022-07-19 13:54:51 +08:00
Gabriel Arazas
a5c4b9253a chore: update misc configs 2022-07-19 12:14:55 +08:00
Gabriel Arazas
1b97a37adc themes/a-happy-gnome: change inputs and update keybindings 2022-07-19 12:14:14 +08:00
Gabriel Arazas
ef8580ebe6 tasks/multimedia-archive: use Newpipe database for yt-dlp 2022-07-19 07:11:01 +08:00
Gabriel Arazas
10131d58be secrets: replace agenix with sops and sops-nix 2022-07-19 07:11:01 +08:00
Gabriel Arazas
ffd2d84b7d profiles/system: update Flatpak remotes installation priority 2022-07-16 17:26:26 +08:00
Gabriel Arazas
95c3ce7c80 themes/a-happy-gnome: update default list of packages 2022-07-16 17:23:29 +08:00
Gabriel Arazas
53c2b15454 themes/a-happy-gnome: remove terminal option
There's not much use for it since custom keyboard shortcuts are not
possible to set as a system-wide config. This could easily be added into
the list of packages so RIP... :(
2022-07-16 17:16:33 +08:00
Gabriel Arazas
d5a480cdc8 themes/a-happy-gnome: use the recent options 2022-07-14 17:01:11 +08:00
Gabriel Arazas
6e963a71df profiles/i18n: fix locales list 2022-07-14 09:01:42 +08:00
Gabriel Arazas
0c7f57f5a9 profiles/dev: update atuin config 2022-07-14 08:04:24 +08:00
Gabriel Arazas
14c10abded profiles/editors: update Emacs to use nativeComp branch 2022-07-14 08:04:13 +08:00
Gabriel Arazas
65a408b56d themes/a-happy-gnome: add packages and more ibus engines 2022-07-14 08:00:13 +08:00
Gabriel Arazas
9194427530 profiles/system: improve upon existing attributes 2022-07-14 07:59:18 +08:00
Gabriel Arazas
530da5c878 profiles/i18n: init NixOS module 2022-07-14 07:58:39 +08:00
Gabriel Arazas
8b4690fc73 profiles/i18n: add more fonts for home configs 2022-07-13 21:50:31 +08:00
Gabriel Arazas
bc77582418 tasks: update the device info 2022-07-13 19:14:45 +08:00
Gabriel Arazas
a916d78f09 profiles/services: remove path assertions
It was supposed to create the directory if it wasn't found which is
self-defeating. In any case, it will still fail if the directory is in
the way of an unmounted device.
2022-07-13 19:11:33 +08:00
Gabriel Arazas
4708d7acc2 profiles/system: refactor to remove inputs attr
This is to reduce burden in case I want to support importing my
config through traditional channels.
2022-07-13 19:10:15 +08:00
Gabriel Arazas
6f3685f5b1 tasks/backup-archive: use no local archive anymore
It is no more than a safety net and an expensive one at that. A
dedicated external storage media would be better. Ideally, hosts should
have a snapshotting system with btrfs or similar but it is what it is
for now.
2022-07-10 05:43:32 +08:00
Gabriel Arazas
eebaf93938 docs: update READMEs and comments 2022-07-09 14:04:17 +08:00
Gabriel Arazas
30c7ee0203 profiles/agenix: move into default config 2022-07-09 14:01:37 +08:00
Gabriel Arazas
7ad9a62f2c profiles/users: move as a library function 2022-07-09 14:00:51 +08:00
Gabriel Arazas
747a78b6d9 profiles/system: update store optimization to occur weekly 2022-07-09 10:52:54 +08:00
Gabriel Arazas
95d30dbdcf profiles/dev: fix custom functions... again 2022-07-09 10:52:54 +08:00
Gabriel Arazas
3d9494d92a flake.nix: update default NixOS config with home-manager options 2022-07-09 07:08:27 +08:00
Gabriel Arazas
1929f406ca profiles/desktop: remove yabridge packages temporarily 2022-07-08 09:39:34 +08:00
Gabriel Arazas
c46091d455 profiles/system: update font list 2022-07-08 07:28:59 +08:00
Gabriel Arazas
ff18237d0b profiles/dev: improve custom functions 2022-07-08 06:27:12 +08:00
Gabriel Arazas
873742d33c profiles/system: improve Flatpak installation 2022-07-07 22:34:57 +08:00
Gabriel Arazas
dcb13fd3ef tasks/backup-archive: update to new repo and description 2022-07-06 07:46:40 +08:00
Gabriel Arazas
91b31d6d30 profiles/dev: update dev.shells to add Bash as preferred shell 2022-07-06 07:46:40 +08:00
Gabriel Arazas
c714ef7237 docs: update the READMEs 2022-07-06 07:46:40 +08:00
Gabriel Arazas
024102c45c home-manager/foo-dogsquared: get config into home
Now that I have time, I've learnt that Git submodules are not supported
well with flake-based setup. Instead, I'll use my dotfiles repo as one
of the inputs as a non-flake which is exactly what I want. NICE!
2022-07-06 07:46:40 +08:00
Gabriel Arazas
6695c4f02f tasks/multimedia-archive: update setup and add ArchiveBox 2022-07-06 07:46:40 +08:00
Gabriel Arazas
ff6f652641 services/archivebox: create service 2022-07-06 07:46:40 +08:00
Gabriel Arazas
d111304d71 nixos/services: add path assertions 2022-07-06 07:38:21 +08:00
Gabriel Arazas
bde3ef040f profiles/system: remove selfPath
It was the wrong value so we'll remove it.
2022-06-26 08:45:57 +08:00
Gabriel Arazas
fbda6c94ff profiles/dev: replace hexchat with treefmt 2022-06-12 13:50:30 +08:00
Gabriel Arazas
d60decf109 themes/a-happy-gnome: update module and config 2022-06-11 12:50:50 +08:00
Gabriel Arazas
3438f4392e profiles: update various profiles 2022-06-09 13:00:23 +08:00
Gabriel Arazas
ab1222abb3 services/mopidy: remove service
It is now upstreamed into home-manager so yay!
2022-05-21 09:50:55 +08:00
Gabriel Arazas
d586fba900 update profiles and user configs 2022-05-20 14:47:09 +08:00
Gabriel Arazas
8448f511d8 themes/a-happy-gnome: update theme module
Now, it properly integrates installed extensions by automatically
generating a separate dconf keyfile and enabling them individually.
There is also an additional option for setting the preferred terminal
emulator instead of manually setting certain things on the appropriate
keyfile (though, it doesn't work so...).
2022-05-20 14:21:11 +08:00
Gabriel Arazas
1c3ca96c1a programs/cardboard-wm: init module
It is broken though because it cannot set things correctly. That may
have something to do with the lack of setup like certain services are
disabled or something. I'll just need help from the Cardboard
maintainers for this.
2022-05-13 12:56:11 +08:00
Gabriel Arazas
7ec58315c1 update various files 2022-04-30 20:31:11 +08:00
Gabriel Arazas
8b839ca866 tasks/multimedia-archive: update extra arguments 2022-04-29 16:55:30 +08:00
Gabriel Arazas
cffc206eb4 services/gallery-dl: update hardening options 2022-04-29 16:55:09 +08:00
Gabriel Arazas
c9d497c3fc services/yt-dlp: update hardening options 2022-04-29 16:54:36 +08:00
Gabriel Arazas
c86182d53a tasks/multimedia-archive: update
It now includes a yt-dlp script that includes the arguments as an extra
package. This is nice for custom downloads with the same preferences for
downloading.
2022-04-22 13:16:24 +08:00
Gabriel Arazas
b50b53238c services/gallery-dl: fix script and options 2022-04-22 13:14:02 +08:00
Gabriel Arazas
c0dd8ab1a8 services/yt-dlp: fix service working directory
There is the `--paths` option for that purpose. It also eliminates the
workaround for creating the directory before starting the service for
newly-bootstrapped systems.

The several hardening options have also been corrected.
2022-04-22 13:13:48 +08:00
Gabriel Arazas
f21c92a5b7 themes/knome: create theme
Finally decided to try out KDE Plasma for a little while (at least a
week from now). It is said to be flexible so I'll attempt to recreate my
workflow from GNOME as closely as possible.
2022-04-17 22:34:14 +08:00
Gabriel Arazas
d14fc861f2 themes/a-happy-gnome: update config for GNOME 42 2022-04-17 22:33:04 +08:00
Gabriel Arazas
5e67e452f6 tasks/multimedia-archive: init service 2022-04-17 22:33:04 +08:00
Gabriel Arazas
560e296532 services/yt-dlp: harden the service 2022-04-17 22:33:04 +08:00
Gabriel Arazas
10b3d01424 services/gallery-dl: harden the service 2022-04-17 22:33:04 +08:00
Gabriel Arazas
9f6cef56f8 profiles/system: add auto-upgrade option 2022-04-17 22:33:04 +08:00
Gabriel Arazas
7ae53c1563 profiles/desktop: rename into profiles/system
It is causing some confusion since it is slowly gaining some
non-desktop-related functions too. A rename would be appropriate now.
2022-04-17 11:00:38 +08:00
Gabriel Arazas
c0969ee5c7 gnome-shell-extension-desktop-cube: remove package
Similar to burn-my-windows, it is up-to-date in the nixpkgs repo so it
is unnecessary.
2022-04-15 21:00:40 +08:00
Gabriel Arazas
1639f920c9 gnome-shell-extension-burn-my-windows: remove package
It is up-to-date from nixpkgs so it is unnecessary at this point.
2022-04-15 21:00:36 +08:00
Gabriel Arazas
49018fb53e modules: reformat and refactor 2022-04-06 10:48:29 +08:00
Gabriel Arazas
fe94062d2e profiles/research: add more applications for it 2022-04-03 10:24:10 +08:00
Gabriel Arazas
aa690de222 services/bleachbit: add withChatCleanup option
Comes along a refactoring of the code. Didn't realized `let` is a thing
back then. Whoops...
2022-04-03 10:20:54 +08:00
Gabriel Arazas
6e214feb4a services/yt-dlp: init service
Structure-wise, it is pretty similar to the gallery-dl service. It was
about to be combined into a bigger service module as a dedicated service
for multimedia archiving but it is better to have them modularized in
the long run.
2022-04-03 10:18:22 +08:00
Gabriel Arazas
e0bba5655b services/gallery-dl: init service
Both for home-manager and NixOS, this time. Because I find use for both
of them, especially if you have a dedicated server for NixOS.
2022-04-03 10:10:29 +08:00
Gabriel Arazas
1e73f53f36 rename hardware-setup to tasks
It isn't really hardware-specific anymore and it is better to put them
all under in one basket. This is similar to my Ansible playbooks setup.
2022-03-31 13:59:54 +08:00
Gabriel Arazas
316953debd profiles/archiving: add programs to the list 2022-03-28 08:20:02 +08:00
Gabriel Arazas
e5c6708f64 themes/a-happy-gnome: update XDG prefs and add kitty 2022-03-28 08:19:12 +08:00
Gabriel Arazas
ac91cdc053 archivebox: update the service module
It can now add and schedule archiving tasks. Since archivebox will use
Crontab module (which uses `/usr/bin/crontab`), the scheduling with the
interface is out of the question. What better way to make it possible
than creating a home-manager module for it?
2022-03-21 10:06:23 +08:00
Gabriel Arazas
998f408fb2 plover: init service 2022-03-09 21:06:27 +08:00
Gabriel Arazas
272ff3ca6d nixos/themes/a-happy-gnome: update list of applications 2022-02-24 11:46:50 +08:00
Gabriel Arazas
e79460b3af nixos/services/borgmatic: remove service
It is not needed anymore since all of my backup procedures are now done
with the NixOS borg service.
2022-02-23 14:02:24 +08:00
Gabriel Arazas
207a682045 backup-archive: switch to NixOS borg module
While Borgmatic is great, the NixOS module does have easier
configuration for various use cases such as backups in removable
devices. To make this possible in Borgmatic, you have to go through some
loops.

Borgmatic does have easier way of indicating paths. However, in recent
versions of Borg, they have the experimental feature of indicate both
include and exclude through patterns which is close enough.

Also, because of this, we'll be deprecating the custom borgmatic service
at this point. It'll be removed once all of my NixOS-related backup
setups are not using it.
2022-02-19 16:58:08 +08:00
Gabriel Arazas
1d7f318696 Clean up files 2022-02-11 12:31:44 +08:00
Gabriel Arazas
c753ff5294 Update various files 2022-02-05 18:58:42 +08:00
Gabriel Arazas
d5c914f127 modules/nixos/themes: fix assertion
Whoops... brain fart. :/
2022-02-04 20:43:42 +08:00
Gabriel Arazas
2415514ab1 modules/nixos/themes/a-happy-gnome: update config 2022-02-04 16:38:52 +08:00
Gabriel Arazas
0f3d7fc7f6 modules/nixos/themes/a-happy-gnome: update theme
* Several extension configurations has been updated.
* It has a built-in extension for workspace rules?!
* More extensions!
2022-02-02 12:32:08 +08:00
Gabriel Arazas
905b5680b1 Clean up the files 2022-02-02 12:27:32 +08:00
Gabriel Arazas
4ec2730ad8 host/ni: use Guix module from guix-overlay 2022-02-02 12:27:32 +08:00
Gabriel Arazas
5f3e9a4022 modules/home-manager/services/mopidy: refactor and update 2022-01-31 07:58:16 +08:00
Gabriel Arazas
4800a803bd modules/home-manager/services/recoll: init service 2022-01-31 07:57:38 +08:00