-
Notifications
You must be signed in to change notification settings - Fork 66
/
site.ts
156 lines (145 loc) · 3.92 KB
/
site.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
import { ButtonProps } from "./logic/content";
export type Feature = {
title: string;
description: string;
links: NavLink[];
};
export type NavLink = {
text: string;
href: string;
};
export type Term = {
title: string;
description: string;
href: string;
};
export type Site = {
title: string;
description: string;
rootUrl: string;
canonical: string;
githubUrl: string;
languageCode: string;
features: Feature[];
navbarLinks: NavLink[];
heroButtons: ButtonProps[];
systems: string[];
languages: string[];
nixTerms: Term[];
banner: {
text: string;
generation: number;
};
mailingListTags: string[];
};
const site: Site = {
title: "Zero to Nix",
description: "Your guide to learning Nix and flakes",
rootUrl: "https://zero-to-nix.com",
canonical: "zero-to-nix.com",
githubUrl: "https://github.com/DeterminateSystems/zero-to-nix",
languageCode: "en",
navbarLinks: [{ text: "About", href: "/about" }],
heroButtons: [
{ text: "Quick start", href: "/start/install", highlight: true },
{ text: "Concepts", href: "/concepts" },
{ text: "About", href: "/about" },
],
// TODO: make this automated rather than manual
features: [
{
title: "Declarative, reproducible development environments",
description:
'No more "works on my machine." Create environments that work seamlessly and are easily sharable across platforms.',
links: [
{
text: "Explore a Nix development environment",
href: "/start/nix-develop",
},
{
text: "Create a development environment",
href: "/start/nix-develop",
},
{
text: "How Nix development environments work",
href: "/concepts/dev-env",
},
],
},
{
title: "Declarative, reproducible package builds",
description:
"No more broken builds or mysterious installation processes. Nix builds packages from scratch every time.",
links: [
{
text: "Build a Nix package",
href: "/start/nix-build",
},
{
text: "How Nix packages work",
href: "/concepts/packages",
},
],
},
{
title: "The largest package repository in existence",
description:
"Nixpkgs offers over 80,000 packages and continues to grow every day.",
links: [
{
text: "How Nixpkgs works",
href: "/concepts/nixpkgs",
},
],
},
{
title: "Declarative Linux systems",
description:
"NixOS is a unique Linux distribution that you can declaratively configure using the Nix language and Nix packages.",
links: [
{
text: "How NixOS works",
href: "/concepts/nixos",
},
],
},
],
// User interactions
systems: ["Linux", "macOS"],
languages: ["JavaScript", "Python", "Go", "Rust", "C++", "Haskell", "Scala"],
// Nix stuff
nixTerms: [
{
title: "Nix",
description:
"A build tool and package manager used to create declarative, reproducible software systems.",
href: "/concepts/nix",
},
{
title: "Nix language",
description:
"A language for instructing Nix how to build packages, environments, and systems.",
href: "/concepts/nix-language",
},
{
title: "NixOS",
description:
"A Linux distribution built on Nix with its core principles in mind.",
href: "/concepts/nixos",
},
{
title: "Nixpkgs",
description:
"A vast collection of Nix packages, libraries, and helper functions.",
href: "/concepts/nixpkgs",
},
],
banner: {
text: "Check out <strong><a target='_blank' href='https://FlakeHub.com'>FlakeHub</a></strong> - the best place to discover and publish Nix flakes, from Determinate Systems.",
generation: 2,
},
mailingListTags: [
"294258", // zero-to-nix
],
};
export default site;