Commit Graph

196 Commits

Author SHA1 Message Date
Gabriel Arazas
38d8542875 config: update image formats for more hosts 2022-11-29 15:58:33 +08:00
Gabriel Arazas
cee69d59a0 config: consider default host config for system images
There are some parts of the config when imported with image modules
where it will set them with often default overrides. It is best to let
them override with our host config especially with the more important
options such as anything networking-related.
2022-11-25 21:28:11 +08:00
Gabriel Arazas
181de0406b config: update comments 2022-11-25 14:51:27 +08:00
Gabriel Arazas
afb86dd59a config: add some hosts image to packages 2022-11-25 14:51:27 +08:00
Gabriel Arazas
9bd62dba58 config: add hydraJobs to the outputs 2022-11-21 20:33:58 +08:00
Gabriel Arazas
3a7816a901 chore: reformat codebase 2022-11-19 11:32:29 +08:00
Gabriel Arazas
5ea8fcb0cf config: add treefmt as formatter tool 2022-11-19 11:32:29 +08:00
Gabriel Arazas
ed893813fe config: remove system as part of extraArgs
We use nixpkgs with the intended system anyways so we could get away
with getting the system from the imported nixpkgs attrset.
2022-11-17 13:35:19 +08:00
Gabriel Arazas
ebbd0b5220 config: add deploy.nodes to output
Welp, now I'm using NixOS for my servers. One step closer to managing an
entire cluster with this.
2022-11-15 13:12:51 +08:00
Gabriel Arazas
18adca6409 config: add more comments
Accumulated over time so time for another commit.
2022-11-06 17:38:51 +08:00
Gabriel Arazas
d14628b36e config: use flake-provided package
We've also removed the overlay because of troubles with building certain
package that is required to be in a specific version. Overlays are very
powerful but very unwieldy for a stable environment at times.
2022-11-05 09:26:43 +08:00
Gabriel Arazas
68bd6f891e config: add xterm as part of excluded packages 2022-10-27 15:13:30 +08:00
Gabriel Arazas
b9d2b5ee87 flake.nix: clean up some code 2022-09-29 11:35:00 +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
90dd0f9c35 config: update 2022-09-25 11:49:19 +08:00
Gabriel Arazas
69414b5a21 config: create dotfiles as an extraArgs 2022-09-25 11:46:14 +08:00
Gabriel Arazas
beec619819 flake.nix: update default host config 2022-09-19 10:55:31 +08:00
Gabriel Arazas
8a9207fba8 flake.nix: use mkDefault for default host config 2022-09-01 23:21:39 +08:00
Gabriel Arazas
7ac5991cc4 templates/basic-overlay-flake: init template 2022-09-01 10:01:15 +08:00
Gabriel Arazas
c9ccb53bac flake.nix: use Nix-built Guix service module 2022-08-27 13:41:12 +08:00
Gabriel Arazas
d70f3b3e69 flake.nix: refactor and remove system from extraArgs 2022-08-19 17:36:33 +08:00
Gabriel Arazas
acc36dc851 flake.nix: refactor extraArgs placement 2022-08-17 18:43:48 +08:00
Gabriel Arazas
08160eb827 misc: update and refactor 2022-08-13 08:31:44 +08:00
Gabriel Arazas
9c79c70d3b flake.nix: update the registry and Nix config 2022-08-10 12:42:12 +08:00
Gabriel Arazas
a6d591f31b flake.nix: generate Nix paths and registry with the inputs 2022-08-07 13:30:19 +08:00
Gabriel Arazas
3002c765a3 flake: add formatter attribute in the output 2022-08-06 14:57:51 +08:00
Gabriel Arazas
472af7efd1 flake.nix: format the file 2022-08-06 14:00:04 +08:00
Gabriel Arazas
e4d1bf6af6 hosts: update home-manager default configuration
I forgot I set the home-manager values only to
`homeManagerConfigurations` in the flake output. It should be added to
the hosts configuration with the `home-manager.sharedModules` attribute.
2022-08-06 13:58:24 +08:00
Gabriel Arazas
cf35320663 flake.nix: add helix-editor flake 2022-08-05 12:45:54 +08:00
Gabriel Arazas
adff4fd67f flake.nix: update hosts default config 2022-07-28 17:29:58 +08:00
Gabriel Arazas
10131d58be secrets: replace agenix with sops and sops-nix 2022-07-19 07:11:01 +08:00
Gabriel Arazas
9182306d81 flake.nix: reduce number of inputs from lockfile
Though, be sure to check it periodically to see if it's safe to follow
with our own inputs.
2022-07-14 09:10:34 +08:00
Gabriel Arazas
cdbb816eca flake.nix: add NUR module to default host config 2022-07-14 08:21:09 +08:00
Gabriel Arazas
d599586053 flake.nix: add an overlay of the packages 2022-07-14 08:21:09 +08:00
Gabriel Arazas
6a0c115432 default.nix: support for traditional channels
Though, it's limited compared to flakes. I supposed that's better than
nothing.
2022-07-14 08:21:09 +08:00
Gabriel Arazas
cc40cdb110 flake.nix: update several parts of config 2022-07-14 08:03:18 +08:00
Gabriel Arazas
a20af36002 flake.nix: add blocklist for exported modules
Even though this will most likely extend under `tasks` attribute. Not to
mention, it is useless outside of my own setup anyways. Better be
accommodating than not, I guess.
2022-07-13 19:15:23 +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
a81ab6f415 flake.nix: update args for homeManagerConfiguration 2022-07-10 19:04:47 +08:00
Gabriel Arazas
0067a7b15e flake.nix: follow inputs to original nixpkgs
All of the inputs are safe to follow the original nixpkgs. This is the
case for Neovim overlay that the lockfile is automatically updated and
the Emacs overlay simply has no lockfile.
2022-07-10 05:40:56 +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
40492d55b7 lib: privatize parts of library
Some of the functions cater to this specific setup so no need to export
them.
2022-07-09 13:49:51 +08:00
Gabriel Arazas
5a30ebcb02 flake.nix: update rust-overlay overlay attribute
It is deprecated in favor of the newer preferred schema from the recent
Nix updates.
2022-07-09 10:52:54 +08:00
Gabriel Arazas
e235ad949e flake.nix: fix references to lib to being an argument
It turns out the functions that is being wrapped by `mkHost` and
`mkUser` both accept `lib` as one of the attribute on their respective
functions. It is better to use that instead of chucking it as part of
`extraSpecialArgs` or something similar.
2022-07-09 10:51:06 +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
908e0caf50 flake.nix: move flake utilities in the file
It doesn't make sense to put them into separate file anymore since there
is always only one location that uses it. The flake utilities have been
changed also with the updated version of the functions from its inputs.
2022-07-09 06:51:16 +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
1c1aca1b6f flake.nix: update list of permitted insecure packages 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
7ec58315c1 update various files 2022-04-30 20:31:11 +08:00
Gabriel Arazas
9f6cef56f8 profiles/system: add auto-upgrade option 2022-04-17 22:33:04 +08:00
Gabriel Arazas
99050bc806 lib/flake-utils: refactor mkHost
Now that `system` top-level attribute in `configuration.nix` is
documented and comes with additional options now, we'll have to move the
system configuration into a new namespace. This is just the easy way
out.
2022-04-17 11:00:39 +08:00
Gabriel Arazas
d9b8598897 flake.nix: refactor 2022-04-15 20:49:59 +08:00
Gabriel Arazas
51a2ad3c4a flake.nix: refactor for latest inputs 2022-04-03 10:23:46 +08:00
Gabriel Arazas
4de5e1505b flake.nix: update various things
- Update the attribute names with the latest stable release.
- Explicitly support only 'x86_64-linux' for now.
- Format the file with nixfmt.
- Update the project-local Nix settings.
2022-03-28 08:15:40 +08:00
Gabriel Arazas
0dbea86e46 lib: make extraSpecialArgs in mkUser
There are now other user configs that make use of different attributes
from the flake itself. It is better to make `extraSpecialArgs`
configurable at this point.
2022-03-01 23:05:28 +08:00
Gabriel Arazas
e1f69061e5 flake.lock: update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/a17d1f30550260f8b45764ddbd0391f4b1ed714a' (2022-02-02)
  → 'github:ryantm/agenix/b4ab630f195cb15f833cb285de232b1a22d1ea0a' (2022-02-22)
