From e3ba2c4ba5d1ddcbd03201fbecee9edb9735629e Mon Sep 17 00:00:00 2001 From: marshmallow Date: Sat, 4 May 2024 06:28:15 +1000 Subject: [PATCH 1/6] feat: i18n --- src/components/Goals.astro | 37 +++++++++++++------------------------ src/i18n/ui.ts | 20 ++++++++++++++++++++ src/i18n/utils.ts | 13 +++++++++++++ src/layouts/Layout.astro | 6 +++++- 4 files changed, 51 insertions(+), 25 deletions(-) create mode 100644 src/i18n/ui.ts create mode 100644 src/i18n/utils.ts diff --git a/src/components/Goals.astro b/src/components/Goals.astro index 90edf4e..ddb485e 100644 --- a/src/components/Goals.astro +++ b/src/components/Goals.astro @@ -1,5 +1,8 @@ --- +import { getLangFromUrl, useTranslations } from '../i18n/utils'; +const lang = getLangFromUrl(Astro.url); +const t = useTranslations(lang); ---
@@ -7,47 +10,33 @@
  1. -

    Independent

    +

    {t("goals.independent.title")}

    - We will fork and maintain Nix, NixPkgs, and NixOS. Additional support - for projects such as Nix Darwin and Home Manager will be considered. + {t("goals.independent")}

  2. -

    Governance

    +

    {t("goals.gov.title")}

    - A democratic model of governance with elected positions will be used to - manage the project. A steering committee will provide direction with - additional committees handling specific logistical tasks. Features or - individual projects will be owned by Special Interest Groups. SIGs will - collaborate within Working Groups to achieve their goals. Each committee - and group will have its goals, requirements, and management process - clearly defined. + {t("goals.gov")}

  3. -

    Stabilization

    +

    {t("goals.stabilization.title")}

    - User-friendly features such as the Nix v3 CLI will be enabled by - default. Nix Flakes are used too heavily to remove or change and will - instead be stabilized as a v0 in its current state with any future work - being handled by a Special Interest Group. + {t("goals.stabilization")}

  4. -

    Infrastructure

    +

    {t("goals.infa.title")}

    - We will build and maintain the tools and infrastructure necessary to - keep the ecosystem healthy, including Continuous Integration and Binary - Caching. + {t("goals.infa")}

  5. -

    Education

    +

    {t("goals.education.title")}

    - Unified documentation, tutorials, guides, and examples will provide a - better onboarding experience for newcomers and a faster iteration cycle - for experts. + {t("goals.education")}

