{ "uuid": [ { "value": "179c3eed-b723-4f44-b9d4-398b90b916e7" } ], "langcode": [ { "value": "en" } ], "type": [ { "target_id": "daily_email", "target_type": "node_type", "target_uuid": "8bde1f2f-eef9-4f2d-ae9c-96921f8193d7" } ], "revision_timestamp": [ { "value": "2025-05-11T09:00:04+00:00" } ], "revision_uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "revision_log": [], "status": [ { "value": true } ], "uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "title": [ { "value": "No more random packages" } ], "created": [ { "value": "2024-11-23T00:00:00+00:00" } ], "changed": [ { "value": "2025-05-11T09:00:04+00:00" } ], "promote": [ { "value": false } ], "sticky": [ { "value": false } ], "default_langcode": [ { "value": true } ], "revision_translation_affected": [ { "value": true } ], "path": [ { "alias": "\/daily\/2024\/11\/23\/no-more-random-packages", "langcode": "en" } ], "body": [ { "value": "\n

Do you know every software package installed on your computer?<\/p>\n\n

Do you know every configuration file you've added or edited?<\/p>\n\n

If you needed to create a new computer or server that matches your current configuration, how long would that take you?<\/p>\n\n

This is why I started automating my system and having tools like Ansible install and configure software instead of me doing it manually.<\/p>\n\n

But, that doesn't prevent anyone from adding more things or changing files on the fly.<\/p>\n\n

Nix and NixOS have a read-only store of packages and configuration files, and I can read my dotfiles repository<\/a> and see exactly what's installed and how it's configured.<\/p>\n\n

If I want to add or remove a package or change some configuration, I update a Nix file and rebuild my system.<\/p>\n\n

There are no more random, rogue or leftover packages.<\/p>\n\n

If I get a new computer or create a new server, I add it to my dotfiles repository and apply the configuration and I'm up and running in no time.<\/p>\n\n ", "format": "full_html", "processed": "\n

Do you know every software package installed on your computer?<\/p>\n\n

Do you know every configuration file you've added or edited?<\/p>\n\n

If you needed to create a new computer or server that matches your current configuration, how long would that take you?<\/p>\n\n

This is why I started automating my system and having tools like Ansible install and configure software instead of me doing it manually.<\/p>\n\n

But, that doesn't prevent anyone from adding more things or changing files on the fly.<\/p>\n\n

Nix and NixOS have a read-only store of packages and configuration files, and I can read my dotfiles repository<\/a> and see exactly what's installed and how it's configured.<\/p>\n\n

If I want to add or remove a package or change some configuration, I update a Nix file and rebuild my system.<\/p>\n\n

There are no more random, rogue or leftover packages.<\/p>\n\n

If I get a new computer or create a new server, I add it to my dotfiles repository and apply the configuration and I'm up and running in no time.<\/p>\n\n ", "summary": null } ] }