• Updated input 'emacs-overlay':
    'github:nix-community/emacs-overlay/6ecfaeb355326456e7b331d1527105adab360adc' (2022-02-18)
  → 'github:nix-community/emacs-overlay/f7eca8816dd24bed25f7c6a49cf4185d3725642d' (2022-02-27)
• Updated input 'home-manager':
    'github:nix-community/home-manager/4f4165a8b9108818ab0193bbd1a252106870b2a2' (2022-02-17)
  → 'github:nix-community/home-manager/2499b916921adde8a694117bc007efdde8bbd918' (2022-02-27)
• Updated input 'neovim-nightly-overlay':
    'github:nix-community/neovim-nightly-overlay/7ab23810d3844251fef656d7acc4bfbb2c4584bd' (2022-02-18)
  → 'github:nix-community/neovim-nightly-overlay/9a5300fb01ef2eb5013f932913e8e7d5d96e4e9d' (2022-02-26)
• Updated input 'neovim-nightly-overlay/neovim-flake':
    'github:neovim/neovim/faeff49cbfd190afba67e221412b7132b7ad8360?dir=contrib' (2022-02-18)
  → 'github:neovim/neovim/005a7aa1670841dfdffb7559161a7d37d6c14bc4?dir=contrib' (2022-02-25)