diff --git a/src/i18n/ui.ts b/src/i18n/ui.ts new file mode 100644 index 0000000..7ba7664 --- /dev/null +++ b/src/i18n/ui.ts @@ -0,0 +1,20 @@ +export const languages = { + en: 'English' +}; + +export const defaultLang = 'en'; + +export const ui = { + en: { + 'goals.independent.title': 'Independent', + 'goals.independent': 'We will fork and maintain Nix, NixPkgs, and NixOS. Additional support for projects such as Nix Darwin and Home Manager will be considered.', + 'goals.gov.title': 'Governance', + 'goals.gov': 'A democratic model of governance with elected positions will be used to manage the project. A steering committee will provide direction with additional committees handling specific logistical tasks. Features or individual projects will be owned by Special Interest Groups. SIGs will collaborate within Working Groups to achieve their goals. Each committee and group will have its goals, requirements, and management process clearly defined.', + 'goals.stabilization.title': 'Stabilization', + 'goals.stabilization': 'User-friendly features such as the Nix v3 CLI will be enabled by default. Nix Flakes are used too heavily to remove or change and will instead be stabilized as a v0 in its current state with any future work being handled by a Special Interest Group.', + 'goals.infa.title': 'Infastructure', + 'goals.infa': 'We will build and maintain the tools and infrastructure necessary to keep the ecosystem healthy, including Continuous Integration and Binary Caching.', + 'goals.education.title': 'Education', + 'goals.education': 'Unified documentation, tutorials, guides, and examples will provide a better onboarding experience for newcomers and a faster iteration cycle for experts.', + }, +} as const; diff --git a/src/i18n/utils.ts b/src/i18n/utils.ts new file mode 100644 index 0000000..b358317 --- /dev/null +++ b/src/i18n/utils.ts @@ -0,0 +1,13 @@ +import { ui, defaultLang } from './ui'; + +export function getLangFromUrl(url: URL) { + const [, lang] = url.pathname.split('/'); + if (lang in ui) return lang as keyof typeof ui; + return defaultLang; +} + +export function useTranslations(lang: keyof typeof ui) { + return function t(key: keyof typeof ui[typeof defaultLang]) { + return ui[lang][key] || ui[defaultLang][key]; + } +} diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index a2ebfc7..8c297f4 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -1,13 +1,17 @@ --- +import { getLangFromUrl } from '../i18n/utils'; + interface Props { title: string; } const { title } = Astro.props; + +const lang = getLangFromUrl(Astro.url); --- - + From 9f6a8cc98bbd44d7a6ae08c7a15c91727f0e3f84 Mon Sep 17 00:00:00 2001 From: marshmallow Date: Sat, 4 May 2024 06:35:29 +1000 Subject: [PATCH 2/6] read from public/locales/ --- public/locales/en/translations.json | 12 ++++++++++++ src/i18n/ui.ts | 15 +++------------ 2 files changed, 15 insertions(+), 12 deletions(-) create mode 100644 public/locales/en/translations.json diff --git a/public/locales/en/translations.json b/public/locales/en/translations.json new file mode 100644 index 0000000..7c6f330 --- /dev/null +++ b/public/locales/en/translations.json @@ -0,0 +1,12 @@ +{ + "goals.independent.title": "Independent", + "goals.independent": "We will fork and maintain Nix, NixPkgs, and NixOS. Additional support for projects such as Nix Darwin and Home Manager will be considered.", + "goals.gov.title": "Governance", + "goals.gov": "A democratic model of governance with elected positions will be used to manage the project. A steering committee will provide direction with additional committees handling specific logistical tasks. Features or individual projects will be owned by Special Interest Groups. SIGs will collaborate within Working Groups to achieve their goals. Each committee and group will have its goals, requirements, and management process clearly defined.", + "goals.stabilization.title": "Stabilization", + "goals.stabilization": "User-friendly features such as the Nix v3 CLI will be enabled by default. Nix Flakes are used too heavily to remove or change and will instead be stabilized as a v0 in its current state with any future work being handled by a Special Interest Group.", + "goals.infa.title": "Infastructure", + "goals.infa": "We will build and maintain the tools and infrastructure necessary to keep the ecosystem healthy, including Continuous Integration and Binary Caching.", + "goals.education.title": "Education", + "goals.education": "Unified documentation, tutorials, guides, and examples will provide a better onboarding experience for newcomers and a faster iteration cycle for experts." +} diff --git a/src/i18n/ui.ts b/src/i18n/ui.ts index 7ba7664..a6838b0 100644 --- a/src/i18n/ui.ts +++ b/src/i18n/ui.ts @@ -1,3 +1,5 @@ +import en from "../../public/locales/en/translations.json" + export const languages = { en: 'English' }; @@ -5,16 +7,5 @@ export const languages = { export const defaultLang = 'en'; export const ui = { - en: { - 'goals.independent.title': 'Independent', - 'goals.independent': 'We will fork and maintain Nix, NixPkgs, and NixOS. Additional support for projects such as Nix Darwin and Home Manager will be considered.', - 'goals.gov.title': 'Governance', - 'goals.gov': 'A democratic model of governance with elected positions will be used to manage the project. A steering committee will provide direction with additional committees handling specific logistical tasks. Features or individual projects will be owned by Special Interest Groups. SIGs will collaborate within Working Groups to achieve their goals. Each committee and group will have its goals, requirements, and management process clearly defined.', - 'goals.stabilization.title': 'Stabilization', - 'goals.stabilization': 'User-friendly features such as the Nix v3 CLI will be enabled by default. Nix Flakes are used too heavily to remove or change and will instead be stabilized as a v0 in its current state with any future work being handled by a Special Interest Group.', - 'goals.infa.title': 'Infastructure', - 'goals.infa': 'We will build and maintain the tools and infrastructure necessary to keep the ecosystem healthy, including Continuous Integration and Binary Caching.', - 'goals.education.title': 'Education', - 'goals.education': 'Unified documentation, tutorials, guides, and examples will provide a better onboarding experience for newcomers and a faster iteration cycle for experts.', - }, + en, } as const; From 7b72189f131c40cbfb9a6ce5d1601f4963b45c19 Mon Sep 17 00:00:00 2001 From: marshmallow Date: Sat, 4 May 2024 06:58:37 +1000 Subject: [PATCH 3/6] refactor more prose --- public/locales/en/translations.json | 41 ++++++++++++++- src/components/Header.astro | 11 ++-- src/components/Hero.astro | 7 ++- src/components/Roadmap.astro | 81 ++++++++--------------------- src/components/Values.astro | 29 +++++------ 5 files changed, 89 insertions(+), 80 deletions(-) diff --git a/public/locales/en/translations.json b/public/locales/en/translations.json index 7c6f330..ca5cfb7 100644 --- a/public/locales/en/translations.json +++ b/public/locales/en/translations.json @@ -1,4 +1,11 @@ { + "root.title": "aux.computer", + "root.description": "An alternative to the Nix ecosystem", + + "header.community": "Community", + "header.Github": "Github", + + "goals.title": "Goals", "goals.independent.title": "Independent", "goals.independent": "We will fork and maintain Nix, NixPkgs, and NixOS. Additional support for projects such as Nix Darwin and Home Manager will be considered.", "goals.gov.title": "Governance", @@ -8,5 +15,37 @@ "goals.infa.title": "Infastructure", "goals.infa": "We will build and maintain the tools and infrastructure necessary to keep the ecosystem healthy, including Continuous Integration and Binary Caching.", "goals.education.title": "Education", - "goals.education": "Unified documentation, tutorials, guides, and examples will provide a better onboarding experience for newcomers and a faster iteration cycle for experts." + "goals.education": "Unified documentation, tutorials, guides, and examples will provide a better onboarding experience for newcomers and a faster iteration cycle for experts.", + + "roadmap.title": "Roadmap", + "roadmap.soft_fork.title": "Soft Fork", + "roadmap.soft_fork.1": "This initial phase will involve an ad-hoc management structure due to its bootstrapping nature. As such, the project's stated Values, Goals, and Roadmap serve to keep all contributors aligned and safe knowing that the work they have committed to will not change.", + "roadmap.soft_fork.2": "The initial forking off of Nix and NixPkgs will be performed in this phase and new contributors will be given roles for handling package maintenance and pulling changes from upstream. We intend to move on from this phase once enough contributors have joined for the project to be capable of transitioning into a hard fork.", + "roadmap.hard_fork.title": "Hard Fork", + "roadmap.hard_fork.1": "Like the Soft Fork phase, management structure will still be ad-hoc, but Committees, Special Interest Groups, and Working Groups may start to be formed. Due to there being necessary bootstrapping steps for each, elections will only begin once the Alignment phase has been reached.", + "roadmap.hard_fork.2": "At this point we will have enough contributors to safely maintain NixPkgs (or a reasonable subset) and Nix ourselves. We will begin allowing divergence from the upstream repository and changes to the repository structure to improve development can be introduced.", + "roadmap.hard_fork.3": "An initial release of the packages repository will be created and migration from `nix` to `aux` naming will begin to reduce confusion and errors now that the two projects have diverged.", + "roadmap.organization.title": "Organization", + "roadmap.organization.1": "The packages repository will have sets extracted to allow for Special Interest Groups to more easily manage their lifecycles. For example, `pythonPackages` will be moved to a separate repository that will be the reponsibility of a Python SIG if there is interest.", + "roadmap.organization.2": "Flakes will be standardized with its current implementation as a v0. While not ideal, the feature is used far too widely to be changed or removed without breaking the ecosystem. Instead, this v0 implementation will be enabled and future work for Flakes that addresses its shortcomings may be handled by a Flakes SIG.", + "roadmap.organization.3": "The `aux` CLI will be modified to provide more ergonomic management of packages and systems. Additional subcommands such as `aux system switch` and `aux system build` will be added to make onboarding and ongoing maintenance easier.", + "roadmap.infa.title": "Infastructure", + "roadmap.infa.1": "Now that the project has significantly diverged from upstream, we will need to provide our own Continuous Integration and Binary Cache services. Existing governance structures will be used to manage the adoption of these technologies.", + "roadmap.infa.2": "Documentation will be included as a part of the Continuous Integration process and will have Continuous Deployment configured to keep it up to date, making it easier for contributors to create educational materials.", + "roadmap.infa.3": "Search infrastructure for packages and options will also be created.", + "roadmap.alignment.title": "Alignment", + "roadmap.alignment.1": "By this point, we've done it. We have created a sustainable, independent fork of the Nix ecosystem. Now that the initial work has been completed we will begin the governance rotation process with our first elections and education as to how project governance works.", + "roadmap.alignment.2": "Documentation, project branding, and packages will be polished and presented as a fully stable release. From this point forward the Steering Committee will be managing the creation of Special Interest Groups and other necessary Committees. All enhancements will be suggested in Aux Enhancement Proposals which encourage existing SIGs to implement features or encourage the formation of a new SIG to be created for such a purpose.", + + "values.title": "Values", + "values.rep.title": "Representation", + "values.rep": "Contributors should have their views represented and organizational structure should be established democratically.", + "values.kindness.title": "Kindness", + "values.kindness": "The project should be welcoming and a safe place for people to participate.", + "values.collab.title": "Collaboration", + "values.collab": "Communication and cooperation should be encouraged.", + "values.sustainability.title": "Sustainability", + "values.sustainability": "Workload, finance, scope, and burnout should all be considered carefully to ensure that the project is stable.", + "values.accessibility.title": "Accessibility", + "values.accessibility": "Elitism is unwelcome, our knowledge is here to be shared and we should provide the tools to help everyone succeed and learn." } diff --git a/src/components/Header.astro b/src/components/Header.astro index 24b4290..dd6e1b9 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -1,12 +1,17 @@ --- interface Props {} + +import { getLangFromUrl, useTranslations } from '../i18n/utils'; + +const lang = getLangFromUrl(Astro.url); +const t = useTranslations(lang); ---
@@ -16,8 +21,8 @@ interface Props {}
  • Documentation
  • Contribute
  • --> -
  • Community
  • -
  • Github
  • +
  • {t("header.community")}
  • +
  • {t("header.github")}
  • diff --git a/src/components/Hero.astro b/src/components/Hero.astro index a3433b1..223470f 100644 --- a/src/components/Hero.astro +++ b/src/components/Hero.astro @@ -1,5 +1,8 @@ --- +import { getLangFromUrl, useTranslations } from '../i18n/utils'; +const lang = getLangFromUrl(Astro.url); +const t = useTranslations(lang); ---
    @@ -7,8 +10,8 @@
    -

    aux.computer

    -
    An alternative to the Nix ecosystem
    +

    {t("root.title")}

    +
    {t("root.description")}
    diff --git a/src/components/Roadmap.astro b/src/components/Roadmap.astro index 56d8bc9..11c79a0 100644 --- a/src/components/Roadmap.astro +++ b/src/components/Roadmap.astro @@ -1,102 +1,65 @@ --- +import { getLangFromUrl, useTranslations } from '../i18n/utils'; +const lang = getLangFromUrl(Astro.url); +const t = useTranslations(lang); ---
    -

    Roadmap

    +

    {t("roadmap.title")}

    1. -

      Soft Fork

      +

      {t("roadmap.soft_fork.title")}

      - This initial phase will involve an ad-hoc management structure due to - its bootstrapping nature. As such, the project's stated Values, Goals, - and Roadmap serve to keep all contributors aligned and safe knowing that - the work they have committed to will not change. -

      + {t("roadmap.soft_fork.1")}

      - The initial forking off of Nix and NixPkgs will be performed in this - phase and new contributors will be given roles for handling package - maintenance and pulling changes from upstream. We intend to move on from - this phase once enough contributors have joined for the project to be - capable of transitioning into a hard fork. + {t("roadmap.soft_fork.2")}

    2. -

      Hard Fork

      +

      {t("roadmap.hard_fork.title")}

      - Like the Soft Fork phase, management structure will still be ad-hoc, but - Committees, Special Interest Groups, and Working Groups may start to be - formed. Due to there being necessary bootstrapping steps for each, - elections will only begin once the Alignment phase has been reached. + {t("roadmap.hard_fork.1")}

      - At this point we will have enough contributors to safely maintain - NixPkgs (or a reasonable subset) and Nix ourselves. We will begin - allowing divergence from the upstream repository and changes to the - repository structure to improve development can be introduced. + {t("roadmap.hard_fork.2")}

      - An initial release of the packages repository will be created and - migration from `nix` to `aux` naming will begin to reduce confusion and - errors now that the two projects have diverged. + {t("roadmap.hard_fork.3")}

    3. -

      Organization

      +

      {t("roadmap.organization.title")}

      - The packages repository will have sets extracted to allow for Special - Interest Groups to more easily manage their lifecycles. For example, - `pythonPackages` will be moved to a separate repository that will be the - reponsibility of a Python SIG if there is interest. + {t("roadmap.organization.1")}

      - Flakes will be standardized with its current implementation as a v0. - While not ideal, the feature is used far too widely to be changed or - removed without breaking the ecosystem. Instead, this v0 implementation - will be enabled and future work for Flakes that addresses its - shortcomings may be handled by a Flakes SIG. + {t("roadmap.organization.2")}

      - The `aux` CLI will be modified to provide more ergonomic management of - packages and systems. Additional subcommands such as `aux system switch` - and `aux system build` will be added to make onboarding and ongoing - maintenance easier. + {t("roadmap.organization.3")}

    4. -

      Infrastructure

      +

      {t("roadmap.infa.title")}

      - Now that the project has significantly diverged from upstream, we will - need to provide our own Continuous Integration and Binary Cache - services. Existing governance structures will be used to manage the - adoption of these technologies. + {t("roadmap.infa.1")}

      - Documentation will be included as a part of the Continuous Integration - process and will have Continuous Deployment configured to keep it up to - date, making it easier for contributors to create educational materials. + {t("roadmap.infa.2")}

      - Search infrastructure for packages and options will also be created. + {t("roadmap.infa.3")}

    5. -

      Alignment

      +

      {t("roadmap.alignment.title")}

      - By this point, we've done it. We have created a sustainable, independent - fork of the Nix ecosystem. Now that the initial work has been completed - we will begin the governance rotation process with our first elections - and education as to how project governance works. + {t("roadmap.alignment.1")}

      - Documentation, project branding, and packages will be polished and - presented as a fully stable release. From this point forward the - Steering Committee will be managing the creation of Special Interest - Groups and other necessary Committees. All enhancements will be - suggested in Aux Enhancement Proposals which encourage existing SIGs to - implement features or encourage the formation of a new SIG to be created - for such a purpose. + {t("roadmap.alignment.2")}

    diff --git a/src/components/Values.astro b/src/components/Values.astro index 0a5e0b5..76b74f0 100644 --- a/src/components/Values.astro +++ b/src/components/Values.astro @@ -1,32 +1,31 @@ --- +import { getLangFromUrl, useTranslations } from '../i18n/utils'; +const lang = getLangFromUrl(Astro.url); +const t = useTranslations(lang); ---
    -

    Values

    -

    Representation

    +

    {t("values.title")}

    +

    {t("values.rep.title")}

    - Contributors should have their views represented and organizational - structure should be established democratically. + {t("values.rep")}

    -

    Kindness

    +

    {t("values.kindness.title")}

    - The project should be welcoming and a safe place for people to - participate. + {t("values.kindness")}

    -

    Collaboration

    +

    {t("values.collaboration.title")}

    - Communication and cooperation should be encouraged. + {t("values.collaboration")}

    -

    Sustainability

    +

    {t("values.sustainability.title")}

    - Workload, finance, scope, and burnout should all be considered carefully - to ensure that the project is stable. + {t("values.sustainability")}

    -

    Accessibility

    +

    {t("values.accessibility.title")}

    - Elitism is unwelcome, our knowledge is here to be shared and we should - provide the tools to help everyone succeed and learn. + {t("values.accessibility")}

    From 56d6b0f64584a232c0a3fbec6e3618ac430f5b11 Mon Sep 17 00:00:00 2001 From: marshmallow Date: Sat, 4 May 2024 07:02:46 +1000 Subject: [PATCH 4/6] rename t throughout to translation --- src/components/Goals.astro | 24 +++++++++++----------- src/components/Header.astro | 8 ++++---- src/components/Hero.astro | 6 +++--- src/components/Roadmap.astro | 40 ++++++++++++++++++------------------ src/components/Values.astro | 24 +++++++++++----------- 5 files changed, 51 insertions(+), 51 deletions(-) diff --git a/src/components/Goals.astro b/src/components/Goals.astro index ddb485e..413b21d 100644 --- a/src/components/Goals.astro +++ b/src/components/Goals.astro @@ -2,41 +2,41 @@ import { getLangFromUrl, useTranslations } from '../i18n/utils'; const lang = getLangFromUrl(Astro.url); -const t = useTranslations(lang); +const translation = useTranslations(lang); ---
    -

    Goals

    +

    {translation("goals.title")}

    1. -

      {t("goals.independent.title")}

      +

      {translation("goals.independent.title")}

      - {t("goals.independent")} + {translation("goals.independent")}

    2. -

      {t("goals.gov.title")}

      +

      {translation("goals.gov.title")}

      - {t("goals.gov")} + {translation("goals.gov")}

    3. -

      {t("goals.stabilization.title")}

      +

      {translation("goals.stabilization.title")}

      - {t("goals.stabilization")} + {translation("goals.stabilization")}

    4. -

      {t("goals.infa.title")}

      +

      {translation("goals.infa.title")}

      - {t("goals.infa")} + {translation("goals.infa")}

    5. -

      {t("goals.education.title")}

      +

      {translation("goals.education.title")}

      - {t("goals.education")} + {translation("goals.education")}

    diff --git a/src/components/Header.astro b/src/components/Header.astro index dd6e1b9..1918fc0 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -4,14 +4,14 @@ interface Props {} import { getLangFromUrl, useTranslations } from '../i18n/utils'; const lang = getLangFromUrl(Astro.url); -const t = useTranslations(lang); +const translation = useTranslations(lang); ---
    diff --git a/src/components/Hero.astro b/src/components/Hero.astro index 223470f..2c9e0d9 100644 --- a/src/components/Hero.astro +++ b/src/components/Hero.astro @@ -2,7 +2,7 @@ import { getLangFromUrl, useTranslations } from '../i18n/utils'; const lang = getLangFromUrl(Astro.url); -const t = useTranslations(lang); +const translation = useTranslations(lang); ---
    @@ -10,8 +10,8 @@ const t = useTranslations(lang);
    -

    {t("root.title")}

    -
    {t("root.description")}
    +

    {translation("root.title")}

    +
    {translation("root.description")}
    diff --git a/src/components/Roadmap.astro b/src/components/Roadmap.astro index 11c79a0..4fe232d 100644 --- a/src/components/Roadmap.astro +++ b/src/components/Roadmap.astro @@ -2,64 +2,64 @@ import { getLangFromUrl, useTranslations } from '../i18n/utils'; const lang = getLangFromUrl(Astro.url); -const t = useTranslations(lang); +const translation = useTranslations(lang); ---
    -

    {t("roadmap.title")}

    +

    {translation("roadmap.title")}

    1. -

      {t("roadmap.soft_fork.title")}

      +

      {translation("roadmap.soft_fork.title")}

      - {t("roadmap.soft_fork.1")} + {translation("roadmap.soft_fork.1")}

      - {t("roadmap.soft_fork.2")} + {translation("roadmap.soft_fork.2")}

    2. -

      {t("roadmap.hard_fork.title")}

      +

      {translation("roadmap.hard_fork.title")}

      - {t("roadmap.hard_fork.1")} + {translation("roadmap.hard_fork.1")}

      - {t("roadmap.hard_fork.2")} + {translation("roadmap.hard_fork.2")}

      - {t("roadmap.hard_fork.3")} + {translation("roadmap.hard_fork.3")}

    3. -

      {t("roadmap.organization.title")}

      +

      {translation("roadmap.organization.title")}

      - {t("roadmap.organization.1")} + {translation("roadmap.organization.1")}

      - {t("roadmap.organization.2")} + {translation("roadmap.organization.2")}

      - {t("roadmap.organization.3")} + {translation("roadmap.organization.3")}

    4. -

      {t("roadmap.infa.title")}

      +

      {translation("roadmap.infa.title")}

      - {t("roadmap.infa.1")} + {translation("roadmap.infa.1")}

      - {t("roadmap.infa.2")} + {translation("roadmap.infa.2")}

      - {t("roadmap.infa.3")} + {translation("roadmap.infa.3")}

    5. -

      {t("roadmap.alignment.title")}

      +

      {translation("roadmap.alignment.title")}

      - {t("roadmap.alignment.1")} + {translation("roadmap.alignment.1")}

      - {t("roadmap.alignment.2")} + {translation("roadmap.alignment.2")}

    diff --git a/src/components/Values.astro b/src/components/Values.astro index 76b74f0..e4ab21b 100644 --- a/src/components/Values.astro +++ b/src/components/Values.astro @@ -2,30 +2,30 @@ import { getLangFromUrl, useTranslations } from '../i18n/utils'; const lang = getLangFromUrl(Astro.url); -const t = useTranslations(lang); +const translation = useTranslations(lang); ---
    -

    {t("values.title")}

    -

    {t("values.rep.title")}

    +

    {translation("values.title")}

    +

    {translation("values.rep.title")}

    - {t("values.rep")} + {translation("values.rep")}

    -

    {t("values.kindness.title")}

    +

    {translation("values.kindness.title")}

    - {t("values.kindness")} + {translation("values.kindness")}

    -

    {t("values.collaboration.title")}

    +

    {translation("values.collaboration.title")}

    - {t("values.collaboration")} + {translation("values.collaboration")}

    -

    {t("values.sustainability.title")}

    +

    {translation("values.sustainability.title")}

    - {t("values.sustainability")} + {translation("values.sustainability")}

    -

    {t("values.accessibility.title")}

    +

    {translation("values.accessibility.title")}

    - {t("values.accessibility")} + {translation("values.accessibility")}

    From febe17055a3dc12f025b38a16ebb7acc6232f2c8 Mon Sep 17 00:00:00 2001 From: marshmallow Date: Sat, 4 May 2024 08:59:08 +1000 Subject: [PATCH 5/6] remove redundant trans keys --- public/locales/en/translations.json | 2 -- src/components/Header.astro | 4 ++-- src/components/Hero.astro | 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/public/locales/en/translations.json b/public/locales/en/translations.json index ca5cfb7..a4359af 100644 --- a/public/locales/en/translations.json +++ b/public/locales/en/translations.json @@ -1,9 +1,7 @@ { - "root.title": "aux.computer", "root.description": "An alternative to the Nix ecosystem", "header.community": "Community", - "header.Github": "Github", "goals.title": "Goals", "goals.independent.title": "Independent", diff --git a/src/components/Header.astro b/src/components/Header.astro index 1918fc0..dcf350f 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -11,7 +11,7 @@ const translation = useTranslations(lang);
    @@ -22,7 +22,7 @@ const translation = useTranslations(lang);
  • Contribute
  • -->
  • {translation("header.community")}
  • -
  • {translation("header.github")}
  • +
  • Github
  • diff --git a/src/components/Hero.astro b/src/components/Hero.astro index 2c9e0d9..6acc0f0 100644 --- a/src/components/Hero.astro +++ b/src/components/Hero.astro @@ -10,7 +10,7 @@ const translation = useTranslations(lang);
    -

    {translation("root.title")}

    +

    aux.computer

    {translation("root.description")}
    From 5aeadccb8b08140a63f44434aefdd964a134e0a2 Mon Sep 17 00:00:00 2001 From: marshmallow Date: Sat, 4 May 2024 09:25:01 +1000 Subject: [PATCH 6/6] fix typos --- public/locales/en/translations.json | 12 ++++++------ src/components/Goals.astro | 4 ++-- src/components/Roadmap.astro | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/public/locales/en/translations.json b/public/locales/en/translations.json index a4359af..5ef1825 100644 --- a/public/locales/en/translations.json +++ b/public/locales/en/translations.json @@ -10,8 +10,8 @@ "goals.gov": "A democratic model of governance with elected positions will be used to manage the project. A steering committee will provide direction with additional committees handling specific logistical tasks. Features or individual projects will be owned by Special Interest Groups. SIGs will collaborate within Working Groups to achieve their goals. Each committee and group will have its goals, requirements, and management process clearly defined.", "goals.stabilization.title": "Stabilization", "goals.stabilization": "User-friendly features such as the Nix v3 CLI will be enabled by default. Nix Flakes are used too heavily to remove or change and will instead be stabilized as a v0 in its current state with any future work being handled by a Special Interest Group.", - "goals.infa.title": "Infastructure", - "goals.infa": "We will build and maintain the tools and infrastructure necessary to keep the ecosystem healthy, including Continuous Integration and Binary Caching.", + "goals.infra.title": "Infrastructure", + "goals.infra": "We will build and maintain the tools and infrastructure necessary to keep the ecosystem healthy, including Continuous Integration and Binary Caching.", "goals.education.title": "Education", "goals.education": "Unified documentation, tutorials, guides, and examples will provide a better onboarding experience for newcomers and a faster iteration cycle for experts.", @@ -27,10 +27,10 @@ "roadmap.organization.1": "The packages repository will have sets extracted to allow for Special Interest Groups to more easily manage their lifecycles. For example, `pythonPackages` will be moved to a separate repository that will be the reponsibility of a Python SIG if there is interest.", "roadmap.organization.2": "Flakes will be standardized with its current implementation as a v0. While not ideal, the feature is used far too widely to be changed or removed without breaking the ecosystem. Instead, this v0 implementation will be enabled and future work for Flakes that addresses its shortcomings may be handled by a Flakes SIG.", "roadmap.organization.3": "The `aux` CLI will be modified to provide more ergonomic management of packages and systems. Additional subcommands such as `aux system switch` and `aux system build` will be added to make onboarding and ongoing maintenance easier.", - "roadmap.infa.title": "Infastructure", - "roadmap.infa.1": "Now that the project has significantly diverged from upstream, we will need to provide our own Continuous Integration and Binary Cache services. Existing governance structures will be used to manage the adoption of these technologies.", - "roadmap.infa.2": "Documentation will be included as a part of the Continuous Integration process and will have Continuous Deployment configured to keep it up to date, making it easier for contributors to create educational materials.", - "roadmap.infa.3": "Search infrastructure for packages and options will also be created.", + "roadmap.infra.title": "Infrastructure", + "roadmap.infra.1": "Now that the project has significantly diverged from upstream, we will need to provide our own Continuous Integration and Binary Cache services. Existing governance structures will be used to manage the adoption of these technologies.", + "roadmap.infra.2": "Documentation will be included as a part of the Continuous Integration process and will have Continuous Deployment configured to keep it up to date, making it easier for contributors to create educational materials.", + "roadmap.infra.3": "Search infrastructure for packages and options will also be created.", "roadmap.alignment.title": "Alignment", "roadmap.alignment.1": "By this point, we've done it. We have created a sustainable, independent fork of the Nix ecosystem. Now that the initial work has been completed we will begin the governance rotation process with our first elections and education as to how project governance works.", "roadmap.alignment.2": "Documentation, project branding, and packages will be polished and presented as a fully stable release. From this point forward the Steering Committee will be managing the creation of Special Interest Groups and other necessary Committees. All enhancements will be suggested in Aux Enhancement Proposals which encourage existing SIGs to implement features or encourage the formation of a new SIG to be created for such a purpose.", diff --git a/src/components/Goals.astro b/src/components/Goals.astro index 413b21d..4a33762 100644 --- a/src/components/Goals.astro +++ b/src/components/Goals.astro @@ -28,9 +28,9 @@ const translation = useTranslations(lang);

  • -

    {translation("goals.infa.title")}

    +

    {translation("goals.infra.title")}

    - {translation("goals.infa")} + {translation("goals.infra")}

  • diff --git a/src/components/Roadmap.astro b/src/components/Roadmap.astro index 4fe232d..7e7eb4e 100644 --- a/src/components/Roadmap.astro +++ b/src/components/Roadmap.astro @@ -42,15 +42,15 @@ const translation = useTranslations(lang);

  • -

    {translation("roadmap.infa.title")}

    +

    {translation("roadmap.infra.title")}

    - {translation("roadmap.infa.1")} + {translation("roadmap.infra.1")}

    - {translation("roadmap.infa.2")} + {translation("roadmap.infra.2")}

    - {translation("roadmap.infa.3")} + {translation("roadmap.infra.3")}