Commit graph

15 commits

Author SHA1 Message Date
aszlig
3ae3f3272f
chromium: Don't add sources as runtime dependency.
This is because of a single file that symlinks to the source output
path:

libexec/chromium/resources/extension/demo/library.js

Target within source output path:

chrome/browser/resources/extension_resource/demo/library.js

So we just need to ensure that the cp command follows symlinks during
installPhase and we should no longer have this unnecessary dependency.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-06-19 01:51:36 +02:00
aszlig
3d665679c1
chromium: Properly implement mksnapshot target.
Let's ensure we do all architecture-dependant stuff inside
mkChromiumDerivation and not pass archInfo around, so we can properly
decouple it from the main function.

This partially reverts 8d54dc6d13.

The main reason for doing this is because the architecture information
is no longer required in Chromium 37, so let's uglify and XXX it in
common.nix and remove it once version 37 hits the stable channel.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-06-19 01:51:34 +02:00
Ricardo M. Correia
8d54dc6d13 chromium: Add support for grsecurity 2014-05-15 13:25:51 +02:00
aszlig
18234b6768
chromium: Fix package name for browser derivation.
The packageName attribute defines the output path and binary name of the
product that's going to be created, so we really want to have "chromium"
instead of "chromium-browser" here, especially for the resulting binary.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-20 17:46:18 +02:00
aszlig
0517041a2f
chromium: Drop conditionals for version 33.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-20 17:45:25 +02:00
aszlig
111caaad53
chromium: Factor out common build attributes.
This results in a new function called mkChromiumDerivation, which can be
used to easily build packages that are based on the Chromium source
tree.

We pass through this function as mkDerivation in the chromium wrappre,
so in the end if you want to create such a package, something like:

chromium.mkDerivation (base: {
  name = "your-shiny-package-based-on-chromium";
  ...
})

will suffice.

Of course, this is only the first step towards this functionality,
because right now I'm not even sure the Chromium browser itself will
build.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:46 +02:00
aszlig
202755ca2f
chromium: Properly pass packageName and version.
We don't want ta have the source derivation in the runtime dependencies
of the browser itself. Also, we've broken the Firefox wrapper, because
we've no longer exposed the packageName attribute.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:44 +02:00
aszlig
eadbf855b0
chromium: Revert back to copying bundled sources.
I'm giving up on this after several attempts to correctly unbundle the
largest part, namely Google's WebKit fork Blink. Right now it's so much
tied into the Chromium source it's going to be fairly hard to do if
you're not working full time on it.

Also, the intermediate steps needed to do this properly would introduce
uneccesary complexity on our side, so we really need to finish this
without leaving it in the "messy" state in order to not make Chromium
even more difficult to maintain than it is already.

However, anyone who wants to proceed on this messy step is free to
revert this commit and continue doing so. In my case I'm going to try
again once https://crbug.com/239107 and https://crbug.com/239181 are
fixed in _stable_ (I don't want to introduce *lots* of conditionals on
the version either).

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:43 +02:00
aszlig
cce984b324
chromium: Correct tools path in blink_idl_parser.
This is because of our symlink mess, as Chromium's build support scripts
are trying to resolve everything based on absolute paths and we split
off the bundled sources from the main derivation.

Yes, I'm refering to this as a mess, because in the end, we're going to
patch up the gyp files and use references someday.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:43 +02:00
aszlig
d8ba5b3eff
chromium: Add bundled dependencies for dev/beta.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:42 +02:00
aszlig
5021717099
chromium: Split off sandbox from the browser.
Now, we no longer tie the sandbox directly to the browser derivation but
wrap everything together into one derivation at the entry point at
default.nix.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:42 +02:00
aszlig
c86d376c82
chromium: Selectively link bundled libraries.
So far we just copied everything from source.* into the build directory
during the prePatch. This somewhat defeated the purpose of the source
splitup because it involved more I/O than just unpacking the entire
source tree.

Now, we're selectively *symlinking* the bundled sources into the build
directory. Even that isn't perfect because in the end we'd just
reference foreign derivations and we're done. But for now, this gets us
at least prepared for a massive reduction of compile time.

Unfortunately, gyp's behaviour when it comes to symlinks is quite
painful to come by, so we need to fix a few references to use absolute
paths.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:42 +02:00
aszlig
16af058ff9
chromium: Move plugins into its own Nix file.
We now no longer pass enablePepperFlash and enablePepperPDF to the
browser package itself and only use plugins.flagsEnabled from there.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:42 +02:00
aszlig
1ae328ba86
chromium: Factor out source into its own Nix file.
The name is a bit unfortunate, so it would make sense to rename
"sources.nix" into something else.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:41 +02:00
aszlig
88a939c2d1
chromium: Decouple browser from default.nix.
This currently only passes through the arguments and is nothing more
than the foundation of the new structure. In essence, I want to have a
really small default.nix which is then going down into the respective
subparts that are isolated from each other.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:41 +02:00