• Updated input 'neovim-nightly-overlay/nixpkgs':
    'github:nixos/nixpkgs/48d63e924a2666baf37f4f14a18f19347fbd54a2' (2022-02-10)
  → 'github:nixos/nixpkgs/7f9b6e2babf232412682c09e57ed666d8f84ac2d' (2022-02-21)
• Updated input 'nixos-generators':
    'github:nix-community/nixos-generators/296067b9c7a172d294831dec89d86847f30a7cfc' (2021-12-26)
  → 'github:nix-community/nixos-generators/05773c5d1584cebd5eda41675c3456dcabdef42a' (2022-02-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/19574af0af3ffaf7c9e359744ed32556f34536bd' (2022-02-16)
  → 'github:NixOS/nixpkgs/7dda625e7f63445ff61bcf11618999d2c97d5865' (2022-02-23)
• Updated input 'nur':
    'github:nix-community/NUR/8d98d367039695d78ef5cf89da6e577886de81c1' (2022-02-18)
  → 'github:nix-community/NUR/1dfd799af1c96ce96e7db9c4f97d8a9fc4f0e30d' (2022-02-27)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/9ce263da4310d02bd16f18f4db1c617265939a3e' (2022-02-19)
  → 'github:oxalica/rust-overlay/7f273929e83a196f96a0dbee9ea565952e340bd6' (2022-02-26)
2022-02-27 10:34:35 +08:00
Gabriel Arazas
c753ff5294 Update various files 2022-02-05 18:58:42 +08:00
Gabriel Arazas
6fb08d3506 Add nixos-generators to the workflow 2022-02-04 23:36:22 +08:00
Gabriel Arazas
66c7d8a509 Use several binary caches for flake 2022-02-04 20:48:02 +08:00
Gabriel Arazas
73c98916a5 lib/flake-utils: update mkHost
The NixOS system is now made overridable as a workaround for
nixos-generators.

See https://github.com/nix-community/nixos-generators/issues/110
for more details.
2022-02-04 20:47:19 +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
a6a4b2b1e1 Update various files 2022-01-25 09:32:17 +08:00
Gabriel Arazas
84d0062ca8 templates/basic-devshell: create template 2022-01-25 09:28:10 +08:00
Gabriel Arazas
5b0e1a78f3 Add nix-overlay-guix and update the inputs
The overlay is most likely for show and not going to be used only for my
experiments due to the service not working well. I may just use the
binary installation instead if this didn't work.
2022-01-18 20:05:25 +08:00
Gabriel Arazas
def1a4a9a4 Update miscellaneous parts of the configuration 2022-01-12 11:03:31 +08:00
Gabriel Arazas
3d2076dabb Add nix-alien for NixOS-related configurations 2022-01-12 10:45:06 +08:00
Gabriel Arazas
7db21c9fc5 Format the files through nixfmt 2022-01-11 20:22:08 +08:00
Gabriel Arazas
4e7338686e Refactor flake.nix 2022-01-07 11:09:32 +08:00
Gabriel Arazas
9ab450a741 Update library to be more concise with its inputs 2022-01-07 11:08:50 +08:00
foo-dogsquared
3e56aea47d Add my binary cache for my own packages 2022-01-03 17:29:49 +08:00
foo-dogsquared
45c074771d Refactor flake configuration 2022-01-02 22:30:00 +08:00
foo-dogsquared
0b2b336560 Add the NUR to the flake inputs
I'm going to use it mostly for its extra packages (and maybe some of its
modules).
2022-01-02 08:48:15 +08:00
foo-dogsquared
9fd7213200 Add emacs-overlay to the config 2022-01-02 08:40:01 +08:00
foo-dogsquared
c96889b62e Add a development shell for this project 2022-01-01 20:14:50 +08:00
foo-dogsquared
6bbad11fa0 Add Rust development shell 2021-12-26 18:42:12 +08:00
Gabriel Arazas
479f106f4e Update flake and users config 2021-12-19 17:39:18 +08:00
Gabriel Arazas
3a431615c4 Update flake config and inputs 2021-12-18 17:41:45 +08:00
Gabriel Arazas
be63b23770 Create development shells
Only with the basics for now. I've yet to explore more complex use cases
such as the following repos:

