From b861893e2e7db1bf6b9670698f8e7c2972c624b1 Mon Sep 17 00:00:00 2001 From: Rok Garbas Date: Thu, 19 Mar 2020 15:29:33 +0100 Subject: [PATCH] Landing page rework started --- Makefile | 9 +- community.tt | 288 +++++++++++++++++++++++++++++++++------------ css/nixos-site.css | 4 + index.tt | 178 +++++++--------------------- js/nixos-site.js | 21 ++++ layout.tt | 61 +++------- netlify.toml | 6 + nixos/options.tt | 2 +- nixos/packages.tt | 2 +- nixos/wiki.tt | 32 ----- 10 files changed, 305 insertions(+), 298 deletions(-) create mode 100644 js/nixos-site.js delete mode 100644 nixos/wiki.tt diff --git a/Makefile b/Makefile index 68effa92d8..925ef6972b 100644 --- a/Makefile +++ b/Makefile @@ -6,16 +6,11 @@ rwildcard=$(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2) $(filter $(subst default: all -HTML = index.html download.html news.html learn.html governance.html donate.html \ +HTML = index.html download.html news.html learn.html governance.html community.html donate.html \ teams/rfc-steering-committee.html teams/security.html teams/marketing.html \ teams/nixos_release.html teams/infrastructure.html teams/nixcon.html \ teams/discourse.html \ - nix/index.html nix/about.html \ - nixpkgs/index.html \ - nixos/index.html nixos/about.html \ - community.html nixos/packages.html nixos/options.html \ - nixos/wiki.html \ - 404.html + nixos/packages.html nixos/options.html \ ### Prettify the NixOS manual. diff --git a/community.tt b/community.tt index 81467e4f0a..3b04e6f05d 100644 --- a/community.tt +++ b/community.tt @@ -1,91 +1,225 @@ -[% WRAPPER layout.tt hideTitle=1 title="NixOS Community" menu='nixos' %] +[% WRAPPER layout.tt title="NixOS community" menu='nixos' %] +[% PROCESS common.tt %] -

NixOS Community

+

Contributing to NixOS

+
+
+

It’s pretty easy to modify NixOS. All you need to do is get a copy + of the Nixpkgs repository (which contains the NixOS sources as + well):

+ +
+git clone git://github.com/NixOS/nixpkgs.git
+
+ +

After making modifications to the sources, you can use them as + follows:

+ +
+nixos-rebuild switch -I nixpkgs=/path/to/my/nixpkgs
+
+ +

If you think your changes are useful to the rest of humanity, then +please open a pull request on +GitHub, or send a patch to the Discourse forum. If you +want to contribute regularly, you may want to ask for commit access to +our GitHub repositories (please ask Eelco, or on the #nixos +IRC channel).

+
+ +

Bugs

+

If + you think you’ve found a bug, please report it in the Nixpkgs + issue tracker (please use the label 6.topic: + nixos). +

+ +

Documentation

+ + + +

Source repositories

+ +

The sources of all Nix-related projects are in the NixOS organization on +GitHub. NixOS lives in the nixos +subdirectory of the Nixpkgs repository.

+ +

Discourse

+ +

discourse.nixos.org hosts +a community of Nix developers and users, providing resources to help +you:

+ + + +

IRC channel

+ +

The NixOS developers hang out on the #nixos channel on irc.freenode.net. This +channel is logged.

+ +

Blogs

+ +

Planet aggregates blog posts written +by the community and /r/NixOS +also contains useful resources.

-

Nix and NixOS are developed and used by a diverse and welcoming community from all around the world.

+

To add yourself to Planet NixOS, +fork the nixos-org-configurations +repo and add the feed source to planet-feeds.nix +then make a pull request.

-

Check out what the community has made recently in the NixOS Weekly newsletter.

+

Meetups

-

Communication

+

Europe:

+ + +

America:

+ + +

Asia:

+ + +

Continuous builds

+ +

Hydra continuously builds NixOS:

+ + + +

Commercial support

+ +

For professional support, a number of consulting companies are +available (sorted in alphabetical order):

+ + +

Donations

+ +

+The infrastructure for NixOS and related projects is maintained by a nonprofit organization, +the NixOS Foundation. To ensure the continuity and expansion of the NixOS +infrastructure, we are looking for donations to our organization. +

+ +[% PROCESS donation.tt %] + + +

Acknowledgments

+ +

The Nix package manager was developed by Eelco Dolstra as +part of his PhD research in the TraCE project, +funded by the Jacquard programme +of the Netherlands Organisation for +Scientific Research (NWO) and SERC. The first prototype of NixOS was +developed by Armijn Hemel as +his master’s thesis project. Hydra, the Nix-based continuous build +system, was developed as part of the LaQuSo Buildfarm project, funded +by NIRICT / LaQuSo.

+ +

The NixOS community has been supported by various companies and institutes over +the years, for which we are very grateful. The following companies and institutes have +supported the development of NixOS and the infrastructure that is needed to support it. +If you would like to support us as well, please contact +Rob Vermaas.

-
-

Forum

-

The official forum is the right place to get help from other users and discuss the development of the projects. There are also Announcements, Job offers and Events.

- +
+ LogicBlox logo
-
-

Chat

-

Another place to get in contact with other users is the official IRC channel:

-

#nixos on the freenode network (logs are available)

- +
+ TU Delft logo
-
-

Unofficial Platforms

-

The community is also active on other platforms.

- +
+ UU logo
-
- -

Events

- -
-
-

NixCon

-

The NixCon Team organizes a conference once a year.

-

You can find announcements on Twitter or in the Forum.

-

Previous Conferences

- +
+ 3TU logo
-
-

Meetups

-

Europe

- - +
+ Premium Bare Metal Servers and Cloud Hosting +
+
+ Snabb.co logo +
+
+ MacStadium logo +
+
+ Fastly
- diff --git a/css/nixos-site.css b/css/nixos-site.css index c58800d348..735bd25a63 100644 --- a/css/nixos-site.css +++ b/css/nixos-site.css @@ -40,6 +40,10 @@ p { padding-bottom: 0; } +.navbar .navbar-search .input-append { + margin: 0px; +} + .dropdown .caret { vertical-align: middle; margin-top: -3px; diff --git a/index.tt b/index.tt index 99399d836e..cc8136cad7 100644 --- a/index.tt +++ b/index.tt @@ -6,152 +6,54 @@ -
- [%# Title for the site, used to keep the document tree rooted at h1. %] -

NixOS

- -
-
-

What is Nix?

- -

- Nix is a powerful package manager for Linux and other Unix systems - that makes package management reliable and reproducible. It - provides atomic upgrades and rollbacks, side-by-side installation - of multiple versions of a package, multi-user package management - and easy setup of build environments. -

- - -
-
-

What is NixOS?

- -

NixOS is a Linux distribution with a unique approach - to package and configuration management. Built on top of the - Nix package manager, it is completely declarative, makes - upgrading systems reliable, and has - many other advantages.

- - -
-
- -
- -

More about NixOS

- -
-
-

Nixpkgs

-

- The Nix Packages collection (Nixpkgs) is the ever growing - packages collection for the Nix package manager, released - under a permissive MIT/X11 license. -

- - More about Nixpkgs - - -
-
-

NixOps

-

- NixOps is a tool for deploying sets of NixOS Linux machines, - bare-metal or to the cloud. It extends NixOS’s declarative - approach to system configuration management to networks and - provisioning. -

- - More about NixOps - - -
-
-

About the community

-

- Sometimes, it helps to talk with someone. Our community - is there whether you want to help or get support. -

- -
-
-
- -
-
+
-

- - - - News -

- [% INSERT "latest-news.xhtml" %] -

More »

+

Reproducible builds and deployments.

+

+ NixOS is an open source set of tools that help you package and deliver + any application in a reproducible way. + TODO: what we build reproducibly +

+ Get started
+
+

TODO: A video / picture of NixOS in action!

+
+
-

- - - - Blog Posts -

-
    - [% FOREACH b IN JSON.Escape.json_decode(IO.All.new('blogs.json').all).channel.item.first(5); IF b; %] -
  • -
    - [% - USE title = String(HTML.escape(b.title.remove('^[^:]*:').trim)); - title = title.replace('^[a-z]', title.copy.truncate(1).upper) - author = b.title.split(':').0.trim; - %] - [% - %] - -
    - [% HTML.escape(author) %] - wrote on [% HTML.escape(b.pubDate) %] -
    -
    -
  • - [% END; END %] -

    More »

    -
+ -

Twitter

-

- - -

+ + [% END %] diff --git a/js/nixos-site.js b/js/nixos-site.js new file mode 100644 index 0000000000..519240b4f6 --- /dev/null +++ b/js/nixos-site.js @@ -0,0 +1,21 @@ +$(document).ready(function () { + $(".nixos-popover").popover({}); + $(".navbar-search a").click(function (event) { + var url = window.location.protocol + "//" + window.location.host + "/nixos"; + if ($(this).text() === "Options") { + url += "/options.html"; + url += "#" + $("input", $(this).parents("form")).val() + } else { + url += "/packages.html" + url += "?channel=nixos-" + $(document.body).data('latest-nixos-series'); + url += "&query=" + $("input", $(this).parents("form")).val(); + } + window.location.href = url; + event.preventDefault(); + }); + var qs = new URLSearchParams(window.location.search.substring(1)); + var query = qs.get("query"); + if (query !== null) { + $(".navbar-search input").val(query); + } +}); diff --git a/layout.tt b/layout.tt index b21680e7a8..8bade504e5 100644 --- a/layout.tt +++ b/layout.tt @@ -73,47 +73,29 @@
  • Governance
  • Donate
  • -
    +
    [% IF !hideTitle %] - - + [% IF anchors %]