- https://github.com/GTrunSec/Coding-Dev-Env-With-NixFlake
- https://github.com/LavaDesu/flakes

This seems nifty feature especially when doing some project spelunking
or something.
2021-12-13 15:32:58 +08:00
Gabriel Arazas
adf04a9393 Update various configurations
Flake outputs, hosts, users, and formatting of Nix files. et cetera, et
cetera.
2021-12-11 13:37:27 +08:00
Gabriel Arazas
efc578e961 Update modules
- Add `modules.desktop.cleanup` for the usual cleanup activties in
  NixOS.
- Update to proper descriptions for module options added with
  `lib.mkEnableOption`.
- Additional packages for various modules.
- Deleted `modules/home-manager/alacritty`. It is pretty useless though.
  :(
2021-12-11 13:16:45 +08:00
Gabriel Arazas
09f8a1f763 Modularize the library
The flake utilities are too specific. Not going to contribute further
crap in the world. ;p
2021-12-08 12:20:18 +08:00
Gabriel Arazas
c7d2b21756 Revert restructuring 2021-12-06 18:12:00 +08:00
Gabriel Arazas
d4f15e4c0b Modularize flake utilities 2021-12-06 17:56:34 +08:00
Gabriel Arazas
a2ed2a95c9 Update flake outputs
- Added overlays both for NixOS and home-manager configs.
- Fixed path for importing home-manager configurations.
- Added more comments for sanity. :)
2021-12-06 17:53:34 +08:00
Gabriel Arazas
3a022a374a Restructure the modules
I think this is better for separating modules explicitly. This is also
considered as there are similar objects between modules (e.g., NixOS
and home-manager modules and users).

Revert users module to old position
2021-12-06 17:03:39 +08:00
Gabriel Arazas
d676c59cda Update flake output
- Remove package outputs for MacOS since I don't have any.
- Import our custom packages as an overlay for our NixOS configs.
- Recursively import our modules which is more correct.
2021-12-02 22:00:37 +08:00
Gabriel Arazas
2cf96cb1f3 Format the Nix files 2021-11-29 17:58:02 +08:00
Gabriel Arazas
e2699c2cea Update home-manager modules and related configs 2021-11-29 17:56:24 +08:00
Gabriel Arazas
db5fc8269e Update user-specific config
Oh no, now I'm content with creating my own framework instead of using
something like digga or flake-utils.
2021-11-29 13:30:57 +08:00
Gabriel Arazas
a34674f672 Update config 2021-11-27 16:04:01 +08:00
Gabriel Arazas
539a798009 Rewrite as a flake
I revisited NixOS this week and I've rewritten my NixOS config from
scratch. I must say I really like Nix flakes. For whatever reason it
just clicked and I understood more programming with Nix despite my
previous experience which is not good. Could be just the fact I had a
break for a long time from completely using Nix (I still used it on
non-NixOS distros).

Eh... I still took some things from the original inspiration of this
configuration so there's that.
2021-11-25 19:55:30 +